diff options
Diffstat (limited to 'ChangeLog-98b')
-rw-r--r-- | ChangeLog-98b | 9912 |
1 files changed, 0 insertions, 9912 deletions
diff --git a/ChangeLog-98b b/ChangeLog-98b deleted file mode 100644 index a3afefb6935..00000000000 --- a/ChangeLog-98b +++ /dev/null @@ -1,9912 +0,0 @@ -Fri Oct 16 01:28:17 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.58 released. - -Thu Oct 15 23:50:41 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.57 released. - -Thu Oct 15 22:05:02 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/ACE.cpp (unique_name): Moved the arguments around in the - sprintf() in order to generate a better "unique name". Thanks - to Bob McWhirter for suggesting this. - -Thu Oct 15 21:20:36 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Hash_Map_Manager.cpp (operator-- and operator++): - * ace/Map_Manager.cpp (operator-- and operator++): - - Fixed by value and by reference return values. - -Thu Oct 15 20:16:46 1998 James CE Johnson <jcej@chiroptera.tragus.org> - - * docs/ACE-FMM.html: Updated with Bob McWhirter's latest changes. - Discussion of race conditions when spawning threads from within a constructor. - -Thu Oct 15 18:30:58 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/OS.h: Added ACE_HTONS(x) macros to complement ACE_HTONL(x) - macros. Thanks to Balaji Srinivasan <balaji@cplane.com> - for reporting this. - - * ace/[Hash_]Map_Manager.cpp: Postfix and prefix were inverted. - They are correct now. Thanks to Balaji Srinivasan - <balaji@cplane.com> for reporting this. - -Thu Oct 15 18:02:51 1998 Darrell Brunsch <brunsch@cs.wustl.edu> - - * ace/config-win32.h: For non-winnt systems, define - ACE_LACKS_RECVMSG and ACE_LACKS_SENDMSG. Thanks to Bill Hall - <hts@gte.net> for pointing this out. BTW, Bill was the 400th - individual to contribute an ACE/TAO bug report, thanks to - everyone for all their help over the years! - -Thu Oct 15 16:50:09 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/SOCK_Dgram_Mcast.i (set_option): Need to convert the - <optval> from char to int for Win32 because the shortest length - of <optval> must be at least sizeof (int) on Win32. Thanks - to Johan Lundin <johan@lundin.com> for reporting this. - -Thu Oct 15 16:40:41 1998 Steve Huston <shuston@riverace.com> - - * tests/Thread_Manager_Test.cpp: Allow suspend/resume to be tried on - pthreads, but don't allow any error other than ENOTSUP. This - catches a bug in Thread_Manager that lost the error values on an - error. - - * ace/Thread_Manager.cpp (ACE_THR_OP macro): Don't remove a thread - from the active threads list if an operation fails with ENOTSUP. - This was causing calls to suspend_grp/resume_grp to erase the list - of threads in a group on pthreads, then wait_grp didn't wait because - it thought there weren't any more threads. - -Thu Oct 15 12:43:46 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Task.cpp (activate): Changed to activate new active objects - using the same grp_id if this task has been activated before and - no new grp_id is specified in activate method. Also, the task's - grp_id will only get updated if it has never been updated even - if <force_active> is set. This prevent the original <grp_id_> - get lost but the consequence if that if users select to - force_activate new tasks with a different grp_id, the new grp_id - will get lost and the only way to wait for these threads is to - either perform a wait for all threads, or wait for each - individual thread by waiting on the thread handles returned by - the activate method. Thanks to Bob McWhirter - <bob@netwrench.com> for motivating this change. - (ACE_Task_Base): Changed to initialize <grp_id_> to -1. - -Thu Oct 15 10:07:13 1998 David L. Levine <levine@cs.wustl.edu> - - * ACE version 4.5.56 released. - -Thu Oct 15 09:54:07 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/run_tests.sh: commented out MT_Reactor_Timer_Test because - it doesn't halt on g++/Solaris or DU 4.0. - - * include/makeinclude/wrapper_macros.GNU: for g++, added - -DACE_LACKS_PRAGMA_ONCE to CCFLAGS. - -Wed Oct 14 23:20:45 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.55 released. - -Wed Oct 14 22:17:31 1998 David L. Levine <levine@cs.wustl.edu> - - * docs/ACE-guidelines.html: added guideline for protection of - header files against multiple inclusion. Thanks to - Eric C. Newton <ecn@smart.net> for pointing out the construct - used by gcc/g++ to minimize unnecessary file inclusion. - Fortunately, other compilers use the same method. And, - thanks to Susan Liebeskind <shl@cc.gatech.edu> for being - the last ACE user to suggest something like this, and to - Pat McNerthney <pat@cartia.com> for spurring the search for - such an optimization. - -Wed Oct 14 12:36:00 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/run_tests.sh: Added the MT_Reactor_Timer_Test. - - * tests/MT_Reactor_Timer_Test.cpp: Fixed a number of bugs with - this test. It seems to work fine on Solaris now. - - * tests/MT_Reactor_Timer_Test.cpp (main): Added a test to make - sure that the ACE_Reactor::handle_events() method properly - counts the number of expired timers. - - * ace/Select_Reactor_T: Updated the various methods so that - handle_events() now works as advertised, i.e., it actually - returns the number of event handlers it dispatched. - - * ace: Added - - #if !defined (ACE_LACKS_PRAGMA_ONCE) - #pragma once - #endif /* ACE_LACKS_PRAGMA_ONCE */ - - To all the header files in ACE. This should speed up - compilation time on platforms whose C++ compilers support - #pragma once. Thanks to Patrick J. McNerthney <pat@cartia.com> - for suggesting this. - - * ace/Functor.h: Moved the definitions of the constructor and - destructor of ACE_Command_Base into the *.i file. - - * ace/Select_Reactor_T: Enhanced dispatch_timer_handlers() so that - it passes the number of timers dispatched as an out parameter to - avoid any ambiguity. - -Wed Oct 14 15:30:42 1998 Steve Huston <shuston@riverace.com> - - * ace/Message_Block_T.h: Removed ACE_Export from definition of template - class ACE_Locked_Data_Block. - -Wed Oct 14 12:36:00 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/config-cygwin32-common.h, - ace/config-cygwin32.h, - ace/OS.h: - Added support for Cygwin32. Thanks to Phil Feairheller - <Phil.Feairheller@emax.com> for contributing this. - - * ace/config-vxworks5.x.h, - ace/config-chorus.h, - ace/config-psos*.h, - ace/config-cygwin32-common.h, - ace/OS.i: - Added and used the new ACE_LACKS_MKFIFO macro. Thanks to Phil - Feairheller <Phil.Feairheller@emax.com> for reporting this. - -Wed Oct 14 11:03:45 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.54 released. - -Wed Oct 14 00:28:10 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.53 released. - -1998-10-14 Nagarajan Surendran <naga@tango.cs.wustl.edu> - - * ace/Synch_T.cpp : Changed ACE_mutex_t to ACE_cond_t for CHORUS - in ACE_Condition constructor. - -1998-10-13 Nagarajan Surendran <naga@tango.cs.wustl.edu> - - * ace/Synch.i (ACE_Mutex::remove): Added a #else for non-chorus - cases instead of #endif to call ACE_OS::mutex_destroy. - - * ace/OS.cpp : Added static member definition - KnCap ACE_OS::actorcaps_[ACE_CHORUS_MAX_ACTORS] - for CHORUS. - - * ace/config-chorus.h: Added ACE_HAS_TSS_EMULATION. - -Tue Oct 13 22:40:40 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/Makefile: - * ace/Message_Block.h: - * ace/Message_Block.i: - * ace/Message_Block.cpp: - * ace/Message_Block_T.h: - * ace/Message_Block_T.i: - * ace/Message_Block_T.cpp: - Added a new variant of the ACE_Data_Block class that holds an - instance of its locking strategy, this is useful because in some - cases the lifetime of the lock is tied to the lifetime of the - Data_Block itself. The Message_Block class was carefullly - modified to support this new feature, i.e. it does not hold a - lock while removing the data block because the hold may be part - of the data block itself. Still all the features in the - Message_Blocks are supported, for instance, a complete - Message_Block chain ca be destroyed while holding a single lock, - shared by all the Data_Blocks in the chain. - -Tue Oct 13 22:39:42 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/MM_Shared_Memory_Test.cpp (client): added an - ACE_ASSERT to check that shm is non-zero. - - * ace/OS.h,config-chorus.h,README: added - ACE_HAS_PTHREAD_PROCESS_ENUM support. Thanks to - Alberto Villarica <Alberto.Villarica.rav@nt.com> and Naga - for tracking the problem with Semaphore_Test hanging. - - * ace/OS.h: changed default PTHREAD_PROCESS_SHARED from 0 to 1. - That way, it's different than PHTREAD_PROCESS_PRIVATE. - -Tue Oct 13 22:09:12 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Mem_Map.cpp (map_it): One more try to get this right ;) - Thanks to Jonathan Reis <reis@minniemouse.cemax.com> for the bug - reports, suggested fixes, and test program. - -Tue Oct 13 21:17:37 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * ace/Asynch_IO.cpp: - * ace/Proactor.cpp: Fixed the problem with POSIX4 implementation - of Asynch_Transmit_File. Thanks to James Hu and Irfan for - reporting this problem and helped me on the fixes. - -Tue Oct 13 18:07:21 1998 Steve Huston <shuston@riverace.com> - - * ace/config-aix-4.2.x.h: Set up so it should work with gcc as well - as xlC. Rearranged defs and removed some duplicates. - Enabled ACE_HAS_4_4BSD_SENDMSG_RECVMSG and removed the redefs - of msgbuf fields. - - * tests/Thread_Pool_Reactor_Test.cpp: Moved the definition of - Acceptor_Handler to a new file, Thread_Pool_Reactor_Test.h to - satisfy AIX xlC's template instantiation. - -Tue Oct 13 15:56:09 1998 Nagarajan Surendran <naga@cs.wustl.edu> - - * ace/OS.i: Fixed a few errors on CHORUS. - -Tue Oct 13 08:48:36 EDT 1998 James CE Johnson <jcej@lads.com> - - * docs/ACE-tutorials.html - * docs/ACE-FMM.html - Added Bob McWhirter's <bob@netwrench.com> "Frequently Made - Mistakes" list. - -Tue Oct 13 07:28:38 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/High_Res_Timer.cpp (dump): replaced ACE_static_casts with - ACE_CU64_TO_CU32, because the method is const. Thanks to Doug - for reporting this. - - * ace/Thread_Manager.cpp (join): replaced __xlC__ test with - _AIX. That way, g++ and xlC will both use the three-arg - join call on AIX. Thanks to Ian Wright <I.Wright@elsevier.co.uk> - for reporting this. - - * ace/Makefile,examples/Bounded_Packet_Relay/Makefile: - updated dependencies. - - * ace/OS.[hi],config-fsu-pthread.h,config-aix-4.[12].x.h, - config-mit-pthread.h,config-hpux-10.x.h,config-hpux11.h, - config-irix6.x-{g++,sgic++}.h,config-mvs.h,config-tandem.h, - config-osf1-3.2.h,config-osf1-4.0.h,config-sco-5.0.0-mit-pthread.h, - config-irix6.x-common.h,README: - removed ACE_HAS_TID_T and ACE_HAS_PTHREAD_T support. ACE_hthread_t - is now a simple typedef of pthread_t. It was before, also, but not - so simple :-) Before, it was a typedef of tid_t on platforms - that had ACE_HAS_TID_T but not ACE_HAS_PTHREAD_T. There were - no such platforms; so, it was pthread_t on all PTHREADS platforms. - Thanks to Ossama, Arturo, and Steve for sorting all this out. - We ended up with just a single typedef, so it was worth it. - - * ace/OS.i (thr_cmp): use pthread_equal with PTHREADS, same as - in ACE_OS::thr_equal (). Thanks to Ossama for pointing out that - they were different, but shouldn't have been. - - * ace/config-aix-4.2.x.h,config-fsu-pthread.h,config-hpux-10.x.h, - config-hpux11.h,config-irix6.x-{g++,sgic++}.h,config-mit-pthread.h, - config-mvs.h,config-osf1-3.2.h,config-osf1-4.0.h, - config-sco-5.0.0-mit-pthread.hconfig-tandem.h,README: - removed ACE_HAS_PTHREAD_EQUAL because it's no longer used. Thanks - to Ossama for motivating the above change to thr_cmp, which had - been the only use of ACE_HAS_PTHREAD_EQUAL. - - * ace/Log_Record.h,OS.h: changed C++-style comments to C-style - comments in preprocessor directives. Thanks to - Fernando D. Mato Mira <matomira@acm.org> for reporting these. - -Tue Oct 13 00:19:42 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/OS.i (sema_destroy): I believe I've fixed the rats nest of - #ifdefs to get semaphores to work correctly on Chorus again. - Thanks to Naga for tracking this down! - - * ace/High_Res_Timer.cpp: Temporarily commented out the - ACE_static_casts so that this will compile with CC. - - * ace/Hash_Map_Manager, - ace/Map_Manager: - Added a public mutex() accessor that allows us to return a - reference to the lock_. This is useful for cases where we're - using ACE_Process_Mutex and need to call remove(). Thanks to - Bob McWhirter <bob@netwrench.com> for this suggestion. - -Mon Oct 12 23:03:26 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Mem_Map.cpp (map_it): Added a minor fix to handle the fact - that Chorus doesn't support filesize() on a shared memory - segment. Thanks to Alberto Villarica - <Alberto.Villarica.rav@nt.com> for reporting this. - -Mon Oct 12 22:18:03 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/High_Res_Timer.cpp (dump): cleaned up output so that it - works and is consistent across all platforms. (long long - printing is not portable: some platforms use %llu and - others use %Lu). - -Mon Oct 12 18:39:09 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Mem_Map.cpp: Revised the code to take the offset into - account when deciding whether to grow the backing store. - - Also, ACE_Mem_Map was trying to be too clever when it tries to - make sure that your offset is a multiple of the allocation - granularity. It ends up messing up user offset and length - calculations. Therefore, I have taken this out of ACE_Mem_Map - code. Users is still welcome to use - ACE_OS::allocation_granularity and - ACE::round_to_allocation_granularity by themselves. - -Mon Oct 12 14:39:15 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Parse_Node.cpp: Added some ACE_const_casts to cleanup the - casting going on here. - - * examples/ASX/CCM_App/CCM_App.cpp: We need to make sure and use - the ACE_SVC_FACTORY_* macros so that the gobbler will be set - correctly. Purify rules! - - * ace/Makefile: Make sure to add the // $ Id: $ CVS string when - recreating Svc_Conf_Tokens.h. - - * ace/Svc_Conf.y: Just to be paranoid, make sure to set the - gobbler function to 0. At least this way we'll get crashes - rather than bizarre errors if users don't use the ACE_*FACTORY* - macros. - -Mon Oct 12 19:19:27 1998 James CE Johnson <jcej@chiroptera.tragus.org> - - * docs/ACE-tutorials.html: - Added a link to Bob McWhirter's Frequently Made Mistakes page. - - * docs/tutorials/014/Makefile - * docs/tutorials/014/Task.{cpp|h} - * docs/tutorials/014/EndTask.h - * docs/tutorials/014/stream.cpp - * docs/tutorials/014/page0[123456].html - A slightly modified version of Bob McWhirter's ACE_Stream tutorial. - -Mon Oct 12 15:59:00 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Message_Block.cpp (size): removed unused local "old_base". - -Mon Oct 12 11:24:45 PDT 1998 James Hu <jxh@entera.com> - - * Asynch_IO.cpp: Minor changes to deal with FMR error. - - * Message_Block.{cpp,i,h}: Changed rd_ptr_ and wr_ptr_ to be - byte offsets from base (). This allows one to resize a - duplicate without trashing other Message_Blocks that may be - referring to the same data block. - - * Proactor.cpp: Made the message block 64 bytes bigger to make - purify happier. - -Mon Oct 12 12:14:45 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Parse_Node.cpp (ACE_Stream_Node): In error cases, the strops - parameter can be NULL. Therefore, we need to protect against - this case. Thanks to David O'Farrell <dave@virgo.aersoft.ie> - for reporting this. - -Mon Oct 12 10:43:09 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * ace/Asynch_IO.cpp (ACE_Asynch_Result): Fixed a double deletion - problem. Thanks to James Hu for reporting this. - -Mon Oct 12 09:43:07 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/Containers_T.h: - * ace/Containers_T.cpp: - Added a new method to modify the size of an ACE_Array. - -Mon Oct 12 09:23:49 1998 David L. Levine <levine@cs.wustl.edu> - - * netsvcs/lib/Name_Handler.cpp (lists_entries): one more try - to fix the egcs 1.1b bug: removed the ptmf temporary entirely. - -Sun Oct 11 17:33:22 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Synch.cpp: Fixed a typo, s/lock_/process_lock_/. Thanks to - Naga for noticing this. - -Sun Oct 11 08:19:33 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-linux-common.h: re-enabled msg_* undefs and defines, - but for libc5 (non-glibc) only. Thanks to JM Strauss - <jms97@club-internet.fr> for verifying that they're needed. - - * netsvcs/lib/Name_Handler.cpp (lists_entries): replaced - switch statement with a multi-branch if statement, to - avoid Internal compiler error 980331 with egcs 1.1b (2.91.57) - (on Linux/alpha). - -Sat Oct 10 18:30:02 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Synch_T: Added a process condition abstraction for Chorus - that is based on a condition variable stored in shared memory. - Thanks Alberto Villarica <Alberto.Villarica.rav@nt.com> for - this. - - * ace/Synch: Added a process mutex abstraction for Chorus that is - based on a mutex stored in shared memory. Thanks Alberto - Villarica <Alberto.Villarica.rav@nt.com> for this. - - * ace/config-chorus.h: Updated the config file for Chorus. Thanks - Alberto Villarica <Alberto.Villarica.rav@nt.com> for this. - - * ace/OS.i: Added rudimentary flock support for Chorus. Thanks - Alberto Villarica <Alberto.Villarica.rav@nt.com> for this. - - * ace/OS.i: Added exec*() support for Chorus. Thanks Alberto - Villarica <Alberto.Villarica.rav@nt.com> for this. - - * ace/config-chorus.h: Added #include of file <am/wait.h>. - - * ace/Local_Name_Space_T.cpp (create_manager_i): Added a special - case for CHORUS so that we use a base address of 0. Thanks to - Alberto Villarica <Alberto.Villarica.rav@nt.com> for reporting - this. - - * ace/Local_Name_Space_T.cpp (create_manager_i): Don't use - ACE_OS::access() if the platform lacks it. Thanks to Alberto - Villarica <Alberto.Villarica.rav@nt.com> for reporting this. - -Sat Oct 10 18:33:06 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * tests/Aio_Platform_Test.cpp: Comments. - -Sat Oct 10 17:42:18 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.52 released. - -Sat Oct 10 16:44:24 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Service_Repository.cpp: Improved the documentation and added - some new ACE_const_casts. Thanks to Eric Palantir - <palantir@net56.net> for motivating this. - - * ace/Service_Config.cpp (open): The logger key should be set to - the static logger key only if the key supplied is EQUAL with the - default logger key. Thanks to Eric Palantir - <palantir@net56.net> for reporting this. - -Sat Oct 10 16:28:00 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/Synch.h: - * ace/Synch.i: - * ace/Synch.cpp: - The ACE_Process_Mutex class was allocating one of its members - from the heap, thus it could not be placed in shared memory. - The problem was that the member required the creation of a - unique name if the user did not provide one; making the buffer - for this unique name a member of ACE_Process_Mutex allowed us to - initialize the lock_ member while still allocating it as a - member of the class. Thanks to Bob McWhirter - <bob@netwrench.com> for helping to track this down. - -Sat Oct 10 12:45:31 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Malloc_T.h: Added a documentation entry for class - ACE_Cached_Allocator. Thanks to Erik Koerber - <erik.koerber@siemens.at> for reporting this. - -Sat Oct 10 00:40:05 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.51 released. - -Fri Oct 09 23:47:42 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Mem_Map.cpp (map_it): Fixed the setting of length_ again. - Hopefully, it will be right this time. - -Fri Oct 9 15:37:26 PDT 1998 James Hu <jxh@entera.com> - - * ace/Mem_Map.cpp: Protect against assigning 0 to length_. This - was causing JAWS to fail. - -Fri Oct 9 16:59:26 1998 Nagarajan Surendran <naga@cs.wustl.edu> - - * examples/IPC_SAP/SOCK_SAP/run_test: - * examples/IPC_SAP/SOCK_SAP/summarize: - Fixed the scripts to print the results correctly.Fixed - comments and usage. - -Fri Oct 09 16:35:00 1998 Chris Gill <cdgill@cs.wustl.edu> - - * ace/Timer_Queue_Adapters.cpp - ace/ace_dll.dsp - examples/Bounded_Packet_Relay/Thread_Bounded_Packet_Relay.{cpp, h}: - Fixes for deferred callbacks in the BPR example on NT. - -Fri Oct 09 11:59:26 1998 David L. Levine <levine@cs.wustl.edu> - - * include/makeinclude/wrapper_macros.GNU: removed RM override - because it's not necessary. Thanks to - Tres Seaver <tseaver@palladion.com> for this suggestion. - - * include/makeinclude/platform_chorus_ghs.GNU, - platform_irix6.x-sgic++.GNU,platform_osf1_3.2.GNU, - platform_osf1_4.0.GNU,platform_osf1_4.0_rcc.GNU, - platform_sunos5_sunc++.GNU: - replaced hard-coded /bin/rm -f with $(RM). Thanks to - Tres Seaver <tseaver@palladion.com> for this suggestion. - - * ace/Containers_T.{h,cpp}: removed unecessary (and impolite) - argument name. - -Fri Oct 09 00:44:21 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/OS.i (mmap): CreateFileMapping must be created with a length - of 0 (which will get translated to the size of the file). This - must not be <len> since <len> only deals with the mapping of the - view and not with the file mapping object. It is ok to use 0 - since we are trying to emulate UNIX's mmap. - - * ace/ACE.cpp (round_to_allocation_granularity): - ace/OS.i (allocation_granularity): - - New methods. We need allocation granularity when rounding off - the offset in mmap and not the page size. Only on Win32, - allocation granularity is different from pagesize. - - * ace/High_Res_Timer.cpp: Added the inclusion of Object_Manager.h. - Otherwise, NT was picking up the definition of - ACE_Static_Object_Lock. - - * ace/Mem_Map.cpp (map_it): Fixed the problem where a requested - length of less than the filesize was being ignored. Also, - changed round_to_pagesize() to round_to_allocation_granularity(). - Thanks to Jonathan Reis <reis@minniemouse.cemax.com> for - pointing this bug out. - -Fri Oct 09 00:02:01 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * ace/Asynch_IO.cpp: The YET another problem with doing multiple - Asynch_Accepts have been fixed. Thanks very much James Hu for - reporting this. I was calling reactor's resume_handlers and - suspend_handlers instead of only for one handle. Thanks very - much Irfan! for pointing this out. - -Thu Oct 08 23:06:20 1998 David L. Levine <levine@cs.wustl.edu> - - * config-linux-common.h: on Alpha only, added ACE_POLL_IS_BROKEN. - High_Res_Timer_Test revealed that it's necessary with - glibc 2.0.7-13. I don't think that its necessary on - Pentiums, but maybe it depends on glibc version. - - * OS.i (gethrtime),High_Res_Timer.cpp OS.i,README: - added ACE_HAS_ALPHA_TIMER support. See the comment - in ACE_OS::gethrtime about it being limited to 32 bits. - I don't know why, but that severely limits the range - of high res times. Therefore, it's not enabled by default - in any config files. - -Thu Oct 08 15:22:22 1998 Arturo Montes <mitosys@colomsat.com.co> - - * ace/OS.{i,cpp}: Reverted FSU thread changes for now. - -Thu Oct 08 15:11:34 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ACE-INSTALL.html: Updated document about spawning new thread - when ACE_HAS_MFC is defined. CWinBeginThread is not used - automatically. Users have to explicitly ask for this. - -Thu Oct 8 12:11:08 1998 Nagarajan Surendran <naga@cs.wustl.edu> - - * examples/IPC_SAP/SOCK_SAP/run_test: - * examples/IPC_SAP/SOCK_SAP/summarize: - - Added these scripts to run the test and summarize the - results. These scripts are modelled similar to the - $TAO_ROOT/performance-tests/Cubit/TAO/MT_Cubit scripts. - Thanks to David for the scripts. - -Thu Oct 08 08:23:09 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/High_Res_Timer.cpp (get_registry_scale_factor): - default global_scale_factor to 1000 instead of 1, - because ACE_OS::gethrtime () defaults to nanoseconds. - Thanks to Peter Nordlund <petern@nada.kth.se> for - reporting that High_Res_Timer_Test failed on Irix without - this fix. - - * ace/Makefile (Svc_Conf_l.cpp): use Doug's flex to generate - this file, if running on a DOC group machine, instead of - using whatever flex is first on the users path. - - * etc/README: fixed typo. - - * ace/Svc_Conf_l.cpp,etc/Svc_Conf_l.cpp.diff (ACE_YY_DECL): - initialize ace_yy_cp and ace_yy_bp to 0 to avoid egcs 1.1 - warning about possible use before initialization. - -Wed Oct 7 23:47:29 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - * ace/Asynch_IO.cpp: - * ace/Proactor.cpp : Fixed the problem with doing multiple - Asynch_Accepts. Thanks to James Hu for reporting this - problem. Thanks very much Irfan!!!, for helping me a lot in fixing - this one. - -Wed Oct 07 23:14:36 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.50 released. - -Wed Oct 7 21:44:20 1998 Douglas C. Schmidt <schmidt@lambada.cs.wustl.edu> - - * ace/Stream.h: Added a default value of 0 for both put() and - get(), which is more consistent with the underlying putq() and - getq() methods on ACE_Task. Thanks to Bob McWhirter - <bob@netwrench.com> for this suggestion. - -Wed Oct 7 18:18:14 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * README: - * ace/config-irix6.x-g++.h: - * ace/config-irix6.x-common.h: - * ace/config-irix6.x-sgic++-nothreads.h: - Peter Nordlund <petern@nada.kth.se> kindly submitted a common - configuration file for IRIX 6.X that works with both g++ and SGI - MIPSPro 7.X - -Wed Oct 7 17:21:17 1998 Arturo Montes <mitosys@colomsat.com.co> - - * ace/OS.{i,cpp}: FSU pthreads is draft6, but FSU in SCO is an - special port. The API is draft6 but return values is DRAFT7 - (really I am moving to STD). - -Wed Oct 07 09:30:00 CDT 1998 Chris Gill <cdgill@cs.wustl.edu> - - * ace/Functor.{cpp, h, i} - ace/Functor_T.{cpp, h, i} - ace/Makefile: - - Added ACE_Command_Base abstract base class and derived class - template ACE_Command_Callback to ACE to support the GOF Command - design pattern. - - * ace/Timer_Queue_Adapters.{cpp, h}: - - Added registration and deferred executiton of ACE_Command_Base - objects to ACE_Thread_Timer_Queue_Adapter. This is conditionally - compiled if the ACE_HAS_DEFERRED_TIMER_COMMANDS symbol is defined. - - * examples/Bounded_Packet_Relay/BPR_Drivers.{cpp, h} - examples/Bounded_Packet_Relay/BPR_Drivers_T.{cpp, h} - examples/Bounded_Packet_Relay/Makefile - examples/Bounded_Packet_Relay/Thread_Bounded_Packet_Relay.{cpp, h} - examples/Bounded_Packet_Relay/bpr_thread.cpp: - - Changed example to use ACE_Command_Callback objects, modified event - handlers to register ACE_Command_Callback objects for deferred - excecution of timer cancellations and registrations. - -Wed Oct 07 02:37:58 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.49 released. - -Wed Oct 7 00:11:33 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ACE-INSTALL.html: Added more information on using MFC with ACE, - some explanations about using run-time libraries and information - about VC6. - - * tests/version_tests/version_tests.dsw: Removed - MsgQueue_Notifications_Test.dsp and added - Message_Queue_Notifications_Test. - - * tests/*.dsp: Changed to use DLL version of run-time libraries - for static builds. Notice that user libraries are still linked - in statically. Only the run-time libraries are effected. - - * ace/README: Added information for ACE_USES_STATIC_MFC. - - * ace/config-win32-common.h: Re-structured MFC related macros - (_AFXDLL and _WINDLL) so that it allows us to use MFC in static - ACE libraries and the setting of MFC can propagate to - applications. By default, ACE uses MFC DLL if ACE_HAS_MFC=1. - If you want to use MFC as a static library, besides - ACE_HAS_MFC=1, also define ACE_USES_STATIC_MFC. Thanks to Jason - Milley <Jason.Milley.jcmilley@nt.com> for noticing the problem - of compiling static ACE library with MFC. - -Tue Oct 6 15:06:21 1998 Steve Huston <shuston@riverace.com> - - * ace/Asynch_IO.cpp (ACE_Asynch_Accept_Handler): Removed the - version of the ctor with no args - it's equivalent to the one - with all defaulted args, and HP aCC complained. - - * ace/NT_Service.{h cpp i}: New class, ACE_NT_Service. This provides - a class and supporting macros to integrate NT Services into the - ACE framework at run-time. I'll work on getting an example into - the kit soon. - - * ace/ACE_Library.{mak mdp}: - ace/ace_dll.dsp, ace_lib.dsp: Added NT_Service files. - -Tue Oct 6 12:49:37 EDT 1998 James CE Johnson <jcej@lads.com> - - * docs/tutorials/006/client_handler.cpp - * docs/tutorials/006/page05.html - Susan Liebeskind discovered that invoking the baseclass - close() after handle_close() in Client_Handler::close() - causes the object to be destructed twice. I've removed - the call to the baseclass close(). She reports success - on Solaris, Dec and AIX. I've verified that Linux also - works fine with this fix. - -Tue Oct 06 09:53:22 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-fsu-pthread.h,config-mit-pthread.h,config-mvs.h, - config-sco-5.0.0-mit-pthread.h,config-tandem.h,README: - removed ACE_HAS_YIELD_VOID_PTR because it's no longer used. - Thanks to Ossama for reporting this. - - * config-dgux-4.x-ghs.h,config-hpux-10.x.h,config-mit-pthread.h, - config-mvs.h,config-sco-5.0.0-mit-pthread.h,config-tandem.h,README: - removed ACE_LACKS_KEYDELETE because it's no longer used. Thanks to - Ossama for reporting this. - -Tue Oct 06 03:36:22 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.48 released. - -Tue Oct 06 02:53:28 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.47 released. - -Tue Oct 6 02:16:01 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * ace/Asynch_Acceptor.cpp: - * ace/Asynch_IO.cpp (handle_input): - * ace/Proactor.cpp: - In POSIX implementation of Asynch_Accept, We dont have to read - initial data to read on to the Message Block given to the - Asynch_Accept. So we dont use it at all. We get local and peer - address from using socket and pass back to the application. - -Mon Oct 05 23:58:16 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.46 released. - -Mon Oct 5 23:19:30 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.cpp (fork): Changed to use fork1 when ACE_HAS_STHREAD is - defined. Otherwise, file descriptors get messed up and socket - connections get lost after exec'ing a new program. Generally - speaking, you should not simply fork a multi-threaded program - without calling exec (). On pthread compliant platform, fork - does what fork1 does on solaris thread. - -Mon Oct 05 21:21:42 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.45 released. - -Mon Oct 05 15:59:55 1998 David L. Levine <levine@cs.wustl.edu> - - * ACE version 4.5.44 released. - -Mon Oct 05 15:23:04 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.43 released. - -Mon Oct 5 15:34:41 1998 James CE Johnson <jcej@chiroptera.tragus.org> - - * docs/tutorials/002/handler.h: Added includes for INET_Addr.h, - SOCK_Stream.h and Reactor.h. Susan Liebeskind pointed out that - AIX gets confused in processing templates if these aren't present. - -Mon Oct 05 10:02:37 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-chorus.h: added ACE_LACKS_TRUNCATE. Thanks - to Steve Kay <slk1@icore.ih.lucent.com> for reporting this. - - * tests/Semaphore_Test.cpp: added some ifdefs so that it - builds cleanly with ACE_HAS_POSIX_SEM. - -Sun Oct 05 03:49:09 PDT 1998 James Hu <jxh@entera.com> - - * ace/Asynch_Accept.* - * ace/Asynch_IO.* - Made some small modifications to support passing in and - retrieving an ACT when performing asynchronous accept. - -Sun Oct 04 22:07:09 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-fsu-pthread.h,config-hpux-10.x.h,config-lynxos.h, - config-mit-pthread.h,config-mvs.h,config-osf1-3.2.h, - config-osf1-4.0.h,config-sco-5.0.0-mit-pthread.h,config-tandem.h, - README: removed ACE_HAS_PTHREAD_GETSPECIFIC_DATAPTR, because it's - no longer used. Thanks to Ossama for reporting this. - - * ace/config-tandem.h,README: removed ACE_HAS_PTHREAD_YIELD_VOIDPTR, - because it's no longer used. It was commented out in - config-tandem.h, anyways. Thanks to Ossama for reporting this. - -Sun Oct 4 20:00:44 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * bin/auto_compile: - Fixed the regular expression to detect compile errors. - The user can pass extra arguments to GNU make, the arguments are - given as the script is invoked. - -Sun Oct 4 14:30:03 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/TP_Reactor.cpp (handle_events): Made sure we never suspend - the <notify_handler_> without holding the <token_>. Otherwise, - depend on how an OS schedules ready threads, we may have a - Reactor that could never be woken up. This leads to a very - delicate race condition when other threads which need to modify - Reactor's state get block on the token (because they couldn't - wake up the reactor). These threads later block the - nofify_handler thread when it's ready to resume - <notify_handler_.> - (notify_handle): Since we don't suspend the <notify_handler_>, - there's no need to resume it here. - -Sat Oct 3 13:11:48 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * bin/auto_compile: - Removed some of the tests, they were crashing more often than - not. - -Sat Oct 3 09:36:09 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * examples/Reactor/Proactor/test_proactor.cpp: Comments. - -Sat Oct 03 09:24:45 1998 Susan Liebeskind <shl@cc.gatech.edu> - - * ace/Task.h,Thread.h,Thread_Manager.h,Timer_Queue_Adapters.h - (activate,spawn,spawn_n): added THR_JOINABLE to THR_NEW_LWP - default flags. - - On the boxes which implement POSIX 1003.1.b (Solaris, Digital Unix) - threads spawned using default flags provided by those methods were, - and still are, created *joinable*. - - On the box which implements Draft 7 (AIX), the spawned threads were - *detached*. With this change, they'll be created *joinable*, - instead. - - This change ensures consistent behavior across all platforms. - -Sat Oct 03 09:04:44 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/ACE.cpp (set_handle_limit): wrapped the final - return statement with #ifdef __sgi. Irix complains without - this return statement. DEC cxx (correctly) says that it's not - reachable. ACE_NOTREACHED won't work here, because it handles - both platforms the same. - - * include/makeinclude/wrapper_macros.GNU: with quantify=1 - on sparcs, add -record-register-window-traps to $(PRELINK). - Thanks to Andy for discovering this Quantify option, for sparcs. - -Fri Oct 2 23:43:51 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/config-irix6.x-g++.h: - * ace/config-irix6.x-sgic++-nothreads.h: - * ace/OS.h: - IRIX puts <xti.h> in <sys/xti.h> header of IRIX, it is only - relevant for the autoconf project. - - * ace/ACE.cpp: - Added an extra return to make IRIX compiler happy. - -Fri Oct 2 21:48:18 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/Thread_Pool_Reactor_Test.cpp: Send the message length - before each message so we don't need to use time delay to - separate consecutive requests. - -Fri Oct 02 16:27:07 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Thread_Manager.cpp: ACEified some code. - (terminate): Do not register a thread as being terminated if it - is being joined by another thread. Just remove it from - Thread_Manager's thr_list_. - -Fri Oct 2 00:19:04 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/Thread_Pool_Reactor_Test.cpp: Fixed explicit template - instantiation. - - * ace/Strategies_T.{h,i,cpp}: Removed classes - ACE_Thread_Pool_Strategy and ACE_Svc_Handler_Pool_Strategy. - - * tests/run_tests.{sh,bat}: Added Thread_Pool_Reactor_Test into - one-buttoned test scripts. - -Thu Oct 01 12:04:30 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/Thread_Pool_Reactor_Test.cpp: Added a command line argument - parser. - -Thu Oct 1 08:51:00 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/Thread_Pool_Reactor_Test.cpp: Reformatted the - code a bit. - - * ace/ACE.cpp (max_handles): Added yet another fix for AIX. - Thanks to Chris Lahey for this. - -Thu Oct 01 01:05:49 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/tests.dsw: - * tests/version_tests/version_tests.dsw: - * tests/Thread_Pool_Reactor_Test.{cpp,dsp}: Added a new test that - torture tests the new ACE_TP_Reactor. - -Thu Oct 01 00:09:35 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/ACE.cpp: Fixed max_handles(). - - * tests/Conn_Test: Removed template specialization for - INET_Addr.hash(). - - * ace/Addr.i (hash): - * ace/INET_Addr.i (hash): - - Finally gave up with template specialization hell and freak'in - broken compilers and simply added a hash() method to ACE_Addr - and ACE_INET_Addr. ACE_Addr::hash() simply return 0 and should - be overwritten by subclasses that can provide better hashing. - -Wed Sep 30 10:16:56 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/ACE.cpp: Modified max_handles() so that it goes the right - thing on platforms like AIX that don't have any predefined limit - on the number of handles. Thanks to Chris Lahey - <CLahey@cccis.com> for reporting this. - -Wed Sep 30 01:56:54 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Strategies_T: - - - ACE_Refcounted_Hash_Recyclable::operator==(const T &rhs): - Added new method to prevent implicit type conversions. - - - Changed ACE_Hash_Addr::hash_i to return u_long instead of - size_t. This makes it similar to the return value from - hash(). - - - Added hash caching ability to ACE_Hashable. - - - Removed the use of ACE_Hash_Addr inside the - ACE_Cached_Connect_Strategy. This allows us to reduce - implicit type conversions inside connect_svc_handler(). - - Users are now required to specialize - ACE_Refcounted_Hash_Recyclable<ACE_INET_Addr>::hash_i (void) instead - of ACE_Hash_Addr<ACE_INET_Addr>::hash_i(const ACE_INET_Addr&addr) - - * tests/Conn_Test.cpp: Changed template specialization of - ACE_Hash_Addr<ACE_INET_Addr>::hash_i(const ACE_INET_Addr&addr) - to ACE_Refcounted_Hash_Recyclable<ACE_INET_Addr>::hash_i (void). - - * ace/OS.cpp (open): Fixed a couple of things that were broken - with respect to when the SetFilePointer was called and when lock - was released. Also fixed the UNICODE version of open(). BTW, - these functions had to be moved from OS.i to OS.cpp since the - ACE_Managed_Object is not visible from OS.i. - -Wed Sep 30 02:29:48 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * performance-tests/TTCP/ACE-C++/Makefile: - * performance-tests/TTCP/ACE-C++/wrapper-new-ttcp.cpp: - Hacked so it would compile, don't know anything further than - that. - -Tue Sep 29 21:55:52 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/ace.dsw: Removed Connector.cpp from the compile list since - it is a files with template classes only. - -Tue Sep 29 21:14:02 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.i (open): Grab a lock from the Object_Manager when - O_APPEND is defined to simulate atomic behavior on most UNIX - platforms. Thanks to Irfan. - -Tue Sep 29 19:16:57 1998 James CE Johnson <jcej@chiroptera.tragus.org> - - * docs/tutorials/007/thread_pool.h - * docs/tutorials/007/thread_pool.cpp - Added virtual methods for open() and close() that match the - baseclass. This will keep some compilers from complaining about a - partial-overload attempt. Thanks to Bob McWhirter for catching this. - -Tue Sep 29 16:13:10 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Strategies_T: - * ace/Connector: - - Added accessors for the strategy. - -Tue Sep 29 14:04:49 EDT 1998 James CE Johnson <jcej@lads.com> - - * docs/tutorials/013/page08.html: Removed link to message_queue. - Thanks to Jeff Hellzen for pointing this out. - -Tue Sep 29 11:05:04 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/README: removed ACE_HAS_ONLY_TWO_PARAMS_FOR_ASCTIME_R_AND_CTIME_R - because it is no longer used. Thanks to Ossama for reporting this. - - * ace/config-fsu-pthread.h,config-mit-pthread.h,config-mvs.h, - config-sco-5.0.0-mit-pthread.h,config-tandem.h,README: - removed ACE_HAS_PTHREAD_DSTATE_PTR because it is no longer used. - Thanks to Ossama for reporting this. - -Mon Sep 28 20:35:49 1998 Sergio Flores <sergio@tango.cs.wustl.edu> - - * ace/Containers_T.h: - * ace/Containers_T.cpp: Added begin () and end () to - ACE_Unbounded_Queue. - -Mon Sep 28 16:06:05 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.*,Object_Manager.{h,cpp}: removed ACE_HAS_TSS_EMULATION's - support for ACE_HAS_NATIVE_KEYS. Now, if ACE_HAS_TSS_EMULATION - is used and ACE_HAS_THREAD_SPECIFIC_STORAGE is #defined, then - the ACE TSS emulation will use one native TSS key. - - ACE_TSS_EMULATION may be useful on even on platforms that - have native thread specific storage. It offers these - advantages: - - 1) ACE's TSS emulation offers a configurable number of TSS - keys, via ACE_DEFAULT_THREAD_KEYS. Most (all?) native TSS - implementations have a fixed number of keys. LynxOS 3.0.0, - for example, only has three keys available to applications. - - ACE_DEFAULT_THREAD_KEYS defaults to 64, to match the - number of native keys on Windows NT. - - 2) ACE's TSS emulation recycles deleted keys. Some native TSS - implementations, such as POSIX Draft 4, POSIX Draft 6, and - Solaris, do not allow deletion of TSS keys. Therefore, - unused keys cannot be recycled. - - 3) ACE's TSS emulation calls destructors on TSS objects in the - main thread. Solaris' native TSS, for example, does not. - - There is one known drawback to using ACE's TSS emulation: it is - slower than using native TSS. The performance penalty is - probably negligible for most applications, however. It involves - just an additional function call, an array index, and three numeric - comparisons beyond the native TSS call. The function call is - _not_ a virtual function call. (On MVS, there's an additional - memcpy of the TSS key with TSS emulation.) - - TSS emulation is enabled by default in the ACE configurations - for VxWorks, pSOS, and LynxOS. - - Many thanks to Arturo Montes <mitosys@colomsat.net.co> for - expanding TSS emulation to platform that have native TSS. - -Sun Sep 27 20:12:13 EDT 1998 James CE Johnson <jcej@chiroptera.tragus.org> - - * docs/tutorials/index.html: Linked in Tutorial 13 - -Sun Sep 27 18:53:25 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Map_Manager_Test.cpp: - Instead of clearing the capacity and size in the - free_search_structure() method we do it on the close() - method. The first method is also used in other places... - -Sun Sep 27 18:25:57 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.i (readdir_r): added __USE_POSIX test for three-arg - ::readdir_r (). Thanks to james@tsunami.com for providing - the patch. - -Sun Sep 27 09:35:04 1998 James CE Johnson <jcej@chiroptera.tragus.org> - - * docs/tutorials/013/* - Completed Tutorial 013! The code is up to date and compilable on - RedHat Linux with egcs 1.1. It may need some template help on other - platforms. The HTML is done and in synch with the code. - -Sun Sep 27 01:52:36 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/INET_Addr.cpp: - The get_host_name() method was returning the first name, and not - looking up in the alias list for the right match with the - address. - -Sun Sep 27 00:18:48 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Makefile: Updated dependency. - - * ace/OS.cpp (invoke): - * ace/Thread_Manager.cpp (ace_thread_manager_adapter): - (ACE_Thread_Exit::instance): Removed conditional macro - ACE_HAS_PTHREAD_SIGMASK so the Thread_Exit instance can be place - in TSS. This was guarded by ACE_HAS_PTHERAD_1003_DOT_3 which - later merged with ACE_HAS_PTHERAD_SIGMASK. However, the - origianl intension of this condition was to fix a bug in Xavier - pthread implementation. The effect of merging the two macros - forces ACE_Thread_Exit be allocated from stacks which, in turn, - prevent threads from exiting properly when pthread_cancel is - used. - - Linux is the only platform that I know which uses Xavier thread - library. The bug has apparently been fixed. If your platform - segfaults while spawning threads, please let me know. Thanks to - Chris Gill for noticing the abnormal behavior when calling - ACE_Thread::thr_cancel. - -Sat Sep 26 23:20:52 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * ace/Proactor.cpp: Fixed the g++ warnings. - -Fri Sep 25 23:19:52 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Sched_Params.cpp: use both ACE_HAS_STHREADS and - ACE_HAS_PRIOCNTL. With just ACE_HAS_PRIOCNTL, the - min/max priority values weren't right on DU 4.0. With - this change, we're back to the strict POSIX interface - on DU 4.0, and SunOS if ACE_HAS_STHREADS is not #defined. - -Fri Sep 25 21:58:35 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/ACE.cpp (set_handle_limit): Added appropriate return value. - -Fri Sep 25 22:10:38 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/Map_Manager.cpp: - Map_Manager::close() did not reset the capacity or current size - of the map. - -Fri Sep 25 18:24:17 1998 Darrell Brunsch <brunsch@cs.wustl.edu> - - * ace/Proactor.{h,cpp}: Had to allow the definition of - POSIX_COMPLETION_STRATEGY for the do-nothing constructor on - NT. - -Fri Sep 25 18:07:19 EDT 1998 James CE Johnson <jcej@lads.com> - - * A few more minor changes to docs/tutorials/013. With luck, the - HTML part will be done this weekend! - -Fri Sep 25 14:51:54 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * ace/Asynch_IO.h: - * ace/Asynch_IO.cpp: - * ace/Proactor.h: - * ace/Proactor.cpp: - Implemented Asynch_Accept to work for AIO_CONTROL_BLOCKS strategy of - completion notification. - - Defined an auxillary Accept_Handler called ACE_AIO_Accept_Handler in - addition to the ACE_Asynch_Accept_Handler. ACE_AIO_Accept_Handler - holds the notification pipe and does a read on it to handle the - <ACE_Asynch_Accept::Result> coming from Asynch_Accept_handler. - - THANKS to Doug and Irfan for suggesting this 'notification pipe' based - implementation for AIO_CONTROL_BLOCKS strategy, so that Proactor will - work on platforms where POSIX4 RT_Signals are broken (Solaris 2.6 !) - - Note : Proactor uses AIO_CONTROL_BLOACKS strategy by default on - POSIX4 platforms. Call the constructor with RT_SIGNALS to enable - Real Time singal implementation. - - This should become very easier when we finish organizing these - files according to the Bridge pattern. - -Fri Sep 25 12:40:45 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-sunos5.{5,6}.h: removed #define/#undef of - ACE_THR_PRI_FIFO_DEF. They're no longer needed with the - hard-coded ACE_THR_PRI_* values for Solaris in ace/OS.h. - - * ace/OS.i: removed carriage returns. Thanks to Darrell - for noticing it. - - * tests/Handle_Set_Test.cpp: removed ACE_Node<ACE_HANDLE> - template instantiation because it conflicted with the - ACE_Node<ACE_INT32> instantiation in ace/Stats.cpp. - - * docs/ACE-porting.html: updated "auto configure" link. Thanks - to Ossama for reporting this. - - * ace/ACE.cpp (set_handle_limit): on platforms with - ACE_LACKS_RLIMIT or ! RLIMIT_NOFILE, don't use - ACE_NOTSUP_RETURN if the new_limit is <= the cur_limit. - On those platforms, the limit can't be changed anyways, - and the request was _not_ to increase the limit. So, - it's a no-op; just return 0. - -Fri Sep 25 12:15:00 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace: The following ACE_TRACE calls being made during the - creation of the ACE_Log_Msg instance. The ACE_TRACE calls then - try to create the ACE_Log_Msg instance which then ends up - executing the ACE_TRACE's. Etc, etc, etc... - - Here are the methods with the ACE_TRACEs that I commented out to - get ACE to run: - - ACE_IPC_SAP::~ACE_IPC_SAP - ACE_SOCK::ACE_SOCK - ACE_SOCK::~ACE_SOCK - ACE_SOCK_IO::ACE_SOCK_IO - ACE_SOCK_IO::~ACE_SOCK_IO - ACE_SOCK_Stream::ACE_SOCK_Stream - ACE_SOCK_Stream::~ACE_SOCK_Stream - ACE_Thread::keycreate - ACE_Thread::setspecific - ACE_Thread::getspecific - - Thanks to "Patrick J. McNerthney" <pat@cartia.com> for this bug - report. - -Fri Sep 25 10:10:12 1998 Steve Huston <shuston@riverace.com> - - * ace/OS.i (cond_timedwait): Add EINTR to the list of errno values - that get changed to ETIME on wait timeout. EINTR is from LynxOS. - Thanks to David Levine for this fix. - - * tests/Semaphore_Test.cpp: Remove the assertion that a timed out - semaphore will return EINTR for ACE_HAS_PTHREADS_DRAFT4. All - platforms expect ETIME, which is normalized in - ACE_OS::cond_timedwait. - -Thu Sep 24 22:31:30 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.h: hard-coded the ACE_THR_PRI_* values on suns. - SunOS 5.6 could use sched_get_priority_min/max () for FIFO - and RR. But for OTHER, it returns negative values, which - can't be used. And, sched_get_priority_min/max () aren't - supported in SunOS 5.5.1. It would really be helpful - if SunOS defined PRI_FIFO_MIN, etc., in sched.h, but - it doesn't, probably because its process scheduling is - so flexible. Thanks to Russ Noseworthy - <rnosewor@objectsciences.com> for helping to figure this - out. - -Thu Sep 24 17:54:26 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/Asynch_IO.cpp: - Removed duplicate instantiation of a template, IRIX does not - like this. Thanks to Ossama Othman - <othman@astrosun.tn.cornell.edu> because his configure script - detected the Asynch I/O calls on IRIX and enabled this ACE - code. - -Thu Sep 24 16:28:32 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/config-win32-common.h: ACE_HAS_TEMPLATE_TYPEDEFS was defined - for VC4.1 and VC4.2. Template typedefs in Strategies_T.cpp - broke the VC4.2 compiler. Therefore, ACE_HAS_TEMPLATE_TYPEDEFS - was deprecated for VC4.1 and VC4.2. I also checked VC5.0 and it - didn't work. Therefore, for the time being, none of the VC - compilers support ACE_HAS_TEMPLATE_TYPEDEFS. I didn't try - VC6.0. - - * ace/Strategies_T.cpp (check_hint_i ): Changed the signature so - that it is identical to find_or_create_svc_handler_i(). For - some strange freakin reason, the VC4.2 could not gork - check_hint_i() but was able to gork - find_or_create_svc_handler_i. - - * ace/ACE_Library.mdp: Added Select_Reactor_Base.cpp and - Container.cpp to make ACE build with VC4.2. - -Thu Sep 24 13:30:00 CDT 1998 Chris Gill <cdgill@cs.wustl.edu> - - * examples/Bounded_Packet_Relay/README - examples/Bounded_Packet_Relay/Bounded_Packet_Relay.{dsp,dsw} - - Updated README, added in MSVC++ project, workspace files. - -Thu Sep 24 12:48:58 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Containers_T.cpp (ACE_{Bounded,Fixed}_Set_Iterator::done), - ace/Map_Manager.cpp (ACE_Map_Iterator_Base::done): - added ACE_CAST_CONST to the static cast. Thanks to Ossama for - reporting a compilation failure on Sun C++ 4.2/Solaris 2.6 - without it. - - * ace/High_Res_Timer.cpp (global_scale_factor): on Linux, - only use BogoMips if the CPU is an alpha. It would also - work directly on Pentium Pro, but not other Pentiums. With - a little effort, it could be made to work there, see the - BogoMips mini-HOWTO. Thanks to Ossama for enlightening me - on this corner of Linux. - - * tests/Upgradable_RW_Test.cpp (main): delete dynamically - allocated reader_tasks and writer_tasks, and arrays, at end of test. - -Thu Sep 24 09:17:32 1998 Steve Huston <shuston@riverace.com> - - * ace/Containers_T.h: Added #include "ace/Containers.h" - AIX xlC - needs this when instantiating templates. - - * ace/Dirent.cpp: Do the HP check using only compiler-defined - preprocessor macros since config.h isn't included. - - * ace/OS.i: Fixed comments that referenced DCE threads. - Changed readdir_r #ifdefs to handle pthreads drafts 4 and 6 - the same, and split HP-UX 10.x off as a non-conformant player. - Thanks to David Levine for sorting this out with LynxOS. - - * ace/Thread_Manager.cpp: Changed occurrences of - ACE_HAS_DCE_DRAFT4_THREADS to ACE_HAS_PTHREADS_DRAFT4. Corrected - a call to pthread_detach. Changed a couple of calls to - pthread_detach on HP-UX 10.x to duplicate the thread handle before - the call because pthread_detach on HP-UX 10.x clears the handle - and it was still needed. - On AIX, xlC doesn't match the call to - ACE_Thread::join(ACE_hthread_t, void ** = 0) correctly when the - second arg is specified. So call the 3-arg variety on AIX, knowing - that the second arg is ignored underneath on pthreads. - -Wed Sep 23 22:13:04 1998 James CE Johnson <jcej@chiroptera.tragus.org> - - * docs/tutorials/006/server.cpp: - Wrapped !defined(ACE_HAS_GNU_REPO) around the explicit template - instantiation. - - * docs/tutorials/005/client_handler.cpp (handle_input): - * docs/tutorials/006/client_handler.cpp (svc): - * docs/tutorials/006/client_handler.cpp (handle_input): - * docs/tutorials/007/client_handler.cpp (svc): - * docs/tutorials/007/client_handler.cpp (handle_input): - Use ACE_OS::memset() instead of direct call to memset() - - * docs/tutorials/005/Makefile: - * docs/tutorials/007/Makefile: - Touch .depend if it does not exist. - -Wed Sep 23 22:03:19 1998 Arturo Montes <mitosys@colomsat.net.co> - - * ace/config-sco-5.0.0.h: added ACE_LACKS_READDIR_R. - -Wed Sep 23 14:26:44 EDT 1998 James CE Johnson <jcej@lads.com> - - * docs/tutorials/005/server.cpp - docs/tutorials/006/server.cpp - docs/tutorials/007/server.cpp - docs/tutorials/008/Makefile - docs/tutorials/009/Makefile - docs/tutorials/013/Makefile - docs/tutorials/013/block.cpp - docs/tutorials/013/block.h - docs/tutorials/013/data.h - docs/tutorials/013/message_queue.cpp - docs/tutorials/013/mld.cpp - docs/tutorials/013/mld.h - docs/tutorials/013/page01.html - docs/tutorials/013/page02.html - docs/tutorials/013/page03.html - docs/tutorials/013/page04.html - docs/tutorials/013/task.cpp - docs/tutorials/013/task.h - docs/tutorials/013/work.cpp - docs/tutorials/013/work.h - - Fixed explicit template instantiaions in - tutorials 5, 6, 7. - - Fixed a nasty bug in 9's Makefile (and removed - similar comment in 8's Makefile) - - Preliminary version of 013 committed. The code - worked before I began "optimizing" and should work - again in a couple of days. The HTML is not yet - done but will be by the weekend (I hope). - -Wed Sep 23 12:15:21 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Stats.*: modified standard deviation calculation to - help avoid overflow. Instead of keep running totals of - the sum and sum of squares, it stores each sample in an - dynamic structure. Then, to calculate the standard - deviation, each sample is compared with the mean. - - * ace/Sched_Params.cpp: replace ACE_HAS_STHREADS with - ACE_HAS_PRIOCNTL. Thanks to Ossama for pointing this out. - - * ace/Synch.h: replaced #endif /* ACE_HAS_STHREADS */ with - #endif /* 0 */. - - * performance-tests/TTCP/{ACE-C++,C,Orbix}/Makefile: removed - old Quantify LINK_COMMANDs. They don't look like they're used - anywhere. - - * include/makeinclude/wrapper_macros.GNU: removed -DACE_QUANTIFY - and -Dquantify, with quantify=1, because they're no longer used. - - * ace/OS.h,README: added ACE_LACKS_CMSG_DATA_{MACRO/MEMBER} support. - It will be used by autoconf, for Linux libc5 (pre-libc). Thanks - to Ossama for supplying it. - - * ace/config-g++-common.h: disable ACE_HAS_TEMPLATE_SPECIALIZATION - with g++ 2.9. Thanks to Andrew G. Harvey <agh@cisco.com> for a - problem with compiling ace/Filecache.cpp with g++ 2.9 on SunOS 5.5.1. - - * tests/Upgradeable_RW_Test.h: replaced ACE_Thread_Mutex with - ACE_SYNCH_MUTEX. Thanks to Ossama for reporting this. - - * ace/config-linux-common.h: commented out the msg_accrights(len) - #defines. Thanks to Ossama for noticing that they just don't - look right. They no longer appear to be necessary on Linux. - -Wed Sep 23 11:30:00 CDT 1998 Chris Gill <cdgill@cs.wustl.edu> - - * examples/Bounded_Packet_Relay/Thread_Bounded_Packet_Relay.{h,cpp} - examples/Bounded_Packet_Relay/BPR_Drivers.{h,cpp} - examples/Bounded_Packet_Relay/BPR_Drivers_T.{h,cpp} - - Fixed memory leaks uncovered by Purify, added large high water mark - for packet relay's underlying message queue. - -Wed Sep 23 11:28:13 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * bin/Process_Unix.pm: - If the exec() call fails we report the name and the arguments of - the program. - -Wed Sep 23 09:27:21 1998 Steve Huston <shuston@riverace.com> - - * ace/Dirent.cpp: Fixed aCC workaround from 22-Sep so that only - non-g++ compilers on HP-UX see it. - -Wed Sep 23 02:21:24 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.42 released. - -Tue Sep 22 21:34:31 1998 Steve Huston <shuston@riverace.com> - - * ace/Dirent.cpp: Make aCC quit yacking about an empty translation - unit. - - * ace/OS.i: Fix up the conditions for readdir_r on differing pthreads - drafts. - - * ace/config-aix-4.2.x.h: Added ACE_HAS_DIRENT. - -Tue Sep 22 21:00:00 CDT 1998 Chris Gill <cdgill@cs.wustl.edu> - - * examples/Bounded_Packet_Relay/Thread_Bounded_Packet_Relay.{h,cpp} - examples/Bounded_Packet_Relay/BPR_Drivers.{h,cpp} - examples/Bounded_Packet_Relay/BPR_Drivers_T.{h,cpp} - examples/Bounded_Packet_Relay/bpr_thread.cpp: - - More fixes from testing on NT, added more logging features. - -Tue Sep 22 17:07:17 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/Message_Queue_Notifications_Test.cpp (Watermark_Test): - Repositioned a comma so it compiles on non-threaded platforms. - Thankd to Ossama for noticing this. - -Tue Sep 22 17:20:53 1998 James Hu <jxh@entera.com> - - * ace/Containers_T.{h,i}: - Added a remove method to the ACE_DLList_Iterator. This is - needed since ACE_DLList is actually an abstraction over - ACE_Double_Linked_List, so the user of ACE_DLList does not hold - the address of the "real" node that ACE_Double_Linked_List is - managing. - -Tue Sep 22 16:07:53 1998 Steve Huston <shuston@riverace.com> - - * bin/Makefile: Will now only build envinfo if make is invoked - with "envinfo=1". The difference is needed to allow clone to be - built before ACE has been built. - -Tue Sep 22 13:58:06 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/config-irix6.x-g++.h: - Added some missing defines, thanks to JM Strauss - <jms97@club-internet.fr> for pointing them out. Also fixed a - test for the N32 ABI, it said _NABI32 and should be _ABIN32. - -Tue Sep 22 11:42:17 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-lynxos.h: added ACE_HAS_POWERPC_TIMER with - __powerpc__, but commented it out because it requires an OS patch. - - * ace/OS.i (fstat): put a :: in front of the call to the - system fstat if it's not defined as a macro. Thanks to - Ossama for reporting that MM_Shared_Memory_Test failed - otherwise. - -Tue Sep 22 10:58:04 1998 Ossama Othman <othman@astrosun.tn.cornell.edu> - - * ace/OS.i (ACE_cond_t::waiters): only define this function if - ACE_HAS_THREADS. - - Testing the autoconf integration on a Linux libc5 system w/o - threads caused me problems since ACE_LACKS_COND_T gets - defined by the configure script automatically since no - condition variable support was found. The ACE_cond_t class - appears to only get defined if ACE_HAS_THREADS is defined, - otherwise ACE_cond_t is typedefed to an int. For - this reason, I thought that it would be a good idea to make - the above modification to prevent compile time errors on - platforms without threads and when ACE_LACKS_COND_T is - defined on those platforms. - -Tue Sep 22 03:09:07 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.41 released. - -Tue Sep 22 00:31:26 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Log_Record.cpp (print): Make sure that the process id and - timestamp are fixed width. Thanks to Valery Arkhangorodsky - <avalery@geocities.com> for this fix. - -Mon Sep 21 22:54:44 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/Bounded_Packet_Relay: Removed a gratuitous - parameterized type which was causing problems for SunC++. - -Mon Sep 21 21:47:12 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/README: added ACE_HAS_PURIFY and ACE_HAS_QUANTIFY. - - * include/makeinclude/wrapper_macros.GNU: added ACE_HAS_PURIFY - and ACE_HAS_QUANTIFY support. We should use these consistently. - In addition, added -I support for Purify and Quantify. - This support should no longer appear in individual Makefiles. - - * ACE-INSTALL.html: added paragraph on Purify/Quantify support - details, i.e., they must be on your PATH, and ACE puts the - instrumented libraries below /tmp by default. - -Mon Sep 21 20:46:00 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Containers_T.cpp (ACE_Double_Linked_List): Changed - dynamic_cast to static_cast. - -Mon Sep 21 18:35:00 CDT 1998 Chris Gill <cdgill@cs.wustl.edu> - - * examples/Bounded_Packet_Relay/Thread_Bounded_Packet_Relay.{h,cpp} - examples/Bounded_Packet_Relay/BPR_Drivers.{h,cpp} - examples/Bounded_Packet_Relay/BPR_Drivers_T.{h,cpp} (new) - examples/Bounded_Packet_Relay/bpr_thread.cpp: - - Factored out templates into separate files, fixed initialization, - concurrency, and deadlock problems found in NT testing. - -Mon Sep 21 18:27:19 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tests/Conn_Test.cpp: g++ cannot gork templates typedefs. - -Mon Sep 21 15:48:34 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Acceptor: It's now possible to select if you want to reuse - the PEER_ACCEPTOR addr. Thanks to Chuck Gehr for suggesting - this. - -Mon Sep 21 15:00:34 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Thread_Manager.{h,cpp} (join): Allow passing back of thread's - exit status of the thread being joined. - -Mon Sep 21 11:24:33 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * docs/ACE-categories.html (HREF): Updated the links to ace/ and - man/ since we moved the file around. Thanks to Byron Harris for - reporting this. - -Mon Sep 21 10:22:17 1998 Steve Huston <shuston@riverace.com> - - * ace/Select_Reactor_T.cpp (handle_error): Check handles for all - errors (not just EBADF) on Win32, in addition to MVS. Thanks - to Xu Yifeng <xuyifeng@www.kali.com.cn> for this fix. - -Mon Sep 21 01:27:19 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Strategies_T.cpp (find_or_create_svc_handler_i): g++ cannot - gork templates... - - * tests/Conn_Test.cpp: Fixed template instantiations. - - * ace/Strategies_T.cpp (ACE_Cached_Connect_Strategy): New methods - find_or_create_svc_handler_i and check_hint_i to simplify - connect_svc_handler. Also added _i methods to implement - non-locking versions. - - * ace/Strategies.h (ACE_Connection_Recycling_Strategy): - New methods: mark_as_close and cleanup_hint. - - * ace/Strategies: Added three new classes: ACE_Recyclable, - ACE_Hashable, and ACE_Refcountable. Also added - ACE_Refcounted_Hash_Recyclable. Deprecated ACE_Recyclable<T> and - ACE_Hash_Recyclable<T> - - * ace/Svc_Handler.h (cleanup_hint): Added new method. This can be - used by users when they are through with using the svc_handler - as a hint. - -Mon Sep 21 00:40:00 CDT 1998 Chris Gill <cdgill@cs.wustl.edu> - - * examples/Bounded_Packet_Relay/Thread_Bounded_Packet_Relay.{h,cpp} - examples/Bounded_Packet_Relay/BPR_Drivers.{h,cpp} - examples/Bounded_Packet_Relay/bpr_thread.cpp - examples/Bounded_Packet_Relay/README: - - Reorganized construction of input and output device objects - and the relay object, cleaned up readme file. - -Sun Sep 20 22:01:00 CDT 1998 Chris Gill <cdgill@cs.wustl.edu> - - * examples/Bounded_Packet_Relay/BPR_Drivers.h: - - Made Bounded_Packet_Relay_Driver::display_menu (void) pure virtual: - now it all compiles *and* links. - -Sun Sep 20 21:49:00 CDT 1998 Chris Gill <cdgill@cs.wustl.edu> - - * examples/Bounded_Packet_Relay/Thread_Bounded_Packet_Relay.{h,cpp} - examples/Bounded_Packet_Relay/BPR_Drivers.{h,cpp} - - Fourth checkin of bounded packet relay example: compiles. - -Sun Sep 20 20:41:29 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Acceptor.{h,cpp}: Added an extra argument to constructors of - ACE_Strategy_Acceptor and open method so that we can accept only - one connection request every time handle_input is called. - -Sun Sep 20 20:30:36 1998 Marina Igorevna Spivak <marina@mambo.cs.wustl.edu> - - * ace/OS.h : added ACE_GUARD_THROW, ACE_GUARD_THROW_RETURN, - ACE_NEW_TRY_THROW, ACE_NEW_TRY_THROW_RETURN macros to utilize - new exceptions macros. - -Sun Sep 20 19:18:00 CDT 1998 Chris Gill <cdgill@cs.wustl.edu> - - * examples/Bounded_Packet_Relay/Thread_Bounded_Packet_Relay.{h,cpp} - examples/Bounded_Packet_Relay/BPR_Drivers.{h,cpp} - examples/Bounded_Packet_Relay/README - - Third checkin of bounded packet relay example, - addressed remaining coding style issues. - (very rough, still does not compile) - -Sun Sep 20 16:38:17 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Thread_Manager.i (get_next): Changed to use static_cast. - - * ace/Thread_Manager.cpp: Shielded off terminated_thr_list_ from - compilation on VxWorks. Thanks to David for noticing this. - -Sun Sep 20 12:17:00 CDT 1998 Chris Gill <cdgill@cs.wustl.edu> - - * examples/Bounded_Packet_Relay/Thread_Bounded_Packet_Relay.{h,cpp} - examples/Bounded_Packet_Relay/BPR_Drivers.{h,cpp} - - Second checkin of bounded packet relay example, - addressed several coding style issues. - (very rough, still does not compile) - -Sun Sep 20 11:25:52 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.h: with ACE_HAS_TSS_EMULATION, use u_long instead of - u_int for ACE_thread_key_t. This avoids overload ambiguity - on platforms that typedef pthread_key_t to u_int. We'll be - in trouble if we try on one that uses u_long. In that case, - we could try u_short, or added an ACE_HAS. - - * ace/Thread_Manager.i (register_as_terminated): neutered on VxWorks, - so that it will compiled. - - * tests/SOCK_Connector_Test.cpp (host_is_up): don't define - this function ifdef ACE_LACKS_GETHOSTENT, because it isn't - used in that case. - -Sat Sep 19 14:29:56 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/OS.i (fstat): Removed the "::" in front of the fstat() call - since it's implemented as a macro on some platforms. Thanks to - Frank Adcock <frank@bushlife.com.au> for reporting this. - - * examples/Bounded_Packet_Relay: Updated the coding style. - -Sat Sep 19 14:06:52 1998 Darrell Brunsch <brunsch@cs.wustl.edu> - - * apps/JAWS/PROTOTYPE/JAWS/IO.cpp: Fixed typo. - - * apps/JAWS/PROTOTYPE/JAWS/jaws.dsp: - * apps/gperf/src/gperf.dsp: - * ace/ace_dll.dsp: - * netsvcs/clients/Naming/Client/Client_Test.dsp: - * netsvcs/lib/netsvcs.dsp: - Changed behavior of all DLL projects and utilities (like - gperf) to put the dll and executables in $ACE_ROOT/bin. - - * ace/config-win32.h: ACE_HAS_GPERF is back. - - * ACE-INSTALL.html: On NT, $ACE_ROOT/bin should now be in - your path instead of $ACE_ROOT/ace. - -Sat Sep 19 12:27:31 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Asynch_IO.cpp: thread_function() is only for UNIX. - -Sat Sep 19 10:43:41 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * ace/Asynch_IO.cpp (open): Fixed the build errors with WIN32. - -Sat Sep 19 09:02:00 CDT 1998 Chris Gill <cdgill@cs.wustl.edu> - - * examples/Bounded_Packet_Relay/Thread_Bounded_Packet_Relay.{h,cpp} - examples/Bounded_Packet_Relay/BPR_Drivers.{h,cpp} - examples/Bounded_Packet_Relay/bpr_thread.cpp - examples/Bounded_Packet_Relay/Makefile - examples/Bounded_Packet_Relay/README: - - First checkin of bounded packet relay example - (very rough, does not even compile yet) - -Sat Sep 19 00:42:53 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * ace/Asynch_IO.cpp: Fixed NT warnings (hopefully :-) - -Fri Sep 18 22:50:21 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Thread_Manager.{h,i,cpp}: Added a join method to reclaim - OS/ACE resources that are used to managed thread object. I - encourage all ACE programmers to use ACE_Thread_Manager::join to - wait for threads spawned by ACE_Thread_Manager. It is more - portable than ACE_Thread (most significantly, wrt resource - management.) - (wait_grp,wait_task): Improved and corrected the - implementations. These two methods now also clean up resources - used by threads that has already terminated when the calls get - invoked. - - Changed the terminated_thr_queue_ to terminated_thr_list_ which - is now a double-linked list. This change allows us to - gather/cleanup infomation of threads belong to same group/task - in one pass. - - ACE_Thread_Manager::exit now tests the thread status to see if - ACE_THR_JOINING is set or not. If set, it means the thread is - being joined by join/wait_grp/wait_task and avoid double - removing the thread resources from OS. - - * ace/OS.h (ACE_Thread_State): Added ACE_THR_JOINING to identify - threads that are being joined by the Thread Manager. - - * ace/Container_T.{h,cpp} (ACE_Double_Linked_List): Added several - dynamic_cast in several places so we can generate code for both - base class and derived class. - (ACE_Double_Linked_List_Iterator): Added a method - "advance_and_delete" to allow removing double-linked list - element while iterating thru the list. The design is very - intrusive and you should know what you are doing before using - the method. Notice that ACE_Double_Linked_List is _not_ a - general purpose Container class. - - * tests/run_tests.bat: Added DLList_Test. - -Fri Sep 18 18:06:19 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * ace/Asynch_IO.h: - * ace/Asynch_IO.cpp: - * examples/Reactor/Proactor/test_proactor.cpp: - Implemented Asynch_Accept for POSIX4 systems, by having only one - thread doing <handle_events>. Asynch_Accept_Handler has been - changed to act as Event Handler now. No problem of having threads - blocking on the <accept> now. Thanks to Irfan for this idea. - -Fri Sep 18 13:26:50 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/High_Res_Timer_Test.cpp (check): raised success - threshold from 10 to 25 percent. Ossama saw just over - 10 percent on an Linux box, not surprising. Thanks to - him for reporting it. - - * ace/SOCK_Dgram_Mcast.cpp (unsubscribe): on other than ACE_WIN32, - added ACE_UNUSED_ARGs for protocol_family and protocol. Thanks - to Peter Liqun Na <liqunna@cs.sunysb.edu> for reporting this. - - * ace/OS.cpp (ACE_TSS_Emulation_cleanup): added ACE_UNUSED_ARG (ptr). - - * bin/make-release: enter version number(s) into BUG-REPORT-FORM. - Thanks to Steve for this suggestion. - -Fri Sep 18 01:53:38 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.40 released. - -Fri Sep 18 01:51:46 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/ACE (open_temp_file): Changed the signature of this method - to take a const char * rather than a char *. - -Fri Sep 18 00:07:31 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * ace/ACE.h (ACE): - * ace/ACE.cpp (open_temp_file): Added this method to do open for - the temp files, so that they will get deleted when they are - closed. - Thanks to Nanbor and Carlos. - -Thu Sep 17 23:01:50 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Containers.i: resurrected the file properly. - - * ace/Containers.i (~ACE_DLList_Node): removed extraneous ; - following function definition. - -Thu Sep 17 22:44:17 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/IPC_SAP/SOCK_SAP/CPP-inclient.cpp: If the client - doesn't connect to the server, make sure to shut down the test - gracefully, rather than getting a segfault. Thanks to - Margherita Vittone Wiersma <vittone@fndaub.fnal.gov> for - reporting this. - -Thu Sep 17 22:33:00 1998 James CE Johnson <jcej@chiroptera.tragus.org> - - * docs/tutorials/index.html - docs/tutorials/templates.html - - Added templates.html to discuss issues surrounding manual vs - automatic template instantiation. - -Thu Sep 17 20:01:33 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/tests.dsw: - * tests/version_tests.dsw: - * tests/[version_tests/]High_Res_Timer_Test.dsp: - * tests/[version_tests/]DLList_Test.dsp: Added new project files. - -Thu Sep 17 19:27:11 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.cpp (TSS_base,some ACE_PSOS_Time_t functions): - removed ACE_INLINE. - - * examples/Shared_Malloc/test_malloc.cpp (gen_size): cast - &seed to unsigned long first, to avoid warning about - narrowing on Alphas (cxx/DU 4.0). - -Thu Sep 17 18:51:08 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * examples/Reactor/Multicast/server.cpp: - * examples/Reactor/Multicast/Log_Wrapper.cpp: - * examples/Service_Configurator/IPC-tests/client/remote_stream_client_test.cpp: - Revert back to iovec instead of ACE_IO_Vector. - -Thu Sep 17 18:33:19 EDT 1998 James CE Johnson <jcej@lads.com> - - * docs/tutorials/002/server.pp - - Added necessary templates for explicit instantiation. - Thanks to Krishna Padmasola for providing the proper code - and to Clinton Carr for reminding me to do it! - -Thu Sep 17 16:30:00 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * This comments were lost in a previous commit. - - * ace/OS.h: - * ace/OS.i: - * ace/ACE.cpp: - * ace/ACE.h: - * ace/DEV_IO.cpp: - * ace/DEV_IO.h: - * ace/DEV_IO.i: - * ace/FIFO_Send_Msg.cpp: - * ace/FILE_IO.cpp: - * ace/FILE_IO.h: - * ace/FILE_IO.i: - * ace/LSOCK.cpp: - * ace/LSOCK_Stream.cpp: - * ace/LSOCK_Stream.h: - * ace/SOCK_Dgram.cpp: - * ace/SOCK_Dgram.h: - * ace/SOCK_Dgram_Bcast.cpp: - * ace/SOCK_Dgram_Bcast.h: - * ace/SOCK_Dgram_Mcast.h: - * ace/SOCK_Dgram_Mcast.i: - * ace/SOCK_IO.cpp: - * ace/SOCK_IO.h: - * ace/SOCK_IO.i: - * ace/SPIPE_Stream.cpp: - * ace/SPIPE_Stream.h: - * ace/SPIPE_Stream.i: - Moved back to iovec instead of ACE_IO_Vector. Since this - structure is defined by ACE we can make it binary compatible - with the WSABUF structure (yet preserve the names of the UNIX - iovec struct). This allow us to simply pass arrays of iovec to - routines expecting WSABUF*. - But Win32 does not provide any functions to go scatter-gather - over files, so this is only used for sockets, new methods: - ACE_OS::sendv() and ACE_OS::recvv() were added for this - purpose, the old emulation is used for the other classes. Users - writing to higher-level components (such as ACE_SOCK or - ACE_SOCK_Dgram) will benefit from this without any changes to - their code. - - * ace/SOCK_Dgram.cpp: - * ace/SOCK_Dgram.h: - * ace/SOCK_Dgram_Bcast.cpp: - * ace/SOCK_Dgram_Bcast.h: - * ace/SOCK_Dgram_Mcast.h: - * ace/SOCK_Dgram_Mcast.i: - Added the implementation for some send() variants that were - declared but not implemented. - - * ace/OS.h: - * ace/OS.i: - * ace/config-win32-common.h: - Added support for sendmsg() and recvmsg() on NT, emulated over - WSASendTo() and WSARecvFrom(), do data copies are made. - - * ace/Containers.cpp: - * ace/Containers.h: - * ace/Containers_T.h: - * ace/Containers_T.i: - Moved the non-templated code back to Containers.{h,i,cpp}, added - the infamous ACE_Export macro. - - * ace/ace_dll.dsp: - Added Containers.cpp to the project. - -Thu Sep 17 11:23:49 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/OS: Modified ACE_THR_FUNC so that its signature is always - void *(*)(void *). We now have a new type called - ACE_THR_FUNC_INTERNAL that is defined for each different OS - platform, e.g., VxWorks, pSoS, et al. - - * examples/IPC_SAP/SOCK_SAP/CPP-inserver.cpp (run_server): Oops, - we can't use ACE_THR_FUNC here since that has a different - signature on VxWorks. So we'll just expand this a bit. Thanks - to Raja Ati <rati@jupiter.montereynets.com> for reporting this. - -Thu Sep 17 09:54:56 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Svc_Handler.cpp (new): cleaned up the ACE_ASSERT check - for ACE_Dynamic::instance () not being null. - - * docs/ACE-guidelines.html: added guideline to define ACE_ - typedefs to reduce the number of #ifdefs. Thanks to - Carlos and Doug for this suggestion, and Chris for the - example :-). - - * examples/IPC_SAP/SOCK_SAP/CPP-inserver.cpp (run_event_loop): - added casts to ACE_THR_FUNC to please VxWorks. Thanks to - Raja Ati <rati@montereynets.com> for reporting this problem. - - It would probably be better to change the definition of - ACE_THR_FUNC on VxWorks (and PSOS) to be the same as on - other platforms. That will require other changes, though. - - * examples/IPC_SAP/SOCK_SAP/CPP-inserver-fancy.cpp: - removed trailing ; from instantiation #pragma. - - * ace/config-lynxos.h: added ACE_HAS_TSS_EMULATION. - -Thu Sep 17 09:23:01 1998 Carlos O'Ryan <coryan@JIG> - - * ace/FIFO_Send_Msg.cpp: - Fixed variable declaration, "struct ACE_IO_Vector_Base" is not - the same as "ACE_IO_Vector_Base". - - * ace/OS.i: - Fixed the ACE_OS::rand_r() signature for Win32. - - * ace/SOCK_Dgram_Mcast.cpp: - Fixed some problems with the Win32 implementation of - unsubscribe(). - -Thu Sep 17 08:41:14 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * examples/Shared_Malloc/test_malloc.cpp: - Fixed some problems with my changes to rand_r() - - * ace/Containers.i: - Resurrected this file to avoid problems with dependencies in - TAO. - -Thu Sep 17 08:41:24 1998 Steve Huston <shuston@riverace.com> - - * include/makeinclude/platform_hpux_gcc.GNU: Added -L. to LDFLAGS. - Thanks to Anne Blankert <anne@geodan.nl> for this fix. - -Thu Sep 17 07:31:13 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.i (truncate): added ACE_UNUSED_ARGs for NOTSUP case. - -Thu Sep 17 02:45:53 PDT 1998 James Hu <jxh@entera.com> - - * ace/Containers_T.h: - * ace/Containers_T.i: - * ace/Containers_T.cpp: - Added these files so that I could include some explicit - template instantiations inside Containers.cpp. Removed - #if guards around ACE_DLList since it no longer relies - on the feature that was being guarded against. - - * ace/Containers.h: - Simply #includes Containers_T.h. - - * ace/Containers.cpp: - Only contains some explicit template instantiations. - - * ace/Containers.i: - Removed, since it was no longer needed. - -Thu Sep 17 01:20:53 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Msg_WFMO_Reactor.cpp (dispatch_window_messages): There was a - slight problem in Msg_WFMO_Reactor.cpp when ACE coexists with - MFC. Basically the dispatch_window_messages routine simply - returns -1 when the WM_QUIT message is received. However, if - the WFMO_Reactor and the MFC application run on the different - threads the main thread would never shut down since it just keep - waiting forever for the Quit message from other threads. The - easiest way to fix the above problem to call PostQuiteMessage - when WM_QUIT is received by WFMO_Reactor. - - Thanks to Hongbo Xu <hxu@mas.co.nz> for fixing this. - - * ace/OS.i (open): No need to find the file size since - SetFilePointer supports FILE_END. Also fixed the UNICODE - version of ACE_OS::open(). - -Wed Sep 16 22:52:44 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * examples/Reactor/Multicast/server.cpp: - * examples/Reactor/Multicast/Log_Wrapper.cpp: - * examples/Service_Configurator/IPC-tests/client/remote_stream_client_test.cpp: - Use ACE_IO_Vector instead of iovec because it is more portable. - -Wed Sep 16 22:17:54 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/OS.h: - * ace/DEV_IO.cpp: - * ace/DEV_IO.h: - * ace/DEV_IO.i: - * ace/FIFO_Send_Msg.cpp: - * ace/FILE_IO.cpp: - * ace/FILE_IO.h: - * ace/FILE_IO.i: - * ace/LSOCK.cpp: - * ace/LSOCK_Stream.cpp: - * ace/LSOCK_Stream.h: - * ace/SOCK_Dgram.cpp: - * ace/SOCK_Dgram.h: - * ace/SOCK_Dgram_Bcast.h: - * ace/SOCK_Dgram_Mcast.cpp: - * ace/SOCK_Dgram_Mcast.h: - * ace/SOCK_Dgram_Mcast.i: - * ace/SOCK_IO.cpp: - * ace/SOCK_IO.h: - * ace/SOCK_IO.i: - * ace/SPIPE_Stream.cpp: - * ace/SPIPE_Stream.h: - * ace/SPIPE_Stream.i: - More iovec to ACE_IO_Vector_Base conversion. - - * ace/Containers.i: - The ACE_DLList_Node and ACE_DLList_Iterator class are protected - by a !defined (ACE_LACKS_TEMPLATE_AS_TEMPLATE_PARAMETER), so - should be their inline methods. - - * ace/SOCK_Dgram_Mcast.cpp: - * ace/SOCK_Dgram_Mcast.h: - * ace/SOCK_Dgram_Mcast.i: - Added a generic unsubscribe() method. - -Wed Sep 16 21:45:48 1998 Darrell Brunsch <brunsch@cs.wustl.edu> - - * ace/ACE.{h.cpp}: Changed some iovecs to ACE_IO_Vector_Base. - - * ace/config-win32.h: Commented out ACE_HAS_GPERF until we get - everything working with it. - -Wed Sep 16 21:43:07 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.i (open): Added SetFilePointer to move the file pointer - of the opened file to end of file if _O_APPEND is specified on - Win32. - -Wed Sep 16 20:42:16 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/OS: Added a typedef for ACE_IO_Vector_Base so that it will - shield the differences between Win32 and UNIX. - -Wed Sep 16 20:09:01 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/OS.h: - * ace/OS.i: - ACE_OS::rand_r() is easier to use now. Just define a variable of - that type and invoke ACE_OS::rand_r() with it, it even works on - broken platforms that define it as a non-pointer. - This is a brief example on how to use it: - ACE_RANDR_TYPE seed; - int r1 = ACE_OS::rand_r (seed); - int r2 = ACE_OS::rand_r (seed); - -Wed Sep 16 17:46:23 PDT 1998 James Hu <jxh@entera.com> - - * ace/Containers.{h,i}: Added comments to DLList as per Doug's - request. - -Wed Sep 16 19:23:21 1998 Steve Huston <shuston@riverace.com> - - * ace/config-hpux-11.x-hpc++.h: Moved ACE_HAS_DIRENT to config-hpux11.h - -Wed Sep 16 18:21:45 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Containers.h: Reformatted the ACE_DLList* classes to conform - to ACE programming conventions. - - * ace/config-hpux-11.x-hpc++.h: Added ACE_HAS_DIRENT and - ACE_HAS_GPERF to appease John Mulhern. - - * ace/Asynch_Acceptor.cpp: Added ACE_reinterpret_cast()s to the - sockaddr *'s to appease aCC on HP/UX 11. Thanks to John Mulhern - for reporting this. - -Wed Sep 16 17:16:51 EDT 1998 James CE Johnson <jcej@lads.com> - - * docs/tutorials/012/Makefile - docs/tutorials/012/data.h - docs/tutorials/012/message_queue.cpp - docs/tutorials/012/page01.html - docs/tutorials/012/page02.html - docs/tutorials/012/page03.html - docs/tutorials/012/page04.html - docs/tutorials/012/page05.html - docs/tutorials/012/page06.html - docs/tutorials/012/task.cpp - docs/tutorials/012/task.h - docs/tutorials/index.html - - Tutorial 12. This corrects some of the nastyness - in number 11 by specializing the ACE_Message_Block - to carry around the data. - -Wed Sep 16 16:01:53 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Select_Reactor_T.{h,i,cpp}: Disable inlining in - Select_Reactor_T.i and always include them in .cpp file. The - latest version of SunCC can't grok this particular file and we - just turn it off here. We shall turn it back on once the - problem gets fixed. Thanks to Keith Brown - <kalbrown@ix.netcom.com> for providing this temporary fix. - -Wed Sep 16 13:41:50 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/OS.h: Added more protection for the semun definition, i.e., - (defined (__GLIBC__) && defined (_SEM_SEMUN_UNDEFINED)). This - fixes problems with Linux, GLIBC 2.1, and PGCC. Thanks to - Marc Lehmann <pcg@goof.com> for reporting this. - -Wed Sep 16 11:41:57 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/High_Res_Timer.cpp: added ACE_HAS_POWERPC_TIMER support. - - * tests/High_Res_Timer_Test.cpp: added this new test. - - * tests/Makefile,run_tests.{bat,psosim,sh,vxworks}: - added High_Res_Timer_Test. - - * ace/OS.* (readPPCTimer): unlined readPPCTimer for - PowerPC. If it was called more than once in a - compilation unit, when inlined, the assembler complained - about multiple definitions of the aclock symbol. - - * ace/Malloc_T.cpp (dump): fixed typo, cb_ptr instead of - cp_ptr. Thanks to Umar Syyid <usyyid@hns.com> for reporting this. - - * tests/TSS_Test.cpp (worker): allow second group of TSS keys to - be allocated, with TSS emulation. - - * ace/Svc_Handler.cpp (new): added check that - ACE_Dynamic::instance () is non-null before dereferencing it. - ACE_ASSERT/return 0 if it is null. - -Wed Sep 16 11:28:47 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * netsvcs/clients/Naming/Dump_Restore/Dump_Restore.cpp: In - general, using iostreams in ACE causes more problems for us than - it is worth since some systems do not support iostreams. I have - rewritten this file to not use iostreams but use - ACE_DEBUG/ACE_ERROR instead. - -Wed Sep 16 10:49:34 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * bin/auto_compile: Updated to the new directory hierarchy in TAO. - -Wed Sep 16 09:46:31 1998 Steve Huston <shuston@riverace.com> - - * ace/config-hpux-10.x.h: Added ACE_HAS_DIRENT. - -Tue Sep 15 20:25:23 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/test_config.h: Always #undef ACE_NLOGGING so the tests - will produce output! Thanks to Chuck Gehr for reporting this. - - * ace/OS.i: Added a new ACE_LACKS_TRUNCATE flag to work around - platforms that lack the truncate() call. Thanks to - Sergio for reporting this. - -Tue Sep 15 17:57:26 1998 Sergio Flores <sergio@tango.cs.wustl.edu> - - * ace/config-vxworks5.x.h: Added ACE_LACKS_TRUNCATE to VxWorks - configuration. - -Tue Sep 15 16:58:18 1998 Nagarajan Surendran <naga@cs.wustl.edu> - - * include/makeinclude/platform_chorus_ghs.GNU: Changed the - MVME_DIR to /project/doc/mvme/mvme177. - - * ace/ARGV.cpp (ACE_ARGV::argv_to_string): Fixed the problem where - we were allocating space only for the length of the string whereas - strecpy was inserting the extra '\0' leading to Array bounds write. - -Tue Sep 15 16:34:47 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.i (gethrtime): added high-res timer support with - g++ and ACE_HAS_POWERPC_TIMER. - - * ace/OS.{h,cpp},config-vxworks5.x.h,README: changed ACE_HAS_POWERPC - to ACE_HAS_POWERPC_TIMER. - - * ace/config-lynxos.h: added ACE_HAS_PENTIUM, to provide - high-res timer support on LynxOS. - -Tue Sep 15 13:33:26 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/config-{WinCE,g++-common}.h: - * ace/OS.{h,i,cpp}: Deprecated ACE_LACKS_GETS and ACE_OS::gets (void). - - * apps/gperf/src/gperf_lib.dsp: Enabled c++ exception handling to - avoid warning when compiling with standard c++ libraries. - -Tue Sep 15 11:22:53 1998 Aniruddha Gokhale <gokhale@sahyadri.research.bell-labs.com> - - * ace/OS.{h, i}: - - Added definition for the "stat" data structure. Also added the - definition for the "truncate" function. - -Mon Sep 14 23:28:24 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.39 released. - -Mon Sep 14 21:46:36 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Containers.h: added "class" to several ACE_DLList friend - declarations. - -Mon Sep 14 21:02:30 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Mem_Map.cpp (map_it): Removed the code for - !ACE_HAS_P_READ_WRITE since we cover it in ACE_OS::pwrite. - - * ace/Filecache.cpp (ACE_Filecache_Object): Changed the - lseek/write combo to pwrite. - -Mon Sep 14 17:09:04 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/config-win32-common.h,OS.h,README: Removed all mention of - ACE_LACKS_FIFO, which was no longer necessary. Thanks to Ossama - Othman <othman@astrosun.tn.cornell.edu> for suggesting this. - - * ace/ACE.cpp (bind_port): Renamed sin to sock_addr to make the - autoconf script happier. Thanks to Ossama Othman - <othman@astrosun.tn.cornell.edu> for suggesting this. - - * include/makeinclude/platform_mvs.GNU: Updated the MVS platform - configuration as follows: - - changed: - debug = 1 - to: - debug = 0 - - added: - static_libs = 1 - - and deleted the line: - CCFLAGS += $(CFLAGS) - - Thanks to Chuck Gehr <GehrCR@LOUISVILLE.STORTEK.COM> for these - changes. - -Mon Sep 14 14:34:32 1998 Darrell Brunsch <brunsch@cs.wustl.edu> - - * apps/gperf/src/gperf.dsp: - * apps/gperf/src/gperf_lib.dsp: - Fixed the project by removing new.cpp (which disappeared a - while back) and changed the code generation to DLL. Now - seems to work on NT. - - * ace/config-win32.h: ACE_HAS_GPERF now on NT. - -Mon Sep 14 13:41:26 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/OS: Fixed qsort() and bsearch() so they work correctly for - MVS. Thanks to Chuck Gehr for reporting this. - - * ace/config-mvs.h: Added - - #define ACE_HAS_DIRENT - #define ACE_LACKS_READDIR_R - - so that things will work correctly for MVS. Thanks to Chuck - Gehr for reporting this. - -Mon Sep 14 10:11:18 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/ace_ce_dll.dsp: Added Select_Reactor_Base.cpp and removed - Array.cpp from the project. Thanks to Paul Sexton - <pauls@ENTERPRISE.bt.co.uk> for noticing this. - - * ace/config-WinCE.h: Added ACE_LACKS_BSEARCH. - - * ace/OS.h: Added /**/ between #include and <ace/sys_conf.h> in - pSOS section to prevent a MSVC warning. - - * ace/OS.i (bsearch): If the function is not supported by the - platform, return NULL instead of -1 so it behaves compatibly - with most common implementation. - -Mon Sep 14 09:37:09 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Synch_T.h: Fixed a deadlock condition caused by acquiring - the internal lock in multiple places during the same call. - Thanks to Jorn Jensen <jornj@funcom.com> for reporting this. - -Mon Sep 14 01:59:51 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Strategies_T.{h,i,cpp}: Added two new classes - ACE_Thread_Pool_Strategy and ACE_Svc_Handler_Pool_Strategy for - activating and creating Svc_Handler. They should be used with - the new TP_Reactor. More to come... - -Sun Sep 13 22:31:23 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.38 released. - -Sun Sep 13 18:36:11 EDT 1998 James CE Johnson <jcej@.lads.com> - - * docs/tutorials/006/notify.cpp - No longer applicable. This used spawn() to create the - thread but the new version uses an ACE_Task<> derivative. - - * docs/tutorials/006/Makefile - Removed dependency info. - - * docs/tutorials/007/thread_pool.cpp - Removed THR_DETACHED from activate() call. I need a - better understanding of when to include this flag... - - * docs/tutorials/index.html - Setting up new Message_Queue entry points. - - * docs/tutorials/010/Makefile - docs/tutorials/010/block.h - docs/tutorials/010/message_queue.cpp - docs/tutorials/010/page01.html - docs/tutorials/010/page02.html - docs/tutorials/010/page03.html - docs/tutorials/010/page04.html - docs/tutorials/010/page05.html - docs/tutorials/010/page06.html - docs/tutorials/010/page07.html - docs/tutorials/010/task.cpp - docs/tutorials/010/task.h - - A tutorial showing a simple use of the ACE_Message_Queue. - - * docs/tutorials/011/Makefile - docs/tutorials/011/block.h - docs/tutorials/011/data.h - docs/tutorials/011/message_queue.cpp - docs/tutorials/011/page01.html - docs/tutorials/011/page02.html - docs/tutorials/011/page03.html - docs/tutorials/011/page04.html - docs/tutorials/011/page05.html - docs/tutorials/011/page06.html - docs/tutorials/011/task.cpp - docs/tutorials/011/task.h - - Extension of 010 adds queue-ing of non-trivial data. - - -Sun Sep 13 16:29:27 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/Select_Reactor_T.h: - Use the ACE_UNIMPLETED_FUNC to make the code work on older - versions of IRIX - -Sat Sep 12 22:39:47 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/ACE.i: There was a bug with strecpy() -- it should return a - pointer to 1 byte PAST the '\0'... - -Sat Sep 12 21:43:07 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Timer_Hash.cpp: Removed the #pragma template instantiation - for ACE_Timer_Node_T<ACE_Event_Handler *> because it is already - instantiated in Timer_Queue.cpp. Thanks to Sergio for noticing - this. - -Sat Sep 12 16:30:39 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Dirent.cpp: Renamed the methods to be more "abstract" by - removing the "dir" suffixes. - - * ACE-INSTALL.html: Fixed a broken link. Thanks to Tom Shields - <Shields@MarsHotel.CMPU.NET> for reporting this. - - * ace/OS.h (ACE_OS): Added wrappers for the passwd iterator. - - * ace/OS.h (ACE_OS): Added wrappers for qsort() and bsearch(). - - * ace/README: Reformatted this file and also changed - ACE_REQUIRES_FUNC_DEFINITIONS - ACE_NEEDS_READV - ACE_NEEDS_SCHED_H - ACE_NEEDS_SYSTIME_H - ACE_NEEDS_WRITEV - - to - - ACE_NEEDS_FUNC_DEFINITIONS - ACE_LACKS_READV - ACE_LACKS_SCHED_H - ACE_LACKS_SYSTIME_H - ACE_LACKS_WRITEV - - respectively. - -Sat Sep 12 19:18:18 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.i (qsort): Fixed a typo. And removed "return" for this - is a void function. - -Sat Sep 12 13:13:39 EDT 1998 James CE Johnson <jcej@lads.com> - - docs/tutorials/003/Makefile - Removed dependency stuff since installations may vary - - docs/tutorials/003/client.cpp - docs/tutorials/003/page01.html - docs/tutorials/004/Makefile - docs/tutorials/004/client.cpp - docs/tutorials/004/page01.html - - Converted to new style with embedded comments instead of - line-numbered comments. - -Fri Sep 11 22:46:54 EDT 1998 James CE Johnson <jcej@lads.com> - - docs/tutorials/001/Source.tgz - docs/tutorials/001/acceptor.h - docs/tutorials/001/logger.h - docs/tutorials/001/page02.html - docs/tutorials/001/page03.html - docs/tutorials/001/page04.html - docs/tutorials/001/page05.html - docs/tutorials/001/server.cpp - docs/tutorials/002/Makefile - docs/tutorials/002/handler.h - docs/tutorials/002/page01.html - docs/tutorials/002/page02.html - docs/tutorials/002/page03.html - docs/tutorials/002/page04.html - docs/tutorials/002/server.cpp - - Updated to "new style". Corrected issues with Reactor - based on recent mailing list discussions. - -Fri Sep 11 12:30:37 1998 Nagarajan Surendran <naga@cs.wustl.edu> - - * ace/config-chorus.h: Uncommented ACE_LACKS_SYSV_SHMEM as ace - didn't compile on Chorus with that commented out. - -Fri Sep 11 09:02:00 CDT 1998 Chris Gill <cdgill@cs.wustl.edu> - - * ace/OS.{h,i} - ace/Containers.{cpp,h} - ace/config-psos-diab.h - include/makeinclude/platform_psos_diab.GNU: - Fixes to compile pSOS - added #if ! defined around new templates - as template parameters stuff in Config.* (Diab compiler can't - grok these), played with library linkage order platform macros. - -Fri Sep 11 08:54:41 EDT 1998 James CE Johnson <jcej@lads.com> - - * docs/tutorials/001/logger.h - Logging_Handler::open() should return 0 on success. - - * docs/tutorials/002/server.cpp - docs/tutorials/002/page02.html - Provide 'g_reactor' to the acceptor's open(). If you - don't do this, the app will core dump on ^C - - Thanks to Krishna Padmasola <pkrishna@cybercash.co.in> for - helping me see these. - -Thu Sep 10 16:53:21 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Upgradable_RW_Test.cpp: - Some templates were instantiated twice if threads were enabled. - -Thu Sep 10 13:41:53 1998 David L. Levine <levine@cs.wustl.edu> - - * config-sunos4-sun3.x.h,config-tandem.h,README: removed - ACE_HAS_SYSV_SPRINTF because it's no longer used. Thanks - to Ossama for reporting this. - -Thu Sep 10 10:18:29 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * examples/IPC_SAP/SOCK_SAP/CPP-inserver.cpp (run_event_loop): - Changed to use ACE_Handle_Set instead of FD_SET. It is more - portable this way. Thanks to Andre Folkers - <folkers@informatik.mu-luebeck.de> for noticing this. - -Wed Sep 09 16:29:36 1998 David L. Levine <levine@cs.wustl.edu> - - * BUG-REPORT-FORM,Makefile: added BUG-REPORT-FORM. Thanks - to Susan Liebeskind <shl@cc.gatech.edu> for the form. - -Wed Sep 9 13:22:11 1998 James Hu <jxh@entera.com> - - * ace/Containers.h: - * ace/Containers.cpp: Added a new container class ACE_DLList. - -Tue Sep 8 23:17:11 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/Thread_Mutex_Test.cpp (test): - * tests/Priority_Buffer_Test.cpp (consumer): Changed the - do-nothing if statements to ACE_UNUSED_ARG because NT doesn't - like that. Thanks to David for clarifying this. - -Tue Sep 8 21:45:32 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * *.{dsp,dsw}: Updated for VC 6. - -Tue Sep 8 21:31:32 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/config-irix6.x-sgic++-nothreads.h: - Added ACE_HAS_DIRENT and support for the envinfo tool. - -Tue Sep 08 18:54:28 1998 Steve Huston <shuston@riverace.com> - - * ace/OS.h: Removed definitions of PTHREAD_DETACHED, PTHREAD_FLOAT, - PTHREAD_INHERIT_SCHED from the ACE_HAS_PTHREADS_DRAFT6 section of - mapping draft 6 names into the pthreads standard names. The first - two aren't used anywhere and the third is already defined on the - known draft 6 platforms. Thanks to Chuck Gehr and Arturo Montes for - helping to straighten this out. - -Tue Sep 8 15:10:42 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Makefile: - Updated dependencies. - -Tue Sep 8 13:16:37 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/config-sco-5.0.0.h: Added ACE_HAS_GPERF at the bequest - of Arturo. - -Tue Sep 08 10:25:48 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace_{dll,lib}.dsp: Changed the process type to "Blend*" which - make the project to work on any type of intel processors. - However, this disable the bug-fix to get around the infamous - Pentium floating point problem. - - * netsvcs/lib/netsvcs.dsp: - * netsvcs/servers/servers.dsp: Perform VC 6 modification. - -Tue Sep 08 07:28:05 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.i (readdir_r): don't use the POSIX.1c ::readdir_r on - suns without _POSIX_PTHREAD_SEMANTICS. - - * include/makeinclude/wrapper_macros.GNU: added - ACE_HAS_GNUG_PRE_2_8 macro. Use it for determining - exceptions-related flags with g++. It can also be used to - suppress builds with old (pre-2.8) versions of g++; see - TAO/tests/POA/TIE/Makefile for an example. - - * apps/Gateway/Gateway/File_Parser.cpp (getint): - egcs 1.1b can't handle the FP_RETURN_TYPE typedef. So, - use FP::Return_Type with __GNUG__. - - * ace/config-chorus.h: added ACE_HAS_DIRENT and - ACE_LACKS_READDIR_R. - - * ace/config-lynxos.h: don't use ACE_HAS_STRING_CLASS with - LynxOS >= 3.0.0. It requires that libg++ be linked in - to the IOStream tests. - - * docs/ACE-guidelines.html: notify via email if a particular - individual's attention is needed to address a comment in the code. - - * ace/Basic_Types.h: corrected comment: the dump method - is named output, because it takes an argument. - -Mon Sep 7 22:12:02 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/config-freebsd.h: Added ACE_HAS_SIGINFO_T, - ACE_LACKS_SIGINFO_H, ACE_LACKS_UCONTEXT_H, ACE_LACKS_SI_ADDR and - ACE_HAS_DIRENT. - - * ace/config-freebsd-pthread.h: - * ace/config-linux-common.h: Added ACE_HAS_DIRENT. - -Mon Sep 7 12:39:10 EDT 1998 James CE Johnson <jcej@lads.com> - - docs/tutorials/008/page01.html - docs/tutorials/008/page02.html - docs/tutorials/008/page03.html - docs/tutorials/008/page04.html - docs/tutorials/008/page05.html - docs/tutorials/009/Makefile - docs/tutorials/009/broadcast_client.cpp - docs/tutorials/009/directed_client.cpp - docs/tutorials/009/page01.html - docs/tutorials/009/page02.html - docs/tutorials/009/page03.html - docs/tutorials/009/page04.html - docs/tutorials/009/page05.html - docs/tutorials/009/server.cpp - - Cleanup on Tutorial 008 and creation of Tutorial 009 which expands - 008 by making the server more selective in who it responds to. - -Mon Sep 7 10:06:54 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/ACE.h (ACE): Moved strnew (wchar_t *) into an ACE_WIN32 - section to protect it properly. Thanks to David Levine for - reporting this. - - * ace:config-sco-*.h: Added ACE_HAS_DIRENT on the advice of Arturo - Montes <mitosys@colomsat.com.co>. - -Mon Sep 07 09:52:12 1998 David L. Levine <levine@cs.wustl.edu> - - * docs/ACE-guidelines.html: added general rule to put system - call wrappers in ACE_OS, extensions in ACE. - - * ace/config-osf1-4.0.h: added ACE_HAS_DIRENT and - _POSIX_PTHREAD_SEMANTICS. The latter was necessary - to tell ACE_OS::readdir_r () to use the three-arg - ::readdir_r (). - - * ace/config-lynxos.h: added ACE_HAS_DIRENT. - - * ace/Log_Msg.cpp (log): initialized local "c" to '\0' so that - egcs 1.1b won't complain that it might be used without - initialization. - - * ace/OS.i,ace/config-osf1-4.0.h (readdir_r): use - ACE_HAS_PTHREADS_STD instead of _POSIX_PTHREAD_SEMANTICS to - select the three-arg ::readdir_r (). - - * ace/config-vxworks.h: added ACE_HAS_DIRENT. - - * ace/OS.i,config-vxworks5.x.h (readdir_r,rewinddir,seekdir,telldir), - README: - added support for ACE_LACKS_READDIR_R, ACE_LACKS_SEEKDIR, and - ACE_LACKS_TELLDIR. - - * ace/OS.i (opendir): added const_cast to remove constness - from the argument, because VxWorks' header doesn't declare - it const. This shouldn't cause a problem on other platforms. - -Mon Sep 7 01:02:58 1998 Darrell Brunsch <brunsch@cs.wustl.edu> - - * ace/ACE.i: Changed ACE_INLINE to ASYS_INLINE. - - * ace/OS.h: Added a no-op type define for DIR and struct - dirent so compilation can continue on NT. - - * ace/ace_dll.dsp: - * ace/ace_lib.dsp: - Added new dirent.* files and removed Array.{cpp,i} files. - -Sun Sep 6 15:49:46 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/ACE: Added several new helper string functions, which were - mined from the drwho program. - - * ace/OS: Moved strnew() into class ACE, which is where it - belongs... - - * ace/Containers: Merged the ACE_Array class entirely into the - Containers files, which is more consistent with the general - design of ACE. Also, removed ace/Array.i and Array.cpp since - they are no longer needed. We'll keep Array.h around for a - while for backwards compatibility, but it just #includes - "ace/Containers.h" now... - - * ace/config-sunos5*.h: Added ACE_HAS_DIRENT. We'll need help - figuring this out on the other platforms... - - * ace/OS: Began adding "Dirent" support to ACE_OS. This will - provide the UNIX/POSIX directory iterator routines when the - ACE_HAS_DIRENT macro is enabled. - - * ace/OS: Added fputs() to ACE_OS. I'm not sure why this was - missing... - - * ace/Makefile (FILES): Moved Priority_Reactor to earlier in - the Makefile to maintain alphabetical order. - -Sun Sep 6 14:06:43 1998 Douglas C. Schmidt <schmidt@cumbia.cs.wustl.edu> - - * ace/OS.h: Moved the ACE_NEW_THROW macros that Matt Braun wrote - into ACE so that we can use these in all applications. - -Sun Sep 06 12:28:40 1998 Fred Kuhns <fredk@arl.wustl.edu> - - * Added a simple reactor/acceptor figure to the first tutorial - docs/tutorial/001/simple.* - -Sun Sep 06 08:34:57 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-g++-common.h,ace/README,tests/Conn_Test.cpp: - renamed ACE_HAS_OLD_GNUG to ACE_HAS_GNUG_PRE_2_8. - -Sat Sep 5 15:31:33 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace: Removed ACE_HAS_IRIX_GETTIMEOFDAY and all of its uses - throughout ACE. It was no longer necessary. Thanks to Ossama - for reporting this. - - * ace/Synch.h: Added a "no-op" ACE_Barrier for cases where we - don't have ACE_HAS_THREADS enabled. - -Sat Sep 5 15:25:33 EDT 1998 James CE Johnson <jcej@lads.com> - - docs/tutorials/index.html - docs/tutorials/008/Makefile - docs/tutorials/008/server.cpp - docs/tutorials/008/broadcast_client.cpp - docs/tutorials/008/directed_client.cpp - docs/tutorials/008/page01.html - docs/tutorials/008/page02.html - docs/tutorials/008/page03.html - docs/tutorials/008/page04.html - docs/tutorials/008/page05.html - docs/tutorials/008/CVS/Root - docs/tutorials/008/CVS/Repository - docs/tutorials/008/CVS/Entries - docs/tutorials/009/Makefile - docs/tutorials/009/broadcast_client.cpp - docs/tutorials/009/directed_client.cpp - docs/tutorials/009/server.cpp - docs/tutorials/009/CVS/Root - docs/tutorials/009/CVS/Repository - docs/tutorials/009/CVS/Entries - - Began the next set of tutorials on the topic of Datagrams. - Thanks to Jeff Hellzen for this suggestion. - -Fri Sep 4 18:56:36 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/Name_Proxy.cpp: - Fixed spurious double assignment (int foo = foo = bar;), thanks - to thanks to John Mulhern <9107@mn3.lawson.lawson.com> for - reporting this. - -Fri Sep 04 18:54:32 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Select_Reactor_T.cpp (ACE_Select_Reactor_T): Made sure that - all references to Select_Reactor have the template argument in - them. Thanks to Chuck Gehr <GehrCR@LOUISVILLE.STORTEK.COM> for - sending the patches. - -Fri Sep 4 18:29:29 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * examples/Reactor/Proactor/test_proactor.cpp: Changed to use - "test_proactor.cpp" as input file. - -Fri Sep 4 17:51:17 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * ace/Proactor.cpp: - * ace/Asynch_Acceptor.cpp: - * ace/Asynch_Acceptor.h: - * ace/Asynch_IO.cpp: - * examples/Reactor/Proactor/test_proactor.cpp: - First round of changes for ACE_Asynch_Accept. Makes use of - separate thread for each accept call, each thread blocking on the - ACE_OS::accept. Thanks to Irfan, a better implementation using - TP_Reactor is currently being done. - -Fri Sep 4 16:45:36 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace: Removed all traces of ACE_HAS_MT_SAFE_SOCKETS -- this was a - vestige from Solaris 2.2! Thanks to Ossama Othman - <othman@astrosun.tn.cornell.edu> for suggesting this. - - * ace/Service_Config: Changed the default value of - ACE_Service_Config::debug_ from 1 to 0. Thus, debugging is - DISABLED by default. If you want to enable debugging, pass the - -d option to the constructor of ACE_Service_Config. - - * ace/Naming_Context.cpp, - ace/Service_Config.cpp, - ace/Service_Types.cpp, - ace/Service_Repository.cpp: Now we only print out service config - information if we're ACE::debug() is non-0. This is more - consistent with other parts of ACE. Thanks to XuYifeng - <xuyf@pop.zg169.net> for reporting this. - - * ace/Service_Config: Moved the debug() stuff from here and put it - into class ACE so that it will be more globally visible. - -Fri Sep 04 15:24:44 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/ACE.i: Here, we should use ASYS_INLINE which is always - defined as inline on most platforms. - - * ace/Log_Msg.h (ACE_Log_Msg): Added a new ACE_DEBUG format - character 'A' which prints out an ACE_timer_t value. This is - most useful when you want to print out the timers in - ACE_Profile_Timer::ACE_Elapse_Time. Thanks to Naga for - providing the brilliant idea. - - * tests/XtReactor_Test.cpp (main): Removed '.cpp' from - ACE_START_TEST title string. Thanks to Ossama for reporting - this. - - * Makefile (CONTROLLED_FILES): Removed some documents from the - list because they are in docs/ now. - - * tests/run_tests.bat: Removed trailing '.cpp' from - Message_Queue_Notifications_Test. Thanks to Jack Erickson - <JErickson@exchange.ml.com> for reporting this. - - * ace/OS.i (signal): Added check for ACE_WIN32 to defeat the - effect of !defined (ACE_LACKS_UNIX_SIGNALS). Although Win32 - does has ACE_LACKS_UNIX_SIGNALS defined, it also has limited - support for signals. Thanks to XuYifeng <wj@public.hz.zj.cn> - for reporting this. - -Fri Sep 04 07:26:57 1998 David L. Levine <levine@cs.wustl.edu> - - * include/makeinclude/rules.bin.GNU,wrapper_macros.GNU: - moved VBIN definition from rules.bin.GNU to wrapper_macros.GNU. - With this change, individual Makefiles need not define VBIN. - - * tests/run_tests.sh: removed -f so that temp file removal - works properly. Don't printout ipcs output unless it - changes, for resources owned by the user. - -Fri Sep 04 01:01:58 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Timeprobe.h: Disable warning of using Microsoft Extensions. - -Fri Sep 04 02:12:03 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.37 released. - -Fri Sep 4 00:07:18 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/IPC_SAP/SOCK_SAP/CPP-inserver-fancy.cpp (open): Added - template instantiations to make GCC happy. Thanks to David - Levine for reporting this. - -Thu Sep 03 19:15:52 1998 Fred Kuhns <fredk@arl.wustl.edu> - - * docs/tutorial/006/client_acceptor.cpp: added - typedef ACE_Svc_Handler <ACE_SOCK_STREAM, ACE_NULL_SYNCH > inherited; - -Thu Sep 03 17:03:46 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Dynamic.cpp (instance): Removed the typedef in the header - file because some compiler was having problems with it. Thanks - to baksoo@dbserver.kaist.ac.kr for reporting this. - -Thu Sep 03 16:43:34 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.cpp (thr_create): play the zero thread priority game - on Solaris if defined (sun), not if defined (ACE_HAS_STHREADS). - This allows POSIX threads to be created with a thread priority - of 0 if _POSIX_C_SOURCE=199506L and _POSIX_PTHREAD_SEMANTICS - are defined. Thanks to Russ Noseworthy - <rnosewor@objectsciences.com> for reporting this problem. - - * examples/Threads/tss2.cpp: added explicit ACE_Guard <ACE_Token> - instantiation. - - * tests/Dynamic_Priority_Test.cpp (main): changed "not supported" - to "not available" in printout that indicates that the - test will be run in time-sharing class, instead of - a real-time class. The test can still run in time-sharing - class. Thanks to Ossama for reporting this. - -Thu Sep 03 16:14:16 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Synch.i (ACE_Process_Mutex::remove): Reset this->lock_ to 0 - after removing the lock so we can avoid destroying the same - kernel object twice. Thanks to Detlef Becker - <Detlef.Becker@med.siemens.de> for reporting this. - -Thu Sep 03 15:43:22 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tests/Upgradable_RW_Test.cpp: Fixed this file so that it works - with egcs. - -Thu Sep 3 14:51:06 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * docs: Moved ACE-{tutorials,guidelines,subsets,porting}.html - into the docs directory from the etc directory. This is - a more "fitting" location... - -Thu Sep 3 13:23:39 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * Makefile (CONTROLLED_FILES): Added docs/ into CONTROLLED_FILES. - -Thu Sep 03 09:24:20 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Message_Block.cpp: added ACE_Guard <ACE_Lock> instantiation. - - * ace/SPIPE_Stream.i (recv_handle): replaced "recvfd = recvfd" with - ACE_UNUSED_ARG (recvfd) to avoid egcs 1.1 warning about a - statement with no effect. - -Thu Sep 03 00:26:23 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Time_Request_Reply.cpp (ACE_Time_Request): The second - parameter should be of type ACE_UINT32. - -Wed Sep 2 22:52:32 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * netsvcs/lib/Name_Handler.cpp, - * ace/Time_Request_Reply.cpp: Fixed up yet another - minor mismatch caused by the ACE_SUCCESS/ACE_FAILURE fixes... - Thanks to David Levine for tracking these down. - -Wed Sep 02 20:55:18 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.36 released. - -Wed Sep 2 19:21:25 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Name_Request_Reply.cpp: Continued to cleanup the residue of - the ACE_SUCCESS and ACE_FAILURE changes. Thanks to David Levine - for reporting this. - -Wed Sep 02 19:08:29 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Template_Instatiations.cpp: commented text following - an #endif. - -Wed Sep 02 16:46:45 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.35 released. BTW, these releases were aborted - due to CVS hiccups. We've got to figure out a better way to - roll this stuff back... - -Wed Sep 02 16:33:25 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.34 released. - -Wed Sep 02 16:31:22 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.h: Make sure ACE_NO_INLINE is not defined before defining - it to avoid double defining the macro. Thanks to Ossama Othman - <othman@astrosun.tn.cornell.edu> for suggesting this. - -Wed Sep 2 11:10:08 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Task.cpp (activate): Remmber to decrement the thr_count_ if - spawn_n() fails. Thanks to Russ Noseworthy - <rnosewor@objectsciences.com> for reporting this fix. - - * examples/IPC_SAP/SOCK_SAP/CPP-inclient.cpp: Fixed another - void * -> char * problem. Now this stuff all seems to build - fine. - -Wed Sep 02 10:07:15 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Name_Request_Reply.{h,cpp}: reverted ACE_SUCCESS to SUCCESS - because other ACE code depended on it. - - * ace/Object_Manager.cpp (~ACE_Object_Manager_Base): moved - internal_lock_ deletion inside ACE_MT_SAFE protection. Thanks - to Dongwook Kim <baksoo@dbserver.kaist.ac.kr> for reporting this. - - * include/makeinclude/platform_sunos5_sunc++.GNU: updated comments - to recommend not using Sun C++ 4.1. - -Wed Sep 02 09:34:32 1998 Oliver M. Kellogg <Oliver.Kellogg@vs.dasa.de> - - * ace/OS.i (sigwait): use __sigwaitd10 with g++ on DU 4.0. - -Tue Sep 1 20:44:15 PDT 1998 James C. Hu <jxh@entera.com> - - * ace/Filecache.cpp: - * ace/UPIPE_Stream.cpp: I guess nobody uses GCC anymore. Fixed - some template instantiation problems in Filecache.cpp and - UPIPE_Stream.cpp. I guess, eventually all of this will be moved - into the Template_Instantiations.cpp file, but until then... - -Tue Sep 01 20:59:11 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.i (ts_object): commented test appearing after the #endif. - - * ace/OS.i (rw_trywrlock_upgrade): expanded/added comment to - clarify the with/without ACE_LACKS_RWLOCK_T distinction. - - * ace/OS.i (sigwait): fixed indentation. - - * ace/ACE.cpp (get_ip_interfaces): removed trailing } after comment - following #endif. - - * etc/ACE-guidelines.html: added section on scripts. Added rule - to prefix constants and enum values with ACE_ or TAO_. - -Tue Sep 1 19:05:05 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/XtReactor_Test.cpp: Added a new version that should work - on Linux. Thanks to Eric Newton for this fix. - -Tue Sep 1 19:40:03 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/XtReactor_Test.cpp: - If ACE_LACKS_MOTIF is defined the test can use Athena - Widgets. Thanks to Eric C. Newton <ecn@smart.net> for - contributing this example. - -Tue Sep 1 19:05:05 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/Shared_Malloc/test_malloc.cpp (spawn): Fixed a minor - problem with conversions from const char * literals to char *'s. - Thanks to John Mulhern for reporting this problem. - - * examples/IPC_SAP/SOCK_SAP/CPP-in{server,client}.cpp: Fixed all - uses of void *request with char *request to stop ANSI C++ - compilers from complaining. Thanks to John Mulhern for - reporting this problem. - -Tue Sep 01 16:22:06 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Filecache.cpp (init and ~ACE_Filecache_Object): Changed - SUCCESS to ACE_SUCCESS. - -Tue Sep 1 13:54:10 PDT 1998 James C. Hu <jxh@entera.com> - - * ace/Message_Block.h: - * ace/Message_Block.i: Added a space () method that reports - the amount of space remaining in the message block. - -Tue Sep 1 3:50:39 US/Central 1998 James CE Johnson <jcej@lads.com> - - * etc/tutorials/006/client_handler.cpp - etc/tutorials/006/client_handler.h - etc/tutorials/006/page04.html - etc/tutorials/006/page05.html - - Added a close() method to Client_Handler so that it will be closed - properly when the svc() method exits. - - * etc/tutorials/007/client_handler.cpp - etc/tutorials/007/client_handler.h - etc/tutorials/007/page05.html - etc/tutorials/007/page06.html - etc/tutorials/007/page09.html - - Added Client_Handler::close() that will be called when - Client_Handler::svc() exits in the thread-per-connection model. - Thread_Pool::svc() now calls the handler's handle_close() method - to properly shut down the handler if handle_input() fails. - -Tue Sep 01 12:58:02 1998 Chris Gill <cdgill@cs.wustl.edu> - - * ace/ACE.cpp - ace/Basic_Types.cp - ace/Containers.{cpp, h} - ace/Filecache.{cpp, h} - ace/Hash_Map_Manager.{cpp, h} - ace/INET_Addr.cpp - ace/Local_Tokens.cpp - ace/Log_Record.cpp - ace/Map_Manager.{cpp, h} - ace/Message_Block.cpp - ace/Name_Request_Reply.{cpp, h} - ace/OS.{cpp, h, i} - ace/Object_Manager.h - ace/Process.cpp - ace/Remote_Name_Space.cpp - ace/SOCK_Dgram_Mcast.{cpp, h} - ace/Service_Types.cpp - ace/Signal.cpp - ace/Synch_T.{cpp, h, i} - ace/Time_Hash.cpp - ace/Token_Request_Reply.h - ace/UPIPE_Stream.cpp - ace/config-psos-diab.h - ace/config-psos-tm.h: - - pSOS port of ACE for the Diab 4.2 and Trimedia cross compilers. - Thanks to Jin Lu of Philips Research for completing the ACE pSOS - port on the Trimedia cross compiler and contributing the changes - back to the ACE distribution. - -Tue Sep 1 10:43:24 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/config-linux-common.h, - ace/config-sco-5.0.0-mit-pthread.h, - ace/config-sco-5.0.0.h, - ace/README: - ACE_HAS_LONG_FDMASK macro has been changed to - ACE_HAS_BIG_FD_SET. Therefore, I updated these files. Thanks - to Ossama Othman <othman@astrosun.tn.cornell.edu> for reporting - this. - -Tue Sep 01 10:21:49 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/TSS_Test.cpp (cleanup, worker): with ACE_HAS_PTHREADS_DRAFT4, - delete the tss instances in cleanup instead of worker. This gets - rid of the memory leaks on those platforms. - - * include/makeinclude/platform_osf1_4.0.GNU: added - -hidden [...] -non_hidden magic. See comments in the file; - this solves a problem with mutiply defined symbols between - shared libraries and DEC's libcxxstd.a. It only affected - tests/IO_Stream_Test. - -Tue Sep 01 10:03:55 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.33 released. - -Tue Sep 01 03:46:21 1998 Steve Huston <shuston@riverace.com> - - * ace/Asynch_Acceptor.{h cpp}: Enable the contents for platforms - with ACE_HAS_AIO_CALLS, not just ACE_WIN32. Thanks to John - Mulhern for these fixes. - - * examples/Reactor/Proactor/Makefile: Removed include of - platform_macros.GNU. Thanks to John Mulhern for this one too. - -Mon Aug 31 16:38:03 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/config-kcc-common.h: Added ACE_HAS_CPLUSPLUS_HEADERS to - prevent warnings/errors. Thanks to Ben Eng <ben@jetpen.com> and - Todd Pack <todd@rwii.com> for reporting this. - - * Added a bunch of patches so that ACE compiles and passes its - tests on Chorus with gcc. Thanks to Alberto Villarica" - <Alberto.Villarica.rav@nt.com> for reporting this. - -Mon Aug 31 14:02:34 1998 Darrell Brunsch <brunsch@cs.wustl.edu> - - * ace/ace.dsw: - * ace/ace_dll.dsp: - * ace/ace_lib.dsp: - Updated to MSVC 6, which consisted of changing the - version number insde to 6.00. This change gets it - to work in both 5 and 6, without any trouble. - -Mon Aug 31 12:25:15 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Object_Manager.*: reorganized to provide the - ACE_Object_Manager_Base class. This class contains - the data structures used to support Singleton - registration for destruction. - - * ace/ACE.{h,cpp}: added init () and fini (). These - currently just call the ACE_Object_Manager's init () - and fini (). The might be useful for applications - that use ACE_HAS_NONSTATIC_OBJECT_MANAGER and - ACE_DOESNT_INSTANTIATE_NONSTATIC_OBJECT_MANAGER, and - therefore need to explicitly initialize and finalize - the ACE_Object_Manager singleton. - - * tests/Semaphore_Test.cpp (test_timeout): a timed - semaphore acquire fails on ACE_HAS_PTHREADS_DRAFT4 - with EINTR instead of ETIME if it times out. That's - the way it's documented, as well as the way it behaves on LynxOS. - - * tests/TSS_Test.cpp (cleanup): with DRAFT4 threads, - don't do anything in the cleanup function. - The intended use of this function doesn't apply. - With Draft 4 threads, this function is called implicitly - by pthread_setspecific whenever an old value is replaced. - This function is intended to be used with Draft 6 and later - threads, where it is called on thread termination with the - thread-specific value. - - * tests/test_config.cpp: set ACE_MAX_PROCESSES to 4 on LynxOS, - so that Process_Mutex_Test will succeed. - -Sun Aug 30 23:05:34 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Select_Reactor_T.cpp: Should include ace/Thread.h also. - Thanks to J. Russell Noseworthy <rnosewor@objectsciences.com> - for reporting this. - - * ace/Select_Reactor.cpp: Added explicit template instantiation - for ACE_Lock_Adapter<ACE_Select_Reactor_Token_T<ACE_Noop_Token>>. - Thanks to Eric C. Newton <ecn@smart.net> for reporting this. - -Sun Aug 30 07:44:54 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-sunos5.5.h,ace/README, - include/makeinclude/platform_sunos5_sunc++.GNU: - use ACE_LACKS_RTTI instead of ACE_HAS_RTTI without rtti, - with Sun CC on SunOS 5.5. That removes all use of ACE_HAS_RTTI - from ACE. - - * netsvcs/lib/Name_Handler.h: added #include of ace/Singleton.h. - - * tests/run_tests.vxworks: commented out Dynamic_Priority_Test. - It now causes VxWorks to go to never-never land. - - * ace/config-g++-common.h,ace/README,tests/Conn_Test.cpp: - added ACE_HAS_OLD_GNUG. Thanks to Doug for this suggestion. - - * ace/Token.cpp (ACE_Token_Queue_Entry ctor): added - ACE_UNUSED_ARG (m) ifdef ACE_TOKEN_USES_SEMAPHORE. - -Sun Aug 30 00:14:29 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Service_Object.cpp (fini): Make sure to check the - <fini_already_called_> flag before proceeding. Also - ~ACE_Service_Type() now calls this->fini(). - - * ace/Svc_Handler: - * ace/Dynamic: - - Patrick J. McNerthney <pat@cartia.com> described this problem: - ________________________________________ - - ACE_Svc_Handler creates an - ACE_TSS_Singleton<ACE_Dynamic,ACE_SYNCH_NULL_MUTEX> singleton - object to determine if the ACE_Svc_Handler is a dynamically - created object or not. ACE_TSS_Singleton declares the internal - single instance of the ACE_Dynamic object as a - ACE_TSS<ACE_Dynamic> data type. - - The first time this object is "referenced", - ACE_TSS<ACE_Dynamic>::ts_init() is called, which in turn calls - ACE_Thread::keycreate and registers - ACE_TSS<ACE_Dynamic>::cleanup with it. Since ACE_TSS is a - template class, the vtable and the code of this object resides - in the dynamically loaded service DLL. - - During termination, the Object Manager closes down the Service - Configurator, causing all services to be shutdown, and their - DLLs are unloaded. - - The Object Manager then calls ACE_OS::cleanup_tss which attempts - to call the above registered ACE_TSS<ACE_Dynamic>::cleanup - method. Since the DLL has already been unloaded, the - application faults trying to access the vtable. - ________________________________________ - - My earlier solution addressed this problem but only in - ~Object_Manager(), i.e., at the end of the application, by - carefully ordering the cleanup of singletons, tss, and the - unlinking of libraries. To solve this more generically and to - address this problem when DLLs are unlinked arbitrarily (and not - only at the end of applications), I moved the typedef of - ACE_TSS_Singleton<ACE_Dynamic> from Svc_Handler.h to - Dynamic.h. Then the access to this singleton was changed from - DYNAMIC::instance() to ACE_Dynamic::instance(). - - This will force the generation of the code for this class to be - in the ACE library rather than in a user's DLL. Hence when TSS - cleanup hooks and Object Manager are trying to clean this object - up from ~Object_Manager, it won't crash as the code for this - class is in ACE and not in the unlinked DLL. - - This issue raised a couple of interesting observations about - ACE_Singleton and ACE_TSS_Singleton and DLLs: - - It is ok to use ACE_Singleton and ACE_TSS_Singleton in DLLs that - are going to be unlinked at the end of the program. For DLLs - that may get unlinked *before* the end of the program, they must - not use ACE_Singleton or ACE_TSS_Singleton. ACE_Singleton - registers with the Object_Manager for deletion and therefore is - accessed at the end of the application. ACE_TSS_Singleton is - very similar to ACE_Singleton. Moreover, it uses tss cleanup - hooks to clean up the thread specific storage. Therefore, if - the DLL lives shorter than the thread and/or the application, it - must *not* use ACE_Singleton and ACE_TSS_Singleton. - - This motivates the need for ACE_DLL_Singleton<T>. As usual, - contributions to ACE are always welcome ;-) Many, many thanks to - Patrick J. McNerthney <pat@cartia.com> for all his help! - -Sat Aug 29 19:22:22 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/Service_Configurator/Misc/main.cpp (main): Fixed a stray - l_argv[3] = 0; I'm not sure why this was here... - -Sat Aug 29 17:31:06 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * examples/IPC_SAP/SOCK_SAP/CPP-in{client,server,server-fancy}.cpp: - Updated these tests to be more robust and better designed. - - * examples/IPC_SAP/SOCK_SAP/Makefile: Added the - CPP-inserver-fancy.cpp file. I'm not sure why I'd omitted it - for so long... - - * examples/IPC_SAP/SOCK_SAP/CPP-in{client,server}.cpp: Cleaned up - the code a bit to avoid warnings. Thanks to David Levine for - reporting these. - -Sat Aug 29 14:11:25 1998 David L. Levine <levine@cs.wustl.edu> - - * etc/ACE-guidelines.html: added rule to not for a pointer - being 0 before deleting it. It's always safe to delete a - 0 pointer. Thanks to James CE Johnson <jcej@lads.com> for - pointing this out. - -Fri Aug 28 23:29:51 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/IPC_SAP/SOCK_SAP/CPP-in{client,server}.cpp: Enhanced - the client and server test so that it'll be a good benchmark for - the "best case" to compare TAO against. - -Fri Aug 28 21:53:13 1998 Steve Huston <shuston@riverace.com> - - * ace/OS.h: Conditionalize setting of ACE_INFINITE on non-Win32 - to allow the platform config to define a value. - - * ace/config-hpux11.h: Define ACE_INFINITE as 10000000. This value - was empirically determined by John Mulhern. Until we know why - this had to be done, you may need to set a different value in - your own config.h file. - -Fri Aug 28 13:14:34 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * examples/Service_Configurator/Misc/main.cpp: Made the file CE - friendly. Added "-y" to service configurator so we can still - test static services. - -Fri Aug 28 13:45:28 1998 David L. Levine <levine@cs.wustl.edu> - - * include/makeinclude/platform_lynxos.GNU: added HOST_OS - support for PowerPC target. It has a slightly different - name (sunos-xcoff-ppc) than for x86 target (sunos-coff-x86). - - * ace/config-lynxos.h: there doesn't seem to be an - alloca () for PowerPC target. So, only enable - ACE_HAS_ALLOCA and ACE_HAS_ALLOCA_H ifdef __x86__. - -Fri Aug 28 12:30:57 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * bin/create_ace_build: - Now it will cleanup dead links on the build directory. - -Fri Aug 28 09:45:53 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Synch: Fixed the constructor of ACE_Null_Condition so that - it's consistent with ACE_Condition_Thread_Mutex. Thanks to - Mats Nilsson <mats.nilsson@xware.se> for reporting this. - -Fri Aug 28 08:33:20 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * ace/OS.h (FILE_FLAG_SEQUENTIAL_SCAN): Given null definitions for - FILE_FLAG_SEQUENTIAL_SCAN for Non Win32 platforms. - -Thu Aug 27 19:40:32 1998 Steve Huston <shuston@riverace.com> - - * ace/OS.i: Changed an erroneous ACE_HAS_PTHREAD_DRAFT6 to - ACE_HAS_PTHREADS_DRAFT6. Thanks to Chuck Gehr for catching this. - -Thu Aug 27 15:47:34 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Proactor.cpp (handle_signal): Fixed code for looping around - handle_events(). Thanks to Marc Penner <mpenner@rst.inri.com> - for pointing out the problem. - - * ace/OS.cpp (ACE_Countdown_Time::stop): Removed the setting of - errno to ETIME when we have used all of timeout. This was - necessary since this errno was interfering with errno being set - by other parts of ACE. - -Thu Aug 27 13:45:31 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.h: Added /**/ between "#include" and - "<ace/sys_conf.h>". Otherwise, MSVC spits out warnings, tons of - them. - - * ace/Profile_Timer.h (ACE_Profile_Timer): Remove the Win32 - section. Win32 (except CE) actually uses the code in - ACE_HAS_GETRUSAGE. - -Thu Aug 27 13:12:04 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * examples/Reactor/Proactor/test_proactor.cpp : - test_proactor_with_aio.cpp is removed. - test_proactor.cpp should do well on Win as well as other - POSIX4 compliant platforms (with some known bugs in Solaris2.6). - -Thu Aug 27 11:35:11 1998 David L. Levine <levine@cs.wustl.edu> - - * etc/ACE-guidelines.html: added rule to declare a loop index - before the loop, if it's used after the loop. - - * ace/OS.h,README: added ACE_LACKS_RTTI support, for use with - ACE_HAS_ANSI_CASTS without dynamic_cast. - - * ace/config-sunos5.5.h (Sun CC only), config-osf1-4.0.h: - added conditional ACE_LACKS_RTTI. - - * include/makeinclude/platform_osf1_4.0.GNU: added rtti=0 - support. - - * ACE-INSTALL.html,include/makeinclude/wrapper_macros.GNU: - updated comments to reflect that rtti=0 is now supported on - OSF1-4.0. (It's not only supported on Sun CC/SunOS 5.) - - * tests/SOCK_Connector_Test.cpp (host_is_up): broke out - the code to test whether a host exists, is reachable, and - is up into host_is_up (). Consider the host up if the - blocking connection attempt succeeds, or down if it doesn't. - -Wed Aug 26 23:43:42 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.32 released. - -Wed Aug 26 19:11:07 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * bin/count_lines: - A nice Perl script to count lines of code. - -Wed Aug 26 17:35:43 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/Reactors_Test.cpp (close): Oops, the ACE_ASSERT() was - incorrect. It should be - - ACE_ASSERT (Test_Task::task_count_ >= 0); - - Thanks to David Levine for reporting this. - -Wed Aug 26 07:47:57 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Select_Reactor.h: Added template specialization for - ACE_Guard<ACE_Select_Reactor_Token_T<ACE_Noop_Token>> to speed - thing up when using lock-freed Select_Reactor. - - * ace/Select_Reactor.cpp: Removed template instantiation for - ACE_Guard<ACE_Select_Reactor_Token_T<ACE_Noop_Token>> because - it's been specialized in .h file. - -Wed Aug 26 08:51:23 1998 Steve Huston <shuston@riverace.com> - - * ace/OS.cpp (thr_keycreate): On pthreads draft 6, the call is - pthread_key_create, not pthread_keycreate. Thanks to Arturo - Montes <mitosys@colomsat.com.co> for this fix. - -Wed Aug 26 08:32:18 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Reactor_Performance_Test.cpp (create_reactor): - wrapped block in "if" statement with {} to prevent syntax - error. Yet another example of why we should always use - {} in "if" statements :-) - -Wed Aug 26 07:54:49 1998 J. Russell Noseworthy <rnosewor@objectsciences.com> - - * ace/OS.{i,cpp} (rwlock_init): use native ::rwlock_init on Solaris, - even if ACE_HAS_STHREADS isn't defined. This avoids a nasty - bug on startup with only ACE_HAS_PTHREADS defined on Solaris. - The ACE_Object_Manager fails to initialize its first - preallocated object, and core dumps when trying to use - the ACE_Log_Msg lock, which hasn't been initialized yet. - -Tue Aug 25 21:26:29 1998 James CE Johnson <jcej@lads.com> - - * include/makeinclude/platform_linux_lxpthread.GNU: - added NO_IMPLICIT_TEMPLATES support. To disable - -fno-implicit-templates, set NO_IMPLICIT_TEMPLATES - to anything in either your environment or on the - make command line. - -Tue Aug 25 20:04:09 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/config-hpux11.h: Added ACE_HAS_AIO_CALLS. Thanks to John - Mulhern for verifying this. - - * etc: Began to add the ACE tutorials. Thanks to James CE Johnson - <jcej@lads.com> for contributing this stuff. - - * tests/Reactor*.cpp: Fixed all the Reactor tests so that they'd - abide by the appropriate design rules. Thanks to Hans Rohnert - <rohnert@scr.siemens.com> for reporting this. - -Tue Aug 25 19:31:37 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Memory_Pool.i (~ACE_Lite_MMAP_Memory_Pool,~ACE_MMAP_Memory_Pool): - swapped to avoid use of ~ACE_MMAP_Memory_Pool before its linline - definition. - -Tue Aug 25 18:48:50 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Service_Config.cpp (parse_args): Changed the default for - ACE_Service_Config::no_static_svcs_ to be 1. This means that by - default static services (ACE_Naming_Context and - ACE_Service_Manager) will *not* be loaded into the Service - Repository. The -n option remains the same for backward - compatibility, i.e., it sets ACE_Service_Config::no_static_svcs_ - to 1. -y is a new option that sets - ACE_Service_Config::no_static_svcs_ to 0. - -Tue Aug 25 18:28:11 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.i (strdup): Changed ::strlen to ACE_OS::strlen so we can - get the actual length for UNICODE strings. Thanks to Dana - Hackman <upboms@network-one.com> for reporting this. - - Also, the size of the allocated memory should be - (strlen(s)+1)*sizeof(wchar_t), not strlen(s)*sizeof(wchar_t)+1. - -Tue Aug 25 14:33:46 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/XtReactor.cpp: - The lock type for the ACE_XtReactor was wrong. - -Tue Aug 25 13:36:10 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * tests/Aio_Platform_Test.cpp (do_sysconf): Fixed the VxWorks - warnings. - -Tue Aug 25 13:04:00 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Memory_Pool: Added virtual destructors. - -Tue Aug 25 10:38:52 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * bin/auto_compile: - Added orbsvcs/test/Property/run_test.pl. - The Simple test was moved to Simple/time. - -Tue Aug 25 10:45:50 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * tests/Aio_Platform_Test.cpp: Fixed the SunCC errors about - missing function prototypes. Also put the various - <sysconf> routines under "#if defined <SYMBOL>" - statements. - -Tue Aug 25 07:42:40 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Memory_Pool.cpp: changed ACE_Auto_Basic_Array_Ptr<char *> - template instantiation to ACE_Auto_Basic_Array_Ptr<char>. - - * examples/IPC_SAP/UPIPE_SAP/ex3.cpp (consumer): changed - ACE_Auto_Basic_Ptr <char> to ACE_Auto_Basic_Array_Ptr <char>. - - * tests/Reactor_Performance_Test.cpp, - examples/IPC_SAP/UPIPE_SAP/ex{2,3}.cpp: - removed explicit ACE_Auto_Basic_Array_Ptr <char> instantiation - because it's now in libACE. - - * include/makeinclude/wrapper_macros.GNU: added BUILD - definition when building static libs only. This was necessary - to allow the TAO/orbsvcs/tests/Simulator/{EventSup,DOVEMIB} - makes to work properly on both Solaris and VxWorks. - It also means that BUILD is no longer necessary in most Makefiles. - - * tests/Message_Queue_Notification_Test.cpp (main): removed - trailing ".cpp" from log file name. - - * ace/config-sunx86-sunc++-4.x.h: removed because it wasn't being - maintained, because config-sunos5.{5,6}.h are supported on Solaris86. - - * include/makeinclude/wrapper_macros.GNU: fixed determination - of whether the g++ version supports exception handling. Assume - that it doesn't on VxWorks. Thanks to Margherita Vittone Wiersma - <vittone@fndaub.fnal.gov> for reporting this. - - * include/makeinclude/platform_vxworks5.x_g++.GNU: use := instead - of += to set PATH, because += seems to insert a space. - -Tue Aug 25 05:23:11 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/Message_Queue_Notifications_Test.dsp: Fixed something.... - - * tests/tests.dsw: Fixed a typo. - - * ace/ace_{dll,lib}.dsp: - * ace/Makefile: Added Select_Reactor_T and Select_Reactor_Base. - Rebuilt file dependencies. - - * ace/Select_Reactor[_Base,_T].{h,i,cpp}: Templatized - ACE_Select_Reactor and gangs. The original Select_Reactor files - are splited into three sets of files. Select_Reactor_Base - defines common components used by Select_Reactor and defines - Select_Reactor_Base class. Select_Reactor_T defines the - template classes. Select_Reactor instantiates necessary - template classes. Next step is to add template specialization - for ACE_Guard< ACE_Select_Reactor_Token_T <ACE_Noop_Token> >. - - * ace/Synch.{h,i}: Added a new class ACE_Noop_Token which is a - subclass of ACE_Null_Mutex. It supports a null renew method. - This class should be called ACE_Null_Token but the name is - already used. - -Tue Aug 25 01:38:40 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/Threads/task_three.cpp (main): Fixed this example so - that it works portably with signals. Thanks to Susan Liebeskind - <susan.liebeskind@gtri.gatech.edu> for reporting this. - - * tests/Aio_Platform_Test.cpp: Removed the forward decls - so that don't conflict with the use of "static" later on. - Thanks to David Levine for reporting this. - -Mon Aug 24 22:23:33 1998 David L. Levine <levine@cs.wustl.edu> - - * examples/IPC_SAP/UPIPE_SAP/ex{2,3}.cpp: removed unnecessary - includes of fstream.h. - -Mon Aug 24 18:11:39 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Memory_Pool.cpp (ACE_Local_Memory_Pool::release): This - memory pool uses "new" to create memory chunks for the Malloc - class. However, since it did not keep track of this memory, - these chunks were leaked. - - The solution was to keep tarck of the chunks allocated and - delete them in release(). - - * ace/Object_Manager.cpp (~ACE_Object_Manager): Moved TSS cleanup - *before* Service_Config::close(). We need this to happen since - DLL related TSS objects need to get cleaned up *before* the DLL - is unlinked. The only downside to this order of things is that - Log_Msg will also get cleaned up by TSS cleanup, and we need to - make sure that we do not access Log_Msg after TSS cleanup. - - For this to work, we need to make sure of two things: user code - is not called and ACE does not use Log_Msg after this after TSS - resources have been cleaned up. The only major code that is - called is Service_Config::close(). Since - Service_Config::fini_svcs() has already been called, - Service_Config::close() only unlinks the DLLs and does not call - into user code. - - * ace/Service_Repository.cpp (close): Don't access Log_Msg since - it has already been deleted by the time this code runs. - - * ace/Service_Config.cpp (close): Don't access Log_Msg since it - has already been deleted by the time this code runs. - -Mon Aug 24 18:13:58 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/Aio_Platform_Test.cpp: Fixed a few problems due - to the fact that we weren't carefully guarding against platforms - that don't support AIO macros. Thanks to Dana Hackman - <upboms@network-one.com> for reporting this. - -Mon Aug 24 15:18:46 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/run_tests.sh: run Message_Queue_Notifications_Test - instead of Message_Queue_Notifications_Test.cpp. - -Mon Aug 24 13:05:03 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/config-{chorus,WinCE,vxworks5.x}.h: Added - ACE_HAS_STRDUP_EMULATION. Thanks to Chuck Gehr for this - suggestion. - - * ace/OS.i (strdup): Removed complicated #ifdef and replaced it - with ACE_HAS_STRDUP_EMULATION. - -Mon Aug 24 10:41:07 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * ace/OS.h: Provided null defitions for all the <wstat> wait - status macros for ACE_WIN32 platform. - -Mon Aug 24 00:11:00 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/Reactor/Misc/pingpong.cpp (run_svc): Fixed a subtle - potential "order of destruction" bug with this test. Thanks to - Hans Rohnert for reporting this. - -Sun Aug 23 21:09:55 1998 Arturo Montes <mitosys@colomsat.net.co> - - * ace/OS.i (thr_testcancel): with ACE_HAS_PTHREAD_DRAFT6, - use ::pthread_testintr () instead of pthread_testcancel (). - Thats what FSU pthreads uses. Hopefully, MVS does also. - -Sun Aug 23 16:28:10 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Process.cpp (spawn): Removed the ACE_DEBUG messages on exec - failure, etc. If apps want to know what has failed, they need - to check the return from spawn() or wait(). ACE shouldn't be - generating debugging information gratuitiously... - -Sun Aug 23 15:42:48 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * ace/Process.cpp: Put the warning on failure on exec - ("ACE_Process::spawn (); exec failed: exiting!!!!\n") under - condition (ACE_Service_Config::debug_). - -Sun Aug 23 11:12:46 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/Makefile: - * tests/Message_Queue_Notifications_Test.cpp: - Fixed typos. - -Sat Aug 22 21:52:23 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/IPC_SAP/UPIPE_SAP/ex[23].cpp: Changed the - Auto_Basic_Ptr to the Auto_Basic_Array_Ptr to avoid compilation - problems. Thanks to David Levine for reporting this. - -Sat Aug 22 20:13:37 1998 Darrell Brunsch <brunsch@cs.wustl.edu> - - * ACE-INSTALL.html: Added instructions for adding Alpha - configurations to MSVC 5 project files. - -Sat Aug 22 13:24:00 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/Message_Queue_Notifications_Test.cpp: Surrounded the - ACE_Barrier with conditional compilations for ACE_HAS_THREADS. - Thanks to Ganesh Pai <gpai@voicetek.com> for reporting this. - - * tests/Message_Queue_Notifications_Test.cpp: Cleaned up the - formatting a bit. - - * tests: Renamed MsgQueue_Notifications_Test.{cpp,bpr,dsp} to - Message_Queue_Notifications_Test.{cpp,bpr,dsp} to be more - consistent with spelling. - - * ace/OS.h: Moved the ACE_timer_t down a bit in the file so that - ACE_UINT is defined. Thanks to Naga for reporting this. - - * ace/OS.h: Added a "no-op" typedef for ACE_Rusage for platforms - that don't support it. Thanks to David Levine for reporting - this. - -Sat Aug 22 07:59:28 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/UPIPE_SAP_Test.cpp (main): removed unused local - variables thr_handle_acceptor and thr_handle_connector. - - * tests/UPIPE_SAP_Test.cpp (connector): removed leading newline - in printout at end of thread execution. - - * ACE-INSTALL.html: added egcs section. Thanks to - Ganesh Pai <gpai@voicetek.com> for a portion of it. - - * examples/IPC_SAP/UPIPE_SAP/ex1.cpp (peer1); removed spurious - "new" in ACE_NEW_RETURN involcation. - - * examples/IPC_SAP/UPIPE_SAP/ex{2,3}.cpp: untabified. - - * examples/IPC_SAP/UPIPE_SAP/Makefile: updated dependencies - so that the module will build, now that auto_builtin_ptr.h - has been removed. - -Sat Aug 22 00:27:06 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Read_Buffer.i (alloc): Added new method to get to - Read_Buffer's allocator. This is necessary because we need to - free up the memory that it allocates for us. - - * ace/Service_Object.cpp (fini): New method calls fini() on - <type_> and sets the <fini_already_called_> flag. This flag is - tested in the destructor so that the <type_> is not fini'ed - twice. - - * ace/Service_Repository.cpp (fini): New method to finalize (call - fini() and possibly delete) all the services. - - * ace/Service_Config.cpp (fini_svcs): New method calls - ACE_Service_Repository::instance ()->fini (). - - * ace/Object_Manager.cpp (~ACE_Object_Manager): Added a call to - close and possibly delete all service instances in the Service - Repository by calling ACE_Service_Config::fini_svcs (). This - call is made *before* the singletons are destroyed since the - service instances maybe accessing these singletons in the fini() - and destructor methods. - - * ace/Service_Config.cpp (fini_svcs): Disable log messages when - appropriate. - -Fri Aug 21 22:26:54 1998 Steve Huston <shuston@riverace.com> - - * ace/OS.i (ACE_OS::gettimeofday): On Win32, instead of _ftime, - use GetSystemTimeAsFileTime. _ftime has a bug crossing from - daylight time to standard time in the US. - -Fri Aug 21 22:13:51 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.i (thr_cancel, thr_setcancelstate, thr_setcanceltype, - thr_testcancel): added #else - case, with ACE_NOTSUP (-1), to the various threads - types. It catches - ACE_HAS_PTHREADS && ACE_LACKS_PTHREAD_CANCEL. Thanks - to Naga for reporting this. - - * ace/OS.i (thr_setcanceltype): don't support if - ACE_LACKS_PTHREAD_CANCEL. Thanks to Naga for reporting this. - - * ace/config-chorus.h: added ACE_LACKS_PTHREAD_CANCEL. - Thanks to Naga, again. - -Fri Aug 21 20:23:44 1998 Douglas C. Schmidt <schmidt@cumbia.cs.wustl.edu> - - * examples/IPC_SAP/UPIPE_SAP/ex[123].cpp: Updated these programs - to use the ACE_Auto_Basic_Ptr instead of the bizarre - auto_builtin_ptr.h file, which has been removed... Also - replaced the global thr_mgr with the ACE_Thread_Manager - Singleton and moved the <fstream.h> include file until AFTER the - ACE includes to avoid problems with HP/UX 11's C++ compiler. - Thanks to John Mulhern for motivating these fixes. - - * ace/config-hpux-10.x.h: Added a check so that if threading is - disabled, then timespec_t does not get defined. This seems to - work around a bug with HP/UX 10.x. Thanks to Ganesh M. Pai - <gpai@voicetek.com> for reporting this. - -Fri Aug 21 19:54:26 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * include/makeinclude/wrapper_macros.GNU: - The ACE_HAS_EXCEPTIONS macro definition goes into CPPFLAGS now, - so make depend can use it too. - -Fri Aug 21 18:47:40 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Process.cpp (wait): Need to check if status is non-null - before accessing the exit status on NT. Thanks to Carlos for - pointing this out. - -Fri Aug 21 16:40:39 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/config-irix6.x-sgic++.h: - * ace/OS.i: - Some platforms (notable IRIX 6.x) do not update the timer in - pthread_cond_timedwait(), this made the Semaphore test fail for - those platforms. - I modified the ACE_OS::sema_wait() function to obtain the - desired behavior. - -Fri Aug 21 15:50:05 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * etc/ACE-porting.html: Updated some discussion on selecting - versions of STL that work with ACE and TAO. Thanks to Bob - Laferriere <robert.laferriere@gemed.med.ge.com> for reporting - this. - -Fri Aug 21 14:49:31 1998 Steve Huston <shuston@riverace.com> - - * include/makeinclude/platform_hpux_gcc.GNU: Changed the default - from build without threads to build with threads. Thanks to Ganesh - Pai <gpai@voicetek.com> for this change. - -Fri Aug 21 09:25:21 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/OS.h: Moved several #ifdefs from Profile_Timer.h into OS.h - to clean up the code. - - * ace/Profile_Timer.h: Cleaned up the class definition to make the - OSE tool happy. Thanks to Doug Anderson <doug@clark.net> for - reporting this. - - * etc: Moved the ACE-subsets.html file into $ACE_ROOT/etc. - - * ace/Synch_Options.h: Fixed a typo that was giving the OSE tool - fits! Thanks to Doug Anderson <doug@clark.net> for reporting - this. - -Fri Aug 21 03:41:01 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * examples/OS/Process/process.cpp: - * examples/OS/Process/imore.cpp: Minor bug fixes. Print out of - child processes' exit status. - -Thu Aug 20 23:33:15 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Process.cpp (wait): Allow passing back the exit status of - the child process on NT. - -Thu Aug 20 19:52:21 1998 Nagarajan Surendran <naga@cs.wustl.edu> - - * ace/OS.i: - ACE_INLINE int - ACE_OS::thr_getspecific (ACE_thread_key_t key, void **data) - ... - #else /* this is Draft 7 or STD */ - *data = pthread_getspecific (key); - - changed the ::pthread_getspecific to pthread_getspecific as it - is a macro in Chorus. Thanks to David Levine for finding this. - -Thu Aug 20 17:05:28 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/Service_Configurator/Misc/Timer_Service.cpp: Added some - ACE_SVC_FACTORY_* macros for Timer_Service_1 so that it'll - compile and link properly. Thanks to David Levine for reporting - this. - -Thu Aug 20 14:39:53 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Process.{h,cpp} (ACE_Process::wait): Added a parameter of int* to - get back the exit status of a child process. - -Thu Aug 20 14:33:59 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * etc/ACE-porting.html: Generalized the discussion to cover - porting TAO, as well as to explain what C++ features must/can be - supported to port ACE/TAO to a new platform. - -Thu Aug 20 05:12:24 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.31 released. - -Thu Aug 20 03:10:48 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/UPIPE_SAP_Test.cpp (main): Reverted back to use - ACE_Thread. Although it's considered the "Right Thing" to spawn - threads using ACE_Thread_Manager, I'll keep this file to use - ACE_Thread to serve as an example that you can also use - ACE_Thread to do any tricks you like, and, a sanity check. - - * ace/OS.cpp (ACE_Thread_Adapter::invoke): Don't create the - ACE_Thread_Exit object if we are not spawning the thread using - ACE_Thread_Manager. Otherwise, when a non-thread manager - spawned thread exits, the TSS clean up routing gets into an - infinite loop calling ~ACE_Thread_Exit recursively and - eventually the stack gets overflowed and the thread then - "appears" to exit normally. But in fact, TSS cleanup does not - complete at all. - - * ace/Thread_Manager.i: - * ace/Thread_Manager.cpp (at_exit,thr_self): Moved all at_exit - methods into the .i file. All at_exit methods and thr_self - don't really need to hold Thread_Manager's lock. - - Notice that after the newly spawned thread enters the - ACE_Thread_Adapter::invoke routine, we can safely manipulate its - Thread_Deacriptor because it has been registered properly. This - change should further reduce the times a thread gets started. - -Wed Aug 19 20:34:25 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/README: - * ace/OS.h: Added a new macro directive - "ACE_DOESNT_INSTANTIATE_NONSTATIC_OBJECT_MANAGER". By defining - this macro, it implicitly forces ACE to use non-static object - manager and _NOT_ instantiating ACE_Object_Manager for you and - assumes you will take the responsibility of instantiating - ACE_Object_Manager at the proper place in your programs. This - is usually used when using ACE with MFC/Windows programs. - Because the main function is defined by MFC/Windows libraries, - ACE has no way to instantiate object manager in these programs. - For programs using MFC, a good place to instantiate Object - Manger will be to define ACE_Object_Manager a member of - CApplication derived classes so it gets instantiated/destructed - properly. - - * ace/config-win32.h: Revised the comment about - ACE_HAS_NONSTATIC_OBJECT_MANAGER - -Wed Aug 19 17:15:00 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Service_Config.cpp: Moved the registration of the SIGHUP - signal from the constructor to the open() method since otherwise - it'll never get called in the typical usecase... Thanks to - Susan Liebeskind <susan.liebeskind@gtri.gatech.edu> for - reporting this. - -Wed Aug 19 14:11:22 1998 David L. Levine <levine@cs.wustl.edu> - - * ACE version 4.5.30 released. - -Wed Aug 19 13:38:40 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.cpp (ACE_TSS_Cleanup::detach): only declare local - temp_key ifdef ACE_WIN32, because it's only used there. - -Wed Aug 19 10:13:36 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.cpp (ACE_Thread_Cleanup::remove): Don't bother to check - the <in_use_> status when the object manager is shutting down. - Otherwise, we are creating another fresh ACE_TSS object all over - again. - (ACE_Thread_Cleanup::detach): When cleaning up a thread key, we - must first remove it from the internal table before actually - freeing the key to avoid race condition (the OS may reassigned - the key to other the_keycreate requests.) - - * ace/Log_Msg.cpp (close): Removed the ACE_Thread::key_free - statement. This should be handled by TSS cleanup mechanism. - - * ace/Thread_Manager.cpp (at_exit): Moved the return statement - after #endif macros to avoid the no return compiler warning. - - * tests/UPIPE_SAP_Test.cpp (main): Changed to use - ACE_Thread_Manager to spawn and wait for threads so the TSS - object gets cleanup correctly. Using plain vanilla - ACE_Thread::spawn and/or ACE_OS::thr_create no longer works. - -Wed Aug 19 10:06:25 1998 David L. Levine <levine@cs.wustl.edu> - - * etc/ACE-guidelines.html: @added guidelines to check for - success of an attempted open of an existing file, and to not - release copyrighted, etc., material with ACE/TAO. - - * tests/SOCK_Connector_Test.cpp (find_another_host): check to see - if the other host is up, by attempting a blocking connection with - it. Only return another host if the connection succeeds. - Also, cache the other host so that multiple calls will not - have to repeat the connection attempt. - -Wed Aug 19 08:25:20 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/Service_Configurator/Misc/Timer_Service.cpp: Changed - Timer_Service_2 to Timer_Service_1 since it was a typo. Thanks - to Irfan for reporting this. - -Tue Aug 18 22:10:43 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-fsu-pthread.h,config-hpux-10.x.h,config-mit-pthread.h, - config-mvs.h,config-osf1-{3.2,4.0}.h,config-sco-5.0.0-mit-pthread.h, - config-sunos5.{5,6}.h,config-tandem.h: - removed ACE_HAS_ONEARG_SIGWAIT. It's no longer used. - -Tue Aug 18 16:50:28 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Thread.i (sigsetmask): Renamed parameter name since it - conflicts with STL class name. Thanks to Kent Watsen - <kent@watsen.net> for pointing this out. - - * examples/Reactor/Proactor/test_proactor.cpp (handle_write_stream): - Fixed incorrect unary minus operator application. - -Tue Aug 18 16:43:00 1998 David L. Levine <levine@cs.wustl.edu> - - * ACE version 4.5.29 released. - -Tue Aug 18 14:15:23 1998 Steve Huston <shuston@riverace.com> - - * include/makeinclude/platform_aix4.2.GNU: Don't link programs - against libACE.a - just against libACEshr.a (the shared lib). - - * include/makeinclude/platform_hpux_aCC.GNU: - * include/makeinclude/platform_hpux_gcc.GNU: Switch support for threads - on and off using "make threads=0" or "make threads=1". The default - for aCC is to use threads, and for gcc is to not. I deduced the - defaults from the old lib settings. Sorry if the gcc one is wrong. - - * ace/config-hpux-10.x.h: Added ACE_HAS_SIGISMEMBER_BUG, plus... - * ace/config-hpux11.h: Set threads things based on the setting - of ACE_HAS_THREADS, which gets set in platform_macros.GNU (see above) - to build with threads support. - -Tue Aug 18 10:57:32 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * include/makeinclude/rules.nested.GNU: - Removed extra enter/leave messages at each directory, GNUmake - does it for you. - -Tue Aug 18 08:15:30 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Aio_Platform_Test.cpp (do_sysconf): on VxWorks, don't - call ACE_OS::sysconf () because it's not supported. - - * bin/make_release: added -P to cvs checkout command, to ignore - empty diretories. - -Mon Aug 17 22:56:17 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/version_tests/version_tests.dsw: - * tests/version_tests/Dynamic_Priority_Test.dsp: Added a new - project (as shown) into the workspace. - -Mon Aug 17 17:17:52 1998 Steve Huston <shuston@riverace.com> - - * ace/Makefile: Removed IO_Cntl_Msg from files to build. It's empty. - - * include/makeinclude/platform_hpux_aCC.GNU: Added '302' to warnings - to suppress; changed LIBS from '=' to '+=' to work better with TAO - builds. Thanks to John Mulhern for these fixes. - -Mon Aug 17 17:04:31 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/Env_Value_Test.cpp (main): Changed to use ASYS_TCHAR* for - arguments in main. - -Mon Aug 17 15:51:30 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.i (thr_sigsetmask): with ACE_HAS_PTHREADS_DRAFT4 or - ACE_HAS_PTHREADS_DRAFT6, added :: in front of sigprocmask () - call. Without it, g++ on LynxOS was warning about use of - sigprocmask () before definition. - -Mon Aug 17 14:59:13 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * etc: Added a new file, ACE-porting.html, which explains how to - port ACE to new OS platforms. Thanks to Gabriel Lima - <gali@enea.se> for submitting this. - - * ace/FILE_Connector.h: Changed ACE_FILE_Connector so that it no - longer inherits from ACE_FILE. This relationship is unnecessary - and was not used. Thanks to Byron Harris for reporting this. - -Mon Aug 17 12:14:13 1998 Steve Huston <shuston@riverace.com> - - Large number of small changes (all listed below) to begin aligning - the large number of Pthreads-related definitions around the 4 supported - drafts: 4, 6, 7, as well as the standard (also known as draft 10). - The notation for "DCE threads" is gone. DCE threads are primarily - draft 4, plus platform-specific modifications. Now all code must - declare the pthreads draft, and handle any platform/implementation - oddities as such. - As time goes on, I will remove more of the ACE_HAS_... and ACE_LACKS... - things that are actually changes with the pthreads drafts. - I tested these on Solaris 2.5.1 (CC), HP-UX 10.20 and 11.00, AIX 4.2.1, - and sanity-tested on NT/MSVC (though no changes affected the WTHREADS - parts). - - * ace/README: Clarified use of Pthreads macros. - - * ace/config-hpux-10.x.h: - * ace/config-lynxos.h: - * ace/config-osf1-3.2.h: - * ace/config-osf1-4.0.h: - Changed from DCE threads to ACE_HAS_PTHREADS_DRAFT4. - - * ace/config-fsu-pthread.h: - * ace/config-m88k.h: - * ace/config-mvs.h: Added ACE_HAS_PTHREADS_DRAFT6. - - * ace/config-aix-4.1.x.h: - * ace/config-aix-4.2.x.h: Added ACE_HAS_PTHREADS_DRAFT7. - - * ace/config-chorus.h: - * ace/config-dgux-4.x-ghs.h: - * ace/config-hpux11.h: - * ace/config-irix6.x-g++.h: - * ace/config-irix6.x-sgic++.h: - * ace/config-linux-lxpthreads.h: - * ace/config-linux-pthread.h: - * ace/config-mit-pthread.h: - * ace/config-osf1-4.0.h: - * ace/config-sco-5.0.0-mit-pthread.h: - * ace/config-sunos-5.5.h: (also remove ACE_HAS_STHREADS if - _POSIX_PTHREAD_SEMANTICS is defined by user). - * ace/config-sunos5.6.h: - - Changed to / added ACE_HAS_PTHREADS_STD. - - * ace/config-hpux-10.x-g++.h: Changed over to use the base file - config-hpux-10.x.h. - - * ace/OS.h: - * ace/OS.i: - * ace/OS.cpp: - Unified the compile ifdefs for pthreads around ACE_HAS_PTHREADS, - ACE_HAS_PTHREADS_DRAFT{4, 6, 7} and ACE_HAS_PTHREADS_STD. - Removed all use of ACE_HAS_DCETHREADS; put in platform-specific - settings where needed. - - * ace/Sched_Params.cpp: - * ace/Synch.cpp: Removed the use of ACE_HAS_DCETHREADS. - -Mon Aug 17 12:10:54 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/ace_{dll,lib}.dsp: Removed Message_Queue_T.cpp from and included - Message_Queue.cpp into source files that get build. Hmm, I - thought I made this change long ago. - - * ace/ace_ce_dll.dsp: Changed the DLL output directories for some - configurations. - -Mon Aug 17 11:25:18 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/Strategies_T.h: - In some platforms we need to include "ace/Thread_Manager.h" - because its definition is used in the inline methods of some - templates, and a few platform actually check the syntax of - template code, even if the template is not used. - -Mon Aug 17 10:06:01 1998 David L. Levine <levine@cs.wustl.edu> - - * netsvcs/lib/Server_Logging_Handler_T.cpp: replaced - #include <string.h> with #include "ace/OS.h", so that - _REENTRANT gets defined with g++. - - * apps/Gateway/Peer/Peer.{h,cpp} (Peer_Connector::open): added - (unused) arguments to this function. They are only provided to - avoid a compiler warning about hiding the virtual function - ACE_Connector<Peer_Handler, ACE_SOCK_CONNECTOR>::open (ACE_Reactor *, - int). - - * tests/Dynamic_Priority_Test.cpp (run_performance_test): - added delete of time_offsets array. The test Purifies - cleanly now. - -Mon Aug 17 00:05:02 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * examples/Reactor/ReactorEx/test_removals.cpp (main): Fixed - signed/unsigned mismatch. - - * examples/Reactor/ReactorEx/test_talker.cpp (handle_read_stream): - Fixed incorrect unary minus operator application. - -Sun Aug 16 20:57:12 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.i (dlerror): Fixed a typo. Thanks to Ossama Othman - <othman@astrosun.tn.cornell.edu> for reporting this. - -Fri Aug 14 18:58:29 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * tests/Aio_Platform_Test.cpp : Changed <sysconf>'s to - ACE_OS::sysconf's. - -Fri Aug 14 11:41:23 1998 Steve Huston <shuston@riverace.com> - - * ace/OS.i (ACE_OS::dlclose): On HP-UX 10.x and 32-bit 11.00, do - not actually call shl_unload if the library's ref count is more than - 1. If shl_unload is called, it unloads the library, regardless of - the reference count. This has the affect of never unloading a - library that's been loaded more than once, until the OS unloads it - at process run-down. Better than invalidating references to it, - though. The wonder of wrappers at work for you... - -Fri Aug 14 10:01:05 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Basic_Types.h (ACE_UINT64_DBLCAST_ADAPTER): with - ACE_LACKS_LONGLONG_T, only use low 32 bits. We could devise - a conversion from ACE_U_LongLong to double that uses all - 64 bits; but, it's probably easier for users to upgrade - their hardware and/or compilers to ones that support 64 - bit ints :-) - -Thu Aug 13 19:29:33 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Message_Queue_T.i: Changed the is_empty_i() method to check - if this->tail_ == 0 rather than this->cur_bytes_ <= 0 && - this->cur_count_ <= 0. Thanks to Dirk Broer - <Dirk.Broer@gsfc.nasa.gov> for suggesting this. - -Thu Aug 13 17:45:00 1998 Chris Gill <cdgill@cs.wustl.edu> - - * ace/Basic_Types.h: added ACE_UINT64_DBLCAST_ADAPTER macro - to patch unimplemented UINT64 to double casts - -Thu Aug 13 13:34:52 1998 David L. Levine <levine@cs.wustl.edu> - - * os-patches/linux-patches.html: the af_inet.c patch is only - needed through Linux kernel version 2.0.34. - - * tests/Conn_Test.cpp: disabled ACE_Hash_Addr template - specialization on non-egcs g++. - - * tests/Process_Strategy_Test.{h,cpp} (~Process_Strategy): - added an explicit destructor. g++ 2.7.2.3 got very - confused ("Internal compiler error") without it, apparently - when generating it implicitly. - - * tests/ MsgQueue_Notifications_Test.cpp (producer): removed - unused local "result". - -Wed Aug 12 22:45:50 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/MsgQueue_Notifications_Test.cpp: Added an explicit - template instantiation. - -Wed Aug 12 21:32:05 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/Message_Block.h: - * ace/Message_Block.i: - * ace/Message_Block.cpp: - Enabled the base() method, it replaces the internal buffer and - resets the Message_Block. There were other ways to do this (like - calling data_block->base()), but some users find it convenient. - I also modified the Data_Block::base() method to release any - memory held by the class before the method is called. Thanks to - Peter.Gorgia@libnet.com for pointing this out. - -Wed Aug 12 17:43:33 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/MsgQueue_Notifications_Test.cpp: The watermark test which - uses cv's signaling to notify other threads is also merged into - this file. - - * tests/MsgQueue_Water_Mark_Test.{dsp,cpp}: Removed. - -Wed Aug 12 17:12:57 1998 Darrell Brunsch <brunsch@cs.wustl.edu> - - * APC.DSP: - * Abondoned.dsp: - * Console_Input.dsp: - * Directory_Changes.dsp: - * Exceptions.dsp: - * Multithreading.dsp: - * Network_Events.dsp: - * Prerun_State_Changes.dsp: - * Registration.dsp: - * Registry_Changes.dsp: - * Removals.dsp: - * Talker.dsp: - * Timeouts.dsp: - * Window_Messages.dsp: - * test_abandoned.cpp: - * test_apc.cpp: - * test_window_messages.cpp: - Added updated versions of project files (with correct include - directories). Also changed the <main>'s to take in argc and - argv. Thanks to Jeff Hellzen <JHellzen@hwdcsaws.cahwnet.gov> - for submitting these changes. - -Wed Aug 12 16:16:38 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/MsgQueue_Notifications_Test.cpp: Since this test doesn't - use threads at all, I removed the #if ACE_HAS_THREADS macro. - -Wed Aug 12 14:57:51 1998 Jonathan Biggar <jon@floorboard.com> - - * ace/config-sunos5.5.h: wrapped thread-related defines with - "#ifdef _REENTRANT". - - * include/makeinclude/platform_sunos5_sunc++.GNU,wrapper_macros.GNU, - ACE-INSTALL.html: added support for "threads" make option. - -Wed Aug 12 02:06:02 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/test_config.h (ACE_Test_Output): It seemed like redirecting - the Log_Msg output back to stderr in close was a bit too early - and some messages popped out after some tests ran successfully. - Moved the redirecting code into the destructor. - -Tue Aug 11 22:47:49 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/TP_Reactor.cpp (dispatch_io_set): added - ACE_UNUSED_ARG (ready_mask). - - * tests/test_config.h: added - ACE_Singleton<ACE_Test_Output, ACE_Null_Mutex> template - instantiation. This shouldn't be done in a header, and - I wouldn't be surprised if it breaks somewhere. But, we - don't have any other need for a .cpp file to link into all tests. - -Tue Aug 11 17:30:32 1998 Steve Huston <shuston@riverace.com> - - * tests/test_config.h: Fixed ACE_Test_Output to get torn down clean - in all cases by changing it from a static to an ACE_Singleton. - Re-enabled it for Win32, non-WinCE. - -Tue Aug 11 15:51:47 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/XtReactor.h (ACE_XtReactor): Changed the constructor so that - the XtAppContext can be passed later. This scheme allows for a - default constructor. Thanks to J-M Strauss - <strauss@limeil.cea.fr> for suggesting this. - -Tue Aug 11 12:35:10 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.i (fopen): On WinCE, reset the handle to 0 if CreateFile - fails so we can detect errors when using the emulated FILE - pointer on CE. - - * tests/test_config.h (~ACE_Test_Output): Changed !defined - (ACE_HAS_WINCE) to !defined (ACE_WIN32). When using non-static - object manager, the singleton ACE_Log_Msg may no longer exist - here and the reseting here just causes access violations. Other - platforms which use non-static might suffer the same sympton. - -Tue Aug 11 12:29:03 1998 David L. Levine <levine@cs.wustl.edu> - - * os-patches/linux-patches.html: the gas patch on alphas - isn't necessary with binutils-2.9.1. - -Tue Aug 11 12:23:09 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/ARGV.{h,cpp}: Made a series of changes to make the file CE - friendly. - - * ace/Message_Queue_T.cpp: Adjusted the indentation. - -Tue Aug 11 02:06:55 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/WFMO_Reactor.cpp (dispatch_handles): Because dispatch_index - is absolute, nCount should be set to - (max_handlep1 - dispatch_index) instead of (nCount - - dispatch_index). Thanks to Alberto Villarica - <Alberto.Villarica.rav@nt.com> for pointing this out. - -Mon Aug 10 20:12:21 1998 Steve Huston <shuston@riverace.com> - - * ace/Log_Msg.cpp: On HP-UX 10.x, display thread's readable number - rather than an int represenation of a pointer. - - * tests/test_config.h (ACE_Test_Output): When destroying - ACE_Test_Output, make sure to remove all traces of it from - ACE_Log_Msg instance. - - * tests/Dynamic_Priority_Test.cpp: Don't try to set process-wide - scheduling if it's not supported on the platform. - - * tests/Thread_Manager_Test.cpp: Don't do a kill on pthreads draft - 4 platforms. This is a NOP for now - it will make a difference when - I check in more threads-related changes later. - -Mon Aug 10 10:35:26 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * Added the ACE-subsets.html file to the ACE directory so that - we can all modify it. - -Mon Aug 10 10:29:29 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.i (shm_open): There's no need to mess with the security - attribute here. - -Mon Aug 10 01:09:05 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.{h,i}: Added a new function - "default_win32_security_attributes" to return the defualt - security setting of kernel objects. By default, this function - is a no-op. You must define - ACE_DEFINES_DEFAULT_WIN32_SECURITY_ATTRIBUTES for this function - to return a SECURITY_ATTRIBUTES object that has no access - restriction. - - Modified all functions that use Win32 kernel objects to invoke - this new function to get the appropriate security attributes. - Thanks to Ivan Murphy <Ivan.Murphy@med.siemens.de> for - suggesting this. - - -Sun Aug 09 23:26:39 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.28 released. - -Sun Aug 9 23:08:51 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * Checked in a bunch of files/directories that I'd neglected - to check in before. - -Sun Aug 09 23:02:24 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.27 released. - -Sun Aug 9 15:04:41 1998 Darrell Brunsch <brunsch@cs.wustl.edu> - - * netsvcs/clients/Tokens/manual/manual.cpp: Changed all instances - of "#if (ACE_WIN32)" to "#if defined (ACE_WIN32)" - - * netsvcs/netsvcs.dsw: Added this workspace which contains all the - netsvcs projects. - - * netsvcs/clients/Tokens/collection/collection.dsp: - * netsvcs/clients/Tokens/collection/collection.dsw: - * netsvcs/clients/Tokens/deadlock/deadlock.dsp: - * netsvcs/clients/Tokens/deadlock/deadlock.dsw: - * netsvcs/clients/Tokens/invariant/invariant.dsp: - * netsvcs/clients/Tokens/invariant/invariant.dsw: - * netsvcs/clients/Tokens/manual/manual.dsp: - * netsvcs/clients/Tokens/manual/manual.dsw: - * netsvcs/clients/Tokens/mutex/mutex.dsp: - * netsvcs/clients/Tokens/mutex/mutex.dsw: - * netsvcs/clients/Tokens/rw_lock/rw_lock.dsp: - * netsvcs/clients/Tokens/rw_lock/rw_lock.dsw: - Added these MSVC projects and workspaces. Thanks to Jeff - Hellzen <JHellzen@hwdcsaws.cahwnet.gov> for submitting these. - - * netsvcs/clients/Logger/direct_logging.dsp: - * netsvcs/clients/Logger/indirect_logging.dsp: - * netsvcs/clients/Naming/Client/Client_Test.dsp: - * netsvcs/clients/Naming/Client/main.dsp: - * netsvcs/lib/netsvcs.dsp: - * netsvcs/servers/servers.dsp: - Mainly just updated all of these and made sure that they worked. - -Sun Aug 9 09:17:16 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Strategies_T.cpp (connect_svc_handler): Changed the call to - this->CONNECT_STRATEGIES::connect_svc_handler() to avoid compile - problems with GCC on LynxOS. Thanks to Sergio for reporting - this. - -Sat Aug 8 09:37:27 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/INET_Addr.cpp: - Reverted the operator== optimization, it turns out that the - definition of struct in_addr is not portable after all. Maybe - there is a set of macros to make it portable? - - * ace/ACE.h: - * ace/ACE.cpp: - Returning <const char* const> is unnecesary; and gives no more - guarantees that <const char*>, plus it gives warnings in - IRIX/MIPSPro compilers. - - * ace/Synch.cpp: - Removed explicit instantiations of ACE_Guard<ACE_Null_Mutex>, - the class is specialized so no instantiation is necessary. Same - thing for ACE_Write_Guard and ACE_Read_Guard. - -Fri Aug 7 23:18:53 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/config-sunos5.5.h: - Updated the new ACE_CC_NAME macros (and friends) so they work - with egcs (and hopefully g++). - - * tests/MT_SOCK_Test.cpp: - Removed double comma in function call. - -Fri Aug 7 21:39:26 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/INET_Addr.cpp: - Compare the fields of in_addr instead of calling memcmp. - - * ace/Message_Block.cpp: - * ace/Message_Block.h: - * ace/Message_Block.i: - The Message_Block can receive an allocator for the data block, - so instead of creating them on the heap they can be allocated - from a TSS allocator or other memory pool. By default we use - ACE_New_Allocator. - - * apps/gperf/Makefile: - The Id was wrong. - - * bin/auto_compile: - Added gperf to the default list of directories. - -Fri Aug 7 13:58:58 1998 Gonzalo Diethelm <gonzo@tango.cs.wustl.edu> - - * bin/envinfo.cpp: - Added this program, which will print the version information for - ACE, the OS and C++ compiler. The idea is to use this when posting - to the ACE mailing list. - - * ace/ACE.h: - * ace/ACE.cpp: - Added static methods to retrieve compiler information (name, major - version, minro version, beta version). - - * ace/config-sunos5.5.h: - Defined the compiler information macros for this platform. - - * bin/Makefile: - Modified the Makefile to support multiple binaries in the - directory (according to tests/Makefile). - - * bin/clone.cpp: - Added RCS Id. - -Fri Aug 7 12:46:42 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Activation_Queue.h: Updated the documentation to indicate - the need for absolute rather than relative time values. Thanks - to Johannes Gutleber <Johannes.Gutleber@cern.ch> for reporting - this. - -Fri Aug 07 02:06:54 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/MsgQueue_Water_Mark_Test.{dsp,cpp}: Added a new test to - make sure the water mark stuff works. It still needs to be - clean up to compile with g++. - -Fri Aug 07 01:00:55 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Strategies_T.i (operator==): Added a method to compare a - ACE_Hash_Recyclable and a ACE_Recyclable. Also inlined a shit - load of small methods. - - * ace/Strategies_T.cpp (connect_svc_handler): If <sh> is not - connected to the correct address or is busy, we will not use it. - Therefore we need to set it to zero. - - * ace/Synch: Added template specializations for - ACE_Guard<ACE_Null_Mutex>, ACE_Write_Guard<ACE_Null_Mutex>, and - ACE_Read_Guard<ACE_Null_Mutex>. - -Thu Aug 06 14:59:22 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Thread_Manager.cpp: Updated all uses of cancel_thr for the - various apply*() methods so that they pass along the - async_cancel flag. - - * ace/Thread_Manager.cpp: Added a new ARG to the ACE_EXECUTE_OP - macro. Believe it or not, this change actually reduced the - amount of special-case code because we can now treat kill_thr() - just like the other *_thr() methods. Irfan was amazed ;-). - - * ace/Thread_Manager: Added a new flag called "async_cancel" to - all the Thread Manager cancel*() methods. This flag is disabled - by default (hence, there are no changes to the ACE Thread - Manager semantics). If it is enabled, however, it will attempt - to perform an asychronous thread cancellation on the - corresponding thread id(s). - -Thu Aug 6 17:44:50 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/Priority_Task_Test.cpp: Enhanced this test so that it runs - correctly on platforms where you must be root to muck around - with thread priorities. Thanks to John Mulhern - <9107@mn3.lawson.lawson.com> for reporting this. - - * tests/MT_SOCK_Test.cpp: Reformatted the code to make it more - readable and also to remove a C-style cast. - - * ace/Message_Queue_T.h: Improved the documentation of the low - water mark and high water marks. Thanks to Umar for encouraging - this. - -Thu Aug 6 20:41:44 1998 James C Hu <jxh@cs.wustl.edu> - - * ace/Filecache.cpp: Avoided a deadlock detected by Tom Dobridge - <dobridge@persimmon.com> (thanks!). - -Thu Aug 06 14:59:22 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Strategies_T.cpp (connect_svc_handler): If <sh> is not - connected to the correct address or is busy, we will not use it. - Therefore we need to set it to zero. - - * ace/Synch: Added template specializations for - ACE_Guard<ACE_Null_Mutex>, ACE_Write_Guard<ACE_Null_Mutex>, and - ACE_Read_Guard<ACE_Null_Mutex>. - -Thu Aug 6 14:30:11 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/config-irix6.x-sgic++-nothreads.h: - Use template specializations instead of pragmas if the compiler - is 7.2 or better. - - * ace/config-irix6.x-sgic++.h: - The <sched.h> is not necessary in IRIX 6.4 - -Thu Aug 06 14:11:15 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Message_Queue_T.cpp: Make sure to check if the cur_bytes_ is - <= to the low_water_mark before signaling threads trying to - enqueue a Message_Block. - - * ace/Message_Queue_T.cpp: Fixed a bunch of code to use the - ACE_NEW_RETURN macro to ensure that errno is set correctly. - - * ace/Message_Queue.h: Changed the DEFAULT_LWM to be the same as - the DEFAULT_HWM since that's the "Right Way"[TM] to handle - this... Thanks to Umar Syyid <usyyid@hns.com> for helping to - track this down. - - * ace/Message_Queue_T.i (is_empty_i): Removed the low water mark - logic entirely because this isn't the right place to put it. - Also reverted back to using && rather than || since we need - to handle "0-sized" messages. - -Thu Aug 6 09:41:22 1998 Nagarajan Surendran <naga@cs.wustl.edu> - - * ace/ARGV.{h,cpp} : Added a new - ACE_ARGV(ASYS_TCHAR *first_argv,ASYS_TCHAR *second_argv,int) - which creates a new ARGV which is the concatenation of the 2 argvs. - - Also added a new private method argv_to_string - which converts an argv to a string. - -Thu Aug 6 08:56:02 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Module.h: Pointed out that ACE_Module should't be subclassed - -- ACE_Task should be subclasses. Thanks to Barney Dalton - <barneyd@cyllene.uwa.edu.au> for pointing this out. - -Wed Aug 05 23:57:16 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Reactor.cpp (end_event_loop): Changed the code so that *all* - threads are woken up. Thanks to Olivier Lau - <olivier_lau@srtelecom.com> for pointing this bug out. - - * examples/Reactor/ReactorEx/test_multithreading.cpp (main): - Changed Reactor->close() to Reactor::end_event_loop(). - -Wed Aug 5 23:12:54 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * include/makeinclude/wrapper_macros.GNU: Changed - PURE_CACHE_DIR = $(PURE_CACHE_BASE_DIR)-$(LOGNAME)-$(CXX) - - to - - PURE_CACHE_DIR = $(PURE_CACHE_BASE_DIR)-$(LOGNAME)-$(notdir $(CXX) ) - - Thanks to John Mulhern <9107@mn3.lawson.lawson.com> for this. - -Wed Aug 05 14:53:18 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Strategies_T.cpp (connect_svc_handler): When using this - method, the user was required to pass us a zero for the - svc_handler. We would either find them a non-busy one, or will - create a new one. - - Unfortunately, the svc_handler lookup was taking too long. - Therefore, the following change was made to the - connect_svc_handler algorithm: the user is now allowed to pass - in the svc_handler that they used last as a "hint". The - algorithm first checks to see if the "hint" svc_handler is - connected to the correct address and is recyclable. If it is, - then it recycles the "hint" svc_handler and gives it back to the - user. This should improve the lookups in most cases. - - * ace/Svc_Handler.cpp (recycling_act): Added accessor to get the - <recycling_act_>. - - * tests/Conn_Test.cpp (idle): Added method so that we can tell - when a Svc_Handler is being set to idle. Also changed the test - so that it can use the new "hint" mechanism in the cached - connector. - -Wed Aug 5 16:12:34 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Log_Msg.cpp: Replaced usage of ACE_OS::thr_* with - ACE_Thread::*. Thanks to Arturo Montes - <mitosys@colomsat.net.co> for sending the patches. - -Wed Aug 5 11:07:12 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Service_Manager: Cleaned up the documentation and formatting - a bit. - - * ace/Message_Queue_T.i: Changed the computation of is_empty_i() - so that it's - - return this->cur_bytes_ <= this->low_water_mark_ || this->cur_count_ <= 0; - - i.e., we use an || rather than a &&. Thanks to Umar for - reporting this. - - * ace/Message_Queue_T.i: Changed the computation of is_empty_i() so - that it doesn't consider the queue to be empty unless the - cur_bytes_ <= the low_water_mark_ (which defaults to 0 so that - no existing code is affected). This change makes it possible - for producer/consumer threading applications to avoid the "silly - window syndrome." Thanks to Umar Syyid <usyyid@hns.com> for - suggesting this. - -Wed Aug 05 00:10:27 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/OS.i (strnstr (both Unicode and Multibyte versions)): - * ace/SString.cpp (strstr): - Fixed "off by one error" in searching algorithm. Thanks to - Byron Harris <harris_b@ociweb.com> for pointing this out. - - * tests/SString_Test.cpp (main): Added new test cases. - -Tue Aug 4 21:56:16 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/TSS_Test.cpp: - * examples/Thread/thread_specific.cpp: Replaced ACE_OS::thr_* with - ACE_Thread::*. Thanks to Arturo Montes - <mitosys@colomsat.net.co> for sending the patches. - -Tue Aug 4 18:44:54 1998 Gonzalo Diethelm <gonzo@tango.cs.wustl.edu> - - * ACE-INSTALL.html: - Updated the file to recommend the creation of config.h as a - regular file that includes the appropriate platform config file, - instead of setting it to be a symlink. This is more flexible and - allows the user to redefine some of the ACE configuration - parameters. - - * ace/config-linux-common.h: - As an example of the above, now the user can #define - ACE_HAS_IP_MULTICAST in his config.h file to 0, and he won't be - using multicast under linux. This is clearer than having to edit - the config-linux-common.h file, which will now respect the user's - settings (if any).. - -Tue Aug 4 17:39:12 1998 Steve Huston <shuston@riverace.com> - - * ace/ACE_Library.{mak mdp}: Added TP_Reactor.cpp to the project. - - * tests/Aio_Platform_Test.cpp: Don't try to sysconf() for the AIO - values if there's no chance of AIO on the system (_POSIX_ASYNC_IO - not defined at compile time). - - * examples/OS/Process/Process.dsp: Link against ace.lib for Release, - aced.lib for Debug (these were reversed). - -Tue Aug 4 12:09:51 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/OS.h: Clarified the fact that the ACE_DEFAULT_MUITCAST_ADDR - must be within the range for host group addresses: 224.0.0.0 to - 239.255.255.255. Thanks to Christa Schwanninger - <christa.schwanninger@mchp.siemens.de> for reporting this. - -Tue Aug 04 11:01:18 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * bin/GenExportH.BAT: Moved from TAO/TAO_IDL/. - - * ace/Token.{h,cpp} (signal_all_threads): Added this method which - changes the return values of all acquire method to 2. The last - thread waiting for the token will reset the signal state - (therefore, there's NO cancel_signal_all_threads method.) - (shared_acquire): Return 2 if the token is signaled after - acquiring the token successfully. - (release): If the token is signaled and there's no other thread - waiting to acquire the token, reset the signal state. - - * ace/TP_Reactor.{h,i,cpp} (wakeup_all_threads): Added - implementation for this virtual function. It "signals" the - token threads are waiting on and wake them up by notifying the - reactor. - (handle_events): Check to see if the reactor token is signaled - after acquiring it. If the the token is signaled, it will not - proceed to handle events (by calling select) but instead return - successfully. This allow the thread the chance to check if it's - time to shut down the event loop. - -Mon Aug 3 17:53:48 1998 Gonzalo Diethelm <gonzo@tango.cs.wustl.edu> - - * performance-tests/Makefile: - * performance-tests/Misc/basic_func.cpp: - * 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_naming.cpp: - * performance-tests/Misc/test_singleton.cpp: - * performance-tests/Synch-Benchmarks/Benchmark_Base.cpp: - * performance-tests/Synch-Benchmarks/Benchmark_Performance.cpp: - * performance-tests/Synch-Benchmarks/Options.cpp: - * performance-tests/Synch-Benchmarks/Performance_Test.cpp: - * performance-tests/Synch-Benchmarks/condb_test.cpp: - * performance-tests/Synch-Benchmarks/conds_test.cpp: - * performance-tests/Synch-Benchmarks/context_test.cpp: - * performance-tests/Synch-Benchmarks/memory_test.cpp: - * performance-tests/Synch-Benchmarks/mutex_test.cpp: - * performance-tests/Synch-Benchmarks/pipe_proc_test.cpp: - * performance-tests/Synch-Benchmarks/pipe_thr_test.cpp: - * performance-tests/Synch-Benchmarks/recursive_lock_test.cpp: - * performance-tests/Synch-Benchmarks/rwrd_test.cpp: - * performance-tests/Synch-Benchmarks/rwwr_test.cpp: - * performance-tests/Synch-Benchmarks/sema_test.cpp: - * performance-tests/Synch-Benchmarks/synch_driver.cpp: - * performance-tests/Synch-Benchmarks/sysvsema_test.cpp: - * performance-tests/Synch-Benchmarks/token_test.cpp: - * performance-tests/TTCP/ACE-C++/wrapper-new-ttcp.cpp: - * performance-tests/TTCP/C/new-ttcp.cpp: - * performance-tests/TTCP/ORBeline/ttcp_i.cpp: - * performance-tests/TTCP/Orbix/ttcpC.cpp: - * performance-tests/TTCP/Orbix/ttcpS.cpp: - * performance-tests/TTCP/Orbix/ttcp_i.cpp: - * performance-tests/UDP/udp_test.cpp: - Added ACE_RCSID to these files. - -Sun Aug 2 19:43:04 1998 Darrell Brunsch <brunsch@cs.wustl.edu> - - * tests/Reactor_Performance_Test.cpp: Made a change suggested by - Irfan to allow this test to work in Windows 95. - -Sat Aug 1 20:35:32 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace: - include/makeinclude: - Added new config/platform files for SCO. These files enable the - following: - - - TAO_IDL work newly in SCO OpenServer. - - Fixed a compilation problem with EventService in TAO. - - Fixed a problem with ACE and TAO shared libraries. - - Some test with TSS_Emulation and recent changes in Thread_Manager. - - Thanks to Arturo for these changes. - -Sat Aug 01 13:34:12 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/OS.i (flock_wrlock): LockFileEx() and UnLockFileEx() are not - implemented on Win32. Therefore, the flock methods were changed - to use the non-Ex versions on Win95. Thanks to XuYifeng - <xuyf@pop.zg169.net> for pointing this out. - - While making the changes, I found that there were a couple bugs - in the code: (a) the <whence> parameter was being ignored and - (b) the adjustment for <len> == 0 was incorrect. I think I have - fixed both of these also in ACE_OS::adjust_flock_params(). - - One last thing: I changed flock_unlock() to use UnLockFile() - instead of UnLockFileEx(). UnLockFileEx() is also not supported - on Win95. Hopefully, it is ok to lock with LockFileEx() and - unlock with UnLockFile() instead of UnLockFileEx(). - - * ace/OS.cpp (pread): Changed bytes_written to bytes_read. - -Fri Jul 31 23:47:50 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * bin/auto_compile: - We now run several on-button tests in TAO, though it is still - hard to detect any errors. - -Fri Jul 31 21:33:22 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Select_Reactor.cpp (open): Changed the code to ignore the - return value from ACE::set_handle_limit(). Thanks to Zheng Han - <zhan@glenvan.glenayre.com> for reporting this and to Arturo for - suggesting the fix. - - * ace/ARGV.cpp: Enhanced the implemenation of string_to_array() so - that it should always work correctly even if there are a large - number of bytes in the original buf string. - - * ace/ARGV.cpp: Renamed string_to_array() to string_to_argv(), - which is more intuitive. - - * ace/OS.h: Added a new macro called ACE_DEFAULT_ARGV_BUFSIZ, - which is used as the default size of all the "argv" contents in - ACE_ARGV. This defaults to 4 kbytes. - -Fri Jul 31 19:55:10 1998 Gonzalo Diethelm <gonzo@tango.cs.wustl.edu> - - * netsvcs/clients/Logger/direct_logging.cpp: - * netsvcs/clients/Logger/indirect_logging.cpp: - * netsvcs/clients/Naming/Client/Client_Test.cpp: - * netsvcs/clients/Naming/Client/main.cpp: - * netsvcs/clients/Naming/Dump_Restore/Dump_Restore.cpp: - * netsvcs/clients/Naming/Dump_Restore/createfile.cpp: - * netsvcs/clients/Naming/Dump_Restore/main.cpp: - * netsvcs/clients/Tokens/collection/collection.cpp: - * netsvcs/clients/Tokens/collection/rw_locks.cpp: - * netsvcs/clients/Tokens/deadlock/deadlock_detection_test.cpp: - * netsvcs/clients/Tokens/invariant/invariant.cpp: - * netsvcs/clients/Tokens/manual/manual.cpp: - * netsvcs/clients/Tokens/mutex/test_mutex.cpp: - * netsvcs/clients/Tokens/rw_lock/rw_locks.cpp: - * netsvcs/lib/Base_Optimizer.cpp: - * netsvcs/lib/Client_Logging_Handler.cpp: - * netsvcs/lib/Log_Message_Receiver.cpp: - * netsvcs/lib/Logging_Strategy.cpp: - * netsvcs/lib/Name_Handler.cpp: - * netsvcs/lib/Server_Logging_Handler.cpp: - * netsvcs/lib/Server_Logging_Handler_T.cpp: - * netsvcs/lib/TS_Clerk_Handler.cpp: - * netsvcs/lib/TS_Server_Handler.cpp: - * netsvcs/lib/Token_Handler.cpp: - * netsvcs/servers/main.cpp: - Added ACE_RCSID to these files. - -Fri Jul 31 19:15:58 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/OS.cpp (pwrite and pread): There were many bugs in these two - methods. - - - It was assumed that it is ok to call WriteFile/ReadFile with - an OVERLAPPED structure. This is not true on Windows95. - Therefore, code had to be added to make sure that on - Windows95, WriteFile and ReadFile were called without an - OVERLAPPED struct. - - - We were assuming that if we used the OVERLAPPED struct, the - file pointer would not move. It turns out that the OVERLAPPED - struct has nothing with whether the file pointer moves or not. - It has to do with whether the file was opened with - FILE_FLAG_OVERLAPPED or not. Since it is not possible to - figure whether the file handle we got was opened with this - flag or not, we have to program defensively and reset the file - pointer in any case. - - - Also the !ACE_HAS_P_READ_WRITE implementation was not - restoring the file pointer to its original position. This was - also fixed. - -Fri Jul 31 18:33:39 1998 Gonzalo Diethelm <gonzo@tango.cs.wustl.edu> - - * apps/Gateway/Gateway/Concrete_Connection_Handlers.cpp: - * apps/Gateway/Gateway/Config_Files.cpp: - * apps/Gateway/Gateway/Connection_Handler.cpp: - * apps/Gateway/Gateway/Connection_Handler_Acceptor.cpp: - * apps/Gateway/Gateway/Connection_Handler_Connector.cpp: - * apps/Gateway/Gateway/Event_Channel.cpp: - * apps/Gateway/Gateway/Event_Forwarding_Discriminator.cpp: - * apps/Gateway/Gateway/File_Parser.cpp: - * apps/Gateway/Gateway/Gateway.cpp: - * apps/Gateway/Gateway/Options.cpp: - * apps/Gateway/Gateway/gatewayd.cpp: - * apps/Gateway/Peer/Options.cpp: - * apps/Gateway/Peer/Peer.cpp: - * apps/Gateway/Peer/peerd.cpp: - * apps/Orbix-Examples/Event_Comm/Consumer/Input_Handler.cpp: - * apps/Orbix-Examples/Event_Comm/Consumer/Notification_Receiver_Handler.cpp: - * apps/Orbix-Examples/Event_Comm/Consumer/consumer.cpp: - * apps/Orbix-Examples/Event_Comm/Supplier/Input_Handler.cpp: - * apps/Orbix-Examples/Event_Comm/Supplier/Notifier_Handler.cpp: - * apps/Orbix-Examples/Event_Comm/Supplier/supplier.cpp: - * apps/Orbix-Examples/Event_Comm/libsrc/Event_CommC.cpp: - * apps/Orbix-Examples/Event_Comm/libsrc/Event_CommS.cpp: - * apps/Orbix-Examples/Event_Comm/libsrc/Notification_Receiver_i.cpp: - * apps/Orbix-Examples/Event_Comm/libsrc/Notifier_i.cpp: - * apps/Orbix-Examples/Logger/Logger.cpp: - * apps/Orbix-Examples/Logger/client.cpp: - * apps/Orbix-Examples/Logger/loggerS.cpp: - * apps/Orbix-Examples/Logger/logger_i.cpp: - * apps/Orbix-Examples/Logger/server.cpp: - Added ACE_RCSID to these files. - -Fri Jul 31 17:50:01 1998 Gonzalo Diethelm <gonzo@tango.cs.wustl.edu> - - * ace/TP_Reactor.cpp: - Added ACE_RCSID to this file, and all the .cpp files in examples, - listed below. - - * examples/ASX/CCM_App/CCM_App.cpp: - * examples/ASX/CCM_App/SC_Client.cpp: - * examples/ASX/CCM_App/SC_Server.cpp: - * examples/ASX/Event_Server/Event_Server/Consumer_Router.cpp: - * examples/ASX/Event_Server/Event_Server/Event_Analyzer.cpp: - * examples/ASX/Event_Server/Event_Server/Options.cpp: - * examples/ASX/Event_Server/Event_Server/Peer_Router.cpp: - * examples/ASX/Event_Server/Event_Server/Supplier_Router.cpp: - * examples/ASX/Event_Server/Event_Server/event_server.cpp: - * examples/ASX/Event_Server/Transceiver/transceiver.cpp: - * examples/ASX/Message_Queue/bounded_buffer.cpp: - * examples/ASX/Message_Queue/buffer_stream.cpp: - * examples/ASX/Message_Queue/priority_buffer.cpp: - * examples/ASX/UPIPE_Event_Server/Consumer_Router.cpp: - * examples/ASX/UPIPE_Event_Server/Event_Analyzer.cpp: - * examples/ASX/UPIPE_Event_Server/Options.cpp: - * examples/ASX/UPIPE_Event_Server/Peer_Router.cpp: - * examples/ASX/UPIPE_Event_Server/Supplier_Router.cpp: - * examples/ASX/UPIPE_Event_Server/event_server.cpp: - * examples/CORBA/Test_i.cpp: - * examples/CORBA/client.cpp: - * examples/CORBA/server.cpp: - * examples/Connection/blocking/SPIPE-acceptor.cpp: - * examples/Connection/blocking/SPIPE-connector.cpp: - * examples/Connection/blocking/test_spipe_acceptor.cpp: - * examples/Connection/blocking/test_spipe_connector.cpp: - * examples/Connection/misc/Connection_Handler.cpp: - * examples/Connection/misc/test_upipe.cpp: - * examples/Connection/non_blocking/CPP-acceptor.cpp: - * examples/Connection/non_blocking/CPP-connector.cpp: - * examples/Connection/non_blocking/test_lsock_acceptor.cpp: - * examples/Connection/non_blocking/test_lsock_connector.cpp: - * examples/Connection/non_blocking/test_sock_acceptor.cpp: - * examples/Connection/non_blocking/test_sock_connector.cpp: - * examples/Connection/non_blocking/test_spipe_acceptor.cpp: - * examples/Connection/non_blocking/test_spipe_connector.cpp: - * examples/Connection/non_blocking/test_tli_acceptor.cpp: - * examples/Connection/non_blocking/test_tli_connector.cpp: - * examples/IOStream/client/iostream_client.cpp: - * examples/IOStream/server/iostream_server.cpp: - * examples/IPC_SAP/DEV_SAP/reader/reader.cpp: - * examples/IPC_SAP/DEV_SAP/writer/writer.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-client.cpp: - * examples/IPC_SAP/FIFO_SAP/FIFO-server.cpp: - * examples/IPC_SAP/FIFO_SAP/FIFO-test.cpp: - * examples/IPC_SAP/FILE_SAP/client.cpp: - * examples/IPC_SAP/SOCK_SAP/C-inclient.cpp: - * examples/IPC_SAP/SOCK_SAP/C-inserver.cpp: - * examples/IPC_SAP/SOCK_SAP/CPP-inclient.cpp: - * examples/IPC_SAP/SOCK_SAP/CPP-inserver-fancy.cpp: - * examples/IPC_SAP/SOCK_SAP/CPP-inserver-poll.cpp: - * examples/IPC_SAP/SOCK_SAP/CPP-inserver.cpp: - * examples/IPC_SAP/SOCK_SAP/CPP-unclient.cpp: - * examples/IPC_SAP/SOCK_SAP/CPP-unserver.cpp: - * examples/IPC_SAP/SOCK_SAP/FD-unclient.cpp: - * examples/IPC_SAP/SOCK_SAP/FD-unserver.cpp: - * examples/IPC_SAP/SPIPE_SAP/NPClient.cpp: - * examples/IPC_SAP/SPIPE_SAP/NPServer.cpp: - * examples/IPC_SAP/SPIPE_SAP/client.cpp: - * examples/IPC_SAP/SPIPE_SAP/consumer_msg.cpp: - * examples/IPC_SAP/SPIPE_SAP/consumer_read.cpp: - * examples/IPC_SAP/SPIPE_SAP/producer_msg.cpp: - * examples/IPC_SAP/SPIPE_SAP/producer_read.cpp: - * examples/IPC_SAP/SPIPE_SAP/server.cpp: - * examples/IPC_SAP/TLI_SAP/CPP-client.cpp: - * examples/IPC_SAP/TLI_SAP/CPP-server.cpp: - * examples/IPC_SAP/TLI_SAP/db-client.cpp: - * examples/IPC_SAP/TLI_SAP/db-server.cpp: - * examples/IPC_SAP/TLI_SAP/ftp-client.cpp: - * examples/IPC_SAP/TLI_SAP/ftp-server.cpp: - * examples/IPC_SAP/UPIPE_SAP/ex1.cpp: - * examples/IPC_SAP/UPIPE_SAP/ex2.cpp: - * examples/IPC_SAP/UPIPE_SAP/ex3.cpp: - * examples/Log_Msg/test_log_msg.cpp: - * examples/Logger/Acceptor-server/server_loggerd.cpp: - * examples/Logger/client/logging_app.cpp: - * examples/Logger/simple-server/Logging_Acceptor.cpp: - * examples/Logger/simple-server/Logging_Handler.cpp: - * examples/Logger/simple-server/server_loggerd.cpp: - * examples/Map_Manager/test_hash_map_manager.cpp: - * examples/Mem_Map/IO-tests/IO_Test.cpp: - * examples/Mem_Map/IO-tests/test_io.cpp: - * examples/Mem_Map/file-reverse/file-reverse.cpp: - * examples/Misc/test_XtReactor1.cpp: - * examples/Misc/test_XtReactor2.cpp: - * examples/Misc/test_dump.cpp: - * examples/Misc/test_get_opt.cpp: - * examples/Misc/test_profile_timer.cpp: - * examples/Misc/test_read_buffer.cpp: - * examples/Misc/test_set.cpp: - * examples/Misc/test_sstring.cpp: - * examples/Misc/test_trace.cpp: - * examples/Naming/test_multiple_contexts.cpp: - * examples/Naming/test_non_existent.cpp: - * examples/Naming/test_open.cpp: - * examples/Naming/test_writers.cpp: - * examples/OS/Process/imore.cpp: - * examples/OS/Process/process.cpp: - * examples/Reactor/Dgram/CODgram.cpp: - * examples/Reactor/Dgram/Dgram.cpp: - * examples/Reactor/FIFO/client.cpp: - * examples/Reactor/FIFO/server.cpp: - * examples/Reactor/Misc/notification.cpp: - * examples/Reactor/Misc/pingpong.cpp: - * examples/Reactor/Misc/test_demuxing.cpp: - * examples/Reactor/Misc/test_event_handler_t.cpp: - * examples/Reactor/Misc/test_reactors.cpp: - * examples/Reactor/Misc/test_signals_1.cpp: - * examples/Reactor/Misc/test_signals_2.cpp: - * examples/Reactor/Misc/test_time_value.cpp: - * examples/Reactor/Misc/test_timer_queue.cpp: - * examples/Reactor/Multicast/Log_Wrapper.cpp: - * examples/Reactor/Multicast/client.cpp: - * examples/Reactor/Multicast/server.cpp: - * examples/Reactor/Ntalker/ntalker.cpp: - * examples/Reactor/Proactor/test_multiple_loops.cpp: - * examples/Reactor/Proactor/test_proactor.cpp: - * examples/Reactor/Proactor/test_proactor_with_aio.cpp: - * examples/Reactor/Proactor/test_timeout.cpp: - * examples/Reactor/ReactorEx/test_abandoned.cpp: - * examples/Reactor/ReactorEx/test_apc.cpp: - * examples/Reactor/ReactorEx/test_console_input.cpp: - * examples/Reactor/ReactorEx/test_directory_changes.cpp: - * examples/Reactor/ReactorEx/test_exceptions.cpp: - * examples/Reactor/ReactorEx/test_multithreading.cpp: - * examples/Reactor/ReactorEx/test_network_events.cpp: - * examples/Reactor/ReactorEx/test_prerun_state_changes.cpp: - * examples/Reactor/ReactorEx/test_registration.cpp: - * examples/Reactor/ReactorEx/test_registry_changes.cpp: - * examples/Reactor/ReactorEx/test_removals.cpp: - * examples/Reactor/ReactorEx/test_talker.cpp: - * examples/Reactor/ReactorEx/test_timeouts.cpp: - * examples/Reactor/ReactorEx/test_window_messages.cpp: - * examples/Registry/test_registry_iterator.cpp: - * examples/Registry/test_registry_update.cpp: - * examples/Service_Configurator/IPC-tests/client/broadcast_client_test.cpp: - * examples/Service_Configurator/IPC-tests/client/local_dgram_client_test.cpp: - * examples/Service_Configurator/IPC-tests/client/local_fifo_client_test.cpp: - * examples/Service_Configurator/IPC-tests/client/local_pipe_client_test.cpp: - * examples/Service_Configurator/IPC-tests/client/local_spipe_client_test.cpp: - * examples/Service_Configurator/IPC-tests/client/local_stream_client_test.cpp: - * examples/Service_Configurator/IPC-tests/client/remote_dgram_client_test.cpp: - * examples/Service_Configurator/IPC-tests/client/remote_service_directory_test.cpp: - * examples/Service_Configurator/IPC-tests/client/remote_stream_client_test.cpp: - * examples/Service_Configurator/IPC-tests/client/remote_thr_stream_client_test.cpp: - * examples/Service_Configurator/IPC-tests/server/Handle_Broadcast.cpp: - * examples/Service_Configurator/IPC-tests/server/Handle_L_CODgram.cpp: - * examples/Service_Configurator/IPC-tests/server/Handle_L_Dgram.cpp: - * examples/Service_Configurator/IPC-tests/server/Handle_L_FIFO.cpp: - * examples/Service_Configurator/IPC-tests/server/Handle_L_Pipe.cpp: - * examples/Service_Configurator/IPC-tests/server/Handle_L_SPIPE.cpp: - * examples/Service_Configurator/IPC-tests/server/Handle_L_Stream.cpp: - * examples/Service_Configurator/IPC-tests/server/Handle_R_Dgram.cpp: - * examples/Service_Configurator/IPC-tests/server/Handle_R_Stream.cpp: - * examples/Service_Configurator/IPC-tests/server/Handle_Thr_Stream.cpp: - * examples/Service_Configurator/IPC-tests/server/Handle_Timeout.cpp: - * examples/Service_Configurator/IPC-tests/server/server_test.cpp: - * examples/Service_Configurator/Misc/Timer_Service.cpp: - * examples/Service_Configurator/Misc/main.cpp: - * examples/Shared_Malloc/Malloc.cpp: - * examples/Shared_Malloc/Options.cpp: - * examples/Shared_Malloc/test_malloc.cpp: - * examples/Shared_Malloc/test_multiple_mallocs.cpp: - * examples/Shared_Malloc/test_persistence.cpp: - * examples/Shared_Memory/test_MM.cpp: - * examples/Shared_Memory/test_SV.cpp: - * examples/System_V_IPC/SV_Message_Queues/MQ_Client.cpp: - * examples/System_V_IPC/SV_Message_Queues/MQ_Server.cpp: - * examples/System_V_IPC/SV_Message_Queues/TMQ_Client.cpp: - * examples/System_V_IPC/SV_Message_Queues/TMQ_Server.cpp: - * examples/System_V_IPC/SV_Semaphores/Semaphores_1.cpp: - * examples/System_V_IPC/SV_Semaphores/Semaphores_2.cpp: - * examples/System_V_IPC/SV_Shared_Memory/SV_Shared_Memory_Test.cpp: - * examples/Threads/auto_event.cpp: - * examples/Threads/barrier1.cpp: - * examples/Threads/barrier2.cpp: - * examples/Threads/cancel.cpp: - * examples/Threads/future1.cpp: - * examples/Threads/future2.cpp: - * examples/Threads/manual_event.cpp: - * examples/Threads/process_manager.cpp: - * examples/Threads/process_mutex.cpp: - * examples/Threads/process_semaphore.cpp: - * examples/Threads/reader_writer.cpp: - * examples/Threads/recursive_mutex.cpp: - * examples/Threads/task_five.cpp: - * examples/Threads/task_four.cpp: - * examples/Threads/task_one.cpp: - * examples/Threads/task_three.cpp: - * examples/Threads/task_two.cpp: - * examples/Threads/thread_manager.cpp: - * examples/Threads/thread_pool.cpp: - * examples/Threads/thread_specific.cpp: - * examples/Threads/token.cpp: - * examples/Threads/tss1.cpp: - * examples/Threads/tss2.cpp: - * examples/Threads/wfmo.cpp: - * examples/Timer_Queue/Async_Timer_Queue_Test.cpp: - * examples/Timer_Queue/Driver.cpp: - * examples/Timer_Queue/Reactor_Timer_Queue_Test.cpp: - * examples/Timer_Queue/Thread_Timer_Queue_Test.cpp: - * examples/Timer_Queue/main_async.cpp: - * examples/Timer_Queue/main_reactor.cpp: - * examples/Timer_Queue/main_thread.cpp: - -Fri Jul 31 12:07:16 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/XtReactor.cpp (XtWaitForMultipleEvents): The first select() - is made with the correct width. In XtAppProcessEvent(), the - descriptor set may change, so the underlying handle_max may also - have changed. The second select() is made with an incorrect - value for the width. The solution is to reinitialize width - before calling select() again. Thanks to J-M Strauss - <strauss@limeil.cea.fr> for suggesting this change. - -Fri Jul 31 11:18:24 1998 Steve Huston <shuston@riverace.com> - - * ACE-INSTALL.html: Removed the direction to set global include/library - paths in MSVC 4.2. - -Fri Jul 31 08:23:14 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/Misc/test_XtReactor[12].cpp: Updated these files so - they will work correctly with the "new" Reactor structure. Boy, - it's been a long time since anyone actually tried to use this - stuff... ;-) Thanks to J-M Strauss <strauss@limeil.cea.fr> for - reporting this. - -Thu Jul 30 21:25:31 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Svc_Conf_y.cpp: This file didn't get patched with our - routine patch. Applied $ACE_ROOT/Svc_Conf_y.cpp.diff manually. - This change eliminates some warnings from g++. - -Thu Jul 30 19:03:12 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/Timer_Queue/Thread_Timer_Queue_Test.h: Changed the type - to class Thread_Timer_Queue_Test_Driver from - Timer_Queue_Test_Driver <Thread_Timer_Queue, Input_Task, - Input_Task::ACTION> to work around a bug with MSVC++. Thanks to - Gonzo for pointing this out. - - * examples/Connection/blocking/SPIPE-{connector,acceptor}.cpp: - Added #include "ace/Proactor.h". Thanks to Gonzo for reporting - this. - -Thu Jul 30 17:54:14 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/test_config.h: Added /**/ between #include and <condefs.h> - to avoid MSVC warnings. - - * tests/WinCE/ce_tests.dsw: Renamed project - Message_Queue_Notifications_Test to MsgQueue_Notifications_Test. - - * tests/WinCE/Reactor_Performance_Test.dsp: This project file was - somehow missing. - - * tests/TSS_Test.cpp: - * tests/Reader_Writer_Test.cpp: - * tests/Message_Queue_Test.cpp: Added numerous ASYS_TEXT macros to - make sure we use the right strings on CE. - -Thu Jul 30 14:56:59 1998 Gonzalo A. Diethelm <gonzo@cs.wustl.edu> - - * ace/ACE.h: - * ace/ACE.cpp: - * ace/Event_Handler.h: - * ace/Event_Handler.cpp: - Moved the following static functions: - - register_stdin_handler - remove_stdin_handler - read_adapter - - from class ACE to class ACE_Event_Handler. That breaks a - dependency from ACE to higher-level classes. - - * netsvcs/clients/Naming/Dump_Restore/Dump_Restore.cpp: - * netsvcs/clients/Naming/Client/Client_Test.cpp: - * examples/Timer_Queue/Reactor_Timer_Queue_Test.cpp: - * examples/Timer_Queue/Async_Timer_Queue_Test.dsp: - * examples/Timer_Queue/Reactor_Timer_Queue_Test.dsp: - * examples/Timer_Queue/Thread_Timer_Queue_Test.dsp: - * examples/Reactor/Ntalker/ntalker.cpp: - * examples/Reactor/Misc/test_demuxing.cpp: - * examples/Reactor/Misc/notification.cpp: - * examples/Connection/blocking/SPIPE-connector.cpp: - * examples/ASX/UPIPE_Event_Server/event_server.cpp: - * examples/ASX/Event_Server/Transceiver/transceiver.cpp: - * examples/ASX/Event_Server/Event_Server/event_server.cpp: - * apps/Gateway/Peer/Peer.cpp: - * apps/Gateway/Gateway/Gateway.cpp: - All these were modified by the above change. - - * ace/OS.h: - * ace/OS.i: - Added a strnew function that works as strdup but uses new instead - of malloc to allocate memory. - -Thu Jul 30 16:54:20 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.26 released. - -Thu Jul 30 13:01:12 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Task.h (ACE_Task_Base): Changed the spelling of - ACE_Task_Exit to ACE_Thread_Exit, which is correct. - Thanks to Daniel Winder <Daniel.Winder@cern.ch> for - reporting this. - -Thu Jul 30 08:43:41 1998 Steve Huston <shuston@riverace.com> - - * tests/tests.(mdp mak): Made include and library paths relative. - -Thu Jul 30 02:22:49 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Synch_T.cpp (ts_init): Casted away constness of key_. - Changed to cast away constness of the pointer to once_. - -Thu Jul 30 01:12:30 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/TP_Reactor.i (notify_handle): Added an ASYS_TEXT where it - was missing. Thanks to Dieter Quehl for reporting this. - - * ace/Synch_T.cpp: It wasn't possible to call ts_object() to set - an initial zero pointer value. The solution is to give - ts_object() the same ability to initialize the key as ts_get(). - I also factored out some common code into a new method called - ts_init(). Thanks to Bob McWhirter <bob@netwrench.com> for - reporting this. - -Wed Jul 29 23:58:04 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/Reactor/Ntalker: Added a README file and made some - stylistic changes to the ntalker.cpp example. - -Wed Jul 29 18:38:17 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.25 released. - -Wed Jul 29 17:46:21 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Task_T.h: Updated documentation to explain that - ACE_Time_Values are ABSOLUTE rather than relative. Thanks to - James Johnson for reporting this. - -Wed Jul 29 16:05:16 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * bin/Process_Unix.pm: - Use SIGTERM instead of SIGHUP to kill a process, it is the Right - Thing and SIGHUP will not work in some cases because it is usual - to catch this signal. - -Wed Jul 29 14:04:49 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Asynch_Acceptor.cpp (open): Added - <number_of_initial_accepts> as an extra parameter to - open(). <number_of_initial_accepts> is the number of - asynchronous accepts that are started at the end of <open>. If - <number_of_initial_accepts> is -1, then - <number_of_initial_accepts> is set to <backlog> and hence - <backlog> number of asynchronous accepts are started. - - (get_handle): New method to get the underlying handle. - - (set_handle): New method to set the underlying listen handle. It - is the user's responsibility to make sure that the old listen - handle has been appropriately closed and the all outstanding - asynchronous operations have either completed or have been - canceled on the old listen handle. - -Wed Jul 29 12:49:09 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Makefile (FILES): Added TP_Reactor to the build list. - Updated dependency. - - * ace/TP_Reactor.{h,i} (handle_events,notify_handler): Added two - dummy methods to avoid warnings from SunCC. Thanks to Carlos - for noticing this. - -Wed Jul 29 09:41:23 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-linux-common.h: added #define - ACE_DEFAULT_SELECT_REACTOR_SIZE 256 so that the - ACE_Select_Reactor works with this fix: - - if (size > (size_t) ACE::max_handles ()) - return ACE::set_handle_limit (size); - - On Linux (2.0.34), only root can set RLIMIT_NOFILE above 256. - -Wed Jul 29 04:19:05 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * Integrate TP_Reactor into ACE. Major framwork designed by - Irfan. Here's his changelog: - - * ace/TP_Reactor.h (ACE_TP_Reactor): One of the short comings of - the Select_Reactor in ACE was that it did not support a thread - pool based event dispatching model, similar to the one in - WFMO_Reactor. In Select_Reactor, only thread can be blocked - in handle_events() at any given time. - - A new Reactor has been added to ACE that removes this - short-coming. TP_Reactor is a specialization of Select - Reactor to support thread-pool based event dispatching. This - Reactor takes advantage of the fact that events reported by - select() are persistent if not acted upon immediately. It - works by remembering the event handler that just got - activated, releasing the internal lock (so that some other - thread can start waiting in the event loop) and then - dispatching the event handler outside the context of the - Reactor lock. - - This Reactor is best suited for situations when the callbacks - to event handlers can take arbitrarily long and/or a number of - threads are available to run the event loops. - - Note that callback code in Event Handlers - (e.g. Event_Handler::handle_input) does not have to be - modified or made thread-safe for this Reactor. This is - because an activated Event Handler is suspended in the Reactor - before the upcall is made and resumed after the upcall - completes. Therefore, one Event Handler cannot be called by - multiple threads simultaneously. - - * ace/Reactor.cpp (ACE_Reactor): - ACE_USE_TP_REACTOR_FOR_REACTOR_IMPL can be used to make the - TP_Reactor the default Reactor implementation that will be - used by ACE_Reactor. - - I still need to add the reliable shutdown method and a - TP_Reactor_Test. - - * ace/Select_Reactor.{h,i,cpp} (renew): Moved decision of renew - supression from ACE_Select_Reactor_Notify::handle_input to this - method, which is a more appropriate place. - - * ace/Token.h (ACE_Token): Added more comprehensive comments about - the recent changes of reader/writer semantic. - -Tue Jul 28 12:36:18 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Service_Config.cpp (~ACE_Service_Config): Removed the call - to ACE_Service_Config::close () from the destructor. This will - be called by the Object Manager upon destruction. - -Tue Jul 28 11:34:15 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.{h,i} (strpbrk): Added a const wchar_t version of this - function. Thanks to Ivan Murphy <Ivan.Murphy@med.siemens.de> - for providing the fix. - -Tue Jul 28 09:52:08 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Thread_Manager.cpp (exit): only declare local close_handle - if ACE_USE_ONE_SHOT_AT_THREAD_EXIT. (ACE_Thread_Descriptor): - reordered initializers to match declaration order. - - * ace/Dynamic.cpp,Thread_Manager.cpp: moved - ACE_TSS_Singleton<ACE_Dynamic, ACE_Null_Mutex> instantiation - from Thread_Manager.cpp to Dynamic.cpp. - -Mon Jul 27 16:31:27 1998 Arturo Montes <mitosys@colomsat.net.co> - - * ace/Thread_Manager.{h,i,cpp}: - * ace/Log_Msg.cpp: The Thread_Manager::at_exit method now provides a - list of at_exit functions to be invoked to at thread termination - code. If you want to maintain previous compatibility use - ACE_USE_ONE_SHOT_AT_THREAD_EXIT. The new code maintaing - compatibility with the old code, ACE_Task::svc_run has not been - altered. - - We resolve a problem with ACE_TSS_cleanup, some platform using - Thread_Manager could be experimenting memory corruption because - of ACE_TSS_cleanup was being invoked before Thread_Manager exit - code. Now, if ACE_TSS_cleanup is called before of Thread_Manager - exit code, ACE_TSS_cleanup delegate ACE_Log_Msg delete instance - to Thread_Descriptor. - - Really, at_exit code is implemented in ACE_Thread_Descriptor, I - strongly recommend use at_exit code from Thread_Descriptor, - however in ACE_Thread_Manager we provide at_exit hook. - - Use of at_exit(void* object,ACE_CLEANUP_FUNC cleanup_hook,void* - param) is deprecated. We maitain it for compatibility and it - will be forever, however if you want implement new at_exit hook, - look into Thread_Manager.h and specialize ACE_At_Thread_Exit - class for your needs. - - If you want to allocate an ACE_At_Thread_Exit hook in stack, you - can do it. The at_exit code use at_exit overloading to take care - of this. Equally dynamic creation of at_exit hook is supported - too. - -Mon Jul 27 14:25:15 1998 Chris Gill <cdgill@cs.wustl.edu> - - * tests/Dynamic_Priority_Test.cpp: Changed C-Style casts to - ACE_static_casts, documented argument structure members - -Mon Jul 27 12:23:55 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Select_Reactor.cpp (open): Changed a erroneous comparison - to - - if (size > (size_t) ACE::max_handles ()) - return ACE::set_handle_limit (size); - - Thanks to Avi Nash <anash@RedBrick.COM> for reporting this. - -Sat Jul 25 20:26:21 1998 Steve Huston <shuston@riverace.com> - - * ace/SPIPE_Acceptor.(h cpp): Modified Win32 part to start the - ConnectNamedPipe at open() time, in overlapped mode. Now also - processes the timeout in accept(), if specified. - -Sat Jul 25 16:18:30 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/Malloc_T.i (addr): - Sun/CC does not like a reinterpret cast here, but only when T is - a char[20]. Use a couple of static casts and added a comment. - -Sat Jul 25 11:34:25 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Typed_SV_Message_Queue.i (send): Fixed this call to use a - const cast AND a reinterpret cast. Thanks to David Levine for - reporting this. - -Fri Jul 24 23:14:09 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/Threads/thread_specific.cpp (cleanup): Added an - ACE_reinterpret_cast(). Thanks to John Mulhern - <9107@mn3.lawson.lawson.com> for this. - - * ace/Typed_SV_Message_Queue.i: Added some necessary - ACE_reinterpret_cast()s. Thanks to John Mulhern - <9107@mn3.lawson.lawson.com> for this. - - * ace/Malloc_T.i (addr): Changed (T *) cast to - ACE_reinterpret_cast(). Thanks to John Mulhern - <9107@mn3.lawson.lawson.com> for this. - - * ace/SOCK_Dgram_Bcast.cpp: Added an ACE_reinterpret_cast() macro - to make the HP/UX 11 C++ compiler happy. Thanks to John Mulhern - <9107@mn3.lawson.lawson.com> for this. - - * ace/config-hpux11.h: Added ACE_HAS_BROKEN_XTI_MACROS and - ACE_HAS_SIGISMEMBER_BUG. - - * ace/OS.i (sigismember): Sigismember works correctly in most - respects but the Sigset_Ops_Test tests the sigismember function - with an out-of-range signal number expecting it to fail with a - minus one result. On HPUX 11.0 it doesn't fail; it correctly - reports that the signal is not in the sigset. This happens - because HP, bless their hearts, thought that it should only - return out of range when the signal value was greater than the - capacity of the sigset; if ACE_NSIG is forced to 257 then the - test works as expected. But the real maximum signal is 45. - Added a fix for this courtesy of John Mulhern - <9107@mn3.lawson.lawson.com>. - - * ace/OS.h: Added a workaround for broken XTI header files on - HP/UX. Thanks to John Mulhern <9107@mn3.lawson.lawson.com> for - reporting this. - - * tests/Dynamic_Priority_Test.cpp: Reformatted this just a bit. - -Fri Jul 24 21:42:39 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.{h,cpp},Message_Block.{h,cpp}: renamed ACE_Time_Value::max - to ACE_Time_Value::max_time, because VxWorks #defines max. - - * tests/Message_Queue_Test.cpp: rearranged declarations so - that the test will build on non-threaded platforms. - - * tests/Dynamic_Priority_Test.cpp: changed ACE_MT_SYNCH to - ACE_SYNCH, so that we have a chance of building on non-threaded - platforms. - -Fri Jul 24 15:15:28 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * Updated the manual pages to reflect recent changes. - - * ace/Svc_Conf.h: Change from yyerror (char *) to yyerror (const - char *). - -Fri Jul 24 14:36:30 1998 Chris Gill <cdgill@cs.wustl.edu> - - * ace/OS.{cpp, h} (ACE_Time_Value): Added ACE_Time_Value::max, - for the value at the other end of the time spectrum that can - be represented as a normalized ACE_Time_Value (LONG_MAX seconds, - ACE_ONE_SEC_IN_USECS - 1 microseconds). - - * ace/Message_Block.{cpp, h} (ACE_Message_Block): Changed default - parameters so message deadlines default to ACE_Time_Value::max - instead of ACE_Time_Value::zero - this ensures the assigned - static priority order is preserved in a dynamic message queue - if deadlines are not set. - - * ace/Message_Queue_T.{cpp, h} (ACE_Dynamic_Message_Queue): Changed - enqueue_tail and enqueue_head to call overloaded enqueue_prio - instead of static message queue base class methods (fixes bug - EC_Multiple_Test uncovered where a tail-enqueued zero length - message is still seen in the queue by the base class, but the - derived dynamic message queue class thinks the queue is empty) - - * DOC-way.html: added one on chess and sleep - -Fri Jul 24 12:35:12 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Token.{h,cpp}: Fixed warnings from gcc and SunCC. - -Fri Jul 24 09:05:24 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.cpp (thr_create): with ACE_HAS_DCE_DRAFT4_THREADS and - ACE_LACKS_SETDETACH (LynxOS and HP/UX 10.x), call - ::pthread_detach () on the newly spawned thread. Only do - it if the THR_DETACHED flag is enabled. - - * ace/Thread_Manager.cpp (join_thr,wait,wait_grp,wait_task): - with ACE_HAS_DCE_DRAFT4_THREADS and ACE_LACKS_SETDETACH - (LynxOS and HP/UX 10.x), call ::pthread_detach () on joined - threads. Only do it if the THR_DETACHED flag is not enabled. - - Thanks to Dave Mayerhoefer <davem@lynx.com> for diagnosing the - lack of ::pthread_detach () calls in ACE. - -Fri Jul 24 00:39:47 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/ace_dll.dsp (Message_Queue_T.cpp): This file contains - template definitions and should not be included while building - ACE library. - - * ace/config-win32.h (ACE_HAS_NONSTATIC_OBJECT_MANAGER): Use - non-static object manager by default on Win32 (except CE.) This - at least fixed the problem of WSACleanup getting called too late. - - To disable this, define ACE_HAS_NONSTATIC_OBJECT_MANAGER to 0. - -Thu Jul 23 22:17:41 1998 Arturo Montes <mitosys@colomsat.net.co> - - * ace/OS.cpp,Task.cpp,Thread_Manager.cpp: unify the Thread - Adapter use between general ACE threads and threads spawned - with a Thread_Manager. - - With this patch we add a new flag: ACE_USE_THREAD_MANAGER_ADAPTER. - If you set this flag in your config file, ACE will use the - ace_thread_manager_adapter in Thread_Manager, matching the current - behaviour. If you omit this flag, ACE will use ace_thread_adapter. - This change save a lot of source code and will let in the future - incorporate ACE_Thread at_exit. - -Thu Jul 23 15:30:41 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Token.{h,i,cpp}: On platforms that support timed acquire - semaphores, changed to use semaphores for signaling mechanism - for better performance. - (shared_acquire,renew): Give priority to acquire_write over - acquire_read. - -Thu Jul 23 14:05:20 1998 David L. Levine <levine@cs.wustl.edu> - - * performance-tests/Misc/context_switch_test.cpp: - helped yield test on VxWorks by timing each yield. - Added half-second delay between outer interations to give - LynxOS (w/ ACE_LACKS_SETDETACH) a chance to cleanup exited threads. - - * ace/config-sunos5.5.h: added support for _POSIX_PTHREAD_SEMANTICS. - If it is #defined, then #define ACE_HAS_PTHREADS_1003_DOT_1C - instead of ACE_HAS_STHREADS. Thanks to Doug Anderson - <doug@clark.net> for investigating this and providing the - update. - - * ace/High_Res_Timer.cpp (elapsed_time (ACE_hrtime_t &nanoseconds)): - simplified the calculation. Thanks to Tom Dobridge - <dobridge@persimmon.com> for the fix. - -Wed Jul 22 19:20:43 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Proactor.h (ACE_Proactor): Since <completion_strategy> is a - valid constructor parameter for all platforms, - POSIX_COMPLETION_STRATEGY should be defined for all platforms. - - * ace/Proactor.cpp (ACE_Proactor): Only use the - completion_strategy when ACE_HAS_AIO_CALLS is defined. - - * ace/Asynch_IO.cpp (ACE_Asynch_Result): Only delete - this->aiocb_ptr_ when ACE_HAS_AIO_CALLS is defined. - -Wed Jul 22 17:58:27 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * ace/OS.h: Updated the comments. - -Wed Jul 22 17:55:46 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * performance-tests/Synch-Benchmarks/token_test.cpp: A new test. - -Wed Jul 22 17:50:58 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * ace/OS.h: Defiend ACE_SIG_AIO to be SIGRTMIN. This is the only - signal used for all the <Asynch_Operation>s. - -Wed Jul 22 17:46:45 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * ace/Asynch_IO.h,Asynch_IO.cpp Proactor.h Proactor.cpp : - - First round of changes for sigtimedwait () based approach - of completion querying. - - Added one more parameter to the Proactor contructor to - decide the <aio> completion strategy for the POSIX implementation, - either <aiocb> control blocks or the RT signals. The default is RT - signals. - - Fixed Transmit file. Proactor's handle_events () is done - with in the ACE_Asynch_Transmit_Handler so that control does not - return to the user's application before the whole file is - transmitted. Otherwise the user's application might start writing - to the same socket and this might change the order of the file - that is being transmitted. - -Wed Jul 22 15:51:48 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * performance-tests/Synch-Benchmarks/Benchmark_Base.h - (Benchmark_Method_Base): Passing the test item into pre_run_test - so the thread can be setup correctly. Duh! - - * performance-tests/Synch-Benchmarks/Performance_Test.{h,cpp} - (pre_run_test): Added code so that it iterates thru test items - in svc.conf properly. Duh**2! - -Wed Jul 22 15:48:25 1998 David L. Levine <levine@cs.wustl.edu> - - * ACE version 4.5.24 released. - -Wed Jul 22 11:45:44 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * tests/Aio_Platform_Test.cpp: Added <aio_> calls test for - platforms with ACE_HAS_AIO_CALLS defined. - -Wed Jul 22 11:32:33 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Dynamic_Priority_Test.cpp: VxWorks only, fixed a few - minor things so that it builds now. - - * ace/config-linux-common.h: added ACE_HAS_GPERF. - -Tue Jul 21 23:09:31 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * performance-tests/Synch-Benchmarks/{Synch_Tests,synch_driver}.dsp: - Updated proejct source files and renamed debug version dll. - - * performance-tests/Synch-Benchmarks/Performance_Test.cpp: Added - ACE_Svc_Export directive. - -Tue Jul 21 20:17:31 1998 Steve Huston <shuston@riverace.com> - - * ace/ACE_Library.{mdp mak}: Removed ..\STL from include directories. - -Tue Jul 21 12:34:11 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * ace/config-lynxos.h: Defined ACE_HAS_AIO_CALLS. - -Mon Jul 20 19:35:21 1998 Steve Huston <shuston@riverace.com> - - * ace/config-aix-4.1.x.h: Added ACE_LACKS_RLIMIT. Thanks to Zheng - Han <zhan@glenvan.glenayre.com> for finding this problem. - - * ace/ACE_Library.{mdp mak}: Set up ".." as an include file directory - so that $ACE_ROOT doesn't have to be added to MSVC's global options. - Allows working on more than one ACE version. - - * netsvcs/lib/netsvcs4.{mdp mak}: Made paths to ACE components relative - and made Debug build netsvcsd.dll - this will work with Nanbor's new - DLL search method (from 19-July). - - * netsvcs/servers/servers4.{mdp mak}: - * netsvcs/clients/Logger/Logger.{mdp mak}: - Made paths to ACE components relative. - -Mon Jul 20 11:12:44 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Object_Manager.{h,cpp}: added ACE_TSS_BASE_LOCK, to - support ACE_HAS_TSS_EMULATION with ACE_USE_NATIVE_KEYS. - - * include/makeinclude/rules.lib.GNU: (INSTALL): use += to - define INSTALL instead of =, so that applications' INSTALL - won't be overwritten. - - * ace/config-osf1-4.0.h,config-linux-common.h: added - ACE_HAS_GPERF. - -Mon Jul 20 11:06:44 1998 Arturo Montes <mitosys@colomsat.net.co> - - * ace/OS.*: added support for TSS emulation with Pthreads. - It uses one native TSS key for its internal implementation. - All other TSS keys, both within the ACE library and in - applications, use keys managed by ACE. - To enable, add these #defines to your config.h: - #define ACE_HAS_TSS_EMULATION - #define ACE_USE_NATIVE_KEYS - -Sun Jul 19 22:21:17 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.h: added ACE_THROW_SPEC definition. - -Sun Jul 19 00:48:42 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/ACE.cpp (ldfind): Re-enabled searching for *d.dll before - *.dll for debug version of ACE. There was a premature return - error in the logic. This is now the default behavior and has to - be disabled explicitly by defining ACE_DISABLE_DEBUG_DLL_CHECK. - -Sat Jul 18 22:51:59 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.23 released. - -Sat Jul 18 22:48:52 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * There was a typo in the Makefile where CE-status should have - been CE-status.txt. Thanks to Nanbor for fixing this. - -Sat Jul 18 22:14:07 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.22 released. - -Sat Jul 18 21:11:52 1998 Steve Huston <shuston@riverace.com> - - * include/makeinclude/platform_hpux_aCC.GNU: Added +W829 to suppress - "string literal to char * is deprecated". I was going to fix these - in ACE, but TAO just wore me down... ;-) - -Sat Jul 18 Michael Kircher <mk1@cs.wustl.edu> - - * tests/Upgradable_RW_Test.cpp: Changed the time measurement - completely. Before we meassured end-to-end. Now we meassure - only the time spend in actual doing things. At the end - all the time spend is summarized. - - * tests/Upgradable_RW_Test.h: Added this file, which contains - definitions for the test. - -Sat Jul 18 19:47:45 1998 Darrell Brunsch <brunsch@cs.wustl.edu> - - * ace/ACE.cpp: Looks like we are having some trouble with the - loading of *d.dll before *.dll on NT, so it is now disabled - by default (until the problem is solved). To enable use: - ACE_USE_DEBUG_DLL_CHECK. - -Sat Jul 18 13:51:49 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * apps/Makefile: Always compile the gperf directory by default - now. - - * ace/config-sunos5.5.h: Added a new flag called ACE_HAS_GPERF, - which should be enabled if the OS/compiler platform can compile - GPERF. This will determine if we can use perfect hashing in - TAO! - -Sat Jul 18 10:52:49 1998 Gonzalo Diethelm <gonzo@tango.cs.wustl.edu> - - * ace/Svc_Conf_l.cpp: - * ace/Svc_Conf_y.cpp: - Move the Id and added ACE_RCSID. - The #line commands changed their line numbers. - - * ace/Svc_Conf.l: - * ace/Svc_Conf.y: - Added an ACE_RCSID, and erased a few white spaces at the end. - - * etc/Svc_Conf_l.cpp.diff: - * etc/Svc_Conf_y.cpp.diff: - Got rid of a couple of RCS Ids that were being "replaced" by the - patches. These were probably a maintenance problem and didn't - really add much. I also cleaned up the patches: there were a - couple of useless replacements (lines with white spaces at the - ends, etc.), and some of the line offsets were wrong (but patch - could still catch them with its fuzz factors). Now the patches - apply cleanly. - -Sat Jul 18 9:00:00 1998 Douglas C. Schmidt <schmidt@mambo.cs.wustl.edu> - - * DCS: Born 36 years ago, at this moment. Yow, I've now become - a "perfect square" ;-) - -Fri Jul 17 18:30:10 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Strategies_T.cpp (connect_svc_handler): The activation of - the newly created handler is moved outside the scope of the lock - of the cached connector. This is necessary to avoid subtle - deadlock conditions with this lock and the Reactor lock. Thanks - to Micheal for finding this race condition. - -Fri Jul 17 13:53:54 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/Threads/barrier2.cpp (ACE_MT_SYNCH>): Cleaned up the - coding style in this example. - - * ace/TTY_IO.cpp (control): Added entries for 300 baud. Thanks to - the ever vigilant Arturo Montes <mitosys@colomsat.com.co> for - reporting this. - -Fri Jul 17 14:51:55 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * Makefile (CONTROLLED_FILES): Added CE-status to distribution. - Thanks to David for reminding this. - -Fri Jul 17 12:48:26 1998 Steve Huston <shuston@riverace.com> - - * tests/Semaphore_Test.cpp: Removed unused variable, and disabled the - test for platforms with POSIX semaphores since POSIX semaphores - don't do timeouts (which this test stresses). - -Fri Jul 17 07:32:26 1998 David L. Levine <levine@cs.wustl.edu> - - * Makefile (CONTROLLED_FILES): added ACE-inheritance.{pdf,ps}.gz - to distribution. Thanks to Gabriel Lima <gali@enea.se> for - reporting their absence. Also, added COPYING to distribution. - - * ace/IO_SAP.cpp (enable): removed unreachable break statement. - - * ace/OS.i (sema_wait w/time): on VxWorks and pSoS, subtract - the current time from the time argument to get the relative - time that the systems calls expect. Thanks to Steve Huston - for recommending this change. Also, removed ACE_ADAPT_RETVAL - wrap so that errno isn't disturbed. On VxWorks, convert - S_objLib_OBJ_TIMEOUT errno to ETIME. - - * tests/run_tests.{sh,vxworks}: added Semaphore_Test. - - * ACE-INSTALL.html: updated multicast on Linux discussion. - -Thu Jul 16 18:28:31 1998 Steve Huston <shuston@riverace.com> - - * ace/OS.i (ACE_OS::sema_wait(ACE_sema_t*, ACE_Time_Value&)): - Changed WinCE version to use time as absolute and update it if - the semaphore is acquired. Changed Win32 version to update the - time if semaphore is acquired. - - * tests/Semaphore_Test.cpp: Added sanity checks for time that the - semaphore waits take and for the updated time values on acquiring - a semaphore. - -Thu Jul 16 15:41:08 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/IPC_SAP/UPIPE_SAP/ex2.cpp, - examples/Service_Configurator/IPC-tests/server/Handle_L_CODgram.i, - examples/Service_Configurator/IPC-tests/server/Handle_L_Dgram.i, - examples/Service_Configurator/IPC-tests/server/Handle_Broadcast.i, - examples/Service_Configurator/IPC-tests/server/Handle_L_Pipe.i, - examples/Service_Configurator/IPC-tests/server/Handle_L_Stream.i, - examples/Service_Configurator/IPC-tests/server/Handle_R_Dgram.i, - examples/Service_Configurator/IPC-tests/server/Handle_R_Stream.i: - Changed all uses of SIGIO to ACE_SIGIO. - - - * ace/IPC_SAP: Cleaned up the enable() and disable() methods and - documentation so they correctly use the new ACE_* macros - described in the following bullet. - - * ace/OS.h: Added new ACE_SIGIO, ACE_SIGURG, and ACE_CLOEXEC flags - that should be used instead of the SIGIO or SIGURG, etc., in - order to ensure uniqueness. However, legacy code will continue - to work. - - * ace/IO_SAP.cpp: Added new ACE_SIGIO, ACE_SIGURG, and ACE_CLOEXEC - flags that should be used instead of the SIGIO or SIGURG, etc., - in order to ensure uniqueness. However, legacy code will - continue to work. - -Thu Jul 16 15:02:55 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/Synch_T.h: Use ACE_Condition_Thread_Mutex instead of - ACE_Condition<ACE_Thread_Mutex> as the default condition - variable (ACE_SYNCH_CONDITION), this removes some headaches wrt - template instantiation. - - * ace/IPC_SAP.cpp: Added support for the close-on-exec flag. We - use the new ACE_CLOEXEC macro for this. - -Thu Jul 16 12:50:42 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * netsvcs/lib/netsvcs.dsp: - * netsvcs/servers/servers.dsp: Updated DLL names. - - * ace/ACE.cpp (ldfind): Conventionallly, Win32 platforms - distinguish debug version DLL from release version DLLs by - suffixing debug version DLL names with 'd'. (E.g., aced.dll - v.s. ace.dll.) This was causing some problem in managing the - svc.conf files because we need to link the matching DLL with the - executables regarding of how they get compiled. - - I modified the ldfind so that when a debug version ACE is - searching for a DLL file, it will first try to find the debug - version of that DLL by suffixing the name with 'd'. If it can't - be found, it then searches for the name specified. The release - version doesn't try to do this. Now, we can specify only the - "normal" dll names in svc.conf files and ACE can pick up the - right dlls for you without changing svc.conf files. However, - you need to follow the Win32 DLL naming convention as described - above. - - I don't expect this feature to cause any backward compatibility - problem. However, if in the rare event, it does cause you - problem, you can disable it by defining - ACE_DISABLE_DEBUG_DLL_CHECK in your config.h file. Notice that - this change only affects Win32 platforms. - -Thu Jul 16 08:55:48 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Dynamic_Service.cpp (instance): removed const-ness - from local void * obj, because the function return value - isn't const. Sun C++ caught this. - - * STL,Makefile: removed STL from ACE, for good this time. There - are no more STL dependencies in TAO's AVStreams. However, if - you still want to use the version of STL that was in ACE, you - can obtain it at www.cs.wustl.edu/~schmidt/ACE_wrappers/STL. - - * ACE-INSTALL.html: added note on enabling multicast on Linux for - TAO's NameService. And, added note on adding a routing table - entry to enable multicast on Linux. Thanks to Nanbor for - discovering that. - -Wed Jul 15 19:00:33 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Dynamic_Service.cpp (instance): Made the error reporting - less verbose. Thanks to Darrell for suggesting this. In - addition, changed the use of (SERVICE *) to - ACE_reinterpret_cast(). - -Wed Jul 15 16:16:40 1998 Chris Gill <cdgill@cs.wustl.edu> - - * ace/Message_Queue_T.cpp: Fixed message/byte counting bugs. - -Wed Jul 15 15:42:44 1998 James C Hu <jxh@cs.wustl.edu> - - * ace/OS.h: Added a copy constructor for ACE_Thread_ID. - -Wed Jul 15 14:33:15 1998 Steve Huston <shuston@riverace.com> - - * ace/Select_Reactor.cpp: Added some MVS-specific behavior in the - error checking/recovery code so that bad handles are properly - located and removed on MVS Open Edition. Thanks to Chuck Gehr - for his hard work in tracking these down. - -Tue Jul 14 14:00:00 1998 Michael Kircher <mk1@cs.wustl.edu> - - * ace/Select_Reactor.cpp: Changed the handling - of the state_changed flag. Now, it is set to "changed" (=1) - after each run of the event loop. This fixed a nested - upcalls bug, which was caused by overwriting this - flag each time entering the event loop. So that, - when poping one level of the handle_events call - stack information was lost about changes. Now, we - assume that information has changed and - propagate this knowlegde down in the call - stack. No performance overhead is caused by that. - -Tue Jul 14 12:02:15 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * examples/IPC_SAP/SOCK_SAP/C-inserver.cpp: - * examples/IPC_SAP/SOCK_SAP/C-inclient.cpp: - * ace/SOCK_Dgram_Mcast.cpp: - * ace/SOCK_Acceptor.cpp: - * ace/ACE.cpp: - Use ACE_reinterpret_cast in several conversions address type - conversions (like from sockaddr* to sockaddr_in*). - Some compilers (HP/aCC) give a warning if the old C-style cast - operators are used; using the proper cast operator removes the - warning. Thanks to John Mulhern <9107@mn3.lawson.lawson.com> for - pointing out this problem. - -Tue Jul 14 11:26:40 1998 David L. Levine <levine@cs.wustl.edu> - - * Makefile: added STL back in, because TAO's AVStreams still uses it. - Thanks to Hans Rohnert <hans.rohnert@mchp.siemens.de> for - reporting this. - - * ace/Message_Queue_T.cpp (refresh_{late,pending}_queue): removed some - breaks following ACE_ERROR_RETURNs, to avoid compiler warnings about - unreachable statements. - - * tests/Dynamic_Priority_Test.cpp: commented out unused global - FIFO_receipt_order. - - * ace/Basic_Types.h: added ACE_UINT64_LITERAL macro. Thanks to - Nanbor for suggesting it. - - * ace/Stats.cpp: use ACE_UINT64_LITERAL to replace platform-specific - code. - -Mon Jul 13 22:29:20 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Dynamic_Priority_Test.cpp: swapped "const" and "static" - qualifiers so that "static" appears first. - (run_performance_test): initialized random_int to 0 to avoid - g++ warning. - - * ace/Message_Queue_T.h: on VxWorks, added forward declaration - of class ACE_Message_Queue_Vx. - - * ace/Message_Queue_T.cpp (create_Vx_message_queue): added - template <ACE_SYNCH_DECL>. - -Mon Jul 13 16:37:07 1998 Chris D. Gill <cdgill@tango.cs.wustl.edu> - - * Message_Queue_T.cpp: - refined dynamic queues based on performance test results - -Mon Jul 13 16:35:50 1998 Chris Gill <cdgill@cs.wustl.edu> - - * ace/Message_Block.{cpp, h, i} - ace/Message_Queue_T.{cpp, h}: - - Removed automatic deletion of beyond messages, replaced this - with a remove_messages method to be called by an external - "reaper" if at all. Reorganized dynamic message queues - to remove sources of overhead, especially in checking - message status while refreshing the queue: added separate - head and tail pointers for pending, late, and beyond late - protions of queue: only move these pointers, not messages - (except at enqueue). - - * tests/Dynamic_Priority_Test.cpp: - - Added performance tests for static and dynamic queues - which do best case, worst case, and randomized ordering - of messages, presenting each ordering to all queues - and clocking enqueue and dequeue performance. - -Mon Jul 13 11:11:56 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Svc_Handler.h (ACE_SYNCH_USE>): Changed type of member - <dynamic_> to int. Thanks to Zoran Ivanovic - <zorani@pathcom.com> for pointing this out. - -Sun Jul 12 13:25:04 1998 David L. Levine <levine@cs.wustl.edu> - - * ACE-INSTALL.html: Separated the Linux RedHat 5.1 and 5.0 - discussions into different paragraphs. - -Sat Jul 11 14:25:58 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Timer_Queue_Adapter.cpp: moved the ACE_RCSID inside the - ifndef ACE_TIMER_QUEUE_ADAPTERS_C protection, because this - file gets multiply included with g++. - - * ace/config-lynxos.h: added #define ACE_USE_RCS_ID 0. - -Sat Jul 11 03:44:00 1998 Gonzalo Diethelm <gonzo@tango.cs.wustl.edu> - - * ace/inc_user_config.h: - Defined an ACE_RCSID macro to add RCS Id keywords to .cpp - files. Also defined an ACE_USE_RCSID macro that allows turning - this feature on and off. - - * ace/config-chorus.h: - * ace/config-psosim-g++.h: - * ace/config-vxworks5.x.h: - These files have the RCS Id keywords off by default. - I hope these are all (and the only) real-time OSs that could be - impacted by the extra 40K or so of space. - - * ace/ACE.cpp: - * ace/ACED.cpp: - * ace/ACER.cpp: - * ace/ARGV.cpp: - * ace/Acceptor.cpp: - * ace/Activation_Queue.cpp: - * ace/Addr.cpp: - * ace/Arg_Shifter.cpp: - * ace/Array.cpp: - * ace/Asynch_Acceptor.cpp: - * ace/Asynch_IO.cpp: - * ace/Auto_Ptr.cpp: - * ace/Basic_Types.cpp: - * ace/CORBA_Handler.cpp: - * ace/CORBA_Ref.cpp: - * ace/Connector.cpp: - * ace/Containers.cpp: - * ace/DEV.cpp: - * ace/DEV_Addr.cpp: - * ace/DEV_Connector.cpp: - * ace/DEV_IO.cpp: - * ace/Date_Time.cpp: - * ace/Dump.cpp: - * ace/Dump_T.cpp: - * ace/Dynamic.cpp: - * ace/Dynamic_Service.cpp: - * ace/Env_Value_T.cpp: - * ace/Event_Handler.cpp: - * ace/Event_Handler_T.cpp: - * ace/FIFO.cpp: - * ace/FIFO_Recv.cpp: - * ace/FIFO_Recv_Msg.cpp: - * ace/FIFO_Send.cpp: - * ace/FIFO_Send_Msg.cpp: - * ace/FILE.cpp: - * ace/FILE_Addr.cpp: - * ace/FILE_Connector.cpp: - * ace/FILE_IO.cpp: - * ace/Filecache.cpp: - * ace/Free_List.cpp: - * ace/Future.cpp: - * ace/Get_Opt.cpp: - * ace/Handle_Set.cpp: - * ace/Hash_Map_Manager.cpp: - * ace/High_Res_Timer.cpp: - * ace/INET_Addr.cpp: - * ace/IOStream.cpp: - * ace/IOStream_T.cpp: - * ace/IO_Cntl_Msg.cpp: - * ace/IO_SAP.cpp: - * ace/IPC_SAP.cpp: - * ace/LOCK_SOCK_Acceptor.cpp: - * ace/LSOCK.cpp: - * ace/LSOCK_Acceptor.cpp: - * ace/LSOCK_CODgram.cpp: - * ace/LSOCK_Connector.cpp: - * ace/LSOCK_Dgram.cpp: - * ace/LSOCK_Stream.cpp: - * ace/Local_Name_Space.cpp: - * ace/Local_Name_Space_T.cpp: - * ace/Local_Tokens.cpp: - * ace/Log_Msg.cpp: - * ace/Log_Record.cpp: - * ace/Malloc.cpp: - * ace/Malloc_T.cpp: - * ace/Managed_Object.cpp: - * ace/Map_Manager.cpp: - * ace/Mem_Map.cpp: - * ace/Memory_Pool.cpp: - * ace/Message_Block.cpp: - * ace/Message_Queue.cpp: - * ace/Message_Queue_T.cpp: - * ace/Method_Object.cpp: - * ace/Module.cpp: - * ace/Msg_WFMO_Reactor.cpp: - * ace/Multiplexor.cpp: - * ace/Name_Proxy.cpp: - * ace/Name_Request_Reply.cpp: - * ace/Name_Space.cpp: - * ace/Naming_Context.cpp: - * ace/OS.cpp: - * ace/Object_Manager.cpp: - * ace/Obstack.cpp: - * ace/Parse_Node.cpp: - * ace/Pipe.cpp: - * ace/Priority_Reactor.cpp: - * ace/Proactor.cpp: - * ace/Process.cpp: - * ace/Process_Manager.cpp: - * ace/Profile_Timer.cpp: - * ace/RB_Tree.cpp: - * ace/Reactor.cpp: - * ace/Read_Buffer.cpp: - * ace/Registry.cpp: - * ace/Registry_Name_Space.cpp: - * ace/Remote_Name_Space.cpp: - * ace/Remote_Tokens.cpp: - * ace/SOCK.cpp: - * ace/SOCK_Acceptor.cpp: - * ace/SOCK_CODgram.cpp: - * ace/SOCK_Connector.cpp: - * ace/SOCK_Dgram.cpp: - * ace/SOCK_Dgram_Bcast.cpp: - * ace/SOCK_Dgram_Mcast.cpp: - * ace/SOCK_IO.cpp: - * ace/SOCK_Stream.cpp: - * ace/SPIPE.cpp: - * ace/SPIPE_Acceptor.cpp: - * ace/SPIPE_Addr.cpp: - * ace/SPIPE_Connector.cpp: - * ace/SPIPE_Stream.cpp: - * ace/SString.cpp: - * ace/SV_Message.cpp: - * ace/SV_Message_Queue.cpp: - * ace/SV_Semaphore_Complex.cpp: - * ace/SV_Semaphore_Simple.cpp: - * ace/SV_Shared_Memory.cpp: - * ace/Sched_Params.cpp: - * ace/Select_Reactor.cpp: - * ace/Service_Config.cpp: - * ace/Service_Manager.cpp: - * ace/Service_Object.cpp: - * ace/Service_Repository.cpp: - * ace/Service_Types.cpp: - * ace/Shared_Memory.cpp: - * ace/Shared_Memory_MM.cpp: - * ace/Shared_Memory_SV.cpp: - * ace/Shared_Object.cpp: - * ace/Signal.cpp: - * ace/Singleton.cpp: - * ace/Stats.cpp: - * ace/Strategies.cpp: - * ace/Strategies_T.cpp: - * ace/Stream.cpp: - * ace/Stream_Modules.cpp: - * ace/Svc_Handler.cpp: - * ace/Synch.cpp: - * ace/Synch_Options.cpp: - * ace/Synch_T.cpp: - * ace/System_Time.cpp: - * ace/TLI.cpp: - * ace/TLI_Acceptor.cpp: - * ace/TLI_Connector.cpp: - * ace/TLI_Stream.cpp: - * ace/TTY_IO.cpp: - * ace/Task.cpp: - * ace/Task_T.cpp: - * ace/Thread.cpp: - * ace/Thread_Manager.cpp: - * ace/Time_Request_Reply.cpp: - * ace/Timeprobe.cpp: - * ace/Timeprobe_T.cpp: - * ace/Timer_Hash.cpp: - * ace/Timer_Hash_T.cpp: - * ace/Timer_Heap.cpp: - * ace/Timer_Heap_T.cpp: - * ace/Timer_List.cpp: - * ace/Timer_List_T.cpp: - * ace/Timer_Queue.cpp: - * ace/Timer_Queue_Adapters.cpp: - * ace/Timer_Queue_T.cpp: - * ace/Timer_Wheel.cpp: - * ace/Timer_Wheel_T.cpp: - * ace/Token.cpp: - * ace/Token_Collection.cpp: - * ace/Token_Invariants.cpp: - * ace/Token_Manager.cpp: - * ace/Token_Request_Reply.cpp: - * ace/Trace.cpp: - * ace/Typed_SV_Message.cpp: - * ace/Typed_SV_Message_Queue.cpp: - * ace/UNIX_Addr.cpp: - * ace/UPIPE_Acceptor.cpp: - * ace/UPIPE_Connector.cpp: - * ace/UPIPE_Stream.cpp: - * ace/WFMO_Reactor.cpp: - * ace/XtReactor.cpp: - * ace/gethrtime.cpp: - * tests/Aio_Platform_Test.cpp: - * tests/Atomic_Op_Test.cpp: - * tests/Barrier_Test.cpp: - * tests/Basic_Types_Test.cpp: - * tests/Buffer_Stream_Test.cpp: - * tests/Conn_Test.cpp: - * tests/Dynamic_Priority_Test.cpp: - * tests/Enum_Interfaces_Test.cpp: - * tests/Env_Value_Test.cpp: - * tests/Future_Test.cpp: - * tests/Handle_Set_Test.cpp: - * tests/Hash_Map_Manager_Test.cpp: - * tests/IOStream_Test.cpp: - * tests/MM_Shared_Memory_Test.cpp: - * tests/MT_Reactor_Timer_Test.cpp: - * tests/MT_SOCK_Test.cpp: - * tests/Map_Manager_Test.cpp: - * tests/Mem_Map_Test.cpp: - * tests/Message_Block_Test.cpp: - * tests/Message_Queue_Test.cpp: - * tests/MsgQueue_Notifications_Test.cpp: - * tests/Naming_Test.cpp: - * tests/Notify_Performance_Test.cpp: - * tests/OrdMultiSet_Test.cpp: - * tests/Pipe_Test.cpp: - * tests/Priority_Buffer_Test.cpp: - * tests/Priority_Reactor_Test.cpp: - * tests/Priority_Task_Test.cpp: - * tests/Process_Mutex_Test.cpp: - * tests/Process_Strategy_Test.cpp: - * tests/Reactor_Exceptions_Test.cpp: - * tests/Reactor_Notify_Test.cpp: - * tests/Reactor_Performance_Test.cpp: - * tests/Reactor_Timer_Test.cpp: - * tests/Reactors_Test.cpp: - * tests/Reader_Writer_Test.cpp: - * tests/Recursive_Mutex_Test.cpp: - * tests/SOCK_Connector_Test.cpp: - * tests/SOCK_Test.cpp: - * tests/SPIPE_Test.cpp: - * tests/SString_Test.cpp: - * tests/SV_Shared_Memory_Test.cpp: - * tests/Semaphore_Test.cpp: - * tests/Service_Config_Test.cpp: - * tests/Sigset_Ops_Test.cpp: - * tests/Simple_Message_Block_Test.cpp: - * tests/TSS_Test.cpp: - * tests/Task_Test.cpp: - * tests/Thread_Manager_Test.cpp: - * tests/Thread_Mutex_Test.cpp: - * tests/Thread_Pool_Test.cpp: - * tests/Time_Service_Test.cpp: - * tests/Time_Value_Test.cpp: - * tests/Timeprobe_Test.cpp: - * tests/Timer_Queue_Test.cpp: - * tests/Tokens_Test.cpp: - * tests/UPIPE_SAP_Test.cpp: - * tests/Upgradable_RW_Test.cpp: - * tests/XtReactor_Test.cpp: - * tests/tests_bcc.ide: - Added RCS Id keywords to all these files. - - * ace/ace_bcc.ide: - Don't really know what changed here... - -Fri Jul 10 23:11:36 1998 David L. Levine <levine@cs.wustl.edu> - - * bin/make_release: redirect rdiff error messages to /dev/null. - -Fri Jul 10 22:15:04 1998 David L. Levine <levine@cs.wustl.edu> - - * ACE version 4.5.21 released. - -Fri Jul 10 10:29:58 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/SString.h: added ACE_INLINE specifiers to operator+ - declarations, to please Sun C++. Will AIX be able to cope? - -Thu Jul 09 23:27:26 1998 Gonzalo Diethelm <gonzo@tango.cs.wustl.edu> - - * ace/OS.h: - Corrected definitions for ACE_Export under Borland compilers. - - * ace/SString.h: - Got rid of the friend operators. - - * ace/Containers.cpp: - * ace/Message_Queue_T.cpp: - * ace/Stream.cpp: - * ace/Timer_Heap_T.cpp: - * tests/Buffer_Stream_Test.cpp: - * tests/Dynamic_Priority_Test.cpp: - * tests/Future_Test.cpp: - * tests/Naming_Test.cpp: - * tests/Priority_Buffer_Test.cpp: - * tests/Thread_Pool_Test.cpp: - Got rid of a few assignments to zero that cause warnings with - the Borland compiler. - - * ace/ace_bcc.ide: - * tests/tests_bcc.ide: - Now Borland C++ 5.x supports building ACE as a DLL, and the tests - are linked against the Debug DLL. - - * tests/tests.bpg: - * tests/Dynamic_Priority_Test.bpr: - * tests/Timeprobe_Test.bpr: - * tests/Upgradable_RW_Test.bpr: - * tests/XtReactor_Test.bpr: - Added four new tests to the project group. - - * tests/Aio_Platform_Test.bpr: - * tests/Atomic_Op_Test.bpr: - * tests/Barrier_Test.bpr: - * tests/Basic_Types_Test.bpr: - * tests/Buffer_Stream_Test.bpr: - * tests/Conn_Test.bpr: - * tests/Dynamic_Priority_Test.bpr: - * tests/Enum_Interfaces_Test.bpr: - * tests/Env_Value_Test.bpr: - * tests/Future_Test.bpr: - * tests/Handle_Set_Test.bpr: - * tests/Hash_Map_Manager_Test.bpr: - * tests/IOStream_Test.bpr: - * tests/MM_Shared_Memory_Test.bpr: - * tests/MT_Reactor_Timer_Test.bpr: - * tests/MT_SOCK_Test.bpr: - * tests/Map_Manager_Test.bpr: - * tests/Mem_Map_Test.bpr: - * tests/Message_Block_Test.bpr: - * tests/Message_Queue_Test.bpr: - * tests/MsgQueue_Notifications_Test.bpr: - * tests/Naming_Test.bpr: - * tests/Notify_Performance_Test.bpr: - * tests/OrdMultiSet_Test.bpr: - * tests/Pipe_Test.bpr: - * tests/Priority_Buffer_Test.bpr: - * tests/Priority_Reactor_Test.bpr: - * tests/Priority_Task_Test.bpr: - * tests/Process_Mutex_Test.bpr: - * tests/Process_Strategy_Test.bpr: - * tests/Reactor_Exceptions_Test.bpr: - * tests/Reactor_Notify_Test.bpr: - * tests/Reactor_Performance_Test.bpr: - * tests/Reactor_Timer_Test.bpr: - * tests/Reactors_Test.bpr: - * tests/Reader_Writer_Test.bpr: - * tests/Recursive_Mutex_Test.bpr: - * tests/SOCK_Connector_Test.bpr: - * tests/SOCK_Test.bpr: - * tests/SPIPE_Test.bpr: - * tests/SString_Test.bpr: - * tests/SV_Shared_Memory_Test.bpr: - * tests/Semaphore_Test.bpr: - * tests/Service_Config_Test.bpr: - * tests/Sigset_Ops_Test.bpr: - * tests/Simple_Message_Block_Test.bpr: - * tests/TSS_Test.bpr: - * tests/Task_Test.bpr: - * tests/Thread_Manager_Test.bpr: - * tests/Thread_Mutex_Test.bpr: - * tests/Thread_Pool_Test.bpr: - * tests/Time_Service_Test.bpr: - * tests/Time_Value_Test.bpr: - * tests/Timeprobe_Test.bpr: - * tests/Timer_Queue_Test.bpr: - * tests/Tokens_Test.bpr: - * tests/UPIPE_SAP_Test.bpr: - * tests/Upgradable_RW_Test.bpr: - * tests/XtReactor_Test.bpr: - Uniform options for Borland C++ and C++ Builder. - -Thu Jul 09 16:23:34 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Registry.h (ACE_Registry): Changed the Registry class so - that it does not use STL containers and the string classes - anymore. It now uses ACE containers and string classes. There - should be no dependency on STL in ACE anymore. - - * STL: Removed this directory since ACE is no longer dependent on - STL. If you still need these STL files, please refer to: - http://www.rahul.net/terris/. - - * examples/Registry/test_registry_{update,iterator}.cpp (main): - Updated files to work with modified Registry. - - * ace/SString.cpp (ACE_WString::operator<<): Added new operator. - - * Makefile: Updated Makefile so that STL is no longer released - with ACE. - -Thu Jul 09 09:37:43 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Basic_Types: for LONG_LONG size determination, don't use - ULONGLONG_MAX ifdef __GNUG__. This change should fix a build - problem on g++/Irix 6.4. Thanks to Johan Lundin <johan@lundin.com> - for reporting the problem. - -Wed Jul 08 17:47:48 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Strategies_T (ACE_Scheduling_Strategy, - ACE_Schedule_All_Reactive_Strategy, and - ACE_Schedule_All_Threaded_Strategy): The code in these classes - was screwed up. The base class (ACE_Scheduling_Strategy) was - keeping a pointer to the SVC_HANDLER in order to enable the - derived classes to get to the Reactor and Thread Manager. Also, - if the user did not pass in an instance of SVC_HANDLER, one was - created dynamically ;-( Another problem was that the Reactor - field was set on the SVC_HANDLER, but the SVC_HANDLER was never - registered with the Reactor. So when the SVC_HANDLER was - deleted, it tried to remove itself from a potentially - non-existent Reactor. - - Solution: Removed scheduler_ as protected member of the base - class. Added thr_mgr_ to ACE_Schedule_All_Threaded_Strategy and - reactor_ to ACE_Schedule_All_Reactive_Strategy. Now these - classes do not need the scheduler_ member anymore. - -Wed Jul 8 13:47:02 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-sunx86-sunc++-4.x.h: inserted note to not use this - config, but to use config-sunos5.5.h instead. After we - have installed and tested Sun C++ on Solaris86, we should - remove this config. - - * ACE-INSTALL.html: added note about increasing NUM_FILES to - 1000 in VxWorks kernel configuration. Thanks to - Jeff Franks <Jeffrey_Franks@i-o.com> for reminding me about - this change from the default VxWorks kernel configuration. - -Tue Jul 07 14:36:56 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/ace_ce_dll.dsp: Added Stats.cpp into project. - - * ace/README: Added a new directive - ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS and its documentation. - - * ace/config-win32-common.h: Defined - ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS for Win32 except CE. - - * ace/Log_Msg.{h,cpp}: - * ace/OS.{h,i,cpp}: Changed to use ifdef - ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS for structural exception - code. - - * ace/Token.cpp: - * ace/Stats.cpp: - * ace/High_Res_Timer.cpp: Made them CE friendly. - -Tue Jul 07 09:26:22 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Thread_Manager.h: updated comments that describe - ACE_thread_t * argument to spawn () family. - - * ace/OS.{h,cpp},Thread_Manager.cpp: on VxWorks only, instead - of using a string to mark an ACE_thread_t as being allocated - by the ACE_Thread_Manager, use a single character (ASCII DC2). - - * tests/run_tests.vxworks: added Dynamic_Priority_Test. - - * apps/gperf/src/Makefile: added trailing $ to Id string. - -Tue Jul 7 10:48:42 EET DST 1998 Wei Chiang <chiang@horizon.ntc.nokia.com> - - * tests/CLASSIX/CLASSIX_Con_Acc_Test.cpp: - Use a counter, max. number of unread messages, instead of wait - to work around the blocking problem in ipcSend() - -Mon Jul 6 22:32:19 1998 Gonzalo Diethelm <gonzo@tango.cs.wustl.edu> - - * ace/ace_bcc.ide: - Updates for Borland C++ 5.x. - - * ace/config-win32.h: - Made sure ACE_HAS_WINNT4 and _WIN32_WINNT are always defined if - they were not explicitly defined. - - * ace/config-win32-borland.h: - * ace/config-win32-common.h: - Moved all the Borland definitions to a config-win32-borland.h - file. - - * ace/OS.h (ACE_SEH_TRY): - Added correct support for Borland C++ 5.x. - - * ace/OS.cpp: - Replaced the ugly hack to access wProcessorArchitecture under - Borland compilers for an even uglier hack, but that will work on - every Borland compiler, as long as the members of SYSTEM_INFO are - consistent. See the code and get sick! - - * ace/LOCK_SOCK_Acceptor.h: - * ace/Array.cpp: - * ace/Arg_Shifter.cpp: - Were missing an "ace/" in some includes. - - * tests/tests_bcc.ide: - Added all (well, most) of the tests to the project file. - - * tests/Makefile: - * tests/Message_Queue_Notifications_Test.cpp: - * tests/Message_Queue_Notifications_Test.bpr: - * tests/Message_Queue_Notifications_Test.dsp: - * tests/MsgQueue_Notifications_Test.cpp: - * tests/MsgQueue_Notifications_Test.bpr: - * tests/MsgQueue_Notifications_Test.dsp: - * tests/run_tests.bat: - * tests/run_tests.psosim: - * tests/run_tests.sh: - * tests/run_tests.vxworks: - * tests/tests.bpg: - * tests/tests.dsw: - * tests/tests.mak: - * tests/WinCE/Message_Queue_Notifications_Test.dsp: - * tests/WinCE/MsgQueue_Notifications_Test.dsp: - * tests/version_tests/Message_Queue_Notification_Test.dsp: - * tests/version_tests/MsgQueue_Notifications_Test.dsp : - Changed name of Message_Queue_Notifications_Test to - MsgQueue_Notifications_Test, to avoid problems with Borland - compilers. - - * tests/Enum_Interfaces_Test.cpp: - Added some output to test ACE_OS::uname(). - - * tests/Basic_Types_Test.cpp: - Changed a couple of debug lines to contain only one \n. - -Mon Jul 6 14:24:11 EET DST 1998 Wei Chiang <chiang@horizon.ntc.nokia.com> - - * tests/CLASSIX/CLASSIX_Con_Acc_Test.cpp: - Add a pause after each send_n()(i.e. ipcSend()) as a temporary - work around over the block problem in ipcSend() when the resources are - exhaused. - - -Mon Jul 6 03:56:49 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Thread_Manager.h (ACE_Thread_Manager::thr_self): Instead of - refering to ACE_Thread::thr_self, it should mention - ACE_Thread::self. - -Fri Jul 03 17:02:49 1998 David L. Levine <levine@cs.wustl.edu> - - * bin/make_release (create_kit): remove any existing .zip - files before trying to create new ones, because they get - in the way. Thanks to J. Russell Noseworthy - <rnosewor@objectsciences.com> for reporting the problem - with new ACE+TAO.tar.gz's not being created. - -Fri Jul 3 14:24:59 1998 Darrell Brunsch <brunsch@cs.wustl.edu> - - * apps/gperf/src/gperf.dsw: - * apps/gperf/src/gperf.dsp: - * apps/gperf/src/gperf_lib.dsp: - Added MSVC5 Project files - - * apps/gperf/src/Key_List.cpp: - * apps/gperf/src/Options.h: - * apps/gperf/src/Options.cpp: - There was a enumeration CONST, and MSVC5 didn't like it. I - renamed it to CONSTANT. - - * apps/gperf/src/new.cpp - Changed a variable from int to size_t to get rid of a MSVC - warning. - - NOTE: I tried out some tests and even though gperf compiles - on NT, it doesn't seem to work correctly yet. That - will come later. - -Fri Jul 03 13:47:19 1998 David L. Levine <levine@cs.wustl.edu> - - * ACE version 4.5.20 released. - -Fri Jul 03 08:52:13 1998 Steve Huston <shuston@riverace.com> - - * netsvcs/lib/Name_Handler.{cpp h}: Moved class Naming_Context from - .cpp to .h so that AIX xlC can find it when instantiating templates. - -Thu Jul 2 11:49:16 1998 Alexander Babu Arulanthu <alex@cs.wustl.edu> - - * ace/OS.h: - * ace/OS.i: Added ACE_OS::fseek (). NT supports this too. Just - defined SEEK_SET, SEEK_CUR etc, in case they are not defined. This - is similar to what has been done for lseek. - -Thu Jul 02 10:58:00 1998 Michael Kircher <mk1@cs.wustl.edu> - - * tests/Upgradable_RW_Test.cpp: Totally new version, - now we use linked lists on which we search to - spend some time. - - * tests/Upgradable_RW_Test.dsp: Project file for this test. - - * tests/tests.dsw: Integrated this project. - - * tests/version_tests.dsw: Integrated this project. - - * tests/Upgradable_RW_Test.dsp: Project file for this test. - -Thu Jul 02 09:14:20 1998 David L. Levine <levine@cs.wustl.edu> - - * examples/Reactor/Misc/test_timer_queue.cpp (test_functionality): - use timer_id outside of an assert, so that we don't get compile - warnings with ACE_NDEBUG about it being unused. - - * ace/OS.cpp (thr_create): on VxWorks only, check if thr_id - points to a zero char *. If so, assign the VxWorks task - name pointer to it (*thr_id). Thanks to Bill Backstrom - <backstr@anubis.network.com> for this suggestion. - - * ace/Thread_Manager.cpp (spawn_i): on VxWorks only, augmented - comment to explain the various cases for t_id and *t_id values. - - * ace/Thread_Manager.h (spawn*): on VxWorks only, added comment - explaining use of ACE_thread_t * argument. - - * tests/Barrier_Test.cpp: on VxWorks only, added test of - an ACE_thread_t that points to a 0 char *. - - * tests/Barrier_Test.cpp,Thread_Manager_Test.cpp: moved - VxWorks task name and stack size tests from Barrier_Test - to Thread_Manager_Test. - - * tests/run_tests.vxworks: on VxWorks only, enabled - Message_Queue_Test. It's OK to run it on VxWorks, now - that the iterator_test () is disabled in the test. - - * tests/SOCK_Connector_Test.cpp (succeed_nonblocking): - if the connection completion fails, reset the status - _before_ doing the printout. The printout causes the - errno to be overwritten on LynxOS 2.5.0, for example. - - * Makefile (releaseall): use $(MAKE) instead of make for - recursive make. - -Wed Jul 01 21:31:40 1998 Arturo Montes <mitosys@colomsat.net.co> - - * ace/IOStream_T.i (recv_n, eof): fixed calculation of - timeout_ and return value. - -Wed Jul 01 08:51:33 1998 Chris Gill <cdgill@cs.wustl.edu> - - * ace/Service_Types.cpp - tests/Dynamic_Priority_Test.cpp: Moved explicit template - instantiations for ACE_Dynamic_Message_Queue and - ACE_Message_Queue_Factory from the test into the ACE library - (next to where the ACE_Message_Queue instantiations resided). - -Wed Jul 01 07:08:40 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Message_Queue.i,cpp (VxWorks only): removed args from a - couple of unsupported functions, and added ACE_UNUSED_ARGS - to others, to avoid compiler warnings. - - * tests/Message_Queue_Test.cpp (performance_test): allocate - the send blocks in the main thread instead of in the sender. - That way, the main thread can delete them after the - receiver has finished. Before this change, the sender would - sometimes delete them before the reciever finished. Thanks to - Carlos and his friend Mr. SIGSEGV for helping to track this down. - -Tue Jun 30 23:48:39 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Message_Queue.h: Added /**/ between #include and <> to - prevent warnings from MSVC. - -Tue Jun 30 22:05:01 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Dynamic_Priority_Test.cpp: added template - instantiations. - -Tue Jun 30 18:55:45 1998 Chris Gill <cdgill@cs.wustl.edu> - - * ace/Message_Queue_T.{cpp, h} - - Added methods to ACE_Message_Queue_Factory to - create an ACE_Dynamic_Message_Queue with the - deadline and laxity with cleanup strategies. - - * tests/Dynamic_Priority_Test.cpp - - Added tests for the new cleanup strategy factory methods - -Tue Jun 30 18:03:15 1998 Chris Gill <cdgill@cs.wustl.edu> - - * ace/Message_Queue_T.{cpp, h} - ace/Message_Block.{cpp, h, i} - - Reorganized ACE_Dynamic_Message_Queue and related classes, - fixed bugs that turned up in testing: it's ready to put - on the road and see how it runs ;-) - - * tests/Dynamic_Priority_Test.{cpp, dsp} - tests/tests.dsw - tests/Makefile - tests/run_tests.{bat, sh} - - Added a test for the static and dynamic (both deadline and laxity - based) message queues, which assigns various message attributes, - pushes messages into the queue, and makes sure the resulting - dequeue order is correct for the given kind of queue. - -Tue Jun 30 14:04:42 1998 Steve Huston <shuston@riverace.com> - - * ace/Message_Queue_T.cpp: Fixed references to an undeclared - priority_eval_func_ptr_ - I think I figured out what it was - supposed to be doing, but I'm not quite sure. It compiles ;-) - - * ace/Synch.h (ACE_Adaptive_Lock): Removed "= 0" (pure virtual) from - destructor decl. The function is defined in Synch.cpp. - -Tue Jun 30 13:13:21 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/WFMO_Reactor.cpp (open): Made sure that size does not exceed - MAXIMUM_WAIT_OBJECTS. Thanks to Dr. Schmidt for pointing this - out. - -Tue Jun 30 11:45:12 1998 Steve Huston <shuston@riverace.com> - - * ace/Message_Queue_T.cpp: Added explicit class names where needed - for ANSI C++. Fixed some compile errors. Still needs more work to - compile correctly on HP-UX aCC. - -Tue Jun 30 09:27:25 1998 David L. Levine <levine@cs.wustl.edu> - - * etc/ACE-guidelines.html: added a guideline about using ACE_Export. - - * ace/Message_Queue.cpp (ACE_Message_Queue_Vx::dtor; VxWorks only): - added close () call to destructor, because the one in the parent - class will never get called because head_ is always 0 in the derived - class. - - * ace/Message_Queue.i (VxWorks only): finished implementing the - ACE_Message_Queue_Vx inline member functions. - - * tests/Message_Queue_Test.cpp: added performance tests and - tests of ACE_Message_Queue_Vx. - -Tue Jun 30 03:39:15 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Synch.h (ACE_RW_Process_Mutex): This class no longer needs - to inherit from ACE_Process_Mutex. - - * ace/Synch.cpp (ACE_RW_Process_Mutex): On non-Win32 platforms, - the underlying ACE_File_Lock needs to be created with owner's - read/write permission. Otherwise, other process won't be able - to access the lock. - - * Makefile (CONTROLLED_FILES): Added ChangeLog-98a and - ChangeLog-97b into release. Thanks to Ivan Murphy - <Ivan.Murphy@med.siemens.de> for pointing this out. - -Tue Jun 30 00:51:32 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.19 released. - -Tue Jun 30 00:07:39 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * examples/Service_Configurator/Misc/main.dsp: Added macro - definition ACE_SVC_HAS_DLL=0 in this project. DLL linkage is - not used in this example (yet.) Thanks to Joe Covalesky - <joe@nowsol.com> for noticing this. - -Mon Jun 29 21:16:39 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.cpp (invoke): wrapped final return with ACE_NOTREACHED. - "It's the right thing to do." - -Mon Jun 29 19:42:12 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Timeprobe_T.cpp (ACE_Timeprobe): Changed __TEXT to ASYS_TEXT. - -Mon Jun 29 14:48:58 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.h: Added UNICODE macros for non-Win32 platforms. Thanks - to Jeff Greif <jmg@trivida.com> for pointing this out. - - * ace/OS.cpp (invoke): Added a return at the end to keep AIX - happy. Thanks to CLahey@cccis.com for reporting this. - -Mon Jun 29 11:37:28 1998 Steve Huston <shuston@riverace.com> - - * ace/ACE.cpp: Added a 'const' to initialized ASYS_TCHAR * - string - literal conversion to char * is deprecated in C++. - -Sun Jun 28 22:16:51 1998 David L. Levine <levine@cs.wustl.edu> - - * examples/Service_Configurator/Misc/main.cpp (main): removed - argc declaration because it was unused. - - * examples/Threads/task_five.cpp (work): added - ACE_UNUSED_ARG (stack_size). - - * ace/Message_Queue_T.h: fully qualify the DEFAULT_[HL]WM - references so that it will compile with aCC 1.07 on HPUX 10.20. - Thanks to Avi Nash <anash@RedBrick.COM> for reporting this - problem. - - * acer/Message_Queue.{h,cpp} (ACE_Message_Queue_Vx:enqueue_head/tail): - implement these for VxWorks. enqueue_head_i just calls - enqueue_tail_i. - -Sat Jun 27 18:13:05 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Timeprobe_T.cpp (ACE_Timeprobe - copy constructor): Stupid - MSVC is forcing me to define this and make it public; it should - really be protected; please don't use it. - - * ace/Timeprobe.h: Added ACE_SINGLETON_DECLARATION; otherwise all - compilation units would get a different instantiation of the - time probe class. Also, changed ACE_TIMEPROBE_SINGLETON to a - #define instead of a typedef; otherwise the compiler bitched - when it was use in ACE_SINGLETON_DECLARATION. - - * SINGLETON_INSTANTIATION: Removed this flag from all files in - ACE. It is causing duplicate declaration errors. - -Sat Jun 27 11:29:50 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.18 released. - -Sat Jun 27 11:27:28 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Basic_Types.h: use ACE_CAST_CONST instead of const in - ACE_CU64_TO_CU32. - -Sat Jun 27 11:03:52 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * README: Updated the list of people who have contributed to TAO. - -Sat Jun 27 07:07:43 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.17 released. - -Sat Jun 27 00:27:29 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Timeprobe: - - - Added back ACE_COMPILE_TIMEPROBES. David pointed out that - without this flag, size of ACE increases even when time probes - are not being used. Therefore, users must compile ACE with - this flag defined if they want to use time probes. This can - be achieved by doing one of the following: - - . Use make probe = 1, if you are using the make utility. - - . Define ACE_COMPILE_TIMEPROBES in config.h - - . Define ACE_COMPILE_TIMEPROBES in the VC project file. - - . Other regular methods will also work. - - It is not necessary to define ACE_COMPILE_TIMEPROBES when - using time probes, you simply need ACE_ENABLE_TIMEPROBES. You - can use the ACE_TIMEPROBE_* macros to program the time probes, - and use the ACE_ENABLE_TIMEPROBE to enable the time probes. - If you define ACE_ENABLE_TIMEPROBE in your code, but forget to - compile ACE with ACE_COMPILE_TIMEPROBES, you will end up with - linker errors. - - Remember that ACE_COMPILE_TIMEPROBES means that the ACE - library will contain code for time probes. This is only - useful when compiling ACE. ACE_ENABLE_TIMEPROBES means that - the ACE_TIMEPROBE_* macros should spring to life. - - - Added inclusion of OS.h. This way the ACE_COMPILE_TIMEPROBES - can be specified in the config file. - - * include/makeinclude/wrapper_macros.GNU: probe = 1 no longer - means ACE_ENABLE_TIMEPROBE. It only means - ACE_COMPILE_TIMEPROBES. This was changed because defining - ACE_ENABLE_TIMEPROBE here is too broad. ACE_ENABLE_TIMEPROBE is - cleverly designed so that it allows only some time probes to be - enabled (where ACE_ENABLE_TIMEPROBE is defined), while others to - be disabled (where ACE_ENABLE_TIMEPROBE is not defined). - - Example: IDL_Cubit time probes can be enabled without enabling - TAO time probes. Or TAO time probes can be enabled without - enabling IDL_Cubit time probes. TAO time probes are controlled - through TAO/tao/Timeprobes.h. - - * tests/Timeprobe_Test.cpp: - - - Defining ACE_ENABLE_TIMEPROBES is not forced. Users can - uncomment this at the top of the file. This relieves us from - trying to include the symbols of ACE_Timeprobes from ACE if - ACE was compiled without using ACE_COMPILE_TIMEPROBES (the - #include ace/Timeprobe.cpp trick did not work on all 8 - different ways of compiling ACE on NT). - - - Made the registration of the description arrays similar to the - real use cases (in TAO). - - - Introduced enums and took the magic numbers out. - -Fri Jun 26 20:37:06 1998 Matthew J Braun <mjb2@cec.wustl.edu> - * tests/Logger/clnt.h - * tests/Logger/clnt.cpp - * tests/Logger/svr.cpp - * orbsvcs/orbsvcs/Log/Logger_i.h - * orbsvcs/orbsvcs/Log/Logger_i.cpp - * orbsvcs/orbsvcs/Logger.idl - - The current status of this is incomplete. The svr* test is guaranteed - to be nonfunctional (I cannot yet speak for the rest). - - -Fri Jun 26 14:52:33 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/test_config.h: Don't close the ofstream before opening the - log stream in ACE_APPEND_LOG on Win32. It it not necessary - because Win32 doesn't have fork anyway and it somehow confuses - Win32 (becuase no file was openen at that point.) - - * performance-tests/Makefile: Temporarily removed Synch-Benchmark - from the targets. It should be added back once the work is - done. - -Fri Jun 26 11:50:03 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.h: map ACE_dynamic_cast to static_cast with Sun C++, - without RTTI, to avoid warning about using dynamic_cast - without RTTI. Thanks to J. Russell Noseworthy - <rnosewor@objectsciences.com> for reporting this. - - * include/makeinclude/wrapper_macros.GNU,ACE-INSTALL.html: - added rtti make option. - - * ace/Message_Queue.*: on VxWorks, added ACE_Message_Queue_Vx, - which wraps native VxWorks messages queues. See the header - file for limitations. - - * ace/Message_Queue_T.*,Makefile: split Message_Queue into - template and non-template files. - - * ace/Basic_Types.h: added ACE_CU64_TO_CU32 conversion macro, - for converting const ACE_UINT64 to const ACE_UINT32. The old - ACE_U64_TO_U32 wouldn't work with Sun C++'s ANSI casts. - - * performance-tests/Misc/basic_perf.cpp (per_iteration): use - ACE_CU64_TO_CU32 for narrowing the const ACE_UIN64 argument. - - * ace/config-sunos5.5.h: added ACE_HAS_ANSI_CASTS with Sun C++ 4.2. - - * include/makeinclude/platform_sunos5_sunc++.GNU: added - -features=castop to CCFLAGS, to enable use of ANSI casts. - - Thanks to J. Russell Noseworthy <rnosewor@objectsciences.com> - for recommending the above two changes. - - * include/makeinclude/platform_sunos5_sunc++.GNU: Added - support for rtti=1 option to make, to optionally enable RTTI. - -Fri Jun 26 11:39:49 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ACE-INSTALL.html: Added more infomation in {Free,Net}BSD. - -Fri Jun 26 10:51:07 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/OS.h: - Fixed problem in ACE_DES_* macros, some preprocessors were - tokenizing ::~CLASS as ":: ~CLASS" and we wanted ":: ~ CLASS" - (were class in a macro argument). - -Fri Jun 26 09:48:55 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * VERSION: Updated this file to direct bug reports to - the ACE mailing list. - -Fri Jun 26 10:43:02 EET DST 1998 Wei Chiang <wei.chiang@ntc.nokia.com> - - * ace/CLASSIX/CLASSIX_OS.cpp: - ACE_CLASSIX_OS::ACE_CLASSIX_OS() - After created an CLASSIX reactor as an actor-wide singleton - reactor, delete the original reator singleton, if any. - -Fri Jun 26 02:18:05 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * performance-tests/Synch-Benchmarks/Benchmark[_Base].{h,cpp}: - * performance-tests/Synch_Benchmarks/Makefile: Added a new class - Benchmark_Base so we can not only load the test items - but also the test methods dynamically. - -Wed Jun 24 21:37:22 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Message_Queue.cpp (refresh_queue): fixed syntax - error: extraneous ;. - -Wed Jun 24 19:52:30 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/IPC_SAP.cpp (enable,disable): Fixed #define nesting. - -Wed Jun 24 15:36:18 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * examples/ASX/Event_Server/Event_Server/Peer_Router.cpp - (Peer_Router_Context): For some reason, MSVC can't grop the - temporary objects. Therefore, I changed the ACE_INET_Addr object - in the constructor to a local variable. - -Wed Jun 24 17:10:06 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Timeprobe: Removed ACE_COMPILE_TIMEPROBE. ACE library will - always contain ACE_Timeprobe code. - -Wed Jun 24 16:20:02 1998 James CE Johnson <jcej@lads.com> - - * ace/IOStream.cpp (underflow,overflow): added protection against - errors, when get/put buffers can be set to 0. - -Wed Jun 24 14:42:50 1998 Chris Gill <cdgill@cs.wustl.edu> - - * ace/Message_Queue.{cpp,h}: added =TITLE/=DESCRIPTION - and method comments to ACE_Message_Queue_Factory - - * ace/Message_Block.h: fixed comment in ACE_Laxity_Message_Strategy - -Wed Jun 24 13:35:15 1998 Chris Gill <cdgill@cs.wustl.edu> - - * ace/Message_Queue.{cpp,h,i} - ace/Message_Block.{cpp,h,i}: Fixed ACE_UNIMPLEMENTED_FUNC - declarations in ACE_Dynamic_Message_Queue, moved the - ACE_Dynamic_Message_Strategy, ACE_Laxity_Message_Strategy, - and ACE_Deadline_Message_Strategy classes from the - Message_Queue.* files into the respective Message_Block.* - files (fixes link errors on platforms such as NT which - require template source). - -Wed Jun 24 11:38:00 1998 Chris Gill <cdgill@cs.wustl.edu> - - * ace/Message_Block.{cpp,h,i}: Added worst case execution time and - deadline absolute time ACE_Time_Value members to ACE_Message_Block. - These default to ACE_Time_Value::zero in the constructors and - initialization methods. - - * ace/Message_Queue.{cpp,h,i}: Added ACE_Dynamic_Message_Queue, - ACE_Dynamic_Message_Strategy, ACE_Deadline_Message_Strategy, - ACE_Laxity_Message_Strategy, and ACE_Message_Queue_Factory - classes to facilitate adaptive use of statically or dynamically - prioritized message queues. - -Wed Jun 24 10:23:27 1998 David L. Levine <levine@cs.wustl.edu> - - * bin/make_release: 1) inserted /pkg/gnu/bin at head of - PATH, if it exists. That way, cvs diff will use GNU diff. - Thanks to Doug for tripping over that. - 2) changed grep -E to egrep. - - * ace/OS.i,gethrtime.cpp (gethrtime): with Pentium and g++ or ghs, - only; fixed load of 64-bit tick count into two 4-byte ints. - - * performance-tests/Misc/basic_perf.cpp (iteration_time): check - for elapsed_time_ less than empty_iteration_time_, and return 0 - if so. - -Wed Jun 24 10:02:14 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/ASX/Event_Server/Transceiver/transceiver.cpp - (parse_args): Fixed a warning about control reaching the end of - a method. Thanks to David Levine for reporting this. - - * .cvsignore: Added "build" to make CVS happy. Thanks to - David for this info. - - * ace/CLASSIX: Reran "make depend." - - -Wed Jun 24 13:34:32 EET DST 1998 Wei Chiang <chiang@horizon.ntc.nokia.com> - - * tests/CLASSIX/* - Attached "CLASSIX_" to all the file names in this directory - Added Imakefile - - * ace/CLASSIX/CLASSIX_Select_Reactor.* - test/CLASSIX/CLD_Connector_Test.cpp - get_current_info() is now renamed to current_info() in compliant - with ACE_Reactor_Impl class. - -Wed Jun 24 08:17:25 EET DST 1998 Wei Chiang <chiang@horizon.ntc.nokia.com> - - * Renamed ace/CLASSIX/CLASSIX_Reactor.* to - ace/CLASSIX/CLASSIX_Select_Reactor.* and adujsted other files - accordingly. - - * ace/CLASSIX/CLASSIX_Reactor.* - make naming reference consistenet: all the references to - ACE_CLASSIX_Reactor are now to ACE_CLASSIX_Select_Reactor - -Wed Jun 24 02:39:35 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.16 released. - -Wed Jun 24 00:00:44 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/ASX/Event_Server/Transceiver/transceiver.cpp: Cleaned - up the Event_Transceiver code a bit. - - * examples/ASX/Event_Server/Event_Server/event_server.cpp (main): - Cleaned up the code a bit. - - -Wed Jun 24 06:54:00 EET DST 1998 Wei Chiang <chiang@horizon.ntc.nokia.com> - - * Attached "CLASSIX_" to all the file names in ace/CLASSIX. - - * Modified include statments in ace/CLASSIX/* to reflect the - name changes. - - * Added Makefile in ace/CLASSIX - - * ace/CLASSIX/CLASSIX_Reactor.h: - ACE_CLASSIX_Reactor_Notify is now derived from ACE_Reactor_Notify - The private data member, select_reactor_, is now an - ACE_CLASSIX_Reactor class instead of an ACE_Select_Reactor class. - - * ace/CLASSIX/CLASSIX_Reactor.cpp: - in open() - uses ACE_dynamic_cast() to cast <theReactor> - parameter from ACE_Reactor_Impl to ACE_CLASSIX_Reactor - -Tue Jun 23 22:18:42 1998 Douglas C. Schmidt <schmidt@cumbia.cs.wustl.edu> - - * examples/Mem_Map/file-reverse/file-reverse.cpp: Fixed a minor - bug where the program would ungraciously core dump if the file - given on the command-line doesn't exist. Thanks to William - S. Lear <rael@dejanews.com> for reporting this. - -Tue Jun 23 20:33:30 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Synch.h (ACE_Adaptive_Lock): Added ACE_Export. - -Tue Jun 23 18:59:31 1998 Steve Huston <shuston@riverace.com> - - * ace/Acceptor.cpp (ACE_Strategy_Acceptor<>::resume()): Don't - suspend() the object; resume() it - looked like a cut/paste error. - -Tue Jun 23 16:41:35 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Synch.{h,cpp} (class ACE_Adaptive_Lock): Added the new Lock - class which allows its subclass to determine the actual locking - mechanism it uses at run time. Notice that all subclasses must - provide their own contructor/destructor implementation. - -Tue Jun 23 06:40:35 1998 David L. Levine <levine@cs.wustl.edu> - - * examples/Map_Manager/test_hash_map_manager.cpp (main): - replaced use of cerr with and ACE_ERROR_RETURN. Thanks - to Philippe Klein <Philippe_Klein@vocaltec.com> for reporting - this. - - * netsvcs/clients/Naming/Dump_Restore/Dump_Restore.cpp: - added #include of ace/streams.h. Thanks to Philippe Klein - <Philippe_Klein@vocaltec.com> for reporting this. - - * tests/TSS_Test.cpp (worker): declare "u" globally so that - we don't quickly run out of TSS keys. - -Mon Jun 22 09:25:32 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/XtReactor.cpp: - The notify_handler_ is a pointer now, it was still deferenced as - an object. - -Mon Jun 22 09:04:21 1998 David L. Levine <levine@cs.wustl.edu> - - * include/makeinclude/platform_osf1_4.0.GNU: removed suppression - of warning 340, used reference to copied (temporary) value, - because it's no longer needed. - - * ace/Message_Queue.cpp (ACE_Message_Queue_Iterator ctor): - replaced "queue" with "q" to avoid problems with STL or on - platforms that #define queue. Thanks to Dave Meyer - <dmeyer@std.saic.com> for reporting this. - - * ace/Synch_T.h: added adapter class ACE_TSS_Type_Adapter. - It adapts built-in types for use with ACE_TSS. - - * tests/TSS_Test.cpp: demonstrate/test use of ACE_TSS_Type_Adapter. - - * ace/Timeprobe.h: added semicolon to end of - ACE_TIMEPROBE_EVENT_DESCRIPTIONS definition, when it's non-null. - - * tests/Timeprobe_Test.cpp (main): removed trailing semicolon - from ACE_TIMEPROBE_EVENT_DESCRIPTIONS, and added ACE_UNUSED_ARGs - to avoid compilation warnings about unused variables. - -Mon Jun 22 04:49:29 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * man/windex: Removed ACE_Service_Record from all the - documentation since it is no longer relevant. Thanks - to Ivan Murphy for reporting this. - -Mon Jun 22 02:59:42 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Process.cpp (setenv_i): Nedd to adjust the memory size to - the actual string size. - -Mon Jun 22 02:32:56 1998 Gonzalo Diethelm <gonzo@tango.cs.wustl.edu> - - * ace/Thread_Manager.h: - * ace/Thread_Manager.cpp: - * ace/Thread_Manager.i: - * ace/OS.cpp (uname): - Moved a few things (comparison operators) from - ACE_Thread_Descriptor to ACE_Thread_Descriptor_Base, to satisfy - Borland compilers. - Enabled a conditional compilation for all Borland compilers. - Thanks to Valik Solorzano Barboza <valik@xs4all.nl> for pointing - these things out. - -Mon Jun 22 01:14:36 1998 Gonzalo Diethelm <gonzo@tango.cs.wustl.edu> - - * ace/ACE.bpg: - * ace/ACED.bpr: - * ace/ACER.bpr: - Contained ^M characters. - I also made sure there were no absolute paths pointing to "gonzo" - directories... - - * ace/ACED.cpp: - * ace/ACER.cpp: - Added Stats.cpp as a module in the right place. - - * ace/OS.h: - Added a ACE_NOOP macro to avoid compilation warnings when "if" is - used as a noop in certain macros. - - * ace/Hash_Map_Manager.cpp: - * ace/Map_Manager.cpp: - Replaced the use of "if" as a noop with ACE_NOOP. - - * ace/Signal.cpp: - For some obscure reason, Borland needs a blank line between the - #if and the extern "C" void ace_sig_handler_dispatch() - definition. Don't ask... - - * ace/Asynch_IO.h: - Changed (again) inheritance for ACE_Asynch_Result from protected - to public. - - * tests/Aio_Platform_Test.bpr: - * tests/Atomic_Op_Test.bpr: - * tests/Barrier_Test.bpr: - * tests/Basic_Types_Test.bpr: - * tests/Buffer_Stream_Test.bpr: - * tests/Conn_Test.bpr: - * tests/Enum_Interfaces_Test.bpr: - * tests/Env_Value_Test.bpr: - * tests/Future_Test.bpr: - * tests/Handle_Set_Test.bpr: - * tests/Hash_Map_Manager_Test.bpr: - * tests/IOStream_Test.bpr: - * tests/MM_Shared_Memory_Test.bpr: - * tests/MT_Reactor_Timer_Test.bpr: - * tests/MT_SOCK_Test.bpr: - * tests/Map_Manager_Test.bpr: - * tests/Mem_Map_Test.bpr: - * tests/Message_Block_Test.bpr: - * tests/Message_Queue_Notifications_Test.bpr: - * tests/Message_Queue_Test.bpr: - * tests/Naming_Test.bpr: - * tests/Notify_Performance_Test.bpr: - * tests/OrdMultiSet_Test.bpr: - * tests/Pipe_Test.bpr: - * tests/Priority_Buffer_Test.bpr: - * tests/Priority_Reactor_Test.bpr: - * tests/Priority_Task_Test.bpr: - * tests/Process_Mutex_Test.bpr: - * tests/Process_Strategy_Test.bpr: - * tests/Reactor_Exceptions_Test.bpr: - * tests/Reactor_Notify_Test.bpr: - * tests/Reactor_Performance_Test.bpr: - * tests/Reactor_Timer_Test.bpr: - * tests/Reactors_Test.bpr: - * tests/Reader_Writer_Test.bpr: - * tests/Recursive_Mutex_Test.bpr: - * tests/SOCK_Connector_Test.bpr: - * tests/SOCK_Test.bpr: - * tests/SPIPE_Test.bpr: - * tests/SString_Test.bpr: - * tests/SV_Shared_Memory_Test.bpr: - * tests/Semaphore_Test.bpr: - * tests/Service_Config_Test.bpr: - * tests/Sigset_Ops_Test.bpr: - * tests/Simple_Message_Block_Test.bpr: - * tests/TSS_Test.bpr: - * tests/Task_Test.bpr: - * tests/Thread_Manager_Test.bpr: - * tests/Thread_Mutex_Test.bpr: - * tests/Thread_Pool_Test.bpr: - * tests/Time_Service_Test.bpr: - * tests/Time_Value_Test.bpr: - * tests/Timer_Queue_Test.bpr: - * tests/Tokens_Test.bpr: - * tests/UPIPE_SAP_Test.bpr: - * tests/tests.bpg: - Contained ^M characters. - I also made sure there were no absolute paths pointing to "gonzo" - directories... - -Mon Jun 22 01:33:12 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.h (ACE_SYNCH_{1,2}): These two macros were added back for - backward compatibility. - -Mon Jun 22 01:12:53 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/OS.i (dlerror): Just use FormatMessageA instead of - FormatMessage. The you don't have to worry about UNICODE being - turned on. - -Mon Jun 22 00:01:02 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.15 released. - -Sun Jun 21 23:54:28 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/config-freebsd-pthread.h: Defined - ACE_LACKS_MUTEXATTR_PSHARED and ACE_LACKS_CONDATTR_PSHARED. - -Sun Jun 21 10:14:32 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/IPC_SAP/SOCK_SAP/CPP-unserver.cpp (server): Fixed - another ambiguity caused by the recent SOCK_IO changes. Thanks - to David for pointing this out. - -Sun Jun 21 00:16:56 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.i (dlerror): Have to treat UNICODE differently because - FormatMessage takes wchar when UNICODE is defined. - - * ace/WFMO_Reactor.{h,i,cpp}: Changed the parent class of - ACE_WFMO_Reactor_Notify from ACE_Event_Handler to - ACE_Reactor_Notify. - (dump): Added this virtual function implementation for - ACE_WFMO_Reactor_Notify. - - * Ace/Proactor.cpp (timeout): Fixed a typo. - -Sat Jun 20 16:51:39 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Reactor*: Made a slew of changes to the Reactor and it's - associated implementations so that we can integrate it - seamlessly with Chorus ClassiX IPC. Thanks to Wei Chiang for - these changes. - - * ace/Acceptor.cpp: Added a flag that keeps track of whether we should - use select() in the Acceptor. This makes it easier to integrate - this stuff with Chorus IPC. Thanks to Wei Chiang for this. - - * examples/IPC_SAP/SOCK_SAP/CPP-inclient.cpp: Removed the trailing - 0 to the send() operation to (1) avoid overload ambiguity and - (2) to use write() rather than send()! Thanks to Chris Healey - for reporting this. - - * ace/ACE: The default condition in the select switch in the - enter_*_timed_wait functions assumed that all values returned - from select if not 0 or 1 will be -1. This is true in those - functions due to only 1 file descriptor flag being set. Thanks - to Chris Healey for generalizing this a bit... - - * ace/SOCK_IO: Added the wrappers for the "non-flags" version of - timed send()/recv(). Thanks to Chris Healey for this. - - * ace/FILE_Addr.cpp: Cleaned up the code a bit to be more - consistent. Thanks to Chris Healey for suggesting this. - - * ace/FILE_Addr.cpp (ACE_FILE_Addr): Removed the memset() in the - constructor since this is overkill... - - * ace/ACE.cpp (send_n): Fixed a dump cut&paste bug in the timed - version of send_n(). Thanks to Chris Healey - <chealey@entera.com> for reporting this. - -Sat Jun 20 14:58:21 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * bin/indent_macros.perl: Instead of hardcoding perl's location in - the script, it now invokes perl according to user's environment - setting. Thanks to David for providing the improvement. - -Sat Jun 20 01:24:28 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * include/makeinclude/platform_freebsd_pthread.GNU: Changed to use - -Wall to report all warnings. - - * ace/OS.cpp (thr_create): Specify <priority> as an unused - argument when ACE_LACKS_SETSCHED. - - * ace/OS.{h,i,cpp}: Rearrange macro indentations. - - * bin/indent_macros.perl: This little perl script rearrange the - indentation of macros so they are a bit easier to debug. - - * ace/config-freebsd-pthread.h: Defined ACE_LACKS_PTHREAD_CANCEL. - -Sat Jun 20 00:14:07 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * examples/Reactor/Proactor/test_proactor_with_aio.cpp: Test - program for the Asynch_Transmit_File, Asynch_Read_File, - Asynch_Read_Stream, Asynch_Write_File and Asynch_Write_Stream. - -Fri Jun 19 23:58:35 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - * ace/Proactor.h : - * ace/Proactor.cpp : - * ace/Asynch_IO.h : - * ace/Asynch_IO.cpp : - - Implemented Asynch_Transmit_File for POSIX4 systems. - - Added a new class "ACE_Asynch_Transmit_Handler", which is - an auxillary handler class for Asynch_Transmit_File. This - does the actual transmission doing file read and stream - write asynchronously and finally calling the - transmit_handler in the application. - - Aiocb list is now of size RTSIG_MAX, the maximum number - of RT signals that can be queued in a process at a time. - -Fri Jun 19 22:17:35 1998 David L. Levine <levine@cs.wustl.edu> - - * bin/make_release (check_workspace): use cvs checkout instead - of update, to notice any new directories that have been added - to the repository but not to the workspace. - - There are .cvsignore files in /project/adaptive/ACE_wrappers - and /project/adaptive/ACE_wrappers/java. They can be used - to suppress tripping over any new, uncontrolled files, such - as releases, that are added to these directories. - - Filter ^U from checkout output, so that release need not be - based on the latest repository versions. Instead, the release - is based on the contents of the /project/adapative/ACE_wrappers - workspace. It need not be brought up-to-date with the repository, - though it cannot contain any modified files. This change allows - other users to continue to check in files prior to or during the - release. - - * examples/IPC_SAP/SOCK_SAP/CPP-inclient.cpp (read): added - ACE_UNUSED_ARG (len). - - * Makefile: fixed build of .obj/gethrtime.o with ghs/VxWorks/i86. - - * tests/run_tests.vxworks: added Timeprobe_Test, but commented - out. That test page faults when built with ghs for Pentium. - It appears that the STL-style iterator usage in ACE_Timeprobe - isn't handled properly by the compiler. - -Fri Jun 19 16:51:05 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/config-freebsd-pthread.h (ACE_HAS_NONCONST_MSGSND): Macro - definition added. - - * ace/OS.i (sigwait): Suppress compiler warnings on FreeBSD. - (msgsnd): Separated the case ACE_HAS_NONCONST_MSGSND out. - - Thanks to Russell L. Carter <rcarter@consys.com> for reporting - the above fix. - -Fri Jun 19 11:22:27 1998 David L. Levine <levine@cs.wustl.edu> - - * ACE version 4.5.13 released. - -Thu Jun 18 21:14:25 1998 David L. Levine <levine@cs.wustl.edu> - - * examples/Threads/task_five.cpp: renamed global stack_size - to default_stack_size, to avoid shadowing by stack_size in - main (). - - * ace/OS.i (dlopen): added support for ACE_HAS_SGIDLADD. - (dlerror): on WIN32, return a formatted message instead of 0. - Thanks to Kent Watsen <kent@watsen.net> for the diffs. - - * ace/config-irix6.x-sgic++-nothreads.h: added ACE_HAS_SGIDLADD. - Thanks to Kent Watsen <kent@watsen.net> for this addition. - - * Makefile: ACE-INSTALL is not a .PHONY target. - - * ace/Makefile: only regenerate Svc_Conf_[ly].cpp if at Wash. U. - -Thu Jun 18 20:46:46 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * performance_tests/Misc/childbirth_time.cpp: Changed to use the - variable MULTIPLY_FACTOR in statistic calculation. - - * ace/config-freebsd-pthread.h: Added the following definition: - #define ACE_HAS_SIGINFO_T - #define ACE_LACKS_SIGINFO_H - #define ACE_LACKS_UCONTEXT_H - #define ACE_LACKS_SI_ADDR - - * include/makeinclude/platform_freebsd_pthread.GNU: Changed to - invoke linker directly using g++. Added -pthread flag for - linker. This implies programs will link against libc_r - automatically now. Removed -lc_r. Other minor changes. - - Thanks very much for lots of help from FreeBSD team esp. Amancio - Hasty <hasty@rah.star-gate.com> and John Birrell - <jb@cimlogic.com.au>. - -Thu Jun 18 19:32:30 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Token.cpp (dump): commented out print of owner_. Is - there a portable way to print an ACE_thread_t via ACE_DEBUG? - -Thu Jun 18 18:46:00 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/Timeprobe.h: - * ace/Timeprobe_T.h: - * ace/Timeprobe_T.cpp: - Added methods to print the absolute values, this can be used to - mix the results of several processes: por example on Sparcs the - high-res timer is a CPU register so the value is consistent - across processes, there are some potential problems with - multiple CPUs, but that's not our case. - -Thu Jun 18 16:25:28 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * examples/Threads/task_five.cpp (main): Extracted out the body of - the test loop so that the delete[] gets called everytime the - body gets executed. - - * ace/Thread_Manager.cpp (ACE_EXECUTE_OP,kill): We need to guard - against non-existing target thread after searching the thread - table. Thanks to Savas Parastatidis - <Savas.Parastatidis@ncl.ac.uk> for noticing the problem. - -Thu Jun 18 09:23:39 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/config-win32-common.h: Fixed the inclusion of winsock - related files. Thanks to Ernesto Guisado - <eguisado@saincotrafico.com> for suggesting this. - -Wed Jun 17 22:47:50 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.i (rw_trywrlock_upgrade): moved declaration of - local "result" before the ACE_PTHREAD_CLEANUP_PUSH. - PTHREAD_CLEANUP_PUSH/POP are macros that contain open/ - close braces on some platforms. So, any declarations - between them are not visible after the POP. - -Wed Jun 17 19:01:53 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - The following changes provide an interface for ACE programmers - of more finer control over how Win32 structured exceptions are - handled. Thanks to Detlef Becker <Detlef.Becker@med.siemens.de> - for contemplating the idea and passing it to us. - - * ace/Log_Msg.{h,cpp} (seh_except_{selector,handler}): Added - new methods to retrieve/set structured exception handling - behavior. <Selector> is used to determine the "proper" action a - thread should take upon a structured exception and <handler> - performs the actual exception handling routine. They are - structured as below in ace_thread_adapter: - - __except (ACE_LOG_MSG->seh_except_selector () (0)) - { - ACE_LOG_MSG->seh_except_handler () (0); - } - - * ace/OS.{h,cpp} (ACE_SEH_EXCEPT_HANDLER): New typedef used to - define user win32 structured exception handler. - - (ACE_SEH_Exception_{Selector,Handler}): Default structured - exception handler. Two handlers ACE_Log_Msg are initialized to - them by default. - - (ACE_Thread_Adapter,inherit_log_msg): Added initializing and - inheriting code to pass the spawning thread's structured - exception handling behaviors. - - * ace/config-win32-common.h - (ACE_SEH_DEFAULT_EXCEPTION_HANDLING_ACTION): This macro defines - the default action taken by ACE when a win32 structured - exception occurs. It is by default defined to - EXCEPTION_CONTINUE_SEARCH, which does not handle the exception - but simply pass the exception out. Users can overwrite the - default behavior by defining the macro in their config.h files. - -Wed Jun 17 17:30:11 1998 Michael Kircher <mk1@cs.wustl.edu> - - * ace/OS.h: Added a condition variable and a flag to - the definition of reader/writer locks. - - * ace/OS.i: Implemented ACE_OS::rw_trywrlock_upgrade properly - using one condition variable and a flag. The condition - variable is used to get in front of all the possible - waiting writers and to wait on still working readers - on the rw_lock. The flag is used to indicate, that - a reader is upgrading its lock. rw_unlock obeys one more - case now. - - * ace/OS.cpp: The constructor for the Reader/writer locks - has changed slightly to initialize and destroy the - new members. - - * tests/Reader_Writer_Test.cpp: Added the use of the - rw_mutex.tryacquire_write_upgrade () method to the test. - -Wed Jun 17 07:34:11 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/IOStream_Test.cpp (server): fixed sign of constant - used to check for valid double. Thanks to Mark Kettner - <m.kettner@elsevier.nl> for reporting this. - - * performance-tests/UDP/udp_test.cpp: added a few - ACE_U64_TO_U32 explicit conversions. - - * tests/Priority_Buffer_Test.cpp (consumer): re-enabled the - statement to suppress the ghs warning about unused variable - cur_priority. - -Tue Jun 16 20:29:32 1998 Steve Huston <shuston@riverace.com> - - * ACE-INSTALL.html: Added some comments concerning MSVC 5.0 and SP3. - Thanks to Bill Fulton for the excellent detective work. - -Tue Jun 16 16:08:23 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Timeprobe_T.h (class ACE_Timeprobe): Fixed copy constructor - signature. Thanks to Chuck R. Gehr - (GehrCR@LOUISVILLE.STORTEK.COM) for pointing this out. - -Tue Jun 16 16:18:08 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/FILE_Addr.cpp (operator=): Check to make sure we - NUL-terminate the memcpy'd filename correctly. Thanks to Istvan - Buki <ibuki@fedex.com> for reporting this. - -Tue Jun 16 15:43:55 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ACE-INSTALL.html: Changed to instruct users to #include - "ace/config-win32.h" instead of "config-win32.h" directly. - Thanks to Gonzo <gonzo@ing.puc.cl> for noticing this. - -Tue Jun 16 10:33:20 1998 David L. Levine <levine@cs.wustl.edu> - - * os-patches/linux-patches.html: added RedHat 5.1 success - report from Chanaka Liyanaarachchi <chanakal@ittc.ukans.edu>. - - * ace/Basic_Types.h,High_Res_Timer.cpp, - performance-tests/Misc/basic_perf.cpp: - added explicit ACE_U64_TO_U32 conversion macro. WIN32's __int64 - and ACE_U_LongLong need an explicit narrowing to 32 bits. This - macro provides a consistent way to do that on all platforms. - - * ace/Asynch_IO.*: added trailing $ to CVS keyword string. - - * ace/Asynch_IO.cpp: fixed so that it will compile with Sun CC - on Solaris 2.6. Thanks to Frederic ANDRES <andres@rd.nacsis.ac.jp> - for reporting this. - - * ACE-INSTALL.html: updated Linux RedHat info. - -Mon Jun 15 23:17:27 1998 David L. Levine <levine@cs.wustl.edu> - - * Makefile: added os-patches/ to distribution. - -Mon Jun 15 23:07:45 1998 David L. Levine <levine@cs.wustl.edu> - - * ACE version 4.5.12 released. - -Mon Jun 15 13:58:17 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-chorus.h: replaced comment that said that the - config is for CHORUS using MIT threads with comment that says - that it uses the CHORUS POSIX threads interface. Thanks to - Leo Modica <lmodica@lucent.com> for questioning this, and Wei - Chiang for confirming it. - - * os-patches/linux-patches.html: updated glibc info. Thanks - to Bob Scott <bob_scott@broder.com> for pointing out the - glibc-2.0.7-7 is not available from sunsite. - -Sat Jun 13 13:10:05 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/XtReactor_Test.cpp: moved explicit template instantiations - inside ACE_HAS_XT, because the #includes are all inside - ACE_HAS_XT also. - - * tests/XtReactor_Test.cpp: without ACE_HAS_XT, replaced - ACE_ERROR_RETURN with ACE_ERROR. This makes it consistent - with other tests, and allows the following ACE_END_TEST - statement to be reached. - - * tests/Process_Mutex_Test.cpp (main): specify full path to - spawned children. Removed Solaris/i386-specific code because - it should no longer be needed now that the test is fixed by - specifying the full path. (acquire_release): removed printout - at top. - - * ACE+TAO.tgz,ACE.tgz,ACE-lib.tgz,FSU-threads.tgz: added these - symlinks to their corresponding .tar.gz files. Thanks to - Gonzo and Darrell for suggesting this. - - * ace/RB_Tree.i (clear): removed extraneous ";" following the - function definition. - - * ace/Process.cpp (spawn): added an ACE_DEBUG printout before each - call to ACE_OS::exit (). - - * ace/Synch_T.cpp: removed the #pragma define_template for - ACE_Condition<ACE_Mutex> on __osf__ with cxx. It's no longer - needed, and was causing multiply defined instantiations with - cxx 6.1. - -Fri Jun 12 17:04:14 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * ace/OS.h: Moved the #define's and typedef's (related to Proactor - stuff, things like TRANSMIT_BUFFERS etc) under '#if defined - (WIN32)' before OS.i. They were at the end of the file. - -Fri Jun 12 16:31:13 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu> - - * ace/OS.h: (ACE_NTOHL, ACE_HTONL): Added macros for conversion - between network and host byte order. Thanks to James Hu for - contributing these. - -Fri Jun 12 14:29:40 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/OS.i (sema_wait): Changed the code so that it always treats - the time value argument in absolute time, even for Win32. - Thanks to Chuck Gehr for reporting this. - -Fri Jun 12 14:12:25 1998 Carlos O'Ryan <coryan@swarm.cs.wustl.edu> - - * include/makeinclude/wrapper_macros.GNU: - The inclusion of the XtReactor is controlled on the - platform_macros file (or the command line). - Users simply type make xt_reactor=1 to enable this feature, or - set xt_reactor to 1 in the platform_macros.GNU file. - Some extra macros were added for platforms that require special - CPP, LD or libraries when linking against X/Windows. The macros - are described in this file. - The platforms that already had XtReactor compiled by default - still do. - - * ace/config-irix6.x-sgic++-nothreads.h: - * include/makeinclude/platform_irix6.x-sgic++.GNU: - Now the XtReactor configuration is controlled on the platform - file. - - * ACE-INSTALL.html: - Updated documentation for make flags. - - * tests/XtReactor_Test.cpp: - Fixed a few typos. - - * tests/Conn_Test.cpp: - Fixed some template instantiation pragmas. - -Thu Jun 11 22:05:31 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Process_Mutex_Test.cpp (main): kill children on - Solaris/i386 instead of waiting for them. (acquire_release): - added printout at top. It never appears, at least on - g++/Solaris/i386. - - * ace/Malloc.cpp (instance): wrap declaration of local "assertion" - with ifndef ACE_NDEBUG, to avoid warning about unused variable - with debug=0. - -1998-06-11 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * ace/Proactor.h (ACE_Proactor): Put insert_aiocb_list () under - ACE_HAS_AIO_CALLS so that it doesnt break in NT. - -Thu Jun 11 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * ace/OS.h: Added typedef's, #define's and #include's under the - definition ACE_HAS_AIO_CALLS for the proactor porting. - - * ace/config-sunos5.6.h: Defined ACE_HAS_AIO_CALLS for - solaris2.6. - - * ace/Asynch_IO.h: - * ace/Asynch_IO.cpp: Added aio call support for Asynch_Read_File. See - the code under #if defined (ACE_HAS_AIO_CALLS) - - * ace/Proactor.h: - * ace/Proactor.cpp: Added support for AIO calls in Proactor. See - the code under #if defined (ACE_HAS_AIO_CALLS) - - * examples/Reactor/Proactor/test_proactor_with_aio.cpp: The test - program for Proactor doing aio stuff. - -Thu Jun 11 13:34:26 1998 Darrell Brunsch <brunsch@cs.wustl.edu> - - * ace/OS.cpp: Made change to uname to use a different structure - if certain Borland compilers are being used. Thanks to - Valik Solorzano <valik@geodan.nl> for this fix. - - * bin/make_release: create .zip files in addition to .tar.gz files. - -Thu Jun 11 11:15:26 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/XtReactor.cpp: - The notify_handler_ open method requires an extra argument. - -Wed Jun 10 14:31:55 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Strategies_T.cpp (ACE_Recyclable ctors): reordered - initializers to match declaration order. - - * tests/Conn_Test.cpp: fixed template instantiations: - ACE_SYNCH_MUTEX instead of ACE_SYNCH_RW_MUTEX. - - * tests/XtReactor_Test.cpp (main): added ACE_UNUSED_ARGS for - argc and argv without ACE_HAS_XT. - -Wed Jun 10 12:34:25 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Strategies_T: Added two new template classes: ACE_Recyclable - and ACE_Hash_Recyclable. ACE_Recyclable adds a recyclable flag - to the class it is instantiated with. ACE_Hash_Recyclable - inherits from ACE_Recyclable and forces the class it is - instantiated with to have a hash() method. - - Also, the Hash_Addr was fixed so that it does not have the - recyclable flag anymore, since the Hash_Addr can be used even - when there is no recycling. - - Also updated the ACE_Cached_Connect_Strategy to reflect these - changes. - - * tests/Conn_Test.cpp: Fixed the template instantiations in lieu - of the changes to Hash_Addr. - -Wed Jun 10 11:05:39 1998 David L. Levine <levine@cs.wustl.edu> - - * bin/make_release: replaced ACE_wrappers-repository/ with - ACE_wrappers/ in diffs. Thanks to James Risinger <jrisinge@cgi.com> - for reporting this. - -Wed Jun 10 01:31:46 1998 Gonzalo Diethelm <gonzo@tango.cs.wustl.edu> - - * tests/Tokens_Test.cpp: - Changed how the Borland template instantiations are protected. - - * tests/XtReactor_Test.cpp: - test_config.h must be included before asking for ACE_HAS_XT. - Was missing the Borland non-sense. - - * tests/UPIPE_SAP_Test.cpp: - Protected the Borland template instantiations. - - * tests/Timeprobe_Test.cpp: - * tests/Time_Value_Test.cpp: - Added the Borland non-sense. - - * tests/Reactor_Timer_Test.cpp: - Added a couple of casts to avoid warnings. - - * tests/Priority_Buffer_Test.cpp: - Got rid of a (seemingly) useless piece of code. - - * tests/Naming_Test.cpp: - Modified a test so that it won't give warnings. - - * tests/Conn_Test.cpp: - Was missing the Borland non-sense. - Modified an #if-protected section to get rid of a warning. - Added a few extra Borland template instantiations. - - * ace/WFMO_Reactor.cpp: - * ace/SOCK_Dgram.cpp: - Under Borland, a couple of comparisons were always true (with a - warning) because of unsignedness. - - * ace/Malloc.cpp: - Assigned the consition of an assertion to a temporary variable to - avoid a misleading warning. - - * ace/Get_Opt.cpp: - Added an explicit comparison against 0 to avoid a warning. - - * ace/ACED.cpp: - * ace/ACER.cpp: - These files had been commited with ^M at the end of lines. - - * ace/ACE.cpp: - Changed a couple of run time checks for - ACE_DIRECTORY_SEPARATOR_CHAR into compile time tests; that got rid - of a couple of warnings under BCB3 (Borland C++ Builder 3.0). - - * ace/ACE.cpp: - * tests/Conn_Test.cpp: - Used ACE_NOTREACHED to avoid further warnings. - - * ace/OS.h: - Added Borland to the empty definition of ACE_NOTREACHED. - The definition of ACE_SEH_FINALLY for the case of Borland C++ - Builder 3.0 now uses __finally. This allowed most of the tests - that were hanging to complete ok. Thanks to David Tallman - <tallman@acsys.com> for pointing this out. - -Tue Jun 9 19:35:26 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/XtReactor: Integrated the new XtReactor, which should now - work for Windows NT! Thanks to Kirill Rybaltchenko - <Kirill.Rybaltchenko@cern.ch> for this. - - * tests: Added the new XtReactor_Test.cpp to test the features of - the XtReactor. Thanks to Kirill Rybaltchenko - <Kirill.Rybaltchenko@cern.ch> for this test. - -Tue Jun 09 16:18:54 1998 David L. Levine <levine@cs.wustl.edu> - - * Makefile: removed old release targets. They're no longer - used, or maintained. - - * include/makeinclude/platform_sunos5_x86_g++.GNU: removed. - Use platform_sunos5_g++.GNU instead, on both sparcs and x86. - -Tue Jun 09 15:25:13 1998 David L. Levine <levine@cs.wustl.edu> - - * ACE version 4.5.11 released. - -Tue Jun 9 14:59:15 1998 Darrell Brunsch <brunsch@cs.wustl.edu> - - * ace/OS.cpp: Made it so both Borland and Microsoft use the - x.wProcessorArchitecture structure for system info. - -Tue Jun 09 14:35:28 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Tokens_Test.cpp,UPIPE_SAP_Test.cpp: only need the - template instantiations with Borland C++. - - * bin/make_release: create version diffs, in background, - when creating releases. - -Tue Jun 09 12:50:49 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/ACE_Library.mak: Added Stats.cpp. - -Tue Jun 09 11:51:17 1998 Chris Gill <cdgill@tango.cs.wustl.edu> - - * tests/MM_Shared_Memory_Test: added a null pointer check so - test complains rather than crashing when shared allocator fails. - -Mon Jun 8 21:03:23 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/Select_Reactor.cpp (any_ready): Fixed a more unrighteous bug - where we were assigning the values in the wait_set_ rather than - the ready_set_. Thanks to Stefan Ericsson - <Stefan.Ericsson@osd.uab.ericsson.se> for reporting this bug. - -Mon Jun 8 19:15:38 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Malloc.h: - * ace/Malloc_Base.h (ACE_Allocator): Moved the definition of - abstract class ACE_Allocator from Malloc.h to a new file called - Malloc_Base.h to resolve a circular dependency among a bunch of - header files when compiling with UNICODE and inline enabled. - - * ace/SString.i: Changed to include "ace/Malloc_Base.h" to avoid - circular inclusion. - -Mon Jun 08 18:35:23 1998 Steve Huston <shuston@riverace.com> - - * ACE-INSTALL.html: Added some updated HP-UX info (and a pointer to - Riverace's HP-UX hints page) and removed the warning to not use - MSVC 5.0 SP3 - per results from ace-users discussions last week, - SP3 is getting used successfully. - -Mon Jun 08 13:22:47 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Basic_Types.h: set ACE_SIZEOF_LONG_DOUBLE to 12 if - LDBL_MAX_EXP is 16384 and LDBL_DIG is 18. Thanks to - Sree Oggu <dharani@sutmyn.com> for reporting this, on - SolarisX86 with Sun C++. - - * ace/Malloc.cpp (instance): cleaned up comments. - -Mon Jun 8 12:12:39 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * tests/UPIPE_SAP_Test.cpp: - Template instantiation was not using the ACE_SYNCH macros. - -Mon Jun 8 02:17:54 1998 Gonzalo Diethelm <gonzo@tango.cs.wustl.edu> - - * ACE-INSTALL.html: - Added a comment regarding the new port to Borland C++ Builder. - - * ace/ACE.bpg: - * ace/ACED.bpr: - * ace/ACED.cpp: - * ace/ACER.bpr: - * ace/ACER.cpp: - - - * ace/ACE.cpp: - Got rid of unused const int MAX_STRING_SZ = 4096. - - * ace/Asynch_Acceptor.cpp: - * ace/Asynch_IO.cpp: - * ace/Msg_WFMO_Reactor.cpp: - * ace/config-win32-common.h: - Replaced the use of _WIN32_WINNT with ACE_HAS_WINNT4. Borland C++ - Builder doesn't handle _WIN32_WINNT very well when building under - Win95. - - * ace/Asynch_IO.h: - Now ACE_Asynch_Result inherits publicly from OVERLAPPED; - otherwise, Borland C++ Builder refuses to access OVERLAPPED - members. I'm not sure who's right or wrong here. - - * ace/CORBA_Ref.h: - Added an #include "ace/ACE.h". - - * ace/Future.h: - Two cosmetic changes. - - * ace/LOCK_SOCK_Acceptor.cpp: - Added an #include /**/ "ace/LOCK_SOCK_Acceptor.h". - - * ace/Log_Msg.cpp: - Borland C++ Builder doesn't like extern int sys_nerr, so I - protected against it. - - * ace/OS.cpp: - A couple of hacks to handle FILETIMEs and SYSTEM_INFO structs, - which are defined a little different under Borland C++ Builder. - - * ace/OS.h: - Added support for Borland C++ Builder. - - * ace/OS.i: - Borland C++ Builder handles a few functions differently: close, - SetFilePointer, wfdopen. - - * ace/Synch_T.h: - A comment on an #else spanned several lines and mixed // and /**/ - styles; hard to read. - - * ace/TTY_IO.cpp: - A switch was not properly indented and, as a result, had an extra - break that made Borland C++ Builder complain. - - * ace/WFMO_Reactor.cpp: - Got rid of a couple of unused local variables called result. - - * ace/config-win32-common.h: - Added a few defines for Borland C++ Builder. Don't know if - this is the proper way to do it, but there it is. - - * tests/Aio_Platform_Test.bpr: - * tests/Atomic_Op_Test.bpr: - * tests/Barrier_Test.bpr: - * tests/Basic_Types_Test.bpr: - * tests/Buffer_Stream_Test.bpr: - * tests/Conn_Test.bpr: - * tests/Enum_Interfaces_Test.bpr: - * tests/Env_Value_Test.bpr: - * tests/Future_Test.bpr: - * tests/Handle_Set_Test.bpr: - * tests/Hash_Map_Manager_Test.bpr: - * tests/IOStream_Test.bpr: - * tests/MM_Shared_Memory_Test.bpr: - * tests/MT_Reactor_Timer_Test.bpr: - * tests/MT_SOCK_Test.bpr: - * tests/Map_Manager_Test.bpr: - * tests/Mem_Map_Test.bpr: - * tests/Message_Block_Test.bpr: - * tests/Message_Queue_Notifications_Test.bpr: - * tests/Message_Queue_Test.bpr: - * tests/Naming_Test.bpr: - * tests/Notify_Performance_Test.bpr: - * tests/OrdMultiSet_Test.bpr: - * tests/Pipe_Test.bpr: - * tests/Priority_Buffer_Test.bpr: - * tests/Priority_Reactor_Test.bpr: - * tests/Priority_Task_Test.bpr: - * tests/Process_Mutex_Test.bpr: - * tests/Process_Strategy_Test.bpr: - * tests/Reactor_Exceptions_Test.bpr: - * tests/Reactor_Notify_Test.bpr: - * tests/Reactor_Performance_Test.bpr: - * tests/Reactor_Timer_Test.bpr: - * tests/Reactors_Test.bpr: - * tests/Reader_Writer_Test.bpr: - * tests/Recursive_Mutex_Test.bpr: - * tests/SOCK_Connector_Test.bpr: - * tests/SOCK_Test.bpr: - * tests/SPIPE_Test.bpr: - * tests/SString_Test.bpr: - * tests/SV_Shared_Memory_Test.bpr: - * tests/Semaphore_Test.bpr: - * tests/Service_Config_Test.bpr: - * tests/Sigset_Ops_Test.bpr: - * tests/Simple_Message_Block_Test.bpr: - * tests/TSS_Test.bpr: - * tests/Task_Test.bpr: - * tests/Thread_Manager_Test.bpr: - * tests/Thread_Mutex_Test.bpr: - * tests/Thread_Pool_Test.bpr: - * tests/Time_Service_Test.bpr: - * tests/Time_Value_Test.bpr: - * tests/Timer_Queue_Test.bpr: - * tests/Tokens_Test.bpr: - * tests/UPIPE_SAP_Test.bpr: - * tests/tests.bpg: - Added these Borland C++ Builder project files. - - * tests/Aio_Platform_Test.cpp: - * tests/Atomic_Op_Test.cpp: - * tests/Barrier_Test.cpp: - * tests/Basic_Types_Test.cpp: - * tests/Buffer_Stream_Test.cpp: - * tests/Enum_Interfaces_Test.cpp: - * tests/Env_Value_Test.cpp: - * tests/Future_Test.cpp: - * tests/Handle_Set_Test.cpp: - * tests/Hash_Map_Manager_Test.cpp: - * tests/IOStream_Test.cpp: - * tests/MM_Shared_Memory_Test.cpp: - * tests/MT_Reactor_Timer_Test.cpp: - * tests/MT_SOCK_Test.cpp: - * tests/Map_Manager_Test.cpp: - * tests/Mem_Map_Test.cpp: - * tests/Message_Block_Test.cpp: - * tests/Message_Queue_Notifications_Test.cpp: - * tests/Message_Queue_Test.cpp: - * tests/Naming_Test.cpp: - * tests/Notify_Performance_Test.cpp: - * tests/OrdMultiSet_Test.cpp: - * tests/Pipe_Test.cpp: - * tests/Priority_Buffer_Test.cpp: - * tests/Priority_Reactor_Test.cpp: - * tests/Priority_Task_Test.cpp: - * tests/Process_Mutex_Test.cpp: - * tests/Process_Strategy_Test.cpp: - * tests/Reactor_Exceptions_Test.cpp: - * tests/Reactor_Notify_Test.cpp: - * tests/Reactor_Performance_Test.cpp: - * tests/Reactor_Timer_Test.cpp: - * tests/Reactors_Test.cpp: - * tests/Reader_Writer_Test.cpp: - * tests/Recursive_Mutex_Test.cpp: - * tests/SOCK_Connector_Test.cpp: - * tests/SOCK_Test.cpp: - * tests/SPIPE_Test.cpp: - * tests/SString_Test.cpp: - * tests/SV_Shared_Memory_Test.cpp: - * tests/Semaphore_Test.cpp: - * tests/Service_Config_Test.cpp: - * tests/Sigset_Ops_Test.cpp: - * tests/Simple_Message_Block_Test.cpp: - * tests/TSS_Test.cpp: - * tests/Task_Test.cpp: - * tests/Thread_Manager_Test.cpp: - * tests/Thread_Mutex_Test.cpp: - * tests/Thread_Pool_Test.cpp: - * tests/Time_Service_Test.cpp: - * tests/Time_Value_Test.cpp: - * tests/Timer_Queue_Test.cpp: - * tests/Tokens_Test.cpp: - * tests/UPIPE_SAP_Test.cpp: - Added the Borland non-sense to allow the tests to link against the - ACE library under Borland C++ Builder. Major pain in the rear - end... - - * tests/test_config.h: - Added a couple of includes for the case of Borland C++ Builder. - - * tests/Hash_Map_Manager_Test.cpp: - Changed variable name allocator to alloc, to avoid conflicts with - STL allocators under Borland C++ Builder. - - * tests/Reactors_Test.cpp: - Changed variable name tm to thr_mgr, to avoid conflicts with - std::tm under Borland C++ Builder. - - * tests/Tokens_Test.cpp: - * tests/UPIPE_SAP_Test.cpp: - Added a few explicit template instantiations. - -Sun Jun 07 09:51:02 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Timeprobe_T.cpp: added #include of ace/Timeprobe.h. - It wouldn't compile on GreenHills without it. - - * STL/bool.h: only #define bool, etc., if _MSC_VER is #defined. - Thanks to Stanley Leeson <STANLEY.D.LEESON@cdev.com> for - reporting this. - - * tests/Timeprobe_Test.cpp: added #include of ace/Timeprobe.cpp - to pick up template instantiations, if ACE_COMPILE_TIMEPROBES - was not defined. This allows the test to build on platforms - that have explicit template instantiation when libACE was - built without timeprobes enabled. - -Sun Jun 7 01:06:12 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * ace/config-freebsd-pthread.h: Added the - ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS flag to work around problems - with pthreads on FreeBSD. Thanks to Amancio Hasty - <hasty@rah.star-gate.com> for reporting this. - -Sat Jun 6 22:00:54 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * ace/Message_Queue.cpp: Added code so that advance() is more - thread-safe. - - * apps/gperf/src/Options.cpp (operator): Changed ACE_OS::exit() - to ACE_OS::_exit() so we'll leave no trace... - - * apps/gperf/src/Key_List.cpp (output_switch): Fixed another bug - where strcmp() should be generated instead of strncmp(). - - * apps/gperf/src: We no longer call the inline option "GNU" but - now call it "INLINE". - - * apps/gperf/src/{Options.h,Key_List.cpp,Gen_Perf.cpp}: Revised - the LARGE_STACK_ARRAY code so that it only gets compiled if - we're using GCC. - - * apps/gperf/src/Key_List.cpp (output_switch): Fixed a bug where - strcmp() was being used instead of strncmp(). Thanks to C++ - for finding this! - - * apps/gperf/src/Key_List.cpp: Removed all uses of "register" - since C++ compilers can do this automagically... - - * apps/gperf/tests/test.cpp (main): Modified the test program to - use C++ rather than C (ugh!). - - * ace: Added two new files: Timeprobe_T.h and Timeprobe_T.cpp in - order to solve problems with multiply defined symbols. Thanks - to Brian Mendel, David Levine, and Irfan for tracing this down. - -Sat Jun 6 19:10:54 1998 Sergio Flores <sergio@cs.wustl.edu> - - * ace/config-vxworks5.x.h: changes the default thread priority - from 6 to 101. - -Sat Jun 06 16:43:01 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Timeprobe.cpp (dtor): inserted missing "[]" in delete of - array. - -Fri Jun 5 11:53:18 1998 Darrell Brunsch <brunsch@cs.wustl.edu> - - * ace/Log_Msg.{h,cpp}: Added enable_debug_messages() to do - the opposite of disable_debug_messages(). - - * ace/Parse_Node.cpp: Got rid of all the checks of the - Service Configurator's debug flag. Instead, the checking - will occur in the Service Configurator. - - * ace/Service_Config.cpp: Added to Stephen Coy's changes so - that debug messages are turned back on after the Service - Configurator is done. That way, other code can still use - debug messages. - -Thu Jun 4 12:25:48 1998 Rajiv C. Gandhi <gandhi@tango.cs.wustl.edu> - - * apps/gperf/src/Options.h: removing the option to stack - allocate some large arrays as CC does not seem to like it. - - * apps/gperf/src/Key_List.cpp (output_lookup_array): removing - the option to stack allocate some large arrays as CC does - not seem to like it. - - * apps/gperf/src/Gen_Perf.cpp: removing the option to stack - allocate some large arrays as CC does not seem to like it. - -Thu Jun 04 05:03:09 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.10 released. - -Wed Jun 3 02:24:47 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/config-win32-common.h: Instead of defining _MT for users if - it's not defined, spit out an error message and stop the - compilation. Thanks to Barney Dalton - <barneyd@cyllene.uwa.edu.au> for suggesting this. - -Tue Jun 02 20:03:51 1998 Steve Huston <shuston@riverace.com> - - * ace/config-hpux-1[01].x-hpc++.h: Added ACE_HAS_USING_KEYWORD for - aC++ on both platforms. - -Tue Jun 02 12:19:29 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Thread_Manager.cpp (wait_grp,wait_task): These two were - still copying thread_descriptors and deleting the copies - directly. This corrupted the cached thread_descriptor. - Changing them to use Thread_Descriptor_Base solved the problem. - Thanks to Zoran Ivanovic <zorani@pathcom.com> for finding - this. - -Tue Jun 02 08:29:20 1998 David L. Levine <levine@cs.wustl.edu> - - * include/makeinclude/wrapper_macros.GNU,ACE-INSTALL.html: - moved probe=1 support from individual Makefiles to - wrapper_macros.GNU. - -Tue Jun 02 08:09:41 1998 Steve Huston <shuston@riverace.com> - - * ace/config-aix-4.1.x.h: Removed ACE_HAS_THREAD_SELF. It was - causing compile failure. Thanks to Lee Nash <rnash@gulfaero.com> - for helping to work this out. - -Mon Jun 01 16:19:52 1998 Steve Huston <shuston@riverace.com> - - * examples/Reactor/Dgram/Dgram.mdp, Dgram.mak: Added these files - to build the examples with MSVC 4.2. - -Mon Jun 01 13:01:14 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * examples/Reactor/Dgram/Dgram.cpp (run_test): Because of the - delayed de-registration in WFMO_Reactor, WFMO_Reactor was trying - to call handle_close on the Event Handler after it was - destroyed. Solution: dynamically created the Event Handler and - call "delete this" in handle_close. The other alternative was - to call remove_handler with the DONT_CALL flag and to close the - socket in the Event Handler's destructor. - - * ace/Timeprobe: The vxworks compiler is lame as it cannot handle - operator placement new for arrays. Therefore, ACE_Allocator was - removed in favor of regular new and delete. - -Mon Jun 01 09:54:51 1998 David L. Levine <levine@cs.wustl.edu> - - * tests/Timeprobe_Test.cpp: removed trailing ; from template - instantation pragmas. - - * tests/Conn_Test.cpp,MM_Shared_Memory_Test.cpp, - Priority_Reactor_Test.cpp,SOCK_Test.cpp: replaced - !defined (ACE_WIN32) && !defined (VXWORKS) with - !defined (ACE_LACKS_FORK). - -Sun May 31 23:05:10 1998 David L. Levine <levine@cs.wustl.edu> - - * ACE-INSTALL.html,include/makeinclude/wrapper_macros.GNU: - added repo=1 make option support. It only helps when - building ACE applications. ACE and TAO still use explicit - instantiation when building their libraries, because it's - easiest to avoid link collisions that way. And it already - works. - -Sun May 31 18:31:24 1998 James C Hu <jxh@cs.wustl.edu> - - * ace/RB_Tree.i: - * ace/RB_Tree.cpp: Changes suggested by Sergio to make it work - with older version of GCC. Referred to RB_Tree_Node_Color - through the parent class RB_Tree_Node_Base. - -Sat May 30 13:14:18 1998 James C Hu <jxh@cs.wustl.edu> - - * ace/RB_Tree.h: Try to put enum into a class again. This time, - created a dummy base class to hold the RED and BLACK enums. - -Sat May 30 08:01:31 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/RB_Tree.h (RB_Tree_Iterator::operator =): Added explicit - return type to the declaration. Wrapped with - ACE_UNIMPLEMENTED_FUNC. - -Fri May 29 23:06:02 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/RB_Tree.{h,i}: moved enum RB_Tree_Node_Color out of the - (template) class declaration because g++ 2.7.2.3 couldn't - find it there. - - * ace/Thread_Manager.cpp (remove_thr, VxWorks only): added [] to - delete of tid array. Thanks to Arturo Montes - <mitosys@colomsat.net.co> for reporting this. - - * ace/RB_Tree.h (RB_Tree_Iterator::operator =): added explicit - return type to the declaration. Wrapped with - ACE_UNIMPLEMENTED_FUNC. - -Fri May 29 21:59:01 1998 James C Hu <jxh@cs.wustl.edu> - - * RB_Tree.h: - * RB_Tree.i: - * RB_Tree.cpp: Debugged some minor typo errors, and changes - related to internalizing the RED and BLACK enums. - -Fri May 29 21:55:11 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/High_Res_Timer.cpp: don't use ACE_HAS_PENTIUM code on - Solaris (ACE_HAS_HI_RES_TIMER) because it uses ::gethrtime (). - (dump): on Solaris, print 64-bit ints with %llu format. Other - platforms may need that, also. - - * ace/Makefile: replaced .o with $(OBJEXT) in gethrtime.o target, - so that make depend doesn't munge it. - - * ace/OS.h: only use the null versions of the - ACE_DES_FREE_TEMPLATE* macros with LynxOS 3.0.0. - - * include/makeinclude/platform_lynxos.GNU: commented out -Winline, - because it complains too much with -O2, and that's now the default. - -Fri May 29 17:52:37 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.9 released. - -Fri May 29 16:19:34 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * ace/Synch_T.h (class ACE_Guard): ACE_Guard's destructor was - changing the errno value. Fixed this to avoid doing so... - Thanks to Arturo Montes <mitosys@colomsat.net.co> for reporting - this. - -Fri May 29 15:33:41 1998 David L. Levine <levine@cs.wustl.edu> - - * performance-tests/Misc/context_switch_time.cpp: - added Synchronized Suspend-Resume Test. - -Fri May 29 14:46:49 1998 James C Hu <jxh@cs.wustl.edu> - - * ace/Makefile - * ace/RB_Tree.h - * ace/RB_Tree.cpp: Added changes to RB_Tree to enable overloading - of the comparison method. Added class RB_Tree to the UNIX - Makefile. - - * ace/OS.cpp: Added some minor fixes to the difftime implementation. - - * ace/OS.cpp: - * ace/OS.i: - * ace/README: - * ace/config-sunos4*: - Added ACE_LACKS_DIFFTIME macro because SunOS4 does not support - the Standard C difftime function. Added a difftime - implementation for when such is the case. - -Fri May 29 08:22:36 1998 Steve Huston <shuston@riverace.com> - - * ace/Log_Msg.cpp, Trace.cpp: Changed decision for - order-of-include/inline from ACE_WIN32 to - ACE_HAS_ONE_DEFINITION_RULE. This completes the changes needed - to be able to use the newer versions of HP aC++. - - * ace/config-win32.h: Set ACE_HAS_ONE_DEFINITION_RULE. - -Thu May 28 16:17:41 1998 Steve Huston <shuston@riverace.com> - - * ace/README: Added ACE_HAS_ONE_DEFINITION_RULE. - * ace/config-hpux-10.x-hpc++.h: - * ace/config-hpux-11.x-hpc++.h: Added ACE_HAS_ONE_DEFINITION_RULE - for aC++. This is part of a set of changes to make ACE work - with HP aC++ A.01.09 (10.20) and A.03.05 (11.00). The other - changes are being tested still. Thanks _very_ much to Steve Coy - for digging through this with HP and working out a solution! - -Thu May 28 15:55:48 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * Added new configuration files for SCO. Thanks to Arturo for - this. - -Thu May 28 13:57:50 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Filecache.cpp: removed redundant template instantiations. - - * ace/config-lynxos.cpp: added undef ACE_HAS_TEMPLATE_SPECIALIZATION - for LynxOS 3.0.0. - - * ace/Hash_Map_Manager.cpp,Map_Manager.cpp: replaced bare explicit - destructor calls with ACE_DES_FREE_TEMPLATE{,2} macro invocations. - - * ace/OS.h: #define ACE_DES_FREE_TEMPLATE to be null on LynxOS. - Without it, the g++ that's distributed with LynxOS 3.0.0 hopelessly - chokes on explicit calls to template class destructors. This - hack could cause memory leaks, though currently ACE_DES_FREE_TEMPLATE - is only used to call empty, non-virtual destructors (in - Containers.cpp, Hash_Map_Manager.cpp, and Map_Manager.cpp). - Also, added ACE_DES_FREE_TEMPLATE2 macro for use with two - template arguments. There's got to be a better way. - - * include/makeinclude/platform_lynxos.GNU: added LynxOS Version 3.0.0 - support. It's optional at this point: add VERSION=3.0.0 to your - make invocation to enable. Disabled -Wall with LynxOS 3.0.0. - Enabled optimization. - -Thu May 28 07:47:41 1998 Steve Huston <shuston@riverace.com> - - * tests/SOCK_Connector_Test.cpp: Changed the "should succeed" test - from port 25 (smtp) to 7 (echo) to try and get a higher success - rate. Thanks to David Levine for this suggestion. - -Wed May 27 13:45:24 1998 Steve Huston <shuston@riverace.com> - - * ace/ACE.cpp (handle_timed_complete): Fixed problem where - successful connect was being reported as a failure (P90). - - * tests/SOCK_Connector_Test.cpp: Added a test for a successful - non-blocking connect (tests fix from above). - -Wed May 27 07:04:42 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Service_Config.cpp: default debug_ to 1 instead - of 0. And the -d option now disables debug messages, - instead of enabling them. Thanks to Irfan for reporting - that LM_DEBUG messages were lost without this fix. - - * ace/High_Res_Timer (calibrate): added calibrate () method - to calculate the global scale factor on Pentiums. It's - called by the constructor for the first instantiation - in a process. (On WIN32, get_registry_scale_factor () is - called instead of calibrate ().) - - * ace/Stats.cpp (sample): continue aggregating data even - if there is overflow. This allows, e.g., a mean to be - calculated even if the standard deviation calculation overflow. - - * performance-tests/Misc/context_switch_time.cpp: don't run the - Yield_Test on VxWorks because it takes too long. - - * ace/High_Res_Timer.*: moved calibration from constructor to - global_scale_factor () accessor. - - * ace/Timeprobe.cpp: no longer need to explicitly calibrate the - High_Res_Timer. - -Tue May 26 22:25:18 1998 Stephen Coy <stevec@wsa.com.au> - - * ace/Log_Msg.{h,cpp},Service_Config.cpp: added support for - -d in Service_Config files to enable/disable LM_DEBUG messages. - -Tue May 26 14:53:21 1998 Steve Huston <shuston@riverace.com> - - * ace/SOCK_Dgram_Mcast.cpp (subscribe): Fixed use of uninitialized - variable, nr_subscribed. Thanks to Nanbor for finding this. - -Tue May 26 13:39:21 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/Timeprobe.cpp: - * tests/Timeprobe_Test.cpp: - Now egcs and Sun/CC are happy with this files. - -Tue May 26 00:35:49 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * tests/Timeprobe_Test.cpp: Added new test. - - * ace/Timeprobe: Added the ability to have multiple event tables - for time probes. Multiple maps can be used to chunk up the time - probes. Each one can be added by calling event_descriptions(). - Different tables are used internally by consulting the - minimum_id for each table. It is up to the user to make sure - that multiple tables do not share the same event id range. - -Sat May 23 21:52:49 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/Message_Block.h: - * ace/Message_Block.i: - The rd_ptr() and wr_ptr() are const methods now. - -Sat May 23 00:18:58 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/ace_ce_dll.dsp: Updated settings for MIPS CPU. - - * tests/WinCE/*.dsp: Updated settings for MIPS CPU. - -Fri May 22 16:00:03 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * tests/MT_SOCK_Test.cpp (spawn): We must check for !defined - (ACE_LACKS_FORK) rather test for VxWorks or Win32. Thanks to - Steven Coy for reporting this. - -Fri May 22 20:01:40 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.h: moved ACE_IO_Vector declaration ahead of OS.i #include. - - * ace/OS.i (ACE_IO_Vector::buffer): added static cast of new_buffer - to char *. - - * ace/OS.i (writev): changed return type from int to ssize_t to - match declaration in OS.h. - -Fri May 22 12:20:11 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace: Other parts of ACE were modified to use the new - ACE_IO_Vector class. - - * ace/OS.h (ACE_IO_Vector): Added a new class that inherits from - the correct IO_Vector class provided by the platform. - - writev() and readv() were being emulated on Win32 in ACE. A new - ACE_OS::writev() and ACE_OS::readv() has been added to ACE - that uses WSASend() and WSARecv() respectively. However, in - order for you to exploit these new functions, you must use - ACE_IO_Vector instead of iovec. The ideal situation would have - been to totally replace iovec with ACE_IO_Vector but that would - break too much code. So, if you keep using iovec, you will use - the expenses and slow emulations. If you want to use WSASend() - and WSARecv(), switch over to ACE_IO_Vector. It will work on - both Win32 and non-Win32 platforms. - -Fri May 22 07:53:03 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-linux-pthread.h: removed two - ACE_LACKS_CONDATTR_PSHARED #defines. That leaves just - one, that's commented out. - - * performance-tests/Misc/context_switch_time.cpp: create all - threads as detached so they don't have to be joined. They - test was using up resources on LynxOS, if a high -c option - was used, without this change. - - * ace/config-sunos5.5-{g++,sunc++-4.x}.h,config-sunos5.5.h: - merged config-sunos5.5-g++.h and config-sunos5.5-sunc++-4.x.h - into config-sunos5.5.h. That new file should be maintained - for both compilers from now on. The old files have been - retained for backward compatibility. The just #include - config-sunos5.5.h. - - * ace/config-sunos5.6.h: #include config-sunos5.5.h instead - of the separate Sun C++ and g++ configs. - - * include/makeinclude/platform_sunos5_sunc++.GNU: - updated comment to reflect change to config-sunos5.5.h. - -Fri May 22 07:30:23 1998 David L. Levine <levine@cs.wustl.edu> - - * ACE version 4.5.8 released. - -Fri May 22 07:26:06 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Stats.cpp: added some casts to avoid MSVC++ warnings - about narrowing. - - * ace/config-osf1-4.0.h: removed commented-out - ACE_LACKS_{COND,MUTEX}ATTR_PSHARED. - -Fri May 22 00:09:15 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Local_Tokens.{h,cpp} (ACE_Null_Token): Only defined default - ctor/dtor explicitly when ACE_LACKS_INLINE_FUNCTIONS. - - * ace/Stats.cpp: Defined ACE_BUILD_DLL at the beginning. - Win32 needs to define ULONGLONG literals as 999ui64. - This is the only place that uses i64 literals. - -Thu May 21 21:55:09 1998 David L. Levine <levine@cs.wustl.edu> - - * ACE version 4.5.7 released. - -Thu May 21 17:36:37 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-sunos5.6.h: added support for POSIX 199506 - extensions. Thanks to J. Russell Noseworthy - <rnosewor@objectsciences.com> for providing this support. - - * ace/Local_Tokens.{h,i}: inlined ACE_Null_Token ctor and dtor - in class header because the clone () method needs the ctor - inlined, and it's too difficult to get it right with macros. - - * tests/SString_Test.cpp (main): added ACE_ASSERT with s4 in - it, because it was unused otherwise. - - * performance-tests/Synch-Benchmarks/Options.cpp (print_results): - changed #else to #elif, because it has a condition after it. - -Thu May 21 15:28:07 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/test_config.h: Modified to write output from tests into - log file. Notice that log files on CE have extension name - ".txt" instead of ".log". - - * ace/OS.i (strrchr): Added UNICODE version of this function. - - * ace/Log_Record.{h,cpp}: Generalized message formatting on CE by - adding a new method format_msg(). - - * ace/Reactor_Impl.h: Removed an extra comma. - - * ace/XtReactor.cpp: Include "ace/Reactor.h" - - * tests/Recursive_Mutex_Test.cpp: - * tests/Future.cpp: Removed iteration restriction on CE. - -Thu May 21 12:13:36 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/ace_{dll,lib}.dsp: Added Stats.cpp into projects. - -Wed May 20 23:02:41 1998 Steve Huston <shuston@riverace.com> - - * ace/SOCK_Dgram_Mcast.cpp (subscribe): On Win32, if - ACE::get_ip_interfaces finds less than 2 interfaces, call - subscribe with "0.0.0.0". This is sort of a hack and is meant - only to help get things working again until ACE::get_ip_interfaces - can be made to work correctly in all cases. - -Wed May 20 10:42:12 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-mvs.h: enabled ACE_LACKS_CONDATTR_PSHARED and - ACE_LACKS_MUTEXATTR_PSHARED. Thanks to Chuck Gehr - <GehrCR@LOUISVILLE.STORTEK.COM> for advising on this. - - * ace/config-linux-lxpthreads.h,config-lynxos.h: removed - commented-out ACE_LACKS_{COND,MUTEX}ATTR_PSHARED #defines. - - * ace/config-sunos5.5-{sunc++-4.x,g++}.h: removed - commented-out ACE_LACKS_{COND,MUTEX}ATTR_PSHARED. Enabled - ACE_HAS_CLOCK_GETTIME, because we always link with -lposix4. - Thanks to J. Russell Noseworthy <rnosewor@objectsciences.com> - for inspiring the ACE_HAS_CLOCK_GETTIME enable. - - * ace/config-osf1-4.0.h: removed uncommented - ACE_LACKS_CONDATTR_PSHARED, so that we can test whether - it's necessary. - - * ace/Stats.*,Makefile: added ACE_Stats class. - - * performance-tests/Misc/context_switch_time.cpp: use - ACE_Stats to calculate standard deviations. - -Tue May 19 21:24:50 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/Future_Test.cpp: Reduced the number of iterations on CE. - - * ace/Synch.i: Added #ifdef (ACE_HAS_THREADS) to make it compile - on non-threaded platforms. - -Tue May 19 10:05:07 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/SString.cpp (strlen): Renamed ACE_WString::wstrlen to - ACE_WString::strlen. - - * ace/SString.i: Reordered functions to make g++ happy. - - * ace/ACE.cpp (hash_pjw): Changed ACE_OS::strlen to - ACE_WString::strlen. - -Tue May 19 09:52:08 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/config-irix6.x-g++.h: - * ace/config-irix6.x-sgic++-nothreads.h: - * ace/config-irix6.x-sgic++.h: - Added ACE_LACKS_MUTEXATTR_PSHARED - -Mon May 18 16:37:36 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/SString.h (ACE_CString): Added the ability to hold on to - user supplied character strings without having to make a copy. - - * ace/OS.h (ACE_OS): Added implementations for strrchr, strnchr, - strnstr, and strstr. - - * ace/ACE.cpp (hash_pjw): Added new versions of these that work - with user specified string length. - -Mon May 18 12:24:40 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * ace/config-*.h: Commented out most of the - ACE_LACKS_CONDATTR_PSHARED so we can see what platforms really - DON'T support this... - - * ace/OS.i (mutex_init): Added support for - pthread_mutexattr_setpshared() so we can initialize POSIX - pthreads process-wide mutexes. Thanks to Ki-hyun Yoon - <abird@nextware.co.kr> for suggesting this. - - * ace/config-sunos5.6.h: Added an #define for - ACE_THREAD_POSIX_SEM. Thanks to Ki-hyun Yoon - <abird@nextware.co.kr> for reporting this. - - * ace/config-sunos5*.h: Removed the ACE_LACKS_RWLOCK_T stuff since - it's unnecessary. Thanks to Chris Lahey for reminding me of - this... - -Mon May 18 13:48:14 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Synch.i: Added #ifdef (ACE_HAS_THREADS) to make it compile - on non-threaded platforms. - -Mon May 18 12:31:32 1998 Darrell Brunsch <brunsch@cs.wustl.edu> - - * ace/Service_Config.{h,i,cpp}: Added an accessor debug() for - external access to the <debug_> variable. More debug messages - check this before displaying. - - * ace/Parse_Node.cpp: Checks Service_Config's debug flag before - outputting debug messages. - -Sun May 17 23:14:32 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/Wince/*.dsp: Disabled precompiled headers. They ate up - all my disk space. - - * ace/Service_Config.cpp: <process_directive> takes a string of - type ASYS_TCHAR. Use ACE_WIDE_STRING to do the conversion. - - * ace/Log_Msg.{h,cpp} (ACE_ASSERT): Use unicode in ACE_ASSERT. - (log): Don't exit the program for now. Exiting program here - destroys all debugging message in the window. - - * tests/Reader_Writer_Test.cpp: Reduced the number of iterations - on WinCE. - - * ace/OS.i: Added ACE_OS::time () implementation for CE. - -Sun May 17 21:45:07 1998 David L. Levine <levine@cs.wustl.edu> - - * performance-tests/Misc/childbirth_time.cpp: changed type of - MULTIPLY_FACTOR from int to size_t to avoid signed/unsigned - comparison. - - * tests/Tokens_Test.cpp: synchronize start of thread svc () - routines. Occasionally, the first thread would finish before - any others had started. The TSS objects would get cleaned - up. Then, the remaining threads would start up and make a big - mess. - -Sat May 16 15:10:46 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * ace/Service_Config.h (ACE_Service_Config): Moved the - process_directive() into the public part of the class so this - can be called by applications one the Service Configurator is - open. Thanks to Tom Arbuckle - <arbuckle@uran.informatik.uni-bonn.de> for suggesting this. - -Sat May 16 14:12:09 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Thread_Manager.{h,i,cpp} (class ACE_Thread_Descriptor_Base): - Extract thread handle and thread creation flags out from - Thread_Descriptor into this new class. This is necessary - because after my last round of changes to improve - ACE_Thread_Manager, I changed the <terminated_queue_> from - holding Thread_Descriptor's to holding pointers to descriptor. - This was a bad move because the address of these pointers had - already been "freed." The <terminated_queue_> now holds - ACE_Thread_Descriptor_Base which contains only the information - needed for manipulating <terminated_queue_>. Thanks to Arturo - for noticing this. - -Sat May 16 03:23:35 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * performance-tests/Misc/childbirth_time.cpp (main): Added a new - function to test the performance of ACE_Thread_Mutex in single - thread _without_ any contention. - -Fri May 15 22:55:51 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/Recursive_Mutex_Test.cpp: Only iterate the test 50 times - on CE as on Chorus. Otherwise, as I'm using a CEdit to hold the - test output, CEdit would overflow. - - * ace/OS.i (thr_getspecific): Don't check for return value of - TlsGetValue on CE because CE doesn't seem to set the LastError - correspondingly. - (strchr): Added implementation on CE. - - * Added Activation_Queue.i and Strategies.i. - - * Combed thru all these files and added difinitions for ctor/dtor - for a bunch of classes explicitly. CE needs them. - - Activation_Queue.cpp Activation_Queue.h Dynamic.h Dynamic.i - Event_Handler.h Event_Handler.i Get_Opt.h Get_Opt.i Handle_Set.h - Handle_Set.i High_Res_Timer.h High_Res_Timer.i INET_Addr.h - INET_Addr.i IO_SAP.h IO_SAP.i IPC_SAP.h IPC_SAP.i Local_Tokens.h - Local_Tokens.i Log_Record.h Log_Record.i Malloc.h Malloc.i OS.h - OS.i Obstack.cpp Obstack.h Obstack.i Parse_Node.h Parse_Node.i - Pipe.h Pipe.i Process_Manager.h Process_Manager.i SOCK.h SOCK.i - SOCK_Acceptor.cpp SOCK_Acceptor.h SOCK_Acceptor.i SOCK_CODgram.h - SOCK_CODgram.i SOCK_Connector.h SOCK_Connector.i SOCK_Dgram.h - SOCK_Dgram.i SOCK_Dgram_Bcast.h SOCK_Dgram_Bcast.i - SOCK_Dgram_Mcast.h SOCK_Dgram_Mcast.i SOCK_IO.h SOCK_IO.i - SOCK_Stream.h SOCK_Stream.i SString.h SString.i Sched_Params.h - Sched_Params.i Select_Reactor.h Select_Reactor.i - Service_Manager.h Service_Manager.i Service_Repository.h - Service_Repository.i Service_Types.h Service_Types.i - Shared_Object.h Shared_Object.i Signal.h Signal.i Strategies.cpp - Strategies.h Strategies.i Strategies_T.cpp Strategies_T.h - Synch.cpp Synch.h Synch.i Synch_Options.cpp Synch_Options.h - Synch_Options.i Timer_Heap_T.cpp Timer_Heap_T.h Timer_List_T.cpp - Timer_List_T.h Timer_Queue_T.cpp Timer_Queue_T.h - Timer_Wheel_T.cpp Timer_Wheel_T.h. - -Fri May 15 16:55:34 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * ace/config-sunos5*.h: Automatically enable ACE_LACKS_RWLOCK_T if - we're NOT using Solaris threads (since pthreads doesn't support - readers/writer locks). - - * ace/Service_Config.cpp: Removed a duplicate template - instantiation of template class - ACE_Unbounded_Queue_Iterator<ACE_CString>. Thanks to Ben Eng - <ben@jetpen.com> for reporting this. - - * ace/OS: Fixed a number of problems that occurred when trying to - use the PTHREAD implementation on Solaris without using - ACE_HAS_STHREADS. The problems related primarily to the - ACE_OS::rw*() functions. To fix the problems, the following - changes were made. - - Remove the #if defined (ACE_HAS_STHREADS) from the case where we - have the native rw*() functions. We just use the - ACE_LACKS_RWLOCK_T compile flag to determine whether we have the - native functions. - - Without the ACE_HAS_STHREAD flag, ACE_rwlock_t comes up - undefined. To fix this, moved the definition at approx. line - 1868 above the #else at approx. line 1865 as the following: - - #if ! defined (ACE_LACKS_RWLOCK_T) - #include <synch.h> - typedef rwlock_t ACE_rwlock_t; - #endif // ! ACE_LACKS_RWLOCK_T - - Finally, the ACE_idtype_t type was also undefined. To fix this, - moved the typedef from within the #if defined (ACE_HAS_STHREADS) || - defined (DIGITAL_UNIX) block and create a new ifdef block: - - #if defined (ACE_HAS_IDTYPE_T) - typedef idtype_t ACE_idtype_t; - #else - typedef int ACE_idtype_t; - #endif - - Thanks to Chris Lahey <CLahey@cccis.com> for his through help at - recognizing and fixing these problems. - -Fri May 15 09:38:37 1998 David L. Levine <levine@cs.wustl.edu> - - * bin/make_release: redirect cvs tag output to /dev/null. - - * performance-tests/Misc/context_switch_time (main): fixed - printout of yield test time for other than the default - number of iterations. - -Fri May 15 09:29:57 1998 David L. Levine <levine@cs.wustl.edu> - - * ACE version 4.5.6 released. - -Fri May 15 08:25:19 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Service_Config.cpp: fixed and added template instantations. - - * ace/Svc_Conf_y.cpp,etc/Svc_Conf_y.cpp.diff: removed compile - warnings. - - * include/makeinclude/platform_sunos5_g++.GNU: use PIC instead of pic, - because the TAO orbsvcs lib needs it. - - * Makefile: added .PHONY for phony targets. - -Fri May 15 02:47:35 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.5 released. - -Fri May 15 02:42:06 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.4 released. - -Thu May 14 15:28:42 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * ace/config-kcc-common.h: Added the ACE_HAS_USING_KEYWORD to the - config file. Thanks to Ben Eng <ben@jetpen.com> for reporting - this. - - * examples/Service_Configurator/Misc: Updated the Timer_Service - test to demonstrate the new service configurator feature. It's - AWESOME! - - * ace/Svc_Conf.h, - ace/Svc_Conf.l: - Added a super-cool new feature that allows us to parse service - configurator directives from a string rather than from a - svc.conf file. - - * ace/Svc_Conf.l (yywrap): Free up ace_yy_current_buffer in yywrap - to prevent a memory leak. Thanks to Paul Motuzenko - <p_motuzenko@hotmail.com> for reporting this. - - * examples/IPC_SAP/SOCK_SAP/CPP-inserver-poll.cpp: Enhanced the - implementation to make it easier to follow and to support the - latest features of CPP-inclient.cpp. - - * ace/OS.h (ACE_OS): Added a wrapper for strcspn(3s). - - * examples/IPC_SAP/SOCK_SAP/CPP-inserver-fancy.cpp: Added more - cool changes to the CPP-inserver.cpp example and renamed it. - -Thu May 14 14:46:02 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/OS.h: Moved the definition of ACE_Export before it is used. - -Thu May 14 13:22:46 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/Message_Block.h: - * ace/Message_Block.cpp: - The static duplicate() method can take pointer to a const - Message_Block. - -Wed May 13 18:46:28 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/IPC_SAP/SOCK_SAP/CPP-{inserver,inclient}.cpp: Added - profile timing to the server so we can compute socket - performance metrics. Also generalized the tests so we can - experiment with both oneway and twoway calls. - -Wed May 13 19:20:27 1998 James C Hu <jxh@cs.wustl.edu> - - * ace/OS.h: - * ace/OS.i: - * ace/OS.cpp: Added a substitute gets implementation for when - ACE_LACKS_GETS. The substitute is actually safer than gets, so - I may end up making gets call the new routine instead of - Standard C's. - - * ace/config-g++-common.h: Changed the g++ common file so that - 2.8.1 acts like EGCS does. This worked on Solaris 2.5.1. We'll - see how other's fare. - -Wed May 13 18:13:12 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.3 released. - -Wed May 13 11:29:56 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * performance-tests/Synch-Benchmarks/Options.cpp (print_results): - My previous change to add print_results functionality when - ACE_HAS_GETRUSAGE broke this on Win32. - - * ace/config-g++-common.h (ACE_HAS_GNUC_BROKEN_TEMPLATE_INLINE_FUNCTIONS): - Made this macro defined for all versions of g++. - -Wed May 13 09:26:48 1998 David L. Levine <levine@cs.wustl.edu> - - * many *.{h,i,cpp,idl} files: inserted RCS keyword string. - -Wed May 13 00:35:25 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace: Added ACE_Export to a bunch of class in ACE. Thanks to - Gonzalo A. Diethelm (gonzo@ing.puc.cl) for pointing this out. - -Tue May 12 15:16:04 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/config-WinCE.h: - * ace/OS.h: Stopped using non-static object manager for CE. This - is causing some problem at process shutdown. - - * ace/Acceptor.cpp: Made CE friendly. - - * ace/Process.cpp ([~]ACE_Process_Options): Moved things around to - avoid compilation errors on CE. Secret: CE doesn't have - environment variables. - -Tue May 12 13:28:05 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/OS.h: - The ACE_INLINE_FOR_GNUC macro must be defined (as the null - token) if ACE_HAS_GNUC_BROKEN_TEMPLATE_INLINE_FUNCTION is not - defined. - -Tue May 12 12:30:55 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/README: - * ace/config-g++-common.h (ACE_HAS_GNUC_BROKEN_TEMPLATE_INLINE_FUNCTIONS): - Added this new macro to get around a bug which only happens in - GNUC 2.7.xx. It mistakenly refers to the template definition as - the place where a function is used. - - * ace/OS.h (ACE_INLINE_FOR_GNUC): Added the macro to fix the GNUC - bug. - - * ace/Thread_Manager.h: Added above macro to set_next and - get_next. - -Tue May 12 12:11:36 1998 Bob Laferriere <laferrie@gsao.med.ge.com> - - * ace/Process.{h,cpp}: modifications to make the environment buffer - and number of environment variables tunable in the constructor. - I also fixed a logic error which previously attempted to write - beyond an array bounds of the array of pointers into the - environment buffer. I made the environment_argv_ buffer tunable - as well. The new constructor takes the old hardcoded static sizes - as the default dynamic sizes for backwards compatiblity. - The behavior is to return -1 if the maximum buffer size or - maximum number of environment arguments has been reached in - following with the prior behavior. I opted not to make the members - grow as needed so the class would still follow it's prior behavior. - This would be simple to add, however. - -Tue May 12 08:29:50 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/Malloc.cpp (ACE_Allocator::instance): replaced dynamic - allocation of the default ACE_Allocator with allocation from - the data segment. Thanks to Ben Eng <ben@jetpen.com> for - providing the stack trace that revealed the problem. - - * ace/Malloc.h: added comments to not add data members to - ACE_Allocator or ACE_New_Allocator. - - * bin/g++dep: changed PATH to pick up /project/doc/pkg/gnu/bin/g++, - and removed GNUG_INCLUDE. Thanks to Ganesh Pai <gpai@voicetek.com> - for reporting problems with the old version on Linux. - -Tue May 12 02:59:27 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * performance-tests/Misc/childbirth_time.cpp: Added ACE_OS::sleep - (0) before all timing sections start. This ensures we own a - fresh time slice when the timing begin and reduce the chances of - getting preempted - -Tue May 12 00:42:05 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * bin/dsp2dsp.pl: This file clones a new MSVC 5.0 dsp file based - on setting from another dsp file. It is most useful in adding - new project files into tests/. - - * tests/WinCE/*: New project files. Updated the workspace. - Please see CE-status for the current progress. - - * tests/Buffer_Stream_Test.cpp: - * tests/Conn_Test.cpp: - * tests/Enum_Interfaces_Test.cpp: - * tests/Handle_Set_Test.cpp: - * tests/Hash_Map_Manager_Test.cpp: - * tests/Message_Block_Test.cpp: - * tests/Reactors_Test.cpp: - * tests/Thread_Manager_Test.cpp: - * tests/Thread_Mutex_Test.cpp: Made CE friendly. - - * tests/test_config.h: Moved some common definitions shared among - CE and other platforms out. - - * ace/Acceptor.cpp: - * ace/Acceptor.h: - * ace/Connector.cpp: - * ace/Connector.h: - * ace/Stream.cpp: - * ace/Svc_Handler.cpp: - * ace/Svc_Handler.h: - * ace/Synch.h: - * ace/Synch.i: CE stuff. - - * ace/config-WinCE.h: Defined ACE_DEFAULT_SERVER_HOST in UNICODE - here to overwrite the default setting. - - * ace/Synch.i (ACE_Lock): CE needs a default ctor here. - -Mon May 11 15:43:01 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * tests/WinCE/ce_tests.dsw: - * tests/WinCE/Atomic_Op_Test.dsp: - * tests/WinCE/Barrier_Test.dsp: - * tests/WinCE/Basic_Types_Test.dsp: - * tests/WinCE/Map_Manager_Test.dsp: Added/Updated project files. - - * tests/Atomic_Op_Test.cpp: - * tests/Barrier_Test.cpp: - * tests/Basic_Types_Test.cpp: Made them CE friendly. - - * ace/config-WinCE.h: Only define ACE_LACKS_INLINE_FUNCTIONS when - building debug version of ACE for SH series CPU. - - * WindozeCE/WindozeCEDlg.cpp: Updated the initial message after the - display window but before ACE console progrm started. - - -Mon May 11 15:43:01 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.{i,cpp}: Moved CE's impelmentation of ACE_OS::fprintf to - cpp file. - -Mon May 11 15:15:24 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/Thread_Manager.h: - Removed bogus ACE_INLINE macros in class declaration, they were - making the SGI compiler *very* unhappy. - -Mon May 11 15:11:11 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.cpp (ctime_r): Renamed the fmtstr to - ACE_OS_CTIME_R_FMTSTR for we may need to use similar scheme to - fix other bugs in the future. - -Mon May 11 14:50:47 CDT 1998 Everett Anderson <eea1@cs.wustl.edu> - - * ace/Name_Proxy.cpp: Changed one last recv to recv_n. - -Mon May 11 13:14:22 1998 Chris Gill <cdgill@cs.wustl.edu> - - * ace/RB_Tree.{cpp,h,i}: (new) Red-Black Tree data structure - implementation. A Red-Black Tree is an efficient - self-balancing binary tree that uses recoloring to - minimize rotations while rebalancing on insertion or - deletion of a tree node. Items in the tree are stored - according to a key provided at insertion. This - implementation is an OO rendition of the ADT described - in Cormen, Leiserson, Rivest, "Introduction to Algorithms" - (c) 1990, MIT. - -Mon May 11 12:31:41 1998 Steve Huston <shuston@riverace.com> - - * ace/OS.h: Made ACE_LD_SEARCH_PATH, ACE_LD_SEARCH_PATH_SEPARATOR_STR, - ACE_DLL_PREFIX, ACE_DLL_SUFFIX settable via config.h. - - * ace/config-hpux-10.x.h: - ace/config-hpux11.h: Set ACE_LD_SEARCH_PATH, ACE_DLL_SUFFIX. - Thanks to Kirill Rybaltchenko and David Levine for identifying - this problem. - -Mon May 11 12:27:05 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/ACE.cpp (send_n): retry if ACE::send () fails due to - EWOULDBLOCK. Thanks to Dave Brackman <dbrackma@OhioEE.com> - for reporting this. - - * tests/Env_Value_Test.cpp (main): check return values of - options.setenv () calls. Thanks to Bob Laferriere - <laferrie@gsao.med.ge.com> for recommending this. - - * include/makeinclude/platform_vxworks5.x_ghs.GNU: instead of - using GNU ranlib386 after using GHS ax for i386 targets, just - use GNU ar386. - - * ace/gethrtime.cpp: added some comments about GHS asm support. - - * java/netsvcs/{Logger,Time}/Makefile, - java/tests/netsvcs/Logger/Makefile: - replaced WRAPPER_ROOT with ACE_ROOT. - -Mon May 11 05:14:18 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/config-WinCE.h: Added ACE_HAS_NON_STATIC_OBJECT_MANAGER. CE - console programs have to set this flag because the main - functions is actually renamed and running in a threads. - - * tests/test_config.h: Excluded class and macros to redirect - debugging messages to files under CE. This make debugging a bit - easier but we should eventually put them back under CE. - - * tests/Map_Manager_Test.cpp: Made CE friendly. - - * ace/Hash_Map_Manager.cpp: Some ACE_ERROR were not CE friendly. - - * ace/Profile_Timer.{h,i}: - * ace/Synch.{h,i}: Moved inline function definitions to Synch.i - file. Windows CE can't grok any inline at all. - -Mon May 11 02:43:45 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * performance-tests/Misc/childbirth_time.cpp (main): Added - a new method for benchmarking ACE_Thread_Manager::spawn_n. - Added other cosmetic changes. - -Sun May 10 23:20:36 1998 Irfan Pyarali <irfan@cs.wustl.edu> - - * ace/Token.cpp: Adding more debugging statements. - - * ace/Asynch_Acceptor.cpp (should_reissue_accept): Added template - method that decides whether a new asynchronous accept should be - issued. - -Sun May 10 23:28:57 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.cpp(inherit_log_msg): - * ace/Log_Msg.cpp (thr_desc): Wait on Thread_Descriptor's lock - instead of the "global" Thread_Manager lock. - - * ace/Thread_Manager.cpp: Moved acquire_release() from - ACE_Thread_Manager to ACE_Thread_Descriptor. This method is - called from ACE_Log_Msg::thr_desc to prevent a thread from using - its thread descriptor before it is fully built. The change - relieve spwaned threads from waiting for other threads created - in the same spwan_n call to be created before it can start - running. - - (insert): Added an extra argument to control whether we want to - insert the newly created thread into ACE_Thread_Manager's thread - table or not. Notice that it is default to 1 to remain the - original behavior in case anyone is using this class/function - directly in their code. However, in ACE_Thread_Manager, we - always prevent it from inserting because we always register - thread descriptors from spawn_i. - -Sun May 10 01:51:29 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.h: Renamed ACE_OS::Time_To_The_Beginning to - ACE_OS::FILETIME_to_timval_skew. - - * ace/OS.cpp: Found the problem in ACE_OS::ctime_r. An internal - compiler bug (?) caused the bug. The solution: move the format - string out as a const string instead of putting it in sprintf - directly. Weird. - - * ace/Log_Record.{h,cpp}: Made priority_name_ and its access - function CE friendly. - -Sat May 9 20:09:13 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Thread_Manager.h: Changed the type of lock used by - <thread_desc_freelist_> to ACE_SYNCH_MUTEX. Or else, it won't - compile on platforms that doesn't support thread. Thanks to - Woody Zenfell <woody@arl.wustl.edu> for reporting this. - -Fri May 08 22:29:01 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/SOCK_Dgram_Mcast.cpp (subscribe): CE UNICODE related fix. - -Fri May 8 14:18:46 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Thread_Manager.h (ACE_Thread_Descriptor): Added ACE_INLINE - to declarations of set_next and get_next to get around a bug in - a version of g++. - -Fri May 8 11:57:23 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * ace/Map_Manager.cpp: Fixed a bug where we weren't calling - close_i() when resizing the buffer. - - * ace/Thread_Manager.cpp (set_grp): In - ACE_Thread_Manager::{get,set}_grp we must check to see that we - have a valid pointer after the ACE_FIND. Otherwise a seg fault - occurs. Thanks to Chris Lahey <CLahey@cccis.com> for reporting - this. - -Fri May 08 09:47:50 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-linux-common.h: only use ACE_HAS_POLL with glibc2. - Thanks to Saneyasu <sane@sail.t.u-tokyo.ac.jp> for reporting - this. - - * ace/OS.i (sleep): On Linux without ::poll () (prior to glibc), - copy the ACE_Time_Value argument because the system modifies it. - - * include/makeinclude/platform_osf1_4.0.GNU: moved -lm from LIBS - to MATHLIB. - - * performance-tests/UDP/Makefile: added $(MATHLIB) to LDLIBS. - - * tests/Aio_Platform_Test.cpp (have_asynchio): use - _SC_LISTIO_AIO_MAX instead of _SC_AIO_LISTIO_MAX if it's - #defined. It is on DU 4.0. - -Fri May 08 08:43:42 1998 Steve Huston <shuston@riverace.com> - - * include/makeinclude/platform_hpux_gcc.GNU: Added $(PIC) to - definition of SOFLAGS. Thanks to Kirill Rybaltchenko - <Kirill.Rybaltchenko@cern.ch> for this fix. - - * ace/SOCK_Dgram_Mcast.cpp (subscribe): Added code for Win32 so that - if a subscribe is done without specifying an interface, the mcast - address is subscribed to on each non-loopback interface. This works - around a bug in NT's winsock in the presence of multiple IP - interfaces. Won't hurt 95 - will just run a bit slower than it - otherwise would. - - * examples/Reactor/Multicast/Multicast.{mdp,mak}: Added MSVC 4.2 - workspace for this example. - -Fri May 8 03:43:25 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Thread_Manager.{h,cpp}: Added yet one more member variable - into Thread_Descriptor to keep track of registration of - Thread_Descriptors. By adding this variable, we can avoid an - extra locking in remove_thr for most cases (normal cases ;-). - Thanks to the inspiration from Arturo Montes - <mitosys@colomsat.net.co>. - -Thu May 07 22:06:13 1998 Ben Eng <ben@jetpen.com> - - * ace/config-kcc-common.h,config-linux-{common,kcc}.h: updated - KCC/Linux support, and integrated into config-linux-common.h. - -Thu May 7 20:32:20 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/Service_Configurator/IPC-tests/client/local_dgram_client_test.cpp - (main): Oops, we need to move the unlink() AFTER we create the - file... Thanks to Sandro Doro <doros@aureus.sublink.org> for - reporting this. - -Thu May 07 19:08:22 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.2 released. - -Thu May 7 14:10:41 1998 Carlos O'Ryan <coryan@cs.wustl.edu> - - * ace/Timer_Hash_T.h: - * ace/Timer_Hash_T.cpp: - * ace/Timer_Heap_T.cpp: - * ace/Timer_Wheel_T.cpp: - The classes had a INHERITED typedef for the base class, but - Solaris defines a macro by the same name. This causes very weird - problems with EGCS (and probably other g++ versions). - -Thu May 07 04:15:23 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Profile_Timer.cpp (elapsed_time): Treat Win32 differently - so I can use this function with WinCE Emulation build. The - problem is that Win32 can't convert __int64 to double. - - * ace/OS.{h,cpp} (ACE_Time_Value): (Win32 only) Added a new static - const member (Time_To_The_Beginning) of type DWORDLONG (unsigned - _int64) to adjust the time skew between FILETIME and POSIX time. - Changed the type of _100ns to ULARGE_INTEGER to eliminate - unnecessary computation. - -Wed May 6 23:58:40 1998 Carlos O'Ryan <coryan@swarm.cs.wustl.edu> - - * ace/XtReactor.cpp: - The signature for the open() method of the notify pipe has been - modified. - -Wed May 6 23:28:47 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> - - * examples/Service_Configurator/IPC-tests/client/local_dgram_client_test.cpp: - Fixed a couple of mistakes that were causing the UNIX domain - sockets not to work. Thanks to Sandro Doro - <doros@aureus.sublink.org> for recommending this. - - * performance-tests/Misc/context_switch_time.cpp (svc): An 'i' - was being defined twice, gorp! It's fixed now! - -Wed May 06 22:00:14 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-linux-common.h: only #define - ACE_HAS_4_4BSD_SENDMSG_RECVMSG with __GLIBC__. Thanks - to Chanaka Liyanaarachchi <chanakal@ittc.ukans.edu> for - reporting the lack of CMSG_DATA support on RedHat 4.2. - -Wed May 06 18:35:21 1998 Steve Huston <shuston@riverace.com> - - * ace/ACE.cpp (get_ip_interfaces): Reset buf_len before each call to - get_reg_key to get registry value for device's IP address. It gets - overwritten on each call to get_reg_key. - - * include/makeinclude/platform_mvs.GNU: Added definition for PIC. - Though not related to position-independent-code, it is a switch that - makes shared lib builds work right. Removed the old SOBUILD def. - Thanks to Chuck Gehr for helping with this strategy. - -Wed May 06 16:32:53 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Filecache.h (ACE_Filecache_Handle): Removed - ACE_EXPORT_DECLARE and specified ACE_Export directly for - ACE_Filecache_Handle and ACE_Filecache in calss declarations. - - * ace/Thread_Manager.{h,i,cpp}: A bug was found by Arturo Montes - <mitosys@colomsat.net.co> who noticed that when a thread was - spawned and then exited immediately, its thread descriptor might - get freed before even get registered into the thread table kept - by the Thread_Manager. Although it doesn't make any sense to - spawn a thread just to let it return immediately, a middleware - shouldn't restrict the way how users want to use it. - - I got around this problem by adding a lock into - Thread_Descriptor. Before spawning a thread, the Thread Manager - will first grab the lock. It won't release the lock until - calling append thread, at which point, the Thread_Descriptor of - the thread has been stashed into the table. Removing the - Thread_Descriptor also requires to hold this lock and release - the lock before the Thread_Descriptor is "freed." Therefore, - if a thread exit before its Thread_Manager ever gets a chance to - register it, it will block and waiting. - - The type of the lock is defined by ACE_DEFAULT_THREAD_MANAGER_LOCK - which, by default, is ACE_Thread_Mutex. User can change the - definition by defining in their config.h file. For example, if - you can be sure that all your threads will run for an extended - long time (which, in most case, should be true,) you can disable - this feature by defining this as a ACE_Null_Mutex to speed up - spawning and termination of threads. - - (thread_desc_freelist_): Added a free list to Thread_Manager to - recycle Thread_Descriptor. By default, this free list - pre-allocate 0 Thread_Descriptor and has low-water-mark of 1, - increment count 1 and a huge (25000) high water mark. That is, - if you use a Thread_Manager for an extended period of time, you - won't have to dynamically allocate memory for Thread_Descriptor - for every thread after your system is stable (the thread count - fluctuates between some certain values.) - - There are two ways to change the settings. First, by defining - ACE_DEFAULT_THREAD_MANAGER_LWM, ACE_DEFAULT_THREAD_MANAGER_HWM, - ACE_DEFAULT_THREAD_MANAGER_INC, and - ACE_DEFAULT_THREAD_MANAGER_PREALLOC in your <config.h> file. - This changes the default setting of your ACE. (The global - Thread_Manager use this setting.) Or, you can specify these - values when creating a Thread_Manager. - - * ace/Free_List.cpp (alloc,dealloc): Don't grab the lock in these - two functions. They only get called from add() and remove() - which hold the lock before making the call. Actually, they also - gets called from the constructor and destructor. But that - shouldn't be a problem. - - * tests/Reactor_Notify_Test.cpp (run_test): Moved the #endif of - ACE_HAS_THREADS down to avoid compilation error on non-threaded - platforms. - -Tue May 5 14:12:08 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * include/makeinclude/platform_sco5.0.0-fsu-pthread.GNU: Added a - platform config file courtesy of Arturo Montes - <mitosys@colomsat.net.co>. - -Tue May 05 08:35:18 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-irix6.x-sgic++-nothreads.h: updated the determination - of ACE_SIZEOF_LONG_DOUBLE. Thanks to Bob Laferriere - <laferrie@gsao.med.ge.com> for providing the fix. - - * include/makeinclude/platform_sunos5_g++.GNU: use -gstabs+ instead - of -g on Solaris86. - - * etc/Svc_Conf_l.cpp.diff: updated. It's magic, Nanbor :-) - The problem seems to be due to an old version left in - /tmp/Svc_Conf_l.cpp, which confuses flex. - - * ace/config-linux-common.h,config-g++-common.h: moved - ACE_HAS_PENTIUM (with i386) from config-linux-common.h - to config-g++-common.h. - - * ace/config-linux-common.h: added ACE_HAS_POLL, so we - don't use ::select () in ACE_OS::sleep (). Linux's - ::select () modifies its timeout argument! - - * ace/OS.i (gethrtime): added RDTSC support for all g++ - _and_ ACE_HAS_PENTIUM platforms. - - * ace/config-vxworks5.x.h: added ACE_HAS_PENTIUM with GHS - on Intel platforms. - - * ace/Makefile: for GHS on Intel 8086, build gethrtime.cpp. - It's used to provide a high-resolution time using the - Pentium RDTSC instruction. I don't know how to get - GHS' asm to do it, so it uses g++. - - * ACE-INSTALL.html: added note about carefully installing - egcs on Linux. Thanks to Kurt Sussman <kls@best.com> for - tracking down the cause of mysterious link failures. - -Tue May 05 02:15:49 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Svc_Conf_l.cpp: I know, I know. I shouldn't mess with this - file directly. But I couldn't manufacture this file even with - the stock Svc_Conf.l using Doug's flex. So, I reckon I'll just - check this in now and fix the Svc_Conf_l.diff later. - - * ace/Service_Config.{h,cpp} (process_directive): Standard CE - stuff. - - * WindozeCE/WinAdapter*.*: - * WindozeCE/WindozeCE*.*: Replaced the old adapter for CE with a - new one. The new version allows uses to scroll thru the - "console" output. - -Mon May 04 17:09:39 1998 David L. Levine <levine@cs.wustl.edu> - - * performance-tests/Misc/context_switch_time.cpp: lots of - cleanup. The main changes were the use of ACE_THR_PRI_FIFO_DEF - for the default therad priority, and removal of some - unnecessary thr_yield () calls. - - * tests/Aio_Platform_Test.cpp: added arguments to main (), - removed #includes that are already in ace/OS.h, and added - ACE_START_TEST/ACE_END_TEST calls. - -Mon May 4 13:08:18 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * ace/config-sunos5.6.h: Removed a mysterious "30" at the end of - an #undef. Thanks to J. Russell Noseworthy - <rnosewor@objectsciences.com> for reporting this problem. - -Mon May 04 08:49:09 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/OS.cpp (ACE_Thread_Adapter::invoke): with ACE_NEEDS_LWP_PRIO_SET, - added the call to ACE_OS::thr_setprio () so that the LWP priority - will be set if running in the RT class. Applications no longer - have to be concerned with this. - - * performance-tests/Misc/preempt.cpp (svc): removed - ACE_OS::thr_setprio () calls to set LWP priority, now that ACE - handles that internally. - - * include/makeinclude/platform_*linux.GNU: added "s" to - ARFLAGS, so that ranlib is no longer necessary. - -Sun May 03 22:37:38 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Parse_Node.cpp (open_handle): WinCE doesn't support - ExpandEnvironmentStringA. - - * ace/config-win32-common.h: Only define ACE_HAS_GETRUSAGE when - ACE_HAS_WINNT4 != 0. Thanks to Paul Motuzenko - <p_motuzenko@hotmail.com> for reporting this. - -Sun May 03 01:58:47 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> - - * ACE version 4.5.1 released. - -Sat May 2 14:35:04 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * tests/Reactor_Notify_Test.cpp: Factored out some common code to - make the test more concise. - - * tests/Reactor_Notify_Test.cpp: Modified the test to check - whether our new mechanism for disabling the notify pipe works - correctly. - - * ace/{WFMO,Select}_Reactor[_Impl]: Added the - "disable_notify_pipe" flag in the constructor in order to - disable this feature and save on descriptors if they aren't - required. Thanks to Tom Venturella <tventurell@mdc.com> for - motivating this. - -Sat May 02 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> - - * tests/Aio_Platform_Test.cpp: Included this test program for - testing a platform for Asynchronous I/O options. - * tests/Makefile (BIN): Added Aio_Platform_Test. - -Fri May 01 17:52:32 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/Arg_Shifter.{h,cpp}: Added macros ACE_Export and - ACE_BUILD_DLL respectively. - - * ace/ACE_Library.mak: - * ace/ace_{dll,lib}.dsp: Added Arg_Shifter.cpp into project. - -Fri May 1 13:52:32 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> - - * ace/Addr: Made the destructor for ACE_Addr virtual so that - subclasses can be deleted correctly. Thanks to Wei Chiang - <chiang@horizon.ntc.nokia.com> for reporting this. - - * ace: Added Arg_Shifter from TAO and renamed it to - ACE_Arg_Shifter. - - * ace/IOStream_T.i (recv_n): ACE_IOStream<STREAM>::eof (void) had - a subtle bug if it is called when a get operation (>>) has not - failed. Thanks to James CE Johnson <ace-users@lads.com> for - reporting this bug. - - * examples/Connection/misc/Connection_Handler.cpp: Make sure to - activate() each active object using THR_DETACHED so we don't run - out of threading resources. Thanks to Brad Walton - <brad.walton@transnexus.com> for reporting this. - - * ace/Timer_Queue_Adapters.cpp: Rather than returning the result - of schedule_ualarm(), the - ACE_Async_Timer_Queue_Adapter<TQ>::schedule() method should - return the timer id. Thanks to James Garrison - <jhg@austx.tandem.com> for reporting this. - - * examples/System_V_IPC/SV_Message_Queues: Renamed the so-called - "ACE_Message_Block" to "Message_Block" so it wouldn't be as - confusing. Thanks to Ganapathi <guns@fs.IConNet.NET> for this - suggestion. - -Fri May 01 17:52:32 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/ACE_Library.mak: - * ace/ace_{dll,lib}.dsp: Added Arg_Shifter.cpp into project. - -Fri May 01 14:09:21 1998 Steve Huston <shuston@riverace.com> - - * ace/OS.h: Changed ACE_hrtime_t from signed to unsigned on Win32 - to insure correct results from ACE_High_Res_Timer::elapsed_time - calculations. Fixes bug P87. - -Fri May 01 11:52:47 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ace/OS.h: Forgot to redefine ASYS_INLINE after #undef it. - - * ace/OS.i (last_error): On Win32, this should also update errno - after calling SetLastError (). Thanks to Steve for pointing - this out. Fixes bug P88. - -Fri May 01 10:01:09 1998 David L. Levine <levine@cs.wustl.edu> - - * ace/config-sunos5.6.h: replaced config-sunos5.6-sunc++-4.x.h - with this config file, which supports both Sun C++ and g++. - - * ace/OS.i (gethrtime): for the default (::gettimeofday) case, - use 64-bit instead of 32-bit arithmetic by casting to ACE_hrtime_t. - - * ace/Basic_Types.{h,i}: added ACE_U_LongLong::operator *. - - * ace/Env_Value_T.cpp: added #include of Env_Value_T.h. - -Fri May 1 00:35:40 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * include/makeinclude/wrapper_macros.GNU - (ACE_LDSO_Version_Number): Fixed the problem of not able to - parse a formal release number from ace/VERSION. - -Thu Apr 30 15:53:58 1998 Nanbor Wang <nanbor@cs.wustl.edu> - - * ACE.{h,i,cpp}: - * DEV.{h,i,cpp}: - * DEV_Connector.{h,i,cpp}: - * DEV_IO.{h,i,cpp}: - * Date_Time.{h,i,cpp}: - * FIFO_Recv.{h,i,cpp}: - * FIFO_Recv_Msg.{h,i,cpp}: - * FIFO_Send.{h,i,cpp}: - * FIFO_Send_Msg.{h,i,cpp}: - * FILE.{h,i,cpp}: - * FILE_Connector.{h,i,cpp}: - * FILE_IO.{h,i,cpp}: - * IO_SAP.{h,i,cpp}: - * IPC_SAP.{h,i,cpp}: - * LSOCK.{h,i,cpp}: - * LSOCK_CODgram.{h,i,cpp}: - * LSOCK_Connector.{h,i,cpp}: - * LSOCK_Dgram.{h,i,cpp}: - * LSOCK_Stream.{h,i,cpp}: - * Log_Record.{h,i,cpp}: - * Pipe.{h,i,cpp}: - * SOCK.{h,i,cpp}: - * SOCK_CODgram.{h,i,cpp}: - * SOCK_Connector.{h,i,cpp}: - * SOCK_Dgram.{h,i,cpp}: - * SOCK_Dgram_Bcast.{h,i,cpp}: - * SOCK_Dgram_Mcast.{h,i,cpp}: - * SOCK_IO.{h,i,cpp}: - * SOCK_Stream.{h,i,cpp}: - * SPIPE.{h,i,cpp}: - * SPIPE_Connector.{h,i,cpp}: - * SPIPE_Stream.{h,i,cpp}: - * SV_Message_Queue.{h,i,cpp}: - * SV_Semaphore_Complex.{h,i,cpp}: - * SV_Semaphore_Simple.{h,i,cpp}: - * UPIPE_Acceptor.{h,i,cpp}: - * UPIPE_Connector.{h,i,cpp}: Added inline control for these - supposedly default inline functions. - - * ace/config-WinCE.h: Added ACE_LACKS_INLINE_FUNCTIONS. - - * ace/OS.h: Added a new macro ASYS_INLINE for platforms that don't - support inline properly. This is controlled by the macro - ACE_LACKS_INLINE_FUNCTIONS. - - Walked thru all macros and indented them properly. - - * ace/README: Added documentation for ACE_LACKS_INLINE_FUNCTIONS. |