diff options
Diffstat (limited to 'ACE/ChangeLogs/ChangeLog-98a')
-rw-r--r-- | ACE/ChangeLogs/ChangeLog-98a | 6588 |
1 files changed, 6588 insertions, 0 deletions
diff --git a/ACE/ChangeLogs/ChangeLog-98a b/ACE/ChangeLogs/ChangeLog-98a new file mode 100644 index 00000000000..c5daa4d7ee1 --- /dev/null +++ b/ACE/ChangeLogs/ChangeLog-98a @@ -0,0 +1,6588 @@ +Wed Apr 29 18:55:13 1998 David L. Levine <levine@cs.wustl.edu> + + * ACE version 4.5 released. + +Wed Apr 29 12:25:05 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/config-lynxos.h: added ACE_POLL_IS_BROKEN so that + ACE_OS::sleep () uses select () instead of poll (). + + * tests/Map_Manager_Test.cpp: added a ssize_t loop index that's + used to avoid signed/unsigned comparisons. + +Tue Apr 28 23:08:10 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Hash_Map_Manager.cpp: Bugs fixed. + + * tests/Map_Manager_Test.cpp: Added assertion tests on the number + of iterations to ensure the test does run correctly. + + * tests/Map_Manager_Test.cpp (main): Disabled the VERBOSE_LITE + Log_Msg flag before starting the real test and reenabled it + after the tests. + +Tue Apr 28 06:49:50 1998 David L. Levine <levine@cs.wustl.edu> + + * ACE-INSTALL.html,os-patches/linux-patches.html: updated + Linux glibc-2 info. ACE works with glib-2.0.7-7, unmodified. + + * ace/config-g++-common.h: added + ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES with egcs. egcs 1.0.2 + won't compile netsvcs/lib without it. + + * include/makeinclude/platform_vxworks5.x_ghs.GNU: fixed location + of parenthesis in ppc check. Thanks to Brian Mendel + <bmendel@mdc.com> for reporting this. + + * ace/High_Res_Timer.cpp: initialize global_scale_factor_ to 1000 + on Linux. + +Mon Apr 27 07:18:54 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Service_Types.cpp: Changes to use typedef + ACE_Service_Object_Exterminator to define <gobbler>. Thanks to + Chuck Gehr for reminding this. + + * ace/Service_Object.h (ACE_Service_Object_Ptr): + * netsvcs/servers/main.cpp (main): Added more comments on how to + use ACE_Service_Object_Ptr with ACE_SVC_INVOKE correctly. + + * ace/OS.h (ACE_Service_Object_Exterminator): Define the type as + extern "C" function pointer to make MVS happy. Thanks to Chuck + Gehr for pointing this out. + + * ace/Service_Object.i (ACE_Service_Object_Ptr): Delete the + underlying Service_Object after calling its fini() method. + Thanks to Tom Arbuckle <arbuckle@uran.informatik.uni-bonn.de> + for pointing this out. + +Sun Apr 26 21:50:07 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/Svc_Conf_l.cpp,etc/Svc_Conf_[ly].cpp.diff,etc/README: + updated the patch files. Thanks to J. Russell Noseworthy + <rnosewor@objectsciences.com> for reporting problems with + them. + +Sun Apr 26 01:05:20 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.43 released. + +Sat Apr 25 17:47:31 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/OS.h (ACE_FACTORY_DECLARE): Added explicit casting for + gobbler to prevent some weird compiler from complaining too + much. + + * netsvcs/lib/Server_Logging_Handler_T.cpp + (ACE_Server_Logging_Acceptor_T): We can't initialize the + <scheduler_> with a temporary object. Its content gets deleted + right after the constructor exits. + +Sat Apr 25 11:55:01 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * ace/Containers.h (class ACE_Double_Linked_List): Added + comments.(<class T>, the parameter for this class should have + T* next_ and T* prev_ fields in it. + + * ace/Containers.h (class ACE_Double_Linked_List): Corrected the + documentation for the insert_head and insert_tail functions. + +Fri Apr 24 22:36:37 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/Service_Config.cpp (process_directive): added + ACE_UNUSED_ARG (directive). + +Fri Apr 24 18:40:08 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/Asynch_Acceptor.cpp (handle_accept): Fixed this method so + that it has better flexibility and error checking. Also, added + hooks so that users can do validation of remote connections. + Also, a flag is checked before accept is reissued. Thanks to + Jason Katz <Jason@rtswireless.com> for reporting these upgrades. + +Fri Apr 24 16:33:14 1998 Steve Huston <shuston@riverace.com> + + * ace/OS.h: ACE_FACTORY_DEFINE - in the generated gobble function, + use the indicated object type to do the delete so 1) the aC++ + compiler won't complain, and 2) so the service object is + destructed properly. + + * tests/Env_Value_Test.cpp: Made it compile on Solaris. + +Fri Apr 24 15:45:38 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/config-sunos5.5-*.h: set ACE_THR_PRI_FIFO_DEF to 30, because + sched_get_priority_min is not implemented on Solaris 2.5.x. + +Fri Apr 24 09:12:39 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tests/Env_Value_Test.cpp: Made it UNICODE safe. + + * tests/version_tests/version_tests.dsw: + * tests/version_tests/OrdMultiSet_Test.dsp: Added new project + file. + +Fri Apr 24 09:09:49 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/config-linux-common.h: added ACE_HAS_4_4BSD_SENDMSG_RECVMSG. + Thanks to Sandro Doro <doros@aureus.sublink.org> for recommending + this. + +Fri Apr 24 04:12:39 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tests/version_tests/version_tests.dsw: + * tests/version_tests/OrdMultiSet_Test.dsp: Added new project + file. + +Thu Apr 23 22:52:20 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tests/tests.dsw: Somehow, Thread_Mutex_Test.dsp got removed from + the workspace. + + * tests/Thread_Mutex_Test.dsp: Update include/lib path. + +Fri Apr 24 00:12:32 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.42 released. + +Thu Apr 23 22:28:02 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/Service_Config: Began adding support for the new service + configurator feature that will make it possible to dynamically + configure services that are read in from the command-line. + Thanks to Karlheinz for requesting this. + + * ace/Parse_Node.cpp (open_handle), + ace/Svc_Conf.l: The line for the service object for the service + configurator contains the DLL specifications. Previously, it + was possible to specify either the absolute path name of the DLL + or only the name of the DLL itself. For the latter, the service + configurator is searching for the DLL using the PATH environment + variable. If we used the absolute path name it was not + possible to use environment variables in the string. It is now + possible to do this for Win32 using their %foo% notation. + Thanks to Andreas Schuelke <Andreas.Schuelke@med.siemens.de> for + providing these fixes. + + * etc/Svc_Conf_y.cpp.diff, + etc/Svc_Conf_l.cpp.diff, + ace/Makefile: Change the YY* symbols to ACE_YY* symbols to + avoid clashes if we link with other flex/yacc generated code. + + * apps/Gateway/Gateway/gatewayd.cpp, + apps/Gateway/Peer/peerd.cpp: Added a check to see if the + svc.conf file exists before trying to parse the arguments. + Thanks to Dani Flexer <danif@ivory-sw.com> for reporting this. + + * apps/Gateway/Peer/Options.cpp (parse_args): Added the "C:" + qualifier to the get_opt string. Thanks to Dani Flexer + <danif@ivory-sw.com> for reporting this. + + * ace/Activation_Queue.h: Extended ACE_Activation_Queue so that it + can be a proper base class by making the destructor virtual and + putting the methods into the protected section. Thanks to Garry + Brother <gmbroth@romulus.ncsc.mil> for this. + + * ace/XtReactor.cpp: Commented out most of the logic if we're + running on Win32 because (1) it doesn't work correctly since + HANDLEs are not ints and (2) there's no X windows on Win32 + anyhow... + + * ace/XtReactor.h: Made ACE_XtReactor be ACE_Export'd. Thanks to + Kirill Rybaltchenko <Kirill.Rybaltchenko@cern.ch> for reporting + this. + +Thu Apr 23 13:54:33 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/Malloc.i (free): added ACE_UNUSED_ARG (ptr) if ACE_NDEBUG. + + * include/makeinclude/platform_chorus.GNU: include dtool/htgt-cf.rf + from $(MERGEDIR) instead of $(CLASSIXDIR). Thanks to + Wei Chiang <chiang@horizon.nokia.com> for this update. + +Wed Apr 22 22:13:57 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/ace_bcc.ide: Added a new IDE for the Borland C++ compiler. + Thanks to Valik Solorzano Barboza <valik@geodan.nl> for + this. + + * ace/Msg_WFMO_Reactor.cpp (wait_for_multiple_events): Fixed a + missing semi-colon. Thanks to Jorn Jensen <jornj@funcom.com> + for reporting this. + +Wed Apr 22 21:53:12 1998 David L. Levine <levine@cs.wustl.edu> + + * config-linux-kcc.h: added #define ACE_SIZEOF_LONG_DOUBLE + to 12 on i386. Thanks to Ben Eng <ben@jetpen.com> for + reporting this. + +Tue Apr 21 18:38:22 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/ace_ce_dll.dsp: Removing a deprecated /windowsce:noconvert + linker flag. + +Mon Apr 20 15:39:42 1998 Steve Huston <shuston@riverace.com> + + * ace/Handle_Set.cpp: Access fds_bits elements using an fd_mask + pointer rather than array indexing of the fds_bits array itself. + HP-UX 11 plays some games with the fd_mask type - fd_mask is defined + as an int32_t, but the fds_bits is an array of longs. This makes + plainly indexing through the array by hand tricky, since the FD_* + macros treat the array as int32_t. So the bits are in the right + place for int32_t, even though the array is long. This, they say, + is to preserve the same in-memory layout for 32-bit and 64-bit + processes. So, we play the same game as the FD_* macros to get + the bits right. See /usr/include/sys/_fd_macros.h. + On all other systems, this amounts to practically a NOP, since this + is what would have been done anyway, without all this type jazz. + +Sat Apr 18 13:59:55 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/Naming_Context.h: removed trailing ';' at end of + ACE_FACTORY_DECLARE. + + * ace/OS.*,Sched_Params.{h,cpp}: added support on Solaris + for setting the LWP priority. It is necessary to set the + LWP priority for bound threads in the Real-Time scheduing + class. Thread priority is essentially ignored. See the + pthread_setschedparam man page for more info. Thanks to + Fred Kuhns <fredk@arl.wustl.edu> for helping track this problem + down. + + There is one drawback: to set the LWP priority, in ACE, + a thread must set its own priority. There are examples + in performance-tests/Misc/preempt.cpp: + + High_Priority_Task::svc (void) + { + // On Solaris 2.5.x, the LWP priority needs to be set. + // This is the ACE way to do that . . . + ACE_OS::thr_setprio (priority_); + + I don't know of a way to set the LWP priority for another + thread. The problem is that there is no way that I know of + to find the LWP ID of another (bound) thread. A thread can + find the ID of its own LWP using _lwp_self (). + + * ace/config-sunos5*,README: added ACE_HAS_PRIOCNTL and + ACE_NEEDS_LWP_PRIO_SET. + + * ace/config-osf1-4.0.h: added ACE_HAS_PRIOCNTL and + ACE_LACKS_PRI_T. + + * performance-tests/Misc/preempt.cpp (svc): set LWP priority + (on Solaris) by having the thread set its own priority. + This test now passes on Solaris 2.5.1! + + * ace/High_Res_Timer.cpp (reset): initialize by assignment with + 0 instead of using memset. Thanks to Carlos for noticing this. + + * ace/Object_Manager.cpp (ACE_Object_Manager ctor): allocate + registered_objects_ after the allocation of ACE_STATIC_OBJECT_LOCK, + just to be safe. + +Sat Apr 18 01:28:36 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/Timeprobe.h (class ACE_Timeprobe): Changed ACE_Timeprobe to + use ACE_OS::gethrtime(). + +Sat Apr 18 01:14:30 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/OS.cpp (start and stop): start and stop should only be done + when ACE_Countdown_Time::max_wait_time_ is non-zero. + + * ace/Acceptor.cpp (open): Only set the reactor if calls to open() + and register_handler() succeeds. + +Fri Apr 17 21:00:21 1998 Steve Huston <shuston@riverace.com> + + * ace/config-hpux11.h: Changes and comments around the + ACE_DEFAULT_BASE_ADDR definition for 64-bit HP-UX 11. + + * ace/Naming_Context.cpp + * ace/Malloc_T.cpp + * ace/Memory_Pool.cpp: Hacks to work around bugs in HP-UX aC++ in + 64-bit mode on HP-UX 11. + + * ace/OS.i: Addition of a facility that allows config.h to specify + additional flags for ACE_OS::mmap, above what's set by the caller. + It's done using a new definition, ACE_OS_EXTRA_MMAP_FLAGS. + This was added primarily to allow setting of the MAP_ADDR32 flag + on HP-UX 11 if the ACE_DEFAULT_BASE_ADDR is set in the 32-bit range + to allow 32-bit and 64-bit programs to map the same region. + +Fri Apr 17 11:40:38 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/OS.cpp (invoke): Should check against null thr_desc, not + thr_desc->flag (). Thanks to "Erickson, Jack (CICG - NY GFX)" + <JErickson@exchange.ml.com> for reporting this. + + * ace/OS.h (ACE_Service_Object_Exterminator): Typedef of ACE + factory cleanup funciton. + (ACE_FACTORY_{DECLARE,DEFINE}): Added an extra argument to pass + back destructor for the object created by the factory. Changed + the ACE_FACTORY_DEFINE to generate this destructor function to + pair with factory function so that we can deallocate the object + in the same heap it was created. + (ACE_SVC_INVOKE): This will now pass in 0, which means we don't + want to use the destructor function. + + * ace/Parse_Node.{h,cpp} (symbol): Added an extra argument to get + back the destructor function from ACE_FACTORY. Only + Function_Node actually uses it. + (ACE_Function_Node::symbol): Initialize the Service_Object with + added destructor function ptr so it will get destructed in the + "right place". + + * ace/Service_Config.{h,cpp} (load_static_svcs): Invoke the + factory method with added argument to get back the destructor + function and then, pass it in to ace_create_service_type + function. + (ACE_Service_Manager): Changed to use the more generic + ACE_FACTORY_DEFINE than using ACE_SVC_FACTORY_DEFINE. + (ACE_SERVICE_ALLOCATOR): Must match with signature of the + new factory method. + + * ace/Service_Type.{h,cpp} + (ACE_Service_Object_Type,ACE_Service_Type_Impl): Keep the + destruction function in these object, if use provides one, then + use it to destruct the object, otherwise, just use delete. + + * ace/Naming_Context.{h,cpp}: Changed to use + ACE_FACTORY_{DEFINE,DECLARE}. + + * ace/Object_Manager.cpp: Changed the signature of + Service_Manager. + + * ace/Svc_Conf.h: Changed the signature of + ace_create_service_type. + + * ace/Svc_Conf_y.cpp: + * ace/Svc_Conf.y: Try to get the destruction function from + factories in svc_location. + (ace_create_service_type): Pass in the destruction function if + provided one. + +Fri Apr 17 08:31:38 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/Signal.cpp (dispatch): Fixed a typo. Thanks for David + Levine's help pointing this out. + +Thu Apr 16 21:12:48 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/Signal.cpp: There was a major portability violation in the + ACE_Sig_Handler::dispatch() method, which was previously + acquiring a mutex lock. This is NOT permitted in the POSIX + signal handler spec. In addition, the implementation had other + nasty consequences related to dynamic allocation of memory in + the signal handler, which has a bad habit of breaking + non-reentrant uses of "new". The consequence of all this is + that you really shouldn't be modifying signal handlers via the + Reactor in multiple threads of control. In general, threads and + signals are just plain evil, so they are best addressed via + sigwait() anyhow... + + Thanks to Sumedh and Naga for first tracking this down. + +Thu Apr 16 20:51:42 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/config-linux-pthread.h: added ACE_HAS_THREADS. + ace/config-irix6.x-g++.h: added ACE_HAS_THREADS and ACE_MT_SAFE. + Thanks to Dave Tallman <tallman@acsys.com> for reporting these. + +Thu Apr 16 04:14:53 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/Timeprobe: + + This class is used to instrument code. This is accomplished by + inserting time probes at different location in the code. + ACE_Timeprobe then measures the time difference between two time + probes. + + This class provides a lightweight implementation for measuring + the time required to execute code between two time probes. When + a time probe executes, it records the time, the id of the + calling thread, and an event description. The event description + can either be an unsigned long or a string (char *). If string + are used, care must be taken cause only pointer copies are done + and the string data is *not* copied. + + The recorded time probes can then be printed by calling + print_times(). If you have used unsigned longs as event + descriptions in any of your time probes, you must provide an + event description table that maps the unsigned longs to readable + strings. This map is a simple array of strings, and the event + number is used as the index into the array when looking for the + event description. If you have only used strings for the event + description, this map is not necessary. + +Wed Apr 15 23:01:08 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Thread_Manager.cpp (exit): Don't delete the ACE_Thread_Exit + object of the thread here. ACE_Thread_Manager::exit will be + called back again when performing TSS cleanup. Thanks to Dave + Tallman <tallman@acsys.com> for the bug report. + +Wed Apr 15 17:12:14 1998 Steve Huston <shuston@riverace.com> + + * ace/config-hpux-11.x-hpc++.h: Explicitly set ACE_SIZEOF_LONG based + on compiler switch for processor/memory model. + +Wed Apr 15 16:25:38 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/WFMO_Reactor.cpp (handle_signal): Changed break to return 0. + + * ace/OS.cpp (uname): We have to make sure that the size of + (processor + subtype) is not greater than the size of + name->machine. So we give half the space to the processor and + half the space to subtype. The -1 is necessary for because of + the space between processor and subtype in the machine name. + + Thanks to Andrew Marchewka + (Andrew_Marchewka@SRT.CCMAIL.compuserve.com) for suggesting + these changes. + +Wed Apr 15 08:52:52 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Reactor_Exceptions_Test (handle_input): removed + ACE_NOTREACHED wrapper around return statement at end. + Now that the previous statement is a function call, the + compiler (cxx) doesn't detect that the statement can't + be reached. + +Wed Apr 15 01:03:42 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/OS.i (ACE_SOCKCALL_RETURN): Added a work-around for a + Borland 5.02 compiler bug. The key turns out to be the + throw-away intermediate assignment statement to correctly keep + the value of WSAGetLastError(). Thanks to Dave Tallman + <tallman@acsys.com> for reporting this. + +Tue Apr 14 23:35:19 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Profile_Timer.cpp (elapsed_rusage): The differences of user + time and system time for GETRUSAGE were not calculated. + + * performance-tests/Synch-Benchmarks/Options.cpp (print_results): + Added dump code for ACE_HAS_GETRUSAGE. + + * ace/ace_{dll,lib}.dsp: Removed Service_Main.cpp from the + projects. We don't really need them in ACE DLL. + + * ace/Service_Main.cpp: Removed the file from CVS. Lots of + Service_Config examples can be found all round ACE directories + so we really don't need it here anymore. + +Tue Apr 14 20:30:53 1998 Steve Huston <shuston@riverace.com> + + * ace/OS.i (mutex_init, cond_init): Added sections to properly + handle error conditions on platforms which claim + ACE_HAS_PTHREADS_1003_DOT_1C. + +Tue Apr 14 16:39:42 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/ACE.cpp (ldfind): Fixed a miscalculated string size. + Thanks to Jason Katz <Jason@rtswireless.com> for reporting the + bug. + +Tue Apr 14 14:33:33 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Thread_Manager_Test.cpp (main): don't try to suspend/resume + DCE threads, because they don't support it. Added a start barrier, + to ensure that worker threads set up their signal handlers before + the main thread tries to signal them. Drop DEFAULT_ITERATIONS from + 100000 to 10000 because 100000 takes a long time on a 200 MHz + Pentium. + +Tue Apr 14 12:59:04 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tests/Hash_Map_Manager_Test.cpp: Changed the consts to + size_t, as well... + +Tue Apr 14 11:40:23 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Hash_Map_Manager.cpp: made type, size_t, of String_Table_size + explicit, instead of using the default type of int. + +Tue Apr 14 10:10:46 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.41 released. + +Tue Apr 14 07:19:25 1998 David L. Levine <levine@cs.wustl.edu> + + * bin/make_release (create_kit): ACE+TAO instead of ACE_TAO. + Thanks to Doug for reporting this. + + * ace/OS.h (ACE_Thread_Adapter): added friend class declaration + to avoid g++ warning: only defines a private destructor and + has no friends. + + * ace/OS.cpp (ACE_Thread_Adapter::invoke): only declare local + thr_desc if ACE_HAS_WIN32 and ACE_HAS_MFC. + +Tue Apr 14 00:46:05 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.40 released. + +Mon Apr 13 19:19:13 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/OS: Made the destructor of ACE_Thread_Adapter private to + keep people like Russ from abusing this class... ;-) + + * ace/OS.cpp (invoke): We were incorrectly deleting this and then + using one of its fields! Thanks to the ever-vigilant Russ + Noseworthy <rnosewor@objectsciences.com> for reporting this. + + * ace/Log_Record.cpp (print): Added VERBOSE_LITE support to the + code so we don't spew out quite so much information. + + * ace/Log_Msg.cpp (log): Replaced all calls to + ACE_Log_Record::print() so that they pass the + ACE_Log_Msg::flags_ parameter. + + * ace/Log_Record.h: Changed the 'int verbose' parameter to 'u_long + verbose_flag' parameter so that we can pass in the + ACE_Log_Msg::flags_ and check to see what they are enabled with! + + * tests/test_config.h: Changed VERBOSE to VERBOSE_LITE so we don't + have quite so much junk printed out for the tests! + + * ace/Log_{Priority,Record}: Added a new flag called VERBOSE_LITE + that isn't quite as verbose as VERBOSE (it only prints things + that can change between calls to the ACE_Log_Msg::log() method). + In addition, also changed the ACE_Log_Record::print() method so + it prints the string format for the ACE_Log_Priority types. + This is a lot more legible than printing the numbers. + + * ace: Removed all uses of ACE_HAS_WILDCARD_BIND. This is now the + default behavior. If there's some weird platform that DOESN'T + have this behavior, we'll deal with that by setting the + ACE_LACKS_WILDCARD_BIND flag. + + * ace/OS.cpp (invoke): Removed the (void *) cast on delete this. + It wasn't necessary. Thanks to Steve Huston and David Levine + for reporting this. + +Mon Apr 13 19:12:49 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/DEV_Connector.i (ACE_DEV_Connector): + * ace/Asynch_IO.cpp (accept,addresses): UNICODE changes. + +Mon Apr 13 18:05:26 1998 Steve Huston <shuston@riverace.com> + + * tests/Thread_Manager_Test.cpp: Disabled the suspend/resume action + for Pthreads platforms. + +Mon Apr 13 10:18:59 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/High_Res_Timer.i (hrtime_to_tv): in tv.usec calculation, + moved the cast to long to after the division by global_scale_factor_. + This is necessary for compatibility with ACE_U_LongLong. + + * bin/make_release (get_versions): use $KIT instead of hard-coded + ACE, so that it works with TAO. (tag): translate dots to + underscores, because CVS doesn't allow dots in tags. Thanks to + Doug and Hans Rohnert <rohnert@scr.siemens.com> for reporting these. + +Sun Apr 12 21:11:53 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/OS.h: Prevent using ACE_HAS_MOSTLY_UNICODE_APIS without UNICODE. + + * ace/OS.cpp (thr_create): + * ace/Thread_Manager.cpp (spawn_i): Removed directive + ACE_NO_THREAD_ADAPTER and its related code. + +Sat Apr 11 22:20:51 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tests/Thread_Manager_Test.cpp (main): Don't check execute result + of kill_grp statement if we are running on Win32 platforms. + thr_kill is not supported there. + +Sat Apr 11 20:00:12 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.39, released Sat Apr 11 20:00:12 1998. + +Sat Apr 11 19:58:56 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * Nanbor removed a bunch of *.MAK files, which were quite large + and taking up lots of space. + +Sat Apr 11 18:58:24 1998 Steve Huston <shuston@riverace.com> + + * ace/INET_Addr.cpp: Fixed missing paren. + + * netsvcs/servers/servers4.mdp: Added ..\lib to include directories + for Release build. + +Sat Apr 11 13:28:19 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.38, released Sat Apr 11 13:28:19 1998. + +Sat Apr 11 12:46:08 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/config-mvs.h: Added some ACE_SIZEOF_* macros for MVS. + Thanks to Chuck Gehr <gehr@sweng.stortek.com> for reporting + this. + + * ace/INET_Addr.cpp: Added a newline and a better explanation of + what went wrong if an error occurs. Thanks to Luca for + reporting this. + +Fri Apr 10 02:42:35 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Log_Msg.{h,cpp} (log_hexdump): + * ace/ACE.{h,cpp} (format_hexdump): The buffer to be hex-dumped should + always be of type (const char *) no matter we have UNICODE + system strings or not. + + * ace/OS.{h,cpp} (ACE_CE_Bridge): This new class bridges + a text-based ACE programs with a default window that prints out + the default ACE_Log_Msg output. + + CE always uses non-static object manager and we replace the + original main function with a well know entry that the main + window program can call back from to invoke the ACE program in a + separate thread. + + * ace/Log_Record.{h,cpp}: Added support for passing strings as + windows messages. + + * ace/Log_Msg.cpp (log): Specialized CE support. + + * windoezCE: The template windows program that receives ACE + messages. See CE-Status or README file for more info. + +Fri Apr 10 00:41:23 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tests/Reactor_Exception_Test: Tidied the test up a bit. Thanks + to Bob Laferriere <laferrie@gsao.med.ge.com> for suggesting + this. + + * tests/test_config.h: Enabled ACE_Log_Msg::VERBOSE since it gives + more information that can be useful for debugging. + +Fri Apr 10 00:04:03 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/Proactor.cpp (post_completion): Added a new method to the + Proactor. It can be used to post a result to the completion port + of the Proactor. If errors occur, the result will be deleted by + this method. If successful, the result will be deleted by the + Proactor when the result is removed from the completion port. + Therefore, the result should have been dynamically allocated and + should be orphaned by the user once this method is called. + + Changed the timer mechanism to use this new method rather than + posting to the completion port directly. + + Thanks to Jason Katz <Jason@rtswireless.com> for the + improvements. + +Thu Apr 9 17:31:47 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * Updated all the Makefile dependencies and also added the + appropriate CVS strings to all Makefiles. + + * examples/IPC_SAP/SOCK_SAP: Improved both the CPP-unserver.cpp + and CPP-inserver.cpp programs so they work identically wrt + concurrency and logic. + + * ace/LSOCK_Stream.cpp: Fixed the get_remote_addr() and + get_local_addr() methods to work correctly. Apparently, + getpeername() doesn't work appropriately for UNIX domain + sockets, so we simply have both methods call getsockname(). + Thanks to Chuck Gehr for pointing out this problem. + + * ace/FILE_IO.cpp (get_local_addr): The RHS has an additional + field that is the FILE name, which did not get copied. Added an + ACE_dynamic_cast() to do the right thing here. Thanks to Ganesh + Pai for reporting this. + + * ace/Malloc*: Factored out all the code in ACE_Static_Allocator + into a new non-templatized base class called + ACE_Static_Base_Allocator so that we don't trigger multiply + defined symbols when we use this in TAO. Thanks to Carlos for + this very insightful trick! + + * tests/Thread_Manager_Test.cpp (main): Added ACE_ASSERT + statements so that we bailout if things go awry. Thanks to + Robert J. Laferriere <laferrie@gsao.med.ge.com> for reporting + this. + +Thu Apr 09 18:06:53 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/High_Res_Timer.i (hrtime_to_tv): Cast the parameter for usec + to long. It can be fixed because of Darrell's vigilance. + +Thu Apr 09 17:55:21 1998 Steve Huston <shuston@riverace.com> + + * ace/config-hpux-10.x.h, config-hpux11.h, config-aix-4.2.x.h: + Added ACE_HAS_WILDCARD_BIND. + +Thu Apr 09 16:43:26 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/ACE.*: Changed *_version() functions to be non-inlined. + After this change, inclusion of ace/Version.h can be moved into + ACE.cpp. This change helps as all of ACE doesn't have to be + compiled after Version.h changes (Version.h changes every time a + new beta is produced). + +Thu Apr 9 12:27:23 1998 Carlos O'Ryan <coryan@swarm.cs.wustl.edu> + + * tests/Hash_Map_Manager_Test.cpp: POOL_SIZE was simple "const + POOL_SIZE" I changed that to "const int POOL_SIZE". Added + missing template instantiation for Static_Allocator. + +Thu Apr 09 10:50:18 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/WFMO_Reactor.cpp (dump): Fixed signed/unsigned mismatched + warnings on NT. Thanks to Darrell for noticing the bug. + +Thu Apr 9 09:37:08 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/Malloc_T: Moved the ACE_Static_Allocator::dump() method into + the Malloc_T.cpp file so we'd get a vtable... Thanks to David + Levine for reporting this. + + * tests/Hash_Map_Manager_Test.cpp (run_test): Added a return + value to make G++ and David Levine happy ;-). + +Thu Apr 09 10:50:18 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/WFMO_Reactor.cpp (dump): Fixed signed/unsigned mismatched + warnings on NT. Thanks to Darrell for noticing the bug. + +Wed Apr 08 17:29:01 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/SOCK_Acceptor.cpp (open): There was a boo-boo in open() as + we were only calling bind_port() and ignoring the port supplied + by the user. Call bind_port only if port == 0. + +Wed Apr 8 01:09:52 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/Malloc_T: Added a new ACE_Static_Allocator class, which is + highly optimized for allocations where (1) all the memory size + is known in advance and (2) no deletions are done. This class + will ultimately be used in TAO to improve it's startup + performance for operation tables initialization. + + * tests/Hash_Map_Manager_Test.cpp: Enhanced the test so that it + uses the new ACE_Static_Allocator feature. + + * ace/OS: Added support for the rename() method. Thanks to Ganesh + Pai for suggesting this. + + * ace/config-win32-common.h, + config-sunos*.h: + config-irix-6*.h: + Enable the ACE_HAS_WILDCARD_BIND macro. + + * ace/ACE.cpp: Modified the bind_port() method so that it is more + efficient on platforms that interpret a 0 port to bind() as a + request for the kernel to select the port. Thanks to Chris + Cleeland for pointing this out. + + * ace/Hash_Map_Manager: Made a bunch of minor changes to fix some + subtle deadlocks with intra-class locking. + + * tests/Map_Manager_Test.cpp: Restructured the tests so that we + don't keep recomputing end() and rend() of the map in each loop + iteration! + +Wed Apr 08 10:02:16 1998 David L. Levine <levine@cs.wustl.edu> + + * bin/make_release: added this script that creates ACE and/or + TAO releases. + + * Makefile: added support for make_release. See comments at + the top of the Makefile. The old release mechanism has + been retained; to use it: make release-old or + make releaseall-old. + +Wed Apr 08 00:37:33 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/ACE.cpp (bind_port): This call was not flexible enough as it + always assumed that the user wanted INADDR_ANY. Added an extra + parameter to this function where the user can pass in the addr + that she is interested in. This extra parameter defaults to + INADDR_ANY, so no existing should break. + + * ace/SOCK_Acceptor.cpp (open): Not enough information was being + passed to the new ACE::bind_port() call. Changed open() so that + the sin_addr part of the address is passed along to + ACE::bind_port(). + +Tue Apr 07 15:25:08 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/config-irix*.h: fixed determination of ACE_SIZEOF_LONG_DOUBLE, + depending on system release and ABI. Thanks to Robert J. + Laferriere <laferrie@gsao.med.ge.com> for figuring it all out. + +Mon Apr 06 01:29:35 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/ace_ce_dll.dsp: Update project files. Rearrange dll filenames a + bit so that it's eaier to have various ACE libraries for various + CE supported CPUs. Files for every supported CPU are generated + under CPU specific directory as follow: + + CPU Directory Name + Sh3 series ace/WCE/SH aced.{lib,dll} ace.{lib,dll} + MIPS series ace/WCE/MIPS aced.{lib,dll} ace.{lib,dll} + x86 emulation ace/WCE/x86em aced.{lib,dll} ace.{lib,dll} + + * ace/config-win32-common.h: Prevent CE from using wsock32.lib. + +Sun Apr 05 16:44:31 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/OS.h (ASYS_ONLY_MULTIBYTE_STRING): New macro. Used to + activate wchar string to char string conversion only under CE, + under other cases, the argument to this macro is treated as + a regular char string. + + * ace/INET_Addr.cpp (set): Changed to use + ASYS_ONLY_MULTIBYTE_STRING. This has gotten out of control + now. I need to think of a better name for these macros. + +Tue Apr 07 09:30:28 1998 David L. Levine <levine@cs.wustl.edu> + + * include/makeinclude/platform_lynxos.GNU: set up PATH when + cross-compiling. With this change, users don't need to + do anything special to their platform_macros.GNU or + environment to cross-compile for LynxOS (assuming that + the default platform_lynxos.GNU configuration is suitable). + +Mon Apr 06 16:28:32 1998 Steve Huston <shuston@riverace.com> + + * examples/Service_Configurator/IPC-tests/server/svc.conf: Corrected + library name to load tests from. Thanks to Sandro Doro + <XDS@necsy.it> for noticing there was a problem here. + +Sun Apr 05 10:20:26 1998 David L. Levine <levine@cs.wustl.edu> + + * include/makeinclude/platform_lynxos.GNU: only define + CROSS-COMPILE if not building on LynxOS. + + * ace/OS.h: fixed ACE_CAST_CONST definition with Sun CC. + +Sun Apr 05 00:20:52 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/ACE.h: Moved "#include "ace/OS.h" out of _ACE_H_ block to + resolve the circular inclusion that occured when building ACE + Unicode Release version. + +Sat Apr 04 21:19:32 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.37, released Sat Apr 04 21:19:32 1998. + +Sat Apr 04 19:41:03 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/OS.cpp (thr_exit): Forgot to access creation flags thru + the access function. + +Sat Apr 04 14:01:53 1998 Steve Huston <shuston@riverace.com> + + * performance-tests/Makefile: Put UDP back in dir list. + +Sat Apr 04 07:45:33 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/Basic_Types.h,config-sunos4*.h,README: don't use + u_longlong_t on Suns if ACE_LACKS_U_LONGLONG_T is defined. + Define ACE_LACKS_U_LONGLONG_T in all SunOS4 config files. + Thanks to John Lindal <jafl@cco.caltech.edu> for reporting + this. + +Sat Apr 4 02:06:57 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/OS.cpp (invoke,thr_exit): (*Win32*) We also need to consider + threads that are not spawned by ACE_Thread_Manager by checking + the validity of cached ACE_Thread_Descriptor. In any rate, + please avoid using thread functions in ACE_Thread::* and + ACE_OS::thr_* directly. + +Sat Apr 4 01:03:17 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * ace/Map_Manager.cpp (map): Added map method for the iterator interface. + +Sat Apr 4 00:55:30 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * netsvcs/clients/Naming/{Client,Dump_Restore}/Makefile: + Moved all program source names to PSRC, not SRC, for + 'make depend'. + +Fri Apr 3 21:18:51 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/OS.cpp (cleanup): Moved ACE_Cleanup::cleanup() back into the + *.cpp file so that we have at least one non-inline virtual + function. + + * ace/OS (cleanup): Created a dummy ACE_Cleanup constructor since + the lack of this may be causing a bug with CC and the linker for + TAO's IDL compiler. Also moved the constructor and destructor of + ACE_Cleanup into the OS.i file and made them inline. We'll fix + this bug yet!!!! + +Fri Apr 03 18:45:35 1998 Steve Huston <shuston@riverace.com> + + * apps/JAWS/clients/Blobby/Makefile + * apps/JAWS/clients/Caching/Makefile + * examples/ASX/Event_Server/Event_Server/Makefile + * examples/ASX/UPIPE_Event_Server/Makefile + * examples/Logger/simple-server/Makefile + * examples/Mem_Map/IO-tests/Makefile + * examples/Reactor/Multicast/Makefile + * examples/Service_Configurator/Misc/Makefile + * examples/Shared_Malloc/Makefile + * performance-tests/Synch-Benchmarks/Makefile + Adjusted for corresponding changes to rules.bin.GNU and/or + rules.lib.GNU, below. + + * examples/Connection/non_blocking/Makefile + * examples/Service_Configurator/IPC-tests/server/Makefile + * examples/Timer_Queue/Makefile + * performance-tests/Misc/Makefile + Moved all program source names to PSRC, not SRC, for + 'make depend'. + + * performance-tests/Makefile: Removed UDP from list of dirs to build. + + * include/makeinclude/rules.bin.GNU: Set OBJEXT and VOBJS from the + SRC files in the Makefile (LSRC sets VLOBJS in rules.lib.GNU; + SRC sets VOBJS in rules.bin.GNU). + + * include/makeinclude/rules.local.GNU: depend rule will also operate + on $(PSRC) in addition to $(SRC). PSRC is new - if you have more + than one program to build in a makefile, set PSRC to the source + files for make depend. + + * include/makeinclude/rules.lib.GNU: Use VLOBJS for archive lib object + files; using VOBJS gets it confused with VOBJS in rules.bin.GNU and + makes it very difficult to build lib and exe from same Makefile. + +Fri Apr 3 10:40:10 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/OS.cpp (invoke): We were using AfxGetThread to determine + whether a thread was created with AfxBeginThread or + _beginthreadex. This seemed to cause some subtle problem with + MSVC 4.2. Since we always cached the Thread_Descriptor in TSS + now, we can just check how a thread was created and use the + appropriate thread exiting method. Thanks to Detlef Becker + <Becker.Detlef@med.siemens.de> for tracing down this obscure + bug. + + * ace/Thread_Manager.{h,i} (flags): Added this new access function + into ACE_Thread_Descriptor to get the creation flags for a + thread. + +Fri Apr 03 10:01:32 1998 Steve Huston <shuston@riverace.com> + + * ace/ACE.cpp (handle_timed_complete): On AIX, always check a + completed non-blocking connect() because AIX sets only the write + handle from select regardless of whether the connect succeeded + or not. + + * netsvcs/clients/Naming/Dump_Restore/Dump_Restore.cpp: Removed + the #include <fstream.h> - this is taken care of via ace/OS.h. + Having the #include in Dump_Restore.cpp caused some very weird + compile errors on DG/UX. + + * netsvcs/lib/Server_Logging_Handler.cpp: Fixed template instantiations + for Base_Optimizer, non-static logging cases. + +Fri Apr 03 09:16:24 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/OS.cpp (ACE_TSS_Info::key_in_use): return true if + thread_count_ > 0, not if it is != -1. Thanks to Chris + Lahey <CLahey@cccis.com> for finding and reporting this. + + * ace/OS.i (thr_yield): on VxWorks, changed argument of + ::taskDelay () from 0 to 1. With an argument of 0, + ::taskDelay () doesn't appear to yield the current thread. + + * tests/run_tests.vxworks: Reactor_Notify_Test is OK on + VxWorks now. + + * ace/OS.h,config-sunos5.5-sunc++-4.x.h: added ACE_CAST_CONST, + so that we can work around broken cast constness requirements + with Sun CC 4.2. It requires, for example, that a reinterpret + cast to a local pointer variable in a const member function be + const. Wrong. + + * ace/Basic_Types.i (operator/ and %): fixed comments: former + instead of latter. + +Thu Apr 02 16:23:12 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/WFMO_Reactor.i (dump): Also changed the method from HANDLE + to ACE_HANDLE. + +Thu Apr 2 15:36:20 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace: Added + + #define ACE_HAS_STL_QUEUE_CONFLICT + + to the config files which had ACE_HAS_STL_MAP_CONFLICT defined, + i.e., + config-sunos5.5-g++.h + config-sunos5.5-sunc++-4.x.h + + Thanks to Russ Noseworthy <rnosewor@objectsciences.com> for + reporting this. + +Thu Apr 2 15:14:35 1998 Sumedh Mungee <sumedh@lindy.cs.wustl.edu> + + * ace/WFMO_Reactor.h (dump): Renamed HANDLE to ACE_HANDLE. + +Thu Apr 02 14:23:11 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Reactor_Notify_Test.cpp (Supplier_Task::handle_output): + added a thr_yield () so that the Supplier_Task always gets a + chance to run. + + * tests/run_tests.sh: Reactor_Notify_Test is OK on Chorus now. + +Wed Apr 01 18:59:42 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/WFMO_Reactor.cpp (dump): Added dump() methods. + + * ace/Msg_WFMO_Reactor.cpp (wait_for_multiple_events): Reverted + Nanbor's change. The flag is properly set in + ACE_Msg_WFMO_Reactor::alertable_handle_events(). + +Wed Apr 1 15:40:01 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace: Made the WMFO_Reactor and Select_Reactor's dump() methods + virtual to underscore the fact that the Reactor_Impl's new + dump() method is also virtual. + + * ace/OS.h: Changed ACE_HAS_STL_MAP_CONFLICT to + ACE_HAS_STL_QUEUE_CONFLICT for the appropriate cases in ACE. + Thanks to Russ Noseworthy <rnosewor@objectsciences.com> for + reporting this. + + * ace/CORBA_Handler.cpp (ACE_CORBA_Handler): The reference_count_ + data member wasn't being initialized correctly. Thanks to + Mahesh Chandwani <chandwani@lucent.com> for reporting this. + + * ace: Renamed config-sunos5.5-sunc++-4.x-orbix.h to + config-sunos5.x-sunc++-4.x-orbix.h since this config file works + with SunOS 5.5 and 5.6. Thanks to Mahesh Chandwani + <chandwani@lucent.com> for reporting this. + +Wed Apr 01 16:28:30 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/Reactor.{h,cpp},Reactor_Impl.h (dump): added dump () + method, which calls the (existing) dump () in the reactor + implementation. + + * ace/High_Res_Timer.* (hrtime_to_tv): fixed conversion of + ACE_hrtime_t to ACE_Time_Value to be compatible with + ACE_U_LongLong. + +Wed Apr 01 09:32:27 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Msg_WFMO_Reactor.cpp (wait_for_multiple_events): Should not + wait for all objects in this function. + +Tue Mar 31 15:27:25 1998 Steve Huston <shuston@riverace.com> + + * apps/JAWS/server/JAWS_Pipeline_Handler.cpp: Defined 'status' in + the put() function. + + * ace/config-dgux-4.x-ghs.h: Removed settings for ACE_SIZEOF_LONG_LONG + since the compiler doesn't really support a long long that ACE + is looking for (64-bit). Use the ACE-supplied ACE_ULongLong type. + +Tue Mar 31 10:46:23 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Msg_WFMO_Reactor.cpp: Changed to use + MsgWaitForMultipleObjects if we are not under NT. Also in + MsgWaitForMultipleObjectsEx, we should use NT defined flags + instead of the boolean "alertable" directly. + +Tue Mar 31 07:22:09 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/OS.i (cond_timedwait): restored ACE_HAS_DCE_DRAFT4_THREADS + behavior to use absolute time. Special-case only on LynxOS, + which requires a relative time. Thanks to Steve Coy + <stevec@magna.com.au> for reporting this on HP-UX. + + * tests/Thread_Manager_Test.cpp (worker): cache the thread's + Signal_Catcher on entry. That way, we don't have to + dereference it in the worker's loop. It seems that a worker + thread can continue to run after main exits (and cleans up + TSS). That shouldn't happen, but it looks like it does on + Linux, LynxOS, and Digital Unix. Thanks to James CE Johnson + <jcej@lads.com> for verifying that the fix works on Linux/ + Intel and DU 4.0. + + * examples/Threads/task_five.cpp (main): wrapped return statement + at end with ACE_NOTREACHED. This will prevent compiler warnings + from Green Hills and DEC CXX, and maybe SGI cc. + +Fri Mar 27 23:04:08 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/config-linux-common.h: added ACE_DEFAULT_MAX_SOCKET_BUFSIZ + 65535, because some Linux 2.1.x kernels fail setsockopts if + bigger than that. Thanks to Ravi Nagabhyru <ravi@future-minds.com> + for reporting that. Also changed hard-code ACE_PAGESIZE to + ACE_HAS_GETPAGESIZE, even though getpagesize () doesn't get + used. ACE_OS::getpagesize () uses sysconf on Linux. + + * performance-tests/UDP/udp_test.cpp (main): getopt.optarg instead + of optarg, for -f option. + + * ace/IPC_SAP.cpp (enable,disable): removed the ACE_NOTREACHED + wrappers around the return statements. Seems that some versions + of Green Hills complain about an unreachable statement, but + we'll live with it. This change is only visible with SGI, + DEC CXX, and Green Hills. + + * include/makeinclude/platform_vxworks5.x_ghs.GNU: added missing + close paren after ppc conditional. Thanks to Brian Mendel for + reporting this. + +Fri Mar 27 16:47:26 1998 Steve Huston <shuston@riverace.com> + + * tests/tests.mdp: Made settings for Env_Value_Test consistent with + other tests, so that run_tests.bat can find it. + + * netsvcs/servers/servers4.mdp: Added ..\lib to Include directories + when building in Release mode. + +Fri Mar 27 13:55:13 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/High_Res_Timer.i (gettime): ACE_OS::gettimeofday doesn't + take any argument. + +Fri Mar 27 09:50:52 1998 Steve Huston <shuston@riverace.com> + + * ace/Strategies_T.cpp: Added #include "ace/Service_Repository.h" for + compile on HP. Thanks to Steve Coy <stevec@magna.com.au> for this. + +Fri Mar 27 09:21:21 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/test_config.h: with Green Hills on VxWorks, rename + main to ace_main for compatibility with run_tests.vxworks. + + * ace/OS.{h,i},High_Res_Timer.* (gethrtime): added an optional + argument to allow specifying start/increment/stop to a timer. + It is currently only used on Chorus. On Chorus, using + the default ACE_HRTIMER_GETTIME will use clock_gettime () + instead of sysBench (). sysBench () disables interrupts, + so it must be used with care. + +Thu Mar 26 21:18:57 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/Basic_Types.h,config-g++-common.h,config-freebsd*.h, + config-netbsd.h: moved setting of ACE_SIZEOF_LONG_DOUBLE to 12 + from Basic_Types.h to config-g++-common.h and the FreeBSD/NetBSD + config files. + +Thu Mar 26 20:53:30 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Containers.{h,i,cpp}: Changed the template parameter name + <SIZE> to <ACE_SIZE> to avoid namespace polution. Thank to John + Mulhern <9107@MN3.LAWSON.lawson.com> for suggestion this. + +Thu Mar 26 17:23:38 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.36, released Thu Mar 26 17:23:38 1998. + +Thu Mar 26 12:54:57 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/IPC_SAP.cpp (enable,disable): wrapped return statement + at end with ACE_NOTREACHED. + + * include/makeinclude/platform_vxworks5.x_ghs.GNU: added support + for x86 targets. + + * ace/Basic_Types.h: sizeof (long double) is 8 on ghs/VxWorks/i386, + not 12. + +Wed Mar 25 10:10:04 1998 David L. Levine <levine@cs.wustl.edu> + + * include/makeinclude/platform_{chorus,vxworks5.x}_ghs.GNU: + change OFLAGS to OCFLAGS. + + * include/makeinclude/platform_chorus_ghs.GNU: if debug is enabled, + link with crth_d.s.o instead of crth.s.o. + + * ace/config-g++common.h: don't #define + ACE_HAS_TEMPLATE_SPECIALIZATION with egcs 2.91. Thanks to + Sudish Joseph <sj@eng.mindspring.net> and + Loren Rittle <rittle@comm.mot.com> for reporting this + apparent bug with egcs 2.91. (egcs 2.90 builds ACE cleanly + with ACE_HAS_TEMPLATE_SPECIALIZATION.) + + * include/makeinclude/platform_vxworks5.x_g++.GNU: add VxWorks + host bin directory to PATH if its not already there. + +Tue Mar 24 19:48:44 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/Proactor.cpp (timeout): Changed comparison from || to + &&. Thanks to Jason Katz <Jason@email.rts-inc.com> for reporting + this. + +Tue Mar 24 18:14:18 1998 Steve Huston <shuston@riverace.com> + + * ace/Env_Value_T.h: added #include "ace/OS.h" to get the definition + for ACE_static_cast - AIX xlC needs it for auto template generation. + +Tue Mar 24 09:00:36 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * bin/auto_compile: + Missing newline after the "DISABLED" message. + +Tue Mar 24 07:38:44 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/config-sunos5.5-g++.h: replaced ACE_PAGE_SIZE with + ACE_HAS_GETPAGESIZE, and added ACE_HAS_STL_MAP_CONFLICT. + Thanks to Loren Rittle <rittle@comm.mot.com> for reporting + these. + +Mon Mar 23 12:06:30 1998 David L. Levine <levine@cs.wustl.edu> + + * performance_tests/UDP/udp_test.cpp: made use of the Reactor + optional. With this change, the performance is comparable + to the original C version. + + * ace/OS.{h,i} (wslen,wscpy): added these, and WChar typedef, + for TAO. + + * include/makeinclude/platform_chorus_ghs.GNU: moved directories + to /project/doc/mvme/. + + * ace/config-vxworks5.x.h: protected #define of ACE_MAIN so that + it can be #defined on the command line. + +Mon Mar 23 11:38:43 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/OS.h (MAXPATHLEN): Guard the MAXPATHLEN definition with + #ifndef in case if has already been defined. Thanks to "Patrick + J. McNerthney" <pat@thememedia.com> for reporting this. + +Mon Mar 23 03:18:50 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.35, released Mon Mar 23 03:18:50 1998. + +Mon Mar 23 00:03:37 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * examples/Reactor/ReactorEx/test_abandoned.cpp: Tests the + WFMO_Reactor's ability to handle abandoned mutexes. + + * examples/Reactor/ReactorEx/test_apc.cpp: Tests the + WFMO_Reactor's ability to handle regular APC notifications. + +Sun Mar 22 23:47:00 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/WFMO_Reactor.cpp: Added code to the Reactor to make it more + resilient when the wait() function returns WAIT_IO_COMPLETION + and WAIT_ABANDONED. + + ok_to_wait: Keep waiting if wait() returns WAIT_IO_COMPLETION. + + dispatch: Return <handlers_dispatched> if wait() returns + WAIT_IO_COMPLETION. + + dispatch_handles: Added code to correctly handle WAIT_ABANDONED + and to correctly figure out the index of the handler to be + dispatched. + + Thanks to Beskrovny Evgeny (evgeny_beskrovny@icomverse.com) of + Comverse Network Systems for pointing out the problem with + WAIT_IO_COMPLETION. + + * ace/Reactor.cpp (run_alertable_event_loop): Added new function + that runs the Reactor using alertable_handle_events() instead of + handle_events(). + +Sat Mar 21 19:58:42 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/OS.i (flock_destroy): lock->lockname_ should be cast to + LPTSTR instead of char*. Thanks to Goran Lowkrantz + <Goran.Lowkrantz@infologigruppen.se> for reporting this. + + * examples/Threads/task_five.cpp: Allow users to set thread stack + size from command lines. If a user doesn't give one, it will be + set to 8k on non-Windows platforms. + +Fri Mar 20 22:07:15 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/ACE_Library.{mak,mdp}: Added Msg_WFMO_Reactor. + + * ace/Asynch_IO.cpp (cancel): Added version check because MSVC 4.2 + doesn't support CancelIo. + +Fri Mar 20 21:46:16 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.34, released Fri Mar 20 21:46:16 1998. + +Fri Mar 20 20:53:27 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Parse_Node.cpp: Fixed typos. + +Fri Mar 20 14:18:53 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * performance-tests/UDP/udp_test.cpp: Completed the ACE'ification + of this test. + +Fri Mar 20 09:31:22 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/OS.h: with ACE_LACKS_WCHAR_T, changed wchar_t typedef + from long to ACE_UINT32 to ensure that it is 4 bytes on + any platform. + + * performance-tests/UDP/udp_test.cpp: added this test, which + provides UDP performance statistics. Thanks to Fred Kuhns + <fredk@arl.wustl.edu> for contributing the test. + +Thu Mar 19 10:15:27 1998 Steve Huston <shuston@riverace.com> + + * ace/OS.i: Changed the dynamic library load/unload code so that + on HP-UX, g++ does the same thing as aC++ (not like HP C++), using + <dl.h> and shl_(un)load. Thanks to Kirill Rybaltchenko + <Kirill.Rybaltchenko@cern.ch> for this change. + +Thu Mar 19 10:13:35 1998 David L. Levine <levine@cs.wustl.edu> + + * performance-tests/Misc/preempt.cpp: 1) Added -f option to fork + instead of spawning new threads. 2) Added -l option for + specifying number of iterations of low priority thread/process. + 3) On Solaris, print LWP ID. + +Thu Mar 19 02:47:42 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/ace_dll.dsp: Link against user32.lib for all configurations + for we now use Msg_WFMO and related APIs in ACE. (We should do + the same to ace_lib.dsp.) + + * ace/config-WinCE.h: Added dummy definition of stdin and stdout. + They don't have any real effect. + + * ace/ACE.{h,cpp} (ldopen,ldfind): Made these functions visible + under CE. Modified them to work under CE. + + * ace/OS.cpp: Added scope name to day_of_week_name and + month_name. They are used only on CE. + + * ace/OS.{h,i}: Added some dummy C methods for CE. Yacc and Lex + generated codes use these functions, although we don't really + use them in ACE. + + * ace/OS.i (exit): Added implementation of ACE_OS::exit under CE. Since + there's no ExitProcess available, I use TerminateProcess, which + is not exactly the same as using ExitProcess but that's the + closest thing I can think of. + (open): Made the char version unsupported under CE. + (fread,fwrite,...): Added dummy C methods definition for CE. + + * ace/Parse_Node.cpp: Regular CE stuff. There's a boundary + of char/wchar functions somewhere in this file. Most Svc_Conf + stuff uses char functions but the information gets converted to + wchar later. + + * ace/Service_Config.{h,i}: Added char version function for + Service_Type under CE. Service_Type (and its subclasses) are + the boundary of char/wchar functions. + + * ace/Service_Object.{h,i}: Added the chname method which always + returns char value of a Service_Object under all platforms. + + * ace/Svc_Conf.y: + * ace/Svc_Conf_y.cpp: + * ace/Object_Manager.{cpp}: Regular CE stuff. + + * ace/Svc_Conf_l.cpp: Regular CE stuff. Haven't figure out a way + to modify this from Svc_Conf.l yet. + + * ace/Service_Config.cpp + * ace/Object_Manager.{cpp}: Ifdef'ed inclusion of Naming Context + related header files out. Naming context uses Registry which + uses iostream and STL, both are not available on CE (yet?). + + * ace/WFMO_Reactor.{h,cpp}: + * ace/Proactor.{h,i,cpp}: + * ace/Asynch_IO.{h,cpp}: Ifdef'ed the body so they are not visible + under CE. CE doesn't have asynchronous IO. + +Wed Mar 18 21:30:39 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.33, released Wed Mar 18 21:30:39 1998. + +Wed Mar 18 16:36:17 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * Makefile (releaseall): There is no more TAO.tar.gz. There are + now two tar files, ACE.tar.gz and ACE+TAO.tar.gz. + ACE+TAO.tar.gz contains ALL of ACE. In particular, it will + always have the same version number and same ACE contents as + ACE.tar.gz. The intent here is that people who just want to use + ACE will use ACE.tar.gz and people who want to use ACE and TAO + will use ACE+TAO.tar.gz. Thanks to David Levine and Irfan for + helping with this. + +Wed Mar 18 15:50:30 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Log_Msg.cpp (ACE_Log_Msg): Added codes to grab + ACE_Log_Msg_Manager's lock while updating the instance_count_. + There was a race condition without the change. Thanks to Detlef + Becker's <Detlef.Becker@med.siemens.de> thread creation stress + test to reveal the bug. + +Tue Mar 17 17:20:00 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * examples/Threads/test.dsw: + * examples/Threads/task_five.cpp: + * examples/Threads/task_five.dsp: + * examples/Threads/Makefile: Added a new ACE_Task testing + program. Thanks to Detlef Becker <Detlef.Becker@med.siemens.de> + for providing the source. + +Wed Mar 18 11:00:11 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * ace/Hash_Map_Manager.cpp (map): This method has been added to + the ACE_Hash_Map_Iterator_Base class. + +Wed Mar 18 09:25:30 1998 Chris Gill <cdgill@tango.cs.wustl.edu> + + * ace/ace.dsw: added user32.lib to link for dynamic library on NT + for all builds. + +Wed Mar 18 09:22:13 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/Containers.cpp,Hash_Map_Manager.cpp,Map_Manager.cpp + (operator *): initialize retv to 0 to avoid warning about + using it before setting its value. + + * tests/Thread_Mutex_Test.cpp (test): added no-op statement to + suppress GHS warning about unused local variable "mutex". + + * tests/Priority_Buffer_Test.cpp (consumer): added no-op statement + to suppress GHS warning about unused local variable "cur_priority". + + * ace/README: removed ACE_HAS_BOOL. It was unused. + + * performance-tests/Misc/basic_func.{h,cpp},basic_perf.cpp: + With MSVC 5.0, do something in the empty iteration because + otherwise it gets completely optimized away. Thanks to + Alexander Ovsiankin <sasha@technologist.com> for providing + this fix. + +Tue Mar 17 23:53:56 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * examples/Threads/task_five.cpp (main): Reformatted Detlef's new + torture test so that it conforms to ACE programming conventions. + +Tue Mar 17 23:22:20 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/Reactor.cpp (ACE_Reactor): If + ACE_USE_MSG_WFMO_REACTOR_FOR_REACTOR_IMPL is defined, use + ACE_Msg_WFMO_Reactor for ACE_Reactor::instance(). + + * examples/Reactor/ReactorEx/test_window_messages.cpp: Tests + Msg_WFMO_Reactor's ability to handle regular events and window + messages. + +Tue Mar 17 21:41:57 1998 David L. Levine <levine@cs.wustl.edu> + + * examples/Threads/task_five.cpp (svc): use ACE_OS::sleepq + instead of ::Sleep. (main): declare "ii" outside of the + first loop because it is used in other loops. + +Tue Mar 17 16:02:26 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/WFMO_Reactor: Changes were made to WFMO_Reactor to make it + easier to extend it to handle window messages: + + - dispatch_handler() checks if there are window messages that + need to be dispatched if the <index> matches <max_handlep1>. + If there are, they are dispatched by calling + dispatch_window_messages(). + + - dispatch_window_messages() is a noop for WFMO_Reactor. + + - Checking the return values from Wait*() functions was changed + as (WAIT_OBJECT_0 + nCount) is now a valid index. + + - Checking for remaining handles was abstracted into + poll_remaining_handles(). + + - Expiring of timer was abstracted out into expire_timers(). + Only the owner thread expires the timers. + + - calculate_timeout() was removed from + wait_for_multiple_events(). + + * ace/Msg_WFMO_Reactor: A new Reactor that specializes the + WFMO_Reactor. WFMO_Reactor uses WaitForMultipleObjects while + Msg_WFMO_Reactor uses MsgWaitForMultipleObjects. This allows + the Msg_WFMO_Reactor to react to Windows and COM/DCOM messages + in addition to the regular WFMO_Reactor events. + + Thanks to Beskrovny Evgeny (evgeny_beskrovny@icomverse.com) of + Comverse Network Systems for contributing this to ACE. + +Tue Mar 17 13:15:11 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/Future.cpp: Added missing ACE_MT macros so that we now + compile correctly if we don't have threads. Thanks to Laura + Paterno <lpaterno@d0chb.fnal.gov> for reporting this. + +Tue Mar 17 15:13:17 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/High_Res_Timer.cpp (dump): fleshed out the implementation. + + * ace/Profile_Timer.{h,cpp} (dump): implemented for platforms + w/o ACE_HAS_PRUSAGE_T and ACE_HAS_GETRUSAGE. + + * ace/OS.i (gethrtime): with ACE_HAS_CLOCK_GETTIME, carefully + construct return value to avoid arithmetic overflow if + ACE_LACKS_LONGLONG_T. + +Mon Mar 16 22:18:07 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/IPC_SAP.cpp: Moved return values outside of the #ifdefs to + quiet warning messages with KAI C++. Thanks to Laura Paterno + <lpaterno@d0chb.fnal.gov> for reporting this. + +Tue Mar 17 00:04:53 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Svc_Conf.y: + * ace/Svc_Conf_y.cpp: Applied "Regular CE Tricks [TM]". + +Mon Mar 16 23:34:39 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/README: + * ace/config-WinCE.h: Added ACE_LACKS_STRRCHR. + + * ace/OS.i: Added implementation of ACE_OS::strrchr () when + platforms don't provide one. + +Mon Mar 16 16:08:45 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/High_Res_Timer.cpp: set global_scale_factor_ to 1000 with + ACE_HAS_CLOCK_GETTIME, because clock_gettime has nanosecond + resolution, and with PSOS. + + * ace/Profile_Timer.{h,cpp},tests/Handle_Set_Test.cpp: use units + of microseconds instead of seconds if ACE_LACKS_FLOATING_POINT. + + * ace/OS.i (hostname): on Chorus, try the HOST environment variable + if ::gethostname () returns an empty string. + +Mon Mar 16 13:04:58 1998 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu> + + * ace/OS.h: + Extended the ACE_HAS_STL_MAP_CONFLICT to include 'queue' as well + as 'map.' 'queue' is defined in sys/stream.h, which is included in + OS.h by netinet/in.h and sys/timod.h. + +Mon Mar 16 00:22:40 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * CE-status: Updated CE port status. + + * ace/config-WinCE.h: Added macro definitions for EOF and BUFSIZ. + + * ace/OS.{h,i} (ace_isspace): Added both char and wchar version + functions. Notice that this can't be called isspace because + most compilers implement isspace as a macro. + (dlerror,dlsym): Added wchar version of these functions under CE. + + * ace/OS.cpp (fork_exec): Modified parameters passed to + CreateProcess under CE. + + * ace/ARGV.{h,i,cpp}: Unicodize this class under CE. Notice that + under CE, you won't be able to use environment variable + substitution since there's no environment variable at all. + + * ace/Reactor.cpp: Don't include Service_Config.h and + WFMO_Reactor.h under CE for now. Prevent Reactor from + reconfigure the service configurator. + + * ace/Task.cpp: Don't include Service_Config.h under CE for now. + Prevent Task_Base from reconfigure the service configurator. + + * ace/SString.cpp: Don't include Service_Config.h under CE for + now. + + * ace/Svc_Conf.h: + * ace/Shared_Object.{h,cpp}: + * ace/Service_Type.{h,i,cpp}: + * ace/Service_Repository.{h,cpp}: + * ace/Service_Object.{h,i,cpp}: + * ace/Service_Manager.{h,cpp}: + * ace/Service_Config.{h,i,cpp}: Unicodize service configurator + related classes. I still need to find a point which breaks the + usage of char functions that flex and yacc use and wchar + functions that most CE functions use. + + * ace/Get_Opt.{h,cpp}: + * ace/Local_Token.{h,i,cpp}: + * ace/Map_Manager.cpp: + * ace/Message_Queue.cpp: + * ace/Module.{h,i,cpp}: + * ace/Parse_Node.cpp: + * ace/Pipe.cpp: + * ace/Stream.{h,cpp}: + * ace/Stream_Module.{h,cpp}: + * ace/Token_Manager.{h,cpp}: + * ace/Activation_Queue.cpp: Unicodize classes. Regular CE stuff. + +Sat Mar 14 06:43:32 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/Basic_Types.h,config-win32-common.h,config-irix*.h: + moved WIN32 and SGI-specific code out of Basic_Types.h and + into their respective config files. + + * ace/Object_Manager.h: changed ACE_HAS_NON_STATIC_OBJECT_MANAGER + to ACE_HAS_NONSTATIC_OBJECT_MANAGER in comments. Thanks to + Kirill Rybaltchenko <Kirill.Rybaltchenko@cern.ch> for reporting + this. + + * include/makeinclude/platform_chorus_ghs.GNU: set PATH, and + remove /tmp/gh_*.[os] files that GreenHills leaves. + + * ace/INET_ADDR.cpp (get_host_name): on Chorus, save errno in + error so that it gets propagated back to the caller. + +Sat Mar 14 00:13:22 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/Task.h (ACE_Task_Base): Give a default value of 0 for the + Thread Manager so we can use this as a base class. + + * tests/Future_Test.cpp: Since the Scheduler provides its own + activation queue it doesn't make sense to inherit from ACE_Task + (which provides its own queue) but instead ACE_Task_Base + (which doesn't define its own queue). Thanks to Loren Rittle + <rittle@comm.mot.com> for reporting this. + + * examples/Threads/future[12].cpp: Since the Scheduler provides + its own activation queue it doesn't make sense to inherit from + ACE_Task (which provides its own queue) but instead + ACE_Task_Base (which doesn't define its own queue). Thanks to + Loren Rittle <rittle@comm.mot.com> for reporting this. + + * examples/Threads/future[12].cpp: Removed the explicit call to + scheduler_->close() to avoid closing the scheduler down twice. + Thanks to Loren Rittle <rittle@comm.mot.com> for reporting this. + +Fri Mar 13 23:41:44 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Process.cpp (ACE_Process_Options): Moved column out of + ifdef'ed area. + +Fri Mar 13 21:17:51 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/Process.cpp (ACE_Process_Options): reordered initializers + to match declaration order. + +Fri Mar 13 17:30:16 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Process.{h,i,cpp}: As CE's CreateProcess is basically + broken, you can only start a new process using ACE_Process. You + cannot set any of environment, process attributes, thread + attributes, current directory, stratup info, and security + attributes. I have modified these files so that most attribute + access functions just do nothing. Some of "do nothing" + functions were defined as ACE_INLINE on CE. + + * ace/Memory_Pool.cpp: Regular CE stuff. + +Fri Mar 13 17:42:17 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/WFMO_Reactor.cpp (handle_signal): If there are still + notification in the queue, we need to wake up again. + +Fri Mar 13 09:09:08 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/Profile_Timer.*,config-chorus.GNU,README, + tests/Handle_Set_Test.cpp (test_performance): added + ACE_LACKS_FLOATING_POINT support. + + * include/makeinclude/platform_chorus_ghs.GNU: removed + -X445 from CFLAGS. I don't know what it does. + +Fri Mar 13 01:10:36 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/WFMO_Reactor: The following changes were made to make the + registration and removal of event_handlers from WFMO_Reactor + more robust. Thanks to Jonathan Biggar <jon@floorboard.com> for + helping out. + + - ACE_WFMO_Reactor_Handler_Repository::Common_Info now contains + the delete_entry_ and close_masks_ fields as these were now + common to all three structures. + + - handle_additions() and handle_deletions() were changed to + make_changes_in_current_infos(), + make_changes_in_suspension_infos(), and + make_changes_in_to_be_added_infos() + + - Correct range for suspend_handlers() is 0 to max_handlep1_ + rather than (max_handlep1_ - 1) + + - suspend_handlers(), + resume_handlers(), + add_network_events_i(), + unbind_i(), + suspend_handler_i(), + resume_handler_i(), + unbind_all(), + + now go through the to_be_add_info_ array when making changes. + + * examples/Reactor/ReactorEx/test_prerun_state_changes.cpp: New + test added to check the Reactor's ability to handle state + changes before getting a chance to run. + + * examples/Reactor/ReactorEx/test_talker.cpp (main): Remove the + Procator from the Reactor so that the Proactor is not called + after it has been destroyed. + +Thu Mar 12 19:36:43 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ACE-INSTALL.html: Tidied up a bunch of things in this file. + Also, created a new $ACE_ROOT/os-patches/ directory and moved + the patches for Linux and LynxOS into this in order to + consolidate the patches into one location. + + * ace/WFMO_Reactor.cpp (upcall): Cleaned up a bunch of code to (1) + avoid a nasty "dangling else" bug and (2) simplify a bunch of + if/if statements. Thanks to Jonathan Biggar + <jon@floorboard.com> for pointing this out. + +Thu Mar 12 18:21:15 1998 James C Hu <jxh@cs.wustl.edu> + + * ace/config-linux-common.h: Incorporated changes that were + suggested by Robert Hanzlik <robi@codalan.cz> to get ACE to + compile on Linux using glibc 2.1 and libg++/gcc 2.8. + +Thu Mar 12 17:25:28 1998 James C Hu <jxh@cs.wustl.edu> + + * ACE-INSTALL.html: Added a table to Supported Platforms and + Compilers. + +Thu Mar 12 16:28:32 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * Apply regular string manipulation for CE to following files: + ACE.cpp ARGV.cpp Acceptor.cpp Activation_Queue.cpp + Asynch_Acceptor.cpp Asynch_IO.cpp CORBA_Handler.cpp + Connector.cpp Containers.cpp DEV_Addr.cpp Dynamic_Service.cpp + FIFO.cpp FIFO_Recv.cpp FIFO_Recv_Msg.cpp FIFO_Send.cpp + FIFO_Send_Msg.cpp FILE_Addr.cpp FILE_Connector.cpp Filecache.cpp + Future.cpp Get_Opt.cpp Hash_Map_Manager.cpp LSOCK.cpp + LSOCK_CODgram.cpp LSOCK_Connector.cpp LSOCK_Dgram.cpp + Local_Name_Space_T.cpp Local_Tokens.cpp Local_Tokens.i + Malloc_T.cpp Map_Manager.cpp Mem_Map.cpp Memory_Pool.cpp + Message_Queue.cpp Module.cpp Name_Proxy.cpp + Name_Request_Reply.cpp Naming_Context.cpp Obstack.cpp + Parse_Node.cpp Pipe.cpp Priority_Reactor.cpp Proactor.cpp + Process_Manager.cpp Read_Buffer.cpp Registry_Name_Space.cpp + Remote_Name_Space.cpp Remote_Tokens.cpp SPIPE_Acceptor.cpp + SV_Semaphore_Complex.cpp SV_Semaphore_Simple.cpp + Select_Reactor.cpp Service_Config.cpp Service_Main.cpp + Service_Manager.cpp Service_Repository.cpp Service_Types.cpp + Singleton.cpp Strategies_T.cpp Stream.cpp Svc_Handler.cpp + TLI.cpp TLI_Acceptor.cpp TLI_Connector.i Task_T.cpp + Time_Request_Reply.cpp Timer_Queue_Adapters.cpp + Token_Collection.cpp Token_Invariants.cpp Token_Manager.cpp + Token_Request_Reply.cpp WFMO_Reactor.cpp WFMO_Reactor.i + XtReactor.cpp. + +Thu Mar 12 15:37:14 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/Read_Buffer.* (read): null terminate the result buffer. + Also, changed "inline" to "ACE_INLINE" and updated #includes + so that ACE inlining works. + +Thu Mar 12 02:19:53 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/WFMO_Reactor.cpp (upcall): In the Select_Reactor, when it + upcalls to an event_handler which returns a -1, the + Select_Reactor only clears the specific mask bit for the + handler. For example, for a call to + Event_Handler::handle_input() which returns -1, the + Select_Reactor clears the READ_MASK bit. + + In the WFMO_Reactor, if any handler returns a -1, then it clears + ALL of the mask bits for the event handler. + + So, fixed WFMO_Reactor so that it works like Select_Reactor in + this regard. + + Thanks to Jonathan Biggar <jon@floorboard.com> for pointing this + discrepancy out. + + * ace/WFMO_Reactor.cpp (dispatch_handles): The correct range check is + {WAIT_OBJECT_0,WAIT_OBJECT_0 + this->handler_rep_.max_handlep1 () - index} + and not + {WAIT_OBJECT_0,WAIT_OBJECT_0 + this->handler_rep_.max_handlep1 ()} + + Thanks to Evgeny Beskrovny evgeny_beskrovny@icomverse.com for + pointing this out. + +Wed Mar 11 15:20:09 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/OS.i (thr_getspecific): Added comments to the code to + explain the unusual step of saving errno across calls to + TlsGetValue() on Win32. Thanks to Tim Harrison for clarifying + this. + +Wed Mar 11 00:39:29 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * CE-status: A temporary file to trace the progress of the CE + port. + + * ace/ace_ce_dll.dsp: Added more .cpp files. + + * ace/High_Res_Timer.{h,cpp}: Undefined functions print_ave and + print_total. These two function use STDOUT which is not + supported on CE. We should probably modify the functions so + they write results to Log_Msg. + (get_register_scale_factor): This function always returns 1 on + CE to prevent the use of High_Res_Timer. + (get_env_global_scale_factor): Always returns -1 on CE because + environment variables are not supported. + + * ace/Thread_Manager.cpp (spawn_i): WinCE doesn't support + DuplicateHandle, therefore the best we can do now is just pass + back the handle to the spawned thread. Notice that you *can't* + close the handle by yourself under CE. Perhaps we shouldn't + even try to pass this info back. ??? + Applied regular CE porting tricks. + + * ace/SOCK_Dgram_Mcast.{h,cpp}: + * ace/SOCK_Dgram_Bcast.{h,cpp}: Changed some function signatures + to use wchar on CE. Applied regular CE porting tricks. + + * ace/IO_SAP.cpp: + * ace/SOCK_CODgram.cpp: + * ace/SOCK_Dgram.cpp: + * ace/Select_Reactor.cpp: + * ace/Timer_{Hash,Heap,List,Queue,Wheel}_T.cpp: Applied regular CE + porting tricks. Erm, I'm running out of tricks. + +Tue Mar 10 20:27:57 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Reactor.h (reset_event_loop): Made the signature match with + its definition in .cpp file. + +Tue Mar 10 15:07:00 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/Svc_Handler.cpp, + ace/Module.cpp: + Fixed some problems where Svc_Handlers in Modules were being + deleted prematurely. Thanks to Steve Coy <stevec@magna.com.au> + for reporting this. + + * ace/Reactor.h (ACE_Reactor): Added a "reset_event_loop" method + so that it's possible to reset the loop again once the + end_event_loop() method is called. Thanks to Eric Hopper + <ehopper@globalmt.com> for reporting this. + + * ace/IOStream_T.cpp (ACE_IOStream): Moved some code to work + around some bugs with MSVC++ 5.0. Thanks to James CE Johnson + <ace-users@lads.com> for reporting this. + +Tue Mar 10 15:57:54 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Handle_Set.cpp (dump): Cast mask_.fd_count to size_t. + Depend on whether you are using standard C++ library, the type + of fd_count count be size_t or ssize_t. Thanks to Darrell for + discovering this. + +Tue Mar 10 13:22:24 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/Asynch_IO.cpp (cancel): CancelIo is not supported on Win95. + + * ace/SString.cpp (set): Use ACE_WString::wstrlen(). + +Tue Mar 10 06:59:42 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/SString.cpp (WString::set): added support for platforms + that don't have wchar_t, or that treat wchar_t and ACE_USHORT16 + as different types. + + * ace/OS.h,Basic_Types.h: moved ACE_USHORT16 typedef from OS.h to + Basic_Types.h. + + * ace/High_Res_Timer.h: fixed comment: timer.start () instead of + timer.stop () (twice). + +Mon Mar 09 22:15:43 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/SString.cpp (ACE_CString::operator=): Special cases have to + considered carefully so that memory is managed properly. This + is specially true when the ACE_CString::NULL_CString_ is used. + + * ace/SString.h (ACE_CString and ACE_WString): Added set methods + that allows the user to set the strings without having to use + the assignment operator. + +Mon Mar 09 16:11:16 1998 David L. Levine <levine@cs.wustl.edu> + + * examples/Map_Manager/test_hash_map_manager.cpp: added #include + of ace/SString.h and template instantiations. Replaced gets + with ACE_OS::fgets. + + * examples/Makefile,examples/Map_Manager/Makefile: added + Map_Manager to examples DIRS and added RCS keyword string. + +Mon Mar 9 14:59:20 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * include/makeinclude/platform_irix6.x-sgic++.GNU: + Added the definition for MATHLIB. + +Mon Mar 09 01:23:49 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/ace_ce.dsw: + * ace/ace_ce_dll.dsp: New project/workspace files for WinCE. This + is a temporary workspace only and should be merged into ACE mail + Win32 project/workspace when the port is stable enough. + + * ace/config-WinCE.h: Added ACE_LACKS_GETS. + + * ace/Synch.i (get_nesting_level): Defined it as not supported on + CE. CE's CriticalSections don't have RecursionCount defined. + We should be able to simulate this, however. + + * ace/Process.{h,cpp}: + * ace/SString.{h,cpp}: Moved class ACE_Tokenizer from Process.* to + SString.*. Although ACE_Tokenizer is used in + ACE_Process[_Options], it really is a more general utility + class. + (operator<<): Conditionally compile these functions only when we + are not running ACE on CE. + + * ace/OS.i (atoi): Added inline implementation for wchar version. + (gets): Remove condition !defined (ACE_HAS_WINCE). This should + be taken care of by ACE_LACKS_GETS. + + * ace/OS.h (atoi): Added wchar version of this function. + (ASYS_WIDE_STRING): This macro converts char strings to + wchar strings when ACE_HAS_MOSTLY_UNICODE_APIS is defined. + (ASYS_MULTIBYTE_STRING): This macro converts wchar strings back + to char strings *only* when ACE_HAS_MOSTLY_UNICODE_APIS is + defined. + + * ace/INET_Addr.{h,cpp}: Redefined interface signatures on WinCE + using ASYS_* macros. The principle here is to pass wide char + strings in and get char strings out. That's because we will use + mostly wchar strings in CE but most winsock APIs return (or uses + char strings.) Doing so should reduce conversion between them + to minimum. + Converting debug messages with ASYS_TEXT. + + * ace/Log_Msg.cpp (open): + * ace/ACE.cpp (get_ip_interfaces): Only convert the wide character + string to a char string when ACE_HAS_MOSTLY_UNICODE_APIS flag is + not set using the ASYS_MULTIBYTE_STRING macro. + + * ace/SOCK.cpp: + * ace/SOCK_Acceptor.cpp: + * ace/Malloc.cpp: + * ace/Malloc_T.cpp: + * ace/Synch.cpp: + * ace/Message_Block.cpp: + * ace/IPC_SAP.cpp: + * ace/Handle_Set.cpp: + * ace/Addr.cpp: Converting debugging messages to wchar strings for + CE using the ASYS_TEXT macro. + +Sun Mar 08 14:29:30 1998 David L. Levine <levine@cs.wustl.edu> + + * apps/Gateway/Gateway/Event_Channel.cpp (initiate_acceptors): + changed SUPPLIER_CONNECTOR to SUPPLIER_ACCEPTOR. Thanks + to Dani Flexer <danif@ivory-sw.com> for reporting this. + + * ace/OS.i (cond_timedwait): removed "struct" from declaration + of local timespec_t relative_time, because timespec_t can + be a typedef. Thanks to Steve Coy <stevec@magna.com.au> for + reporting this. + + * Makefile: tag from ACE_wrappers, not its parent directory, + to avoid confusing CVS. + +Sat Mar 07 16:46:58 1998 David L. Levine <levine@cs.wustl.edu> + + * ACE version 4.4.32, released Sat Mar 07 16:46:58 1998. + +Fri Mar 06 08:37:44 1998 David L. Levine <levine@cs.wustl.edu> + + * bin/ace_ld: made perl4-compatible. Thanks to + Jerry Bickle <glbick@most.fw.hac.com> for reporting this. + + * ace/os.i: (sigwait): removed "::" from before sigwait () call + with ACE_HAS_ONEARG_SIGWAIT, in case it's a macro. Thanks + to Kirill Rybaltchenko <Kirill.Rybaltchenko@cern.ch> for + reporting this. + + * bin/create_ace_build: made perl4-compatible. Thanks to + Carlos for noticing this. + + * include/makeinclude/platform_vxworks5.x_g++.GNU: added + WIN32 host support. Thanks to Paul von Behren + <Paul_von_Behren@stortek.com> for providing the patches. + + * ACE-INSTALL.html: added information from Paul von Behren + <Paul_von_Behren@stortek.com> on building on NT hosts for + VxWorks targets. + + * tests/Recursive_Mutex_Test.cpp: 50 iterations instead of 100 + on Chorus. + + * include/makeinclude/platform_chorus_ghs.GNU: added -G to + LDFLAGS. + + * tests/run_tests.sh: added capability for executing the tests + on a remote (Chorus) target. + + * examples/System_V_IPC/Makefile: added clean and realclean targets + for VXWORKS. + + * Makefile: cd .. before tagging. + +Thu Mar 05 12:36:52 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/OS.h (ACE_TRACE): Added a missing right paren. + +Thu Mar 05 10:04:06 1998 David L. Levine <levine@cs.wustl.edu> + + * include/makeinclude/platform_chorus_ghs.GNU: this works, + though it may not be optimum. + +Thu Mar 05 01:33:08 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/config-WinCE.h: Added more CE stuff. Ostream is now + redefined as FILE on CE. + + * ace/OS.{i,cpp}: + * ace/Synch_T.cpp + * ace/Message_Queue.cpp: + * ace/SOCK_Connector.i: Added ASYS_TEXT to numerous + ACE_DEBUG/ACE_ERROR macros. We must use wide char strings in + CE. + + * ace/ACE.{h,cpp}: Redefined sock_error to return wchar string on + CE. Added ASYS_TEXT to debugging messages. + + * ace/Trace.{h,cpp}: + * ace/Log_Msg.{h,cpp}: Made it UNICODE compatible. + + * ace/Log_Record.cpp: Changed how ostream is used on CE. Although + the code here become some how platform dependent, fortunately, + it can be shielded out from the users thru various macros. + Added ASYS_TEXT. + + * ace/SString.h: Undefined friend relations of ACE_?String with + ostream on CE. CE doesn't support <iostream>. + + * ace/OS.h: Changed the definition of ASYS_TEXT to use _TEXT. + This macro can be used with other compiler defined macros + (e.g. __FILE__.) Added ASYS_TEXT to adorn parameters of + ACE_TRACE so we don't need to modify our codes to make it + portable to CE. + + * ace/Log_Msg.cpp: Removed macro definition of ACE_WSPRINTF. It + didn't appear to be used anywhere. + +Wed Mar 04 09:32:32 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/OS.cpp (readv,writev): added static cast of iov_len to int, + to avoid unsigned comparison < 0. + + * ace/Containers.cpp (ACE_Fixed_Set_Iterator::done), + ace/Map_Manager.cpp (ACE_Map_Iterator_Base::done): + removed const from static cast to avoid warnings about + meaningless type qualifier from GreenHills. + + * ace/Basic_Types.i (ACE_U_LongLong): added missing ACE_INLINE's. + + * ace/Svc_Conf.y,Svc_Conf_y.cpp, etc/Svc_Conf_y.cpp.diff + (svc_location): delete svc_initializer after initializing + svc_location. Thanks to Tom Arbuckle + <arbuckle@uran.informatik.uni-bonn.de> for reporting this. + + * include/makeinclude/platform_linux_lxpthreads.GNU: separated + SOBUILD into compile and link steps because the + Service_Configurator/server/* examples are unable to + use files compiled with -fPIC and just labeled as .so as shared + ELF objects. Thanks to Tom Arbuckle + <arbuckle@uran.informatik.uni-bonn.de> for reporting this. + + * include/makeinclude/platform_chorus_ghs.GNU: explicitly link + in ioassign.o to resolve _cerr. + + * tests//SOCK_Connector_Test.cpp, + ace/config-{chorus,lynxos,netbsd,psosim-g++,vxworks5.x, + win32-common}.h: + added ACE_LACKS_GETHOSTENT, so that SOCK_Connector_Test doesn't + have to enumerate the platforms that don't have ::gethostent (). + + * tests/Basic_Types_Test.cpp (main): if ACE_LACKS_LONGLONG_T, use + ACE_U_LongLong instead of long long. + +Tue Mar 03 22:15:16 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Remote_Name_Space.cpp: Replaced a bunch of usages of + ACE_WString::rep (). They were passed to ACE_Name_Request which + creates another copy for itself and nobody ever cleans up these + memories. Thanks to John Mulhern <9107@MN3.LAWSON.lawson.com> + for reporting this. + + * ace/OS.h (THR_DETACHED): Defined this macro so that we can + simulate detached threads on NT (Hi Irfan! ;-). Thanks to Andre + Arpin <arpin@adan.kingston.net> for prividing the use case of + detached threads. + + * ace/Thread_Manager.cpp (exit): Added detached threads + manipulating codes here. We now can simulate behaviros of UNIX + detached threads on NT (no one cares about their return status.) + +Tue Mar 03 15:05:42 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/Basic_Types.{h,i} (ACE_U_LongLong::operator *=): updated + with James Hu's implementation. Now it's fast :-) + + * tests/Time_Value_Test.cpp (test_ace_u_longlong): added another + test of operator *=. + +Mon Mar 2 19:21:36 1998 Douglas C. Schmidt <schmidt@waltz.cs.wustl.edu> + + * ace/OS.h: Changed all uses of "/localname" and "/globalname" to + "localname" and "globalname" to avoid problems on UNIX. Thanks + to John Mulhern <9107@MN3.LAWSON.lawson.com> for reporting this. + + * ace/OS.h: Changed "C:\\temp\\" to "C:\\temp" to avoid some minor + problems on NT. Thanks to John Mulhern + <9107@MN3.LAWSON.lawson.com> for reporting this. + + * netsvcs/lib/Log_Message_Receiver.cpp + (Log_Message_Receiver_Impl): Removed some stray inline keywords. + Thanks to Russ Noseworthy <rnosewor@objectsciences.com> for + reporting this. + + * ace/OS.i (sigwait): Added support for POSIX sigwait(). Thanks + to Russ Noseworthy <rnosewor@objectsciences.com> for reporting + this. + + * ace/Containers.cpp (done): + ace/Map_Manager.cpp (done): Corrected some misplaced "consts" in + the ACE_static_cast macro. Thanks to Russ Noseworthy + <rnosewor@objectsciences.com> for reporting this. + + * include/makeinclude/platform_sunos5_sunc++.GNU (CXX): Commented + out the -pta option since it might not be necessary. If this + breaks code then we'll need to reevaluate this change. Thanks + to Russ Noseworthy <rnosewor@objectsciences.com> for suggesting + this. + +Mon Mar 02 17:06:46 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Thread_Manager.cpp (exit): Added Win32 thread exit + functionality. When a thread function falls out of scope, this + functions is called by ACE_Thread_Control::exit and it will not + call ACE_OS::thr_exit from here. Under this scenario, the + ACE_Thread_Manager::exit simply falls thru the end. If a user + call this function directly, this function will delete + ACE_Thread_Exit::instance() first, which simulate the cleanup + routine executed when a thread fall out of end by calling + ACE_Thread_Manager::exit recursively. After this is done + (returned from the second call,) this function will then call + ACE_OS::exit, which clean up the TSS objects and then really + exit the thread. Thanks to Gordon Watts <gwatts@FNAL.GOV> for + pointing this out. + + * ace/OS.cpp (thr_exit): Added Win32 thread exit functionality. + ACE_OS::thr_exit now will try to clean up TSS objects by calling + ACE_OS::cleanup_tss. You really should _not_ calling this + function directly. Esp. from the main thread because I don't + know how to tell if you are calling it from main thread thread + or not and thus memory leak might occur. + +Mon Mar 02 09:13:26 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/config-sunos5.5-sunc++-4.x.h: replaced ACE_PAGE_SIZE with + ACE_HAS_GETPAGESIZE, and added ACE_HAS_STL_MAP_CONFLICT. + Thanks to J. Russell Noseworthy <rnosewor@objectsciences.com> + for these recommendations. + + * ace/config-sunos5.6-sunc++-4.x.h: just #include + config-sunos5.5-sunc++-4.x.h. There's no difference between + the two at this point. + + * include/makeinclude/platform_sunos5_sunc++.GNU: added -R./ and + -mt to LDFLAGS. Added -fast to LDFLAGS if "fast" flag is + enabled. Thanks to J. Russell Noseworthy + <rnosewor@objectsciences.com> for these recommendations. + + * include/makeinclude/platform_sunos5.6_sparc_sunc++.GNU: just + include platform_sunos5_sunc++.GNU. There's no difference between + the two at this point. There is one significant net change to + the 5.6 platform: -s is no longer included in LDFLAGS. + + * ace/config-chorus.h: added ACE_LACKS_ACE_IOSTREAM with ghs, because + its iostream doesn't have separate operators for signed/unsigned + char. + +Sun Mar 1 13:54:02 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * Makefile: Added cvs commands to automatically tag the CVS + repository with version number 'ACE_9_9_99' tag and 'Current' + tag. + +Sun Mar 1 12:26:13 1998 Alexander Babu Arulanthu <alex@merengue.cs.wustl.edu> + + * ace/Hash_Map_Manager.cpp (reset_i): + * ace/Hash_Map_Manager.h: + Added reset () method for the Hash_Map_Iterator. + +Sun Mar 01 10:59:27 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/Asynch_IO.cpp (cancel): Changed CancelIO to CancelIo. + + * ace/Synch.h (ACE_Lock): Added a virtual destructor to ACE_Lock. + +Sun Mar 01 08:38:00 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/OS.h: use the new ACE_DEFAULT_SYNCH_TYPE for the default + mutex, etc., type, so that it can be set VxWorks. The ACE default + type on VxWorks is SEM_Q_FIFO, the same as VxWorks' default. + The ACE default can be easily overridden in config.h by + defining ACE_DEFAULT_SYNCH_TYPE. + + * ace/OS.i (sema_init): on VxWorks, use the type argument for the + sema type, instead of hard-coding to SEM_Q_FIFO. + + * ACE-INSTALL.html: updated Linux/alpha "as" patch. + +Sat Feb 28 12:20:57 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/Message_Queue.cpp: Fixed the implementation of + wait_not_{full,empty}_cond() so that they utilize the + ACE_Time_Value it's passed. In addition, revised the + implementation of peek_dequeue_head() so that it uses the new + wait_not_empty_cond() implementation. Thanks to Tom Venturella + <tventurell@mdc.com> for reporting this. + +Fri Feb 27 15:47:15 1998 David L. Levine <levine@cs.wustl.edu> + + * ACE-INSTALL.html: added very useful information from + Chris Ryan <cryan@qualcomm.com> about build ACE with + NT/Tornado for VxWorks. + + * ace/config-chorus.h: use ACE_NEEDS_READV/WRITEV with GHS as well + as with g++. + + * ace/Basic_Types.{h,i} (ACE_U_LongLong): added a bunch of arithmetic + operators for Carlos :-) The operator *= is _very_ slow, until we + come up with the right way to do it. + + * tests/Time_Value_Test.cpp (test_ace_u_longlong): added some tests + of the new operators. + +Fri Feb 27 13:42:09 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/ACE.cpp (recv_n): Removed the MSG_PEEK flag since it didn't + seem to work correctly. + +Fri Feb 27 11:18:28 1998 Chris Cleeland <cleeland@lambada.cs.wustl.edu> + + * ace/Log_Msg.cpp: Added three new conversion operators: "%{" + calls inc() to increase the trace_depth, "%}" calls dec() to + decrease the trace_depth, and "%$" is used in place of "\n" to + insert a newline followed by appropriate current indentation. + +Thu Feb 26 21:36:27 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.31, released Thu Feb 26 21:36:27 1998. + +Thu Feb 26 16:48:53 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/OS.h: Added new macros for ACE_FILE_STREAM and + ACE_FILE_CONNECTOR to be consistent with the ACE_SOCK_* stuff, + etc. Thanks to Ganesh Pai <gpai@voicetek.com> for reporting + this. + +Thu Feb 26 11:14:21 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/Parse_Node.cpp (ACE_Location_Node): reordered initializers + to match declaration order. + +Thu Feb 26 02:42:57 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Service_Config.cpp (load_static_svcs): Removed explicit + constness cast from the allocation function. + +Wed Feb 25 23:08:44 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tests/MT_Reactor_Timer_Test.cpp: Made this test compile on + platforms that lack threads and also updated the programming + style to be consistent with other parts of ACE. + + * tests/Priority_Task_Test.cpp: Made this test compile on + platforms that lack threads. + + * ace/Svc_Conf.h: Fixed the prototype for + ace_create_service_type() to reflect the elimination of "const + void *". + + * ace/Parse_Node: Eliminated more uses of "const void *" and + changed them to plain ol' "void *". + + * ace/Service_Types.cpp (fini): Changed the "const void *" to be + simply "void *" since it didn't seem to make any sense they way + it was! Thanks to Stephen Coy <stevec@magna.com.au> for + insisting on this... + + * ace/config-sunos5.*.h: Moved the ACE_HAS_REENTRANT_FUNCTIONS + into the section of #defines that should be commented out if + we're not building a multi-threaded library. + + * ace/Service_Config.cpp (open): Tightened up the comparison of + the key with the ACE_DEFAULT_LOGGER_KEY to use string equality + rather than pointer equality. Thanks to Stephen Coy + <stevec@magna.com.au> for reporting this. + +Wed Feb 25 10:50:17 1998 David L. Levine <levine@cs.wustl.edu> + + * include/makeinclude/platform_osf1_4.0.GNU: added suppression of + "no corresponding delete" warning, until that is fixed in libTAO. + Added -lm to LIBS for MT_Cubit client. + + * include/makeinclude/platform_chorus_ghs.GNU: we can link now. + + * ACE-INSTALL.html: added information on Linux v. 2.0.x + getsockname () bug. + +Tue Feb 24 15:07:50 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tests/test.{mdp,mak}: Added Env_Value_Test and OrdMultiSet_Test + into the workspace. + + Removed all odbc libraries from all projects. We don't really + need them to run ACE. Thanks to gonzo@ing.puc.cl (Gonzalo + A. Diethelm) for pointing this out. + +Tue Feb 24 07:14:16 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/Asynch_Acceptor.cpp (handle_accept): Update the + event_handler's proactor pointer once it is accepted. Thanks to + Jason Katz <Jason@email.rts-inc.com> for reporting this. + + * apps/Gateway/Gateway/Event.h (class Subscription): Moved the + htonl of total_consumers_ to *after* the loop that uses it! + Thanks to Jorn Jensen <jornj@funcom.com> for reporting this. + +Tue Feb 24 05:08:31 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Asynch_Acceptor.i: Filled in some missing keywords. + + * ace/Log_Record.h (ACE_Log_Record): Hacked it to work for CE. + Undefined the ostream version of print (). I'm planning to drop + iostream support on WinCE. (Then, I don't have to write my + own. ;-) + + * ace/ACE.{h,i} (timestamp, format_hexdump): Removed UNICODE_ONLY version. + Changed to use ASYS_TCHAR to differentiate this condition. + + * ace/OS.h (ACE_OS): Undefined shm_{open,unlink} if + ACE_HAS_MOSTLY_UNICODE_APIS. + + * ace/OS.cpp (ctime,ctime_r): Added CE implementation. + + * ace/streams.h: Added /**/ between #include and <..> in several + places. + + * ace/*: Changed ACE_HAS_UNICODE_ONLY to + ACE_HAS_MOSTLY_UNICODE_APIS. + +Mon Feb 23 19:41:53 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/Asynch_Acceptor.i (bytes_to_read): Added an inline accessor + for the bytes_to_read_ field. Thanks to Jason Katz + <Jason@email.rts-inc.com> for suggesting this. + +Mon Feb 23 12:26:06 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/OS.cpp (sched_params): removed ACE_ADAPT_RETVAL from PTHREADS + ::sched_setscheduler () call, because it returns the old scheduling + policy, not 0, on success. + + * ace/config-osf1-4.0.h: removed ACE_HAS_EXCEPTIONS because that is + enabled by platform_osf1_4.0{,_rcc}.GNU. + + * include/makeinclude/platform_osf1_4.0.GNU: added suppression of + warning 835 because /usr/include/cxx/memory, line 505, triggers + a warning about an unreferenced parameter. + + * include/makeinclude/platform_osf1_4.0{,_rcc}.GNU: added + "exceptions = 1" so that ACE exception handling can be + disabled on the make command line. + +Mon Feb 23 11:27:10 1998 David L. Levine <levine@cs.wustl.edu> + + * ACE version 4.4.30, released Mon Feb 23 11:27:10 1998. + +Mon Feb 23 11:11:18 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Process.h: Define ACE_Process_Options::NO_EXEC as 0 on + Win32. It has no effect on NT anyway. + +Sun Feb 22 21:37:43 1998 David L. Levine <levine@cs.wustl.edu> + + * include/makeinclude/platform_vxworks5.x_g++.GNU: updated + comments to reflect that WIND_BASE and WIND_HOST_TYPE + environment variables must be set. Thanks to Nanbor for + reporting that. Also, set CROSS-COMPILE flag. + + * include/makeinclude/rules.lib.GNU: updated VOBJS so that it + will build the fancy new TAO/orbsvcs hierarchy. + + * include/makeinclude/platform_{chorus*,lynxos,vxworks5.x_g*}.GNU: + set CROSS-COMPILE flag. It's only used by TAO at this point. + + * ace/Svc_Conf_y.cpp: updated based on new Svc_Conf.y. + + * etc/Svc_Conf_y.cpp.diff: regenerated for latest Svc_Conf_y.cpp. + + * ACE-INSTALL.html,include/makeinclude/platform_lynxos.GNU: moved + LynxOS installation info from its platform file to ACE-INSTALL.html. + +Sun Feb 22 21:26:19 1998 James CE Johnson <jcej@chiroptera.tragus.org> + + * tests/IOStream_Test.cpp (server): break out of while loop if + read from client_handler fails. + +Sun Feb 22 13:06:20 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/Asynch_Acceptor.h (class ACE_Asynch_Acceptor): Made the + accept method virtual so that users can override it and do + things like enforce limits on the maximum number of simultaneous + connections. Thanks to Jason Katz <Jason@email.rts-inc.com> for + suggesting this. + +Sun Feb 22 13:22:30 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/OS.h: Moved definition of ACE_MAP_{PRIVATE,SHARED,FIXED} + down to where every platform can see. + +Sun Feb 22 13:06:20 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/Svc_Conf.y: Fixed a couple of places where we were + potentially dereferencing NULL pointers when services failed to + load. Thanks to Eric C. Newton <ecn@smart.net> for reporting + this. + +Sat Feb 21 12:44:51 1998 David L. Levine <levine@cs.wustl.edu> + + * ACE version 4.4.29, released Sat Feb 21 12:44:51 1998. + +Sat Feb 21 11:53:45 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Hash_Map_Manager.cpp (close_i): Remember to reset the + current size to 0 after deallocating all entries in the map. + Thanks to Alex for noticing this. + +Fri Feb 20 06:36:04 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/Timer_Queue_Adapters (activate): added thread_names argument. + + * ace/OS.{h,i} (cond_timedwait): fixed on LynxOS (DCE_DRAFT4_THREADS), + where pthread_cond_timedwait () expects a relative instead of + absolute time. + + * tests/Buffer_Stream_Test (Consumer::svc): removed thr_yield for + LynxOS, now that ACE_OS::cond_timedwait () is fixed. + + * ace/OS.i (mmap): use ACE_DEFAULT_FILE_PERMS on LynxOS for the + shared memory object. + + * ace/Mem_Map.* (unmap): on LynxOS, write back the shared object to + the plain file, if the mmap () protection included PROT_WRITE. + + * ace/README: added ACE_HAS_BOOL, which can be used by TAO. + +Thu Feb 19 17:59:53 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * apps/JAWS/clients/Caching/*: Reworked and cleaned up these files a + bit. Added a test_URL.cpp file. Notice that these file will + finally be moved to other directory. + +Thu Feb 19 15:52:50 1998 Stanley D Leeson <STANLEY.D.LEESON@cdev.com> + + * ace/Task.{h,cpp} (activate): added optional thread_names array + argument. + +Thu Feb 19 12:55:00 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/OS.h: Added /**/ between #include and '<', Thanks to + gonzo@ing.puc.cl (Gonzalo A. Diethelm) for providing the + patches. + +Thu Feb 19 11:18:08 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/OS.h: added ACE_MAP_{PRIVATE,SHARED,FIXED}, and + ACE_OS::shm_{open,unlink}. + + * ace/OS.i: added ACE_OS::shm_{open,unlink}, and mmap support on + LynxOS. + + * ace/Mem_Map.*,Shared_Memory_MM.h,Filecache.cpp: default share + value to ACE_MAP_PRIVATE instead of MAP_PRIVATE, to allow easy + overriding in config files. + + * ace/config-lynxos.h: added ACE_HAS_SHM_OPEN, and map + ACE_MAP_PRIVATE to ACE_MAP_SHARED because MAP_PRIVATE is + not supported on LynxOS 2.5.0. + + * tests/Mem_Map_Test.cpp: replace file_size with line_length because + that's more accurate. + + * tests/SOCK_Connector_Test.cpp: use ACE_DEFAULT_SERVER_HOST on + LynxOS, and removed #include of sys/utsname.h because it's in OS.h. + + * include/makeinclude/platform_lynxos.GNU: added LYNXOS so that + other Makefiles can easily know if where building for LynxOS. + + * ace/ACE.cpp (recv_n): commented out the MSG_PEEK flag check because + it caused IOStream_Test to not terminate. + + * ace/Env_Value_T.{h,i}: moved ACE_Convert specializations from .i + file to .h file, because the resulted in multiple instantiations + with ACE_INLINE disabled, and missing specializations without + ACE_HAS_TEMPLATES_REQUIRE_SOURCE and inlining enabled. + + * tests/TSS_Test.cpp: weakened to work with LynxOS. It has a very + limited number of keys, maybe 16, and can't free them. And, the + test always core dumps if we try to request more keys than it has + available. + + * tests/run_tests.sh: disabled some tests on LynxOS. + +Thu Feb 19 10:41:05 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/SOCK.cpp (open): It appears that we don't need to do + SO_REUSEADDR if protocol_family != PF_UNIX. Thanks to Chuck + Gehr <gehr@sweng.stortek.com> for reporting this. + +Wed Feb 18 22:34:40 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * examples/Reactor/Dgram/Dgram.dsw: + * examples/Reactor/Dgram/Dgram.dsp: + * examples/Reactor/Dgram/CODgram.dsp: Newly added files for NT. + + * examples/Reactor/Dgram/Dgram.cpp: + * examples/Reactor/Dgram/CODgram.cpp: Made them runnable on NT. + + * ace/Process.h (ACE_Process_Options): Changed the definition of + ACE_Process_Options::NO_EXEC to 0 for Win32 because it doesn't + mean anything on NT (you must exec a new program on NT, no fork + syntax available.) With this, we can simulate the fork effect + more or less (still not portable thou. See + examples/Reactor/Dgram/ for some examples.) + +Wed Feb 18 16:07:14 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * netsvcs/lib/Log_Message_Receiver.cpp (log_output): There was a + problem where "outputfile" can be NULL, which causes problems + when it is dereferenced. Thanks to Stephen Coy + <stevec@magna.com.au> for reporting this. + + * ace/ACE.cpp (ldfind): modified the code to allow it to + consistently return a status indicating whether or not a + potential shared library file was found. Thanks to Patrick + J. McNerthney <pat@thememedia.com> for reporting this. + +Wed Feb 18 15:30:48 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * include/makeinclude/rules.lib.GNU: + Now we can create libraries with some files in + subdirectories. Though the Makefile still needs to set VPATH. + +Wed Feb 18 12:22:48 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Buffer_Stream_Test.cpp (Consumer::svc): added a + thr_yield so that the test magically works on LynxOS. + ACE_OS::cond_timedwait is busted on LynxOS, we're investigating it. + +Wed Feb 18 11:53:00 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * bin/auto_compile: + Added netsvcs to auto_compile list. + +Tue Feb 17 18:27:15 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.28, released Tue Feb 17 18:27:15 1998. + +Tue Feb 17 17:59:32 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * examples/Reactor/Multicast/Multicast.dsw: + * examples/Reactor/Multicast/client.dsp: + * examples/reactor/multicast/server.dsp: New project files. + +Tue Feb 17 15:53:41 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/ACE.cpp (recv_n): Added a check to drop out if the MSG_PEEK + flag is set! Thanks to Keith Brown <kalbrown@ix.netcom.com> for + reporting this. + +Tue Feb 17 12:56:24 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * include/makeinclude/wrapper_macros.GNU: Broke the "purify" + command out of PRELINK into its own variable: PURELINK. This was + done to quiet purify when building shared libraries. It wasn't + possible simply to remove the PRELINK reference from SOLINK.cc + because PRELINK is also used for specifying quantify. + + Also added two new variables: PURE_CACHE_DIR and + PURE_CACHE_BASE_DIR. PURE_CACHE_DIR is the value of the + purify/quantify '-cache-dir=' option, and PURE_CACHE_BASE_DIR is + used as the base directory to build a user/compiler-specific cache + directory. In general, you probably want to use them like this: + "make PURE_CACHE_BASE_DIR=~/mypurecache", which will end up + creating the directory ~/mypurecache-<username>-<compiler>. + +Tue Feb 17 09:23:05 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/OS.h: there were two SIGCHLD #defines, if it was not + already #defined. I changed the second one to be SIGCLD instead. + + * ace/config-linux-common.h: removed ACE_LACKS_TCP_H on alpha because + it's not necessary with glibc-2.0.6. + +Tue Feb 17 08:41:06 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/OS.h (ACE_PROPER_SINGLETON_INSTANTIATION): Changed spelling + of SINGLETONE to SINGLETON. Thanks to Mark Maris + <maris@scgp.com> for reporting this. + +Tue Feb 17 07:41:32 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.27, released Tue Feb 17 07:41:32 1998. + +Tue Feb 17 03:32:30 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/ACE.*: Changes for Windows CE just keeps going and going and + going... All following functions are member functions of class + ACE. + + This member funcion has wchar version _only_ when + ACE_HAS_UNICODE_ONLY is defined: + + timestamp + + I've added wchar version of the following member functions: + + strecpy + strsplit_r + strrepl + basename + execname + format_hexdump + + These functions are not defined on CE because they make no sense + on CE. + + strenvdup + daemonize + + There is no stdin defined on CE. Before we implement a stdin + for CE, these functions don't make any sense. + + read_adapter + register_stdin_handler + remove_stdin_handler + + Changing these functions to UNICODE will need to change the + svc.conf parser. Therefore, I'll leave them to a later point. + + ldopen + ldfind + + * ace/README: Added a new directive ACE_HAS_UNICODE_ONLY which + indicates that most APIs must use wchar instead of char. (Note + that on WinCE, only WinSock functions use the traditional char + interfaces. Most other functions only support wchar + interfaces, include str* functions.) + +Mon Feb 16 14:57:26 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Priority_Task_Test.cpp (open): fallback to minimum + ACE_SCHED_OTHER priority instead of 0. + + * tests/Priority_Task_Test.cpp (open): suppress warning message + about retrying task activation with fallback priority unless -d + option is specified. + + * ace/High_Res_Timer.cpp: initialize global_scale_factor_ to 1 if + ACE_HAS_{,AIX_}HI_RES_TIMER and ACE_WIN32 are not defined. + Thanks to Robert Olson <olson@mcs.anl.gov> for reporting a + problem with bad hires time values on Irix. + +Mon Feb 16 10:51:28 1998 Oliver Kellogg <Oliver.Kellogg@vs.dasa.de> + + * include/makeinclude/platform_osf1_4.0_rcc.GNU: added this + new platform file for Rational rcc (2.4.1) on DU 4.0. + + * ace/config-osf1-4.0.h: added ACE_LACKS_SIGNED_CHAR to + RATIONAL section. + + * ace/OS.h: added __rational__ to list of users of long + ACE_UNUSED_ARG. + + * ace/OS.i (gethostbyname_r): added some ACE_UNUSED_ARGs for + Digital Unix. + +Sun Feb 15 16:32:52 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * netsvcs/clients/Naming/Client/svc.conf: Removed "-s" flag, which + set the database name for local namespce. This was causing + grief if users forgot to set this environment variable. Thanks + to Johannes Gutleber <Johannes.Gutleber@cern.ch> for reporting + this. + +Sun Feb 15 15:55:47 1998 Darrell Brunsch <brunsch@cs.wustl.edu> + + * ace/Timer_Hash_T.{cpp,h}: Timer Hash wasn't keeping the earliest + node pointer up to date with cancels. + +Sat Feb 14 21:12:52 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/Synch_T.h (class ACE_Guard): this->acquire() already sets + the owner, so we don't need to do it in the constructor. + +Sat Feb 14 20:57:59 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * netsvcs/lib/Log_Message_Receiver.{h,cpp} (log_output): Added this to + all receiver classes. It allows writing messages to a user + specified ostream. + + * netsvcs/lib/Server_Logging_Handler_T.cpp + (handle_logging_record): * netsvcs/lib/Client_Logging_Handler.cpp + (send): Use the above change to avoid missing data on NT. Thanks + to Greg White <gwhite@northlink.com> for providing the fix. + +Sat Feb 14 18:34:37 1998 Darrell Brunsch <brunsch@cs.wustl.edu> + + * ace/Timer_{Wheel,Hash}_T.cpp: Fixed a bug with earliest time + pointers not being set correctly. Thanks to Mark Evans + <mark.evans@tandem.com> for reporting this. + + * tests/Timer_Queue_Test.cpp: Added a quick test to check to + make sure the earliest time is reported correctly. + +Sat Feb 14 18:28:19 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/SOCK_Dgram_Mcast.cpp (subscribe): Fixed a problem with the + ACE_SOCK_Dgram_Mcast subscription method. Originally, each time + the ACE_SOCK_Dgram_Mcast subscribe() method was invoked, it + created a new socket, did appropriate setsockopt calls + (e.g. SO_USEPORT), did a bind() to that socket, and then did the + setsockopt call that actually joins the mcast group. The + problem with this was that is wasn't possible to a single socket + to subscribe to more than one multicast group. Multiple calls + to ACE_SOCK_Dgram_Mcast.subscribe() didn't work because the new + socket descriptor that was issued didn't listen to the old + multicast group(s). The fix was to change the subscribe() + method to only create, set up, and bind the socket if + get_handle() == ACE_INVALID_HANDLE. Thanks to Dave Meyer + <dmeyer@std.saic.com> for reporting this. + +Sat Feb 14 03:29:50 1998 Sergio Flores <sergio@tango.cs.wustl.edu> + + * ace/ACE.cpp (set_handle_limit): Fixed a couple of bugs + setting the maximum number of file descriptors. If we use + setrlimit, we should first get the hard limit before calling + it, or we get an EINVAL for trying to set a hard limit of 0 + and a soft limit greater than that. Also, for -1 the call + was not setting the limit to the maximum allowable. + + * ace/OS.h (ACE_MAX_DGRAM_SIZE): Moved the #define + ACE_MAX_DGRAM_SIZE from the PSOS specific part of OS.h. + +Fri Feb 13 19:25:55 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/Log_Record.cpp (ACE_Log_Record): Changed the "set" method + for priority() so that it doesn't convert the priority into the + base two logarithm of the parameter. Instead, this is handled + by the "get" method of priority(). Thanks to Eric C. Newton + <ecn@smart.net> for reporting this. + + * ace/OS.h: Added a new #define called ACE_MAX_DGRAM_SIZE, which + is set to 8k by default. Naturally, this can be overwritten in + platform-specific config.h files. + +Fri Feb 13 10:40:36 1998 David L. Levine <levine@cs.wustl.edu> + + * ACE version 4.4.26, released Fri Feb 13 10:40:36 1998. + +Thu Feb 12 14:33:12 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/OS.i (mktemp): I missed this one in Win32 section. + +Fri Feb 13 09:04:13 1998 Oliver Kellogg <Oliver.Kellogg@vs.dasa.de> + + * ace/config-osf1-4.0.h: added Rational RCC support. + +Wed Feb 11 09:50:27 1998 Steve Huston <shuston@riverace.com> + + * ace/config-dgux-4.x-ghs.h + * include/makeinclude/platform_dgux4_ghs.GNU: Configs for ACE on + DG/UX 4 using Green Hills Multi C++ compiler, and draft 10 pthreads. + + * ace/README + * ace/OS.h: New macro ACE_NEEDS_SCHED_H for platforms which needs to + #include <sched.h> to get complete defs for thread scheduling. + + * ace/OS.cpp: Added a DG/UX-specific pthread_wait function for use with + draft 10 pthreads on DG/UX. + +Wed Feb 11 09:32:10 1998 David L. Levine <levine@cs.wustl.edu> + + * ACE-INSTALL.html: updated DU CXX and Linux info. + + * ace/Makefile: moved INSTALL= to before include of rules.local.GNU, + so that the (unused) install command doesn't show up with make -n. + + * include/makeinclude/platform_chorus_ghs.GNU: put posix -I before + stdc -I. + + * ace/OS.h: removed include of stdfileio.h on ghs/Chorus. It's not + necessary with the above change to platform_chorus_ghs.GNU. + +Wed Feb 11 09:24:51 1998 David L. Levine <levine@cs.wustl.edu> + + * ACE version 4.4.25, released Wed Feb 11 09:24:51 1998. + +Tue Feb 10 14:58:00 1998 Chris Gill <cdgill@cs.wustl.edu> + + * ace/Containers.cpp : removed unreachable break; + +Tue Feb 10 09:34:27 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/INET_Addr.cpp (get_host_name): moved declaration of local + "hentry" so that it's not seen on Chorus. + + * ace/OS.i (getprotoby{name,number}{,_r}): not supported on Chorus. + + * ace/Makefile: build Select_Reactor.o without -g on ghs/Chorus, + because it causes GreenHills 1.8.8 to core dump. + + * ace/config-chorus.h: adjusted to work with GreenHills 1.8.8. + + * include/makeinclude/platform_chorus_ghs.GNU: use Gnu ar instead + of ax, because we don't have a license for ax. + + * Timer_Queue_Adapters.{h,i} (activate): added stack and stack_size + parameters to match declaration in ACE_Task_Base. + + * include/platform_linux{,_lxpthread}.GNU: removed + -fno-strict-prototypes from CFLAGS because it is no longer needed. + + * include/makeinclude/platform_sunos5_g++.GNU: added -lposix4, to + be consistent with the Sun C++ platform file. Some of the TAO + tests need it. + +Mon Feb 09 18:10:37 1998 Chris Gill <cdgill@cs.wustl.edu> + + * ace/Containers.{cpp,h} : made next () a const member function in + ACE_Ordered_MultiSet_Iterator<T> + +Mon Feb 09 14:52:25 1998 David L. Levine <levine@cs.wustl.edu> + + * include/makeinclude/platform_chorus_ghs.GNU: added include path. + + * ace/config-chorus.h: with GreenHills, removed + ACE_HAS_WCHAR_TYPEDEFS_CHAR and ACE_LACKS_UNISTD_H. We'll + see if --multibyte_chars --wchar_t_keyword work. + + * ace/OS.h: added #include <stdfileio.h> with GreenHills/Chorus. + + * netsvcs/clients/Naming/Client/Client_Test.cpp (handle_input): + get input from stdin, not ACE_STDIN. Thanks to Jack Erickson + <JErickson@exchange.ml.com> for reporting this. + +Sun Feb 8 15:33:33 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * include/makeinclude/wrapper_macros.GNU: + * include/makeinclude/rules.lib.GNU: + * include/makeinclude/rules.local.GNU: Rename + ACE_LDSO_Major_Minor_Version_Number to ACE_LDSO_Version_Number. + + * include/makeinclude/rules.local.GNU: Put back checking of + current directory into library installation rules but with an + extra check for null ACE_LDSO_Version_Number. + +Sun Feb 08 12:06:30 1998 David L. Levine <levine@cs.wustl.edu> + + * ACE-INSTALL.html: added Scott Snyder's egcs 1.0.1 patch, which + allows netsvcs/lib/Server_Logging_Handler.cpp to build on + Linux/RedHat 5.0. + + * include/makeinclude/wrapper_macros.GNU: protected ACE_ROOT... + additions to INCLDIRS and LDFLAGS so they're only added once. + Thanks to James CE Johnson <jcej@lads.com> for this addition. + + * ace/config-linux-common.h: added ACE_HAS_TERM_IOCTLS. Thanks + to James CE Johnson <jcej@lads.com> for this addition. + + * examples/Naming/test_multiple_contexts.cpp,test_non_existent.cpp, + test_writers.cpp: + replaced uses of cout with ACE_DEBUG. + + * examples/performance-tests/Misc/basic_perf.cpp, + context_switch_time.cpp,preempt.cpp: + divide ACE_hrtime_t by ACE_UINT32, to prevent ambiguity with + ACE_U_LongLong operator / overloading. + +Sun Feb 8 01:45:59 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * include/makeinclude/wrapper_macros.GNU (versioned_so): Added + a new directive to allow automatic installing of so libraries + with version number. This flag is default to 0. Put this line, + + versioned_so = 1 + + in your platform_*.GNU file to enable this feature. + + (ACE_LDSO_Major_Minor_Version_Number): Define the version number + to be appended to versioned so libraries (Notice: it include a + dot at the beginning.) If versioned_so == 0, this macro expand + to nothing. + + * include/makeinclude/rules.lib.GNU (INSTALL): + * include/makeinclude/rules.local.GNU (INSTALL rules): Modified + installation rules to allow installing so libraries with version + numbers. + + * include/makeinclude/platform_netbsd.GNU: + * include/makeinclude/platform_freebsd[_pthread].GNU: Enabled + new versioned_so feature. + +Sat Feb 07 05:51:15 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Synch_T.cpp (ACE_TSS): Changed to use MessageBox on WinCE. + Because there's no console in WinCE, we can't output warning + messages to stderr. + + * ace/README (ACE_HAS_UNICODE_ONLY): This new directive is used to + removed some char version function definitions because it + doesn't make too much sense to support these function when most, + if not all, strings in the system are wchar strings. + + * ace/OS.{h,i} (ACE_DEFAULT_LOGGER_KEY): Added wchar definition if + we are using UNICODE. + (ACE_SHE_{TRY,FINALLY,EXCEPT}): WinCE doesn't support Win32 + structual exception, so these macros should be defined as on + UNIX platforms. + (mktime): Removed this function from WinCE. Don't even think + about using them. + (ACE_HAS_UNICODE_ONLY): If this directive is defined, the char + version of the following functions are not defined in ACE_OS: + + chdir + mkdir + mkfifo + mktemp + getcwd + unlink + tempnam + + Some of them has wchar version. + + (chdir,mkdir,getcwd): Added wchar version. Unfortunately, getcwd + still doesn't work for WinCE. + + * ace/OS.cpp (mktemp): Added wchar version of this function. + Other changes added. Please refer to the entry above. If + platform/compiler supports this function, then both char and + wchar versions are defined as inline functions in OS.i. + (socket_{init,fini}): Removed leading :: from WSAStartup and + WSACleanup because these two are implemented as macros on + WinCE. Changed to use MessageBox instead of cerr for outputing + error messages. + + * ace/config-win32-common.h: Don't defined ACE_HAD_P_READ_WRITE on + WinCE. + + * ace/config-WinCE.h: Defined directive ACE_HAS_UNICODE_ONLY. + + * ace/ace_dll.dsp: Adjusted CE project settings. + +Fri Feb 06 15:28:11 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/config-sunos5.5-sunc++-4.x.h: disable explicit template + instantiations with CC 4.2, because it still does implicit + instantiation. We need to figure out how to disable that. + Then, we can enable -instances=global to get the real + benefits of explicit template instantiation with CC. + + * tests/Barrier_Test.cpp: updated a comment re. the VxWorks + task names test. + +Fri Feb 06 10:42:22 1998 David L. Levine <levine@cs.wustl.edu> + + * ACE version 4.4.24, released Fri Feb 06 10:42:22 1998. + +Fri Feb 06 10:30:00 1998 Chris Gill <cdgill@cs.wustl.edu> + + * ace/Containers.cpp: fixed error in + ACE_Doubly_Linked_List_Iterator<T>::first (void); + +Fri Feb 06 08:27:32 1998 Chris Gill <cdgill@cs.wustl.edu> + + * ace/Containers.{cpp,h} : added "first" methods to all container + iterators: each positions the iterator at the first element + in the container and returns 1, or if the container is empty + positions the iterator at a well defined "null" position for + that container and returns 0: + + template <class T> int + ACE_Unbounded_Set_Iterator<T>::first (void); + + template <class T> int + ACE_Unbounded_Queue_Iterator<T>::first (void); + + template <class T> int + ACE_Unbounded_Stack_Iterator<T>::first (void); + + template <class T> int + ACE_Bounded_Set_Iterator<T>::first (void); + + template <class T> int + ACE_Fixed_Set_Iterator<T>::first (void); + + template <class T> int + ACE_Doubly_Linked_List_Iterator<T>::first (void); + +Wed Feb 04 22:23:24 1998 David L. Levine <levine@cs.wustl.edu> + + * include/makeinclude/platform_linux*.GNU: commented out or + removed SUPPRESS_DASH_G, because it's not needed with hacked + gas on Linux/Alpha. + + * ACE-INSTALL.html: added some comments on Linux/RedHat 5.0, + for both Intel and Alpha. Thanks to James CE Johnson + <jjohnson@lads.com>, Torbjorn Lindgren <tl@funcom.com>, + and Oleg Krivosheev <kriol@fnal.gov> for this information. + + * ace/config-linux-common.h: replaced #define of ACE_HAS_EXCEPTIONS + with a compile time check for egcs, which supports exceptions. + Exceptions can now be enabled on the make command line. Also, + moved some comments on Linux system configuration up to + ACE-INSTALL.html. + + * ace/config-linux-common.h,config-g++-common.h: moved + ACE_HAS_EXCEPTIONS #define from config-linux-common.h to + config-g++-common.h. + + * include/makeinclude/wrapper_macros.GNU: disabled exception handling, + the default, on g++ >= 2.8.0. On both Linux/alpha and + Solaris 2.5.1/sparc, exception handling increased the size of + libACE.so by about 25 percent. Exception handling can easily + be enabled on the make command line or by editing your + include/makeinclude/platform_macros.GNU. + + * netsvcs/lib/TS_Server_Handler.cpp: instantiate + ACE_Svc_Handler<ACE_SOCK_STREAM, ACE_NULL_SYNCH> if + ACE_HAS_STREAM_PIPES, not if ACE_HAS_TLI. Thanks to Oliver + Kellogg <Oliver.Kellogg@vs.dasa.de> for reporting this problem. + + * Makefile: made ACE-INSTALL a dependency of release and + cleanrelease so that it is only updated when necessary. + + * ace/OS.{h,i},README (gets): wrapped with !ACE_LACKS_GETS. + + * ace/config-g++-common.h: added ACE_LACKS_GETS for egcs. It + supports ::gets (), but warns about it at link time on Linux. + The Solaris gets () man pages recommends using fgets () instead. + + * netsvcs/clients/Naming/Client/Client_Test.cpp: replaced use of + ACE_OS::gets () with ACE_OS::fgets (). + +Wed Feb 04 11:07:46 1998 Chris Gill <cdgill@cs.wustl.edu> + + * ace/Containers.cpp : fixed my "fix" to new_position pointer in + ACE_Ordered_MultiSet<T>::find_from () - now checks the pointer + before assigning something to it. + +Tue Feb 03 15:11:00 1998 Chris Gill <cdgill@cs.wustl.edu> + + * ace/Containers.cpp : fixed order of member initialization list + in ACE_DNode ctor, added update of new_position pointer in + ACE_Ordered_MultiSet<T>::find_from () + +Mon Feb 02 21:26:30 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Map_Manager_Test.cpp (test_map_manager): print out + item.int_id_ instead of local i so that item gets used (CXX + warned that it wasn't). + + * include/makeinclude/platform_osf1_4.0.GNU: added suppression of + warning 610, nonoverriding_function_decl. + + * ace/config-chorus.h,config-freebsd*.h,,config-hpux-10.x-g++.h, + config-irix{5.3,6.x}-g++.h,config-osf1-4.0.h,config-m88k.h, + config-netbsd.h,config-psosim-g++.h,config-sco-4.2-nothread.h, + config-sco-5.0.0-mit-pthread.h,config-sunos4-g++.h, + config-sunos5.4-g++.h,config-unixware-2.*.h: + migrated to config-g++-common.h. + + * ace/config-sunos5.5-egcs*.h: removed. config-sunos5.5-g++.h + now supports egcs, via config-g++-common.h. + + * ace/config-sco-5.0.0*.h: added RCS keyword string. + + * include/makeinclude/wrapper_macros.GNU: support "exceptions" + make flag on all platform. If enabled, it adds + -DACE_HAS_EXCEPTIONS to CCFLAGS. Not all platforms support + exception handling, of course, and that is noted in the + description of the "exceptions" make flag. + + * include/makeinclude/platform_sunos5_sunc++.GNU, + platform_sunos5.6_sparc_sunc++_4.2.GNU: + removed -DACE_HAS_EXCEPTIONS, because it's now done in + wrapper_macros.GNU. + + * examples/Reactor/Misc/test_event_handler_t.cpp: renamed + ACE_Sig_Handler to ACE_Test_Sig_Handler to avoid collision + with ACE_Sig_Handler in ACE library. + + * tests/Env_Value_Test.cpp (main): print out signed instead of + unsigned values. + +Mon Feb 02 14:40:00 1998 Chris Gill <cdgill@cs.wustl.edu> + + * tests/OrdMultiSet_Test.cpp: added explicit template instantiation + for ACE_DNode<int> + + * tests/OrdMultiSet_Test.dsp: new MSVC++ project for the test + + * tests/tests.dsw: added OrdMultiSet_Test.dsp project to workspace + + * tests/run_tests.{bat,sh,psosim,vxworks} : added OrdMultiSet_Test + + * tests/Makefile : added OrdMultiSet_Test + +Mon Feb 02 02:42:30 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/OS.h (ACE_NOTSUP_RETURN): Moved its definition to the end of + this file where __TEXT has already been defined. WinCE needs to + use wchar. + + (struct utsname): Moved this definition after all datatypes are + filled in. Reverted my previous changed on it. + + Win32 only: Added wchar version of ACE_OS::{perror,fprintf, + vsprintf,sprintf}. + + Windows CE only: Undefined some char version function in class + ACE_OS. They are of no use on CE anyway. + + * ace/OS.i (fdopen): Added wchar version of ACE_OS::fdopen, it is + only available on Win32. + + Windows CE only: Added implementation for c-styled file + functions. Type FILE * is mapped to Win32 HANLDE under the hood + and Win32 API's are used to emulate these functions. + + * ace/OS.cpp: Removed some char version functions and added some + wchar functions. + +Sun Feb 01 15:12:49 1998 Chris Gill <cdgill@cs.wustl.edu> + + * tests/OrdMultiSet_Test.cpp: added an ACE test for the + ACE_Ordered_MultiSet and ACE_Ordered_MultiSet_Iterator + class templates. + + * ace/Containers.i (ACE_Ordered_MultiSet<T>::is_empty ()): + changed to return 1 rather than cause a SEGV when the + container is in fact empty (the above test discovered the bug). + +1998-02-01 Nanbor Wang <nanbor@fennec.wolfpack.cs.wustl.edu> + + * ace/OS.h (struct utsname): Separated WCE's definition from + ACE_LACKS_UTSNAME_T bacause VxWorks doesn't have TCHAR type. + +Sun Feb 01 12:09:11 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/Containers.cpp (ACE_Ordered_MultiSet::insert and find): + expanded ITERATOR type of second argument, because g++ couldn't + deal with it. It can in the class declaration in Containers.h, + so I didn't change that. + + * ace/config-sunos5.5-g++.h,config-lynxos.h,config-vxworks5.x.h: + migrated to config-g++-common.h. + + * tests/run_tests.vxworks: disabled Message_Queue_Test because + it sometimes page faults or hangs the target. + +Fri Jan 30 15:35:30 1998 Chris Gill <cdgill@cs.wustl.edu> + + * ace/Containers.{cpp,h,i} : added class templates + ACE_Ordered_MultiSet and ACE_Ordered_MultiSet_Iterator + which respectively implement abstractions for containment + of and iteration over an ordered set that allows multiple + identical instances of a given item. + +Fri Jan 30 02:42:30 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/OS.cpp (uname): Made it comform with Unicode. + + * ace/OS.h (struct utsname): Changed the internal string type to + TCHAR. + + * ace/OS.i (gettimeofday): Added Windows CE implementation. + +Thu Jan 29 21:02:24 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/config-sunos5.5-g++.h: revert so that ACE_HAS_STRING_CLASS + is #defined, regardless of g++ version. + + * ace/config-g++-common.h,config-gcc-2.7.2.h: replaced + config-gcc-2.7.2.h with config-g++-common.h, which will support + all g++ versions, including egcs. + + * ace/config-linux-common.h,config-sco-5.0.0-{fsu-pthread,nothread}.h: + migrated to config-g++-common.h. + +Thu Jan 29 20:28:30 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.23, released Thu Jan 29 20:28:30 1998. + +Thu Jan 29 16:17:28 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Log_Msg.cpp (open): Always close down the logger connection + before changing the setting. Added codes to allow resetting + logging endpoint back to STDERR from LOGGER. + + * ace/OS.h (ACE_DEFAULT_LOGGER_KEY): Changed to localhost:10012 + so it can be used in both netsvcs/lib/ and netsvcs/client/. + + * netsvcs/client/Logger/indirect_logger.cpp: Added code to reset + logging endpoint back to stderr. + + * netsvcs/lib/Client_Logging_Handler.cpp + (ACE_Client_Logging_Acceptor): Changed to initialize + logger_key_ with ACE_DEFAULT_LOGGER_KEY. + + * netsvcs/lib/Client_Logging_Handler.h: Removed DEFAULT_LOGGER_KEY + definition. + +Thu Jan 29 12:32:32 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * include/makeinclude/platform_irix6.x-sgic++.GNU: + Added support for debugging, somehow the DCCFLAGS were missing. + +Thu Jan 29 10:52:34 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/config-lynxos.h: added putenv () declaration. + + * include/makeinclude/platform_sunos5_g++.GNU: added comment + about disabling optimization with g++ 2.8.0. + + * ace/config-sunos5.5-g++.h: don't #define ACE_HAS_STRING_CLASS + with g++ 2.8.0. + + * include/makeinclude/platform_sunos5_egcs.GNU: include + the g++ platform file, it works just fine. The net effect + on egcs is these three changes: + + 1) -fno-implicit-templates is included in CPPFLAGS. That + option is necessary with the egcs (egcs-2.90.23 980102 + (egcs-1.0.1 release)) that we use to save _much_ text + space. + + 2) Use -G instead of -shared in SOFLAGS. That way, + libstc++.so, etc., need not be built. + + 3) The compiler is called g++ instead of c++. I don't + think this hurts anything. And Purify knows about g++, + but not g++. + + These (and any other) options can be overridden in + platform_sunos5_egcs.GNU if necessary. See the commented + example there. + + * ace/config-sunos5.5-egcs.h: added + ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION to match + -fno-implicit-templates in the platform_sunos5_egcs.GNU. + + * tests/Env_Value_Test.cpp: updated comment to explain why we + can't use spawn with ACE_HAS_NONSTATIC_OBJECT_MANAGER. We + can, in general, but we can't on VxWorks because it doesn't + have fork (). + +Thu Jan 29 10:32:28 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * include/makeinclude/platform_sunos5_sunc++.GNU: + The posix4 library is needed in some TAO examples. + + * ace/Module.h: + * ace/Message_Queue.h: + Workaround HP/C++ compiler bug, it does not support enums inside + templates so we move them into base classes. Thanks to Sundar + T.J <tjsundar@cisco.com> for reporting this problem. + +Thu Jan 29 10:14:03 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/FIFO.h: Revised the comment at the beginning of ACE_FIFO to + clearly indicate that it doesn't work portably to Win32. Thanks + to Thomas Hampson <thomas.hampson@lmco.com> for suggesting this. + +Wed Jan 28 15:36:55 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * bin/auto_compile: + We can use the top level Makefile on TAO now. + +Wed Jan 28 11:59:41 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/OS.i (isatty): Added conversion from a Win32 HANDLE to a C + file handle. It works correctly now. Thanks to Chuck R. Gehr + <GehrCR@louisville.stortek.com> for noticing the problem. + +Tue Jan 27 20:32:07 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/Message_Block: Added an accessor to retrieve the reference + count on an ACE_Data_Block. Thanks to Dave Meyer + <dmeyer@std.saic.com> for contributing this. + +Tue Jan 27 15:09:08 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/OS.i, + * ace/Timer_Queue_Adapters.cpp: + When using ACE_CLEANUP_???_POP macros, it was being called with + argument 1, which should be 0 (don't execute the cleanup). + Thanks to Arturo Montes <mitosys@colomsat.net.co> for reporting + argument 1, which should be 0 (don't execute the cleanup).this. + +Tue Jan 27 14:56:49 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/Basic_Types.*: more cleanup: got rid of ACE_USES_ACE_U_LONGLONG, + replaced VXWORKS && ghs with ACE_HAS_WCHAR_TYPEDEFS_CHAR, and + factored out some common #defines. Rearranged ACE_SIZEOF_LONG_LONG + and ACE_UINT64 logic so that it works on NT. + +Tue Jan 27 08:28:34 1998 Steve Huston <shuston@riverace.com> + + * ace/Basic_Types.h: Simplified and changed so that the config.h file + can pre-specify the ACE_SIZEOF_* macros in case the preprocessor + has trouble calculating them. + +Tue Jan 27 06:45:07 1998 David L. Levine <levine@cs.wustl.edu> + + * examples/IOStream/server/iostream_server.cpp: for egcs, use + ACE_SOCK_IOSTREAM instead of its expansion in the ACE_Svc_Handler + template instantiation. + + * ace/Event_Handler_T.h,examples/Reactor/Misc/test_event_handler_t.cpp: + removed special-case support for ACE_HAS_SIGNFO_T, because ace/OS.h + declares a siginfo_t without it. + + * tests/run_tests.vxworks: enabled Priority_Reactor_Test and + Message_Queue_Test, because they appear to run successfully now. + Most of the time, anyways. Message_Queue_Test occasionally + pages faults; there appears to be a memory management problem. + +Tue Jan 27 02:38:16 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/OS.{i,cpp}: + * ace/config-WinCE.h: More Windows CE insanities. + +Mon Jan 26 13:20:58 1998 David L. Levine <levine@cs.wustl.edu> + + * include/makeinclude/platform_osf1_4.0_g++.GNU: added $(ACELIB) + to SOFLAGS. Thanks to Oliver Kellogg <Oliver.Kellogg@vs.dasa.de> + for reporting the problem with building shared libraries on + g++/DU 4.0. + + * ace/config-linux-common.h: moved ACE_LACKS_TCP_H so that it is + only seen on alphas (with glibc2). Thanks to Edgar Villanueva + <edgarvil@ix.netcom.com> for reporting this. + + * performance-tests/Misc/childbirth_time.cpp (prof_native_thread, + prof_ace_os_thread): changed type of local j to int to avoid + signed/unsigned comparison. + + * tests/Reactors_Test (Test_Task): changed type of member + handled_ from int to size_t to avoid signed/unsigned comparison + in Test_Task::handle_input (). + +Mon Jan 26 11:35:54 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * bin/auto_compile: + Added TAO_ROOT to the environment. + +Mon Jan 26 10:28:57 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.22, released Mon Jan 26 10:28:57 1998. + +Mon Jan 26 02:53:10 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/OS.h: Namespace related macros are now ifdef'ed by + ACE_HAS_BROKEN_NAMESPACES instead of ACE_ORBIX_HAS_NAMESPACES. + + * ace/README + * ace/config-win32-common.h: Added a new flag + ACE_HAS_BROKEN_NAMESPACES to deal with MSVC's broken namespace + support. + + * ace/config-win32.h: Re-enable defining ACE_ORBIX_HAS_NAMESPACES + for Win32. + + * ace/config-WinCE.h: Temporary file to hold WinCE specific + configurations. It will probably be merged with + config-win32-common.h in some point. + + * ace/ace_dll.dsp: Added WinCE x86 emulation mode project + definition. + + * ace/OS.{h.i} (ACE_OS): Added Windows CE macros madness. + + * ace/config-win32-common.h: Ifdef'ed out ACE_HAS_SIG_ATOMIC_T for + WinCE. Prevent repeat definition of STRICT. + +Sun Jan 25 17:31:49 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/config-win32.h: Disabled setting ACE_ORBIX_HAS_NAMESPACES by + default on NT. MSVC's namespace support is buggy. + +1998-01-25 Nanbor Wang <nanbor@fennec.wolfpack.cs.wustl.edu> + + * tests/Conn_Test.cpp: Rearranged explicit template instantiations + order to avoid errors from egcs. Thanks to Gonzo for reporting + the bug. + +Fri Jan 23 12:24:05 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/OS.i (sleep): Fixed a typo where tv_sec was being set rather + than tv_usec. Thanks to Gonzo for pointing this out. + +Fri Jan 23 06:27:51 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/IOStream.h: use std::string if + ACE_USES_STD_NAMESPACE_FORSTDCPP_LIB IOStream.h. Thanks + to Gonzo <gonzo@ing.puc.cl> for the patch. Also, changed + DEC_CXX to __DECCXX_VER because that's more accurate. + + * tests/Barrier_Test.cpp: specify thread name and stack size + on VxWorks. Thanks to Stan Leeson <STANLEY.D.LEESON@cdev.com> + for suggesting this. + + * tests/Env_Value_Test.cpp (TEST_THIS): cast val to (type) + before casting to (u_int), to try to avoid DEC CXX compiler + warning about integer overflow. Thanks to Frederic Andres + <andres@rd.nacsis.ac.jp> for reporting this. + + * ace/config-osf1-4.0.h: added ACE_HAS_EXCEPTIONS, etc., with + CXX 6.0. Thanks to Torbjorn Lindgren <tl@funcom.com> for + the patch. + + * ace/OS.i (thr_kill): removed ACE_ADAPT_RETVAL because + ::taskNameToID returns the task ID, not success/fail. + Thanks to Richard Keizer <RICHARD.L.KEIZER@cdev.com> for + diagnosing the problem and providing the fix. + + * tests/run_tests.vxworks: enabled Thread_Manager_Test and + Message_Block_Test now that they succeed. Thanks to Richard Keizer + <RICHARD.L.KEIZER@cdev.com> for the ACE_OS::thr_kill fix. + + * ace/OS.cpp (thr_create), ace/Thread_Manager.cpp (kill_thr): + on VxWorks, use strncmp instead of strcmp to check for allocated + thread ID. + +Thu Jan 22 16:34:18 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * examples/Connection/misc/Connection_Handler.cpp (svc): Fixed a + bug in the example where the global Singleton Reactor was being + used rather than the object's Reactor. Thanks to Peter Gross + <pag@kokako.probita.com> for reporting this. + +Thu Jan 22 09:04:13 1998 David L. Levine <@cs.wustl.edu> + + * ace/Hash_Map_Manager.cpp (ACE_Hash_Map_Iterator_Base ctor): + added a cast of mm.total_size_ to ssize_t, to try to avoid + a compiler warning. Thanks to Brian Mendel <bmendel@mdc.com> + for reporting this. + + * ace/config-osf1-4.0.h: updated g++ support. Thanks to + Oliver Kellogg <Oliver.Kellogg@vs.dasa.de> for the patch. + + Thanks to Tom Venturella <tventurell@mdc.com> and Dave Mayerhoefer + <davem@lynx.com> (!) for requesting the following three changes: + + * ace/Thread_Manager.cpp: added support for a user-supplied + thread (VxWorks task) name. By itself, that means just passing + the ACE_thread_t along to ACE_OS::thr_create (). The tricky + part was then handling the case where the user doesn't supply + a name. It would be cleaner if the ACE_thread_t and ACE_hthread_t + typedefs were swapped on VxWorks, because the ACE_Thread_Manager + keys off of the ACE_thread_t. And in addition to being cleaner, + it would be safer because ACE_thread_t's currently aren't + guaranteed to be unique on VxWorks. + + * ace/OS.cpp (thr_create): on VxWorks only, use the t_id (task + name) and stack_size if supplied. Also added support for setting + the stack, but commented it out because it doesn't seem to work. + + * tests/Conn_Test.cpp: on VxWorks, assign thread (VxWorks task) + names to server and client threads, to test that feature. + + * ace/OS.cpp (spa [VxWorks only]): use ::taskSpawn () instead + of ::sp () so that the task name, ace_main, can be specified. + + * ACE-INSTALL.html: added note about not linked the ACE library + into every VxWorks executable. It should work when running + multiple ACE executables on a target, though I haven't tried it. + + * include/makeinclude/rules.local.GNU: set SOEXT if it was not set, + so that it's always non-null for make depend. + + * ace/OS.h: #define ACE_THR_PRI_FIFO_DEF on all threaded platforms, + if not already defined in OS.h or in the individual platform config + file. It should be used by applications for a default real-time + thread priority. + + * ace/config-chorus.GNU: added GreenHills support. + + * include/makeinclude/platform_chorus_ghs.GNU: added platform file. + +Wed Jan 21 21:37:03 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Hash_Map_Manager.cpp (close_i): Removed the HPUX_11 + destructor madness by saving the location to be destructed in a + temporary reference instead of calling the destructor from the + array directly. Thanks to Istvan Buki <ibuki@fedex.com> for + providing the patch. + +Wed Jan 21 20:36:43 1998 Chris Cleeland <cleeland@cs.wustl.edu> + + * ACE version 4.4.21, released Wed Jan 21 20:36:43 1998. + +Wed Jan 21 10:39:12 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/Task.cpp (activate): for builds without threads only, + added ACE_UNUSED_ARG of stack and stack_size. + + * ace/High_Res_Timer.cpp: used unsigned constants instead of + signed, to allow resolution of overloaded + ACE_U_LongLong::operator/ (). + +Tue Jan 20 21:15:01 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.20, released Tue Jan 20 21:15:01 1998. + +Tue Jan 20 20:31:27 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * tests/test_config.h: + Changed several buffer sizes from BUFSIZ to MAXPATHLEN, they + were used for storing pathnames, so the later is a proper size + for them. + +Tue Jan 20 15:54:44 1998 Darrell Brunsch <brunsch@cs.wustl.edu> + + * ace/Timer_Heap_T.cpp: Fixed a bug that was introduced on + Sunday because of the non-use of position 0 (we have to + grow the heap one node early). + + * ace/Timer_Queue_T.{h,cpp}: Added a return_node () method + which is used to return a ACE_Timer_Node back into the + control of the Timer Queue after it leaves via + remove_first (). + +Tue Jan 20 15:52:31 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.19, released Tue Jan 20 15:52:31 1998. + +Tue Jan 20 12:49:05 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Hash_Map_Manager.cpp (ACE_Hash_Map_Manager): Member table_ + needs to be initialized to prevent deleting invalid memories. + +Tue Jan 20 11:57:24 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * bin/auto_compile: + Added several TAO components to the compile list. + The regular expression for make errors was missing several of + them. + +Tue Jan 20 03:36:54 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/Hash_Map_Manager.cpp (open): We should call close_i () to + ensure previously allocated memory gets release before we + allocate new one. + +Mon Jan 19 22:21:34 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * tests/Env_Value_Test.cpp (main): Added test codes for unsigned + short. + + * ace/Env_Value_T.i (ACE_Convert): Added conversion function for + unsigned short. + +Mon Jan 19 15:13:47 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * bin/Makefile: Fixed a problem with the CCFLAGS definition that + was causing circular macro expansion. Thanks to Philippe + O'Reilly <philippe@robot.ireq.ca> for reporting this. + +Sun Jan 18 14:32:42 1998 Darrell Brunsch <brunsch@cs.wustl.edu> + + * ace/Timer_Heap_T.cpp: Problems were arising because of the + use of negative numbers in the timer_id array of the timer + heap for the free list. When the 0th index is in the free + list, pointers to it will show up as 0 (because 0 == -0). + This will look the same as a timer_id for the top of the + heap, and if cancel () was attempted on this invalid + timer_id, bad things would happen. To prevent this, index + 0 is now ignored so it doesn't show up in the free list. + +Sun Jan 18 18:12:52 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * examples/Service_Configurator/Misc/*.ds?: Added new project + files for this example. + +Sun Jan 18 17:27:52 1998 Darrell Brunsch <brunsch@cs.wustl.edu> + + * ace/Timer_Wheel_T.cpp: Fixed a problem with Timer Wheel's + expire(). The problem occured when the handle_timeout() method + of the event handler used would return a 0. This causes the + Timer Queue to cancel all timers using that event handler. + Because Timer Wheel's expire caches the position of some timers + that will be expired, it was trying to expire timers that were + already cancelled. Now it checks the timer before it expires. + +Sun Jan 18 16:08:36 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/Thread_Manager: Modified the signature to the spawn_n() + method so that it's possible to pass in an array of stack + pointers and stack sizes. Thanks to Thomas Venturella + <tventurell@mdc.com> for requesting this. + + * ace/Task: Modified the signature to the activate() method so + that it's possible to pass in an array of stack pointers and + stack sizes. Thanks to Thomas Venturella <tventurell@mdc.com> + for requesting this. + +Sun Jan 18 15:54:16 1998 Darrell Brunsch <brunsch@cs.wustl.edu> + + * ace/Timer_Wheel_T.h: + ace/Timer_Hash_T.h: + ace/Timer_Queue_T.h: + ace/Timer_Wheel_T.cpp: + ace/Timer_Hash_T.cpp: Added pure virtual get_first() method to + Timer_Queue_T. Added implementations to Timer_Wheel and Timer_Hash. + Timer_Heap and Timer_List already had implementations. + +Sat Jan 17 23:40:02 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * netsvcs/VCAUTO.MAK: + * netsvcs/lib/VCAUTO.MAK: Added directory information for easier + debugging. + +Sat Jan 17 16:10:04 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * examples/Service_Configurator/Misc/main.cpp (main): Replaced the + buggy use of ACE_Service_Config daemon; with + ACE_Service_Config::open(). We'll have to fix this properly + some day, but for now this is the best solution. Thanks to + Pawel Roman <proman@npac.syr.edu> for reporting this. + +Sat Jan 17 00:42:13 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/SString.cpp (substring): Fixed bug. count should be + initialized to length and not len_. + +Fri Jan 16 15:52:34 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * ace/IOStream.h (ACE_Streambuf): + * ace/config-win32-common.h: + * ace/iosfwd.h: + * ace/streams.h: Applied IOStream patches from James CE Johnson + <jcej@chiroptera.tragus.org>. + +Fri Jan 16 01:42:52 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/OS.h: Changed the definition of ACE_CORBA_* macros so that + on non-Win32 platforms, they will be expand to the nested + classes. Thanks to Jonathan Reis <reis@minniemouse.cemax.com> + for reporting this. + + * ace/SString.h: Added the correct export macros. + +Thu Jan 15 15:45:48 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * etc/ACE-guidelines.html: Reformatted this page a bit. + + * ace/Message_Queue.cpp (open): The fix from Slawomir Kuzniar was + incorrect. I reverted the change. + +Thu Jan 15 12:43:23 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * /: Added a bunch of makefiles (*.MAK) for one button + make-and-test on NT. + + * Makefile (FILTER): Added filter to remove VC one button related + makefile from ACE release. + + * ace/ACE_Library.{mdp,mak}: Added Shared_Memory.cpp file into the + project makefile. + +Thu Jan 15 09:12:26 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Barrier_Test.cpp,Message_Block_Test.cpp,Priority_Task_Test.cpp, + Reactor_Exceptions_Test.cpp,Reactors_Test.cpp,Thread_Mutex_Test.cpp: + (main): changed some local variables from int to size_t to avoid + signed/unsigned comparison. + + * ace/OS.i,config-linux-common.h,README: aded ACE_HAS_SOCKLEN_T + support for Linux/glibc2, which has a socklen_t type. + + * include/makeinclude/rules.local.GNU (depend.local): produce all 4 + combinations of .obj, .shobj, .o, and .so dependency targets. This + should take care of the problem of not rebuilding when a dependency + has changed, after we regenerate all the Makefiles. + + * include/makeinclude/rules.local.GNU (depend.local): removed the sed + rule that wiped out each Makefile line ending with :. I don't know + why that rule was there. With it, if a Makefile had a target such + as clean:, it got deleted. Not any more. + + * many Makefiles: updated dependences with revised depend.local. + + * bin/g++dep: added lib/g++-include path to gcc -MM invocation, so + that gcc can find all of its headers. (It didn't help to replace + gcc with g++, though I would have expected that to solve the + problem.) + + * ace/Timer_Heap_T.cpp (get_first): fixed ACE_TRACE id string. + + * apps/Gateway/Gateway/Concrete_Connection_Handlers.cpp, + * apps/Gateway/Peer/Peer.cpp (recv): + changed type of HEADER_SIZE to size_t to avoid signed/unsigned + comparison. + +Wed Jan 14 20:41:35 1998 Carlos O'Ryan <coryan@cs.wustl.edu> + + * ace/Signal.i (is_member): + Fixed typo in new cast, the type is sigset_t not sigset. + +Wed Jan 14 20:27:44 1998 <coryan@MILONGA> + + * ace/OS.h: + The new location for AF_ANY and AF_FILE was in the middle of a + big #if !ACE_WIN32, hence it was not working for NT, I moved it + further down and now NT is happy. + +Wed Jan 14 19:01:59 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/Message_Queue.cpp (open): In Message_Queue::open + deactivated_ flag is being set to 0 instead of + WAS_INACTIVE. This is causing incorrect return value from + first-time call to activate(). Thanks to Slawomir Kuzniar + <kuzniar@Bear.COM> for reporting this. + + * ace/Signal.i (is_member): Added an ACE_const_cast(). Thanks to + Oleg Krivosheev <kriol@fnal.gov> for reporting this. + +Wed Jan 14 06:45:52 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/OS.i: Fixed typo in ACE_Time_Value::operator const timeval * + definition. (select's): cast the ACE_Time_Value to a + const timeval * and then to a timeval * so that they will + compile. + + * tests/Time_Value_Test.cpp (test_ace_u_longlong): made divisors of + operator/ tests explicitly unsigned, to avoid overloading problems + now that there are two division operators. + +Tue Jan 13 16:31:48 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/OS.i: Changed the signature of ACE_Time_Value::operator + timeval *() to return operator const timeval *(). Thanks to + Oleg Krivosheev <kriol@fnal.gov> for reporting this. Changed + several other unsafe casts to use the ACE_const_cast() macro. + +Tue Jan 13 13:30:23 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/Profile_Timer.cpp (elapsed_time): use floating point + arithmetic for real_time calculation, in case delta_t is + less than ACE_ONE_SECOND_IN_NSECS (and for more precision + otherwise). Thanks to Brian Mendel for tripping over this. + + * ace/Basic_Types.{h,i} (ACE_U_LongLong): added + operator/ (const double). + + * ace/OS.h: moved definition of AF_FILE, etc., to _after_ the + #include of sys/socket.h. That way, the #ifndef AF_FILE + protection will work properly on Linux/glib2. Thanks to + Amos Shapira <amos@gezernet.co.il> for breaking silence and + reporting this. + +Mon Jan 12 20:19:54 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/SString.i: Replaced all uses of NULL with 0 since NULL + causes problems with some lame C++ compilers. + + * ace/SString.i: Moved one of the inline find() methods down + so that GCC doesn't complain anymore. + + * tests/Reactor_Timer_Test.cpp (main): Changed long i to size_t i + to be consistent. + + * ace/Select_Reactor.h: Updated the explanation of how the + ACE_Select_Reactor_Token works. Thanks to Detlef Becker for + explaining this in great detail. + + * tests/test_config.h: Changed the type of all the consts to + size_t rather than int. This may cause a bit of upheaval at + first since we'll need to fix some other types. But it's the + "Right Thing"[TM] to do. + +Mon Jan 12 18:31:23 1998 Nanbor Wang <nanbor@cs.wustl.edu> + + * Start renaming MSVC 4.2 workspace/makefile names. + + * apps/Gateway/Peer/Peer4.{mdp,mak}: + * apps/Gateway/Gateway/Gateway4.{mdp,mak}: Made them in synch with + VC 5.0's status. + +Mon Jan 12 12:30:34 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/config-linux-common.h: moved + ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES so that it isn't used + with egcs. Thanks to Gonzo for testing this. + + * tests/Service_Config.test: changed type of VARIETIES to u_int to + avoid signed/unsigned comparison in main. Thanks to Gonzo for + reporting this. + + * ace/config-linux-common.h: added ACE_HAS_TEMPLATE_TYPEDEFS and + ACE_HAS_TYPENAME_KEYWORD. Thanks to Oleg Krivosheev + <kriol@fnal.gov> for reporting these. + + * ace/config-vxworks5.x.h: merged the two VxWorks configs (g++ and + ghs) into this new config for easier maintenance. Added + ACE_THR_PRI_FIFO_DEF, set to 6. + + * tests/Reactor_Timer_Test.cpp (main): cast i to u_long to avoid + signed/unsigned comparison. + +Sun Jan 11 23:02:07 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * tests/SString_Test.cpp (main): Removed the "silly" strings from + the tests. They are annoying and cause memory leaks. + +Sun Jan 11 22:16:28 1998 Nanbor Wang <nw1@cs.wustl.edu> + + * apps/Gateway/Peer/Peer.{h,cpp} (transmit): Changed the function + to return the result of transmission. + (transmit_stdin): Make sure the function returns proper results + of transmission. + +Sun Jan 11 16:18:15 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.18, released Sun Jan 11 16:18:15 1998. + +Sun Jan 11 00:00:26 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * apps/Gateway/Gateway/Gateway.cpp (parse_connection_config_file): + Fixed a typo, == should be =. Thanks to David Levine for + reporting this. + + * apps/Gateway/Peer/Peer.cpp (recv), + apps/Gateway/Gateway/Concrete_Connection_Handlers.cpp (recv): + Added a cast to remove a GCC warning about signed/unsigned + comparisons. Thanks to David Levine for reporting this. + + * ace/Log_Msg.cpp (log): Made a minor change to move where the + message is copied from thread-specific storage into the transfer + buffer. Thanks to Patrick J. McNerthney <pat@thememedia.com> + for reporting this. + + * apps/Gateway/Peer/Peer: Added new logic to transmit subscription + requests to the Gateway. + + * apps/Gateway/Gateway/Event.h (class Event_Header): Make sure + that we correctly encode/decode the connection_id. + +Sat Jan 10 18:17:06 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * apps/Gateway/Gateway/Event.h: Added the event priority_ field to + the Event_Key. We don't currently use this, but we may some + day. + + * apps/Gateway/Gateway/Concrete_Connection_Handlers.cpp (put): + Changed the forward() method to process() since our new scheme + will need to do more than just forward, e.g., it will need to + handle subscriptions. + + * apps/Gateway/Gateway/Connection_Handler: Made the accessors + const member functions and also added accessors for the + Event_Channel * so this can be set by the + Connection_Handler_Acceptor::accept_svc_handler() method. + + * apps/Gateway/Gateway/Connection_Handler: Added mutators so that + we can set the local and remote addresses outside of the + constructor. + + * apps/Gateway/Gateway/Options: Added a connection_id() accessor + to set/get the connection id. This makes it possible to allow + Peers to connection with the Gateway. + + * apps/Gateway/Gateway/Gateway.cpp (parse_connection_config_file): + Added a sanity check to ensure that the connection ids start at + 1 and increment by 1. + +Sat Jan 10 22:37:37 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/SString.i (find): changed type of local i to size_t to + avoid signed/unsigned comparison. + +Sat Jan 10 14:57:01 1998 <coryan@MILONGA> + + * ace/Env_Value_T.h: + The return value for the assignment operator had no template + parameter, ditto for the arguments of the copy constructor and + the already mentioned operator. + +Sat Jan 10 13:20:08 1998 Nanbor Wang <nw1@cs.wustl.edu> + + * tests/Conn_Test.cpp: Moved template instantiation codes around + to avoid warnings. + +Sat Jan 10 01:36:08 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/SString: Made the following changes to make the ACE string + class look more like the STL string class: + + - Added npos to all classes. + + - Added non-const reference operator[]. + + - Changed operator= and operator+= to return *this. + + - Added STL like find and rfind routines + + - Made the three classes be a similar as possible. + + - Changed the implementation of strstr to use the C library + strstr function. + + - Added constructors from single characters. + + - Made substring a const method. + +Fri Jan 9 19:11:39 1998 Nanbor Wang <nw1@cs.wustl.edu> + + * tests/Map_Manager_Test.cpp (test_hash_map_manager): Added + ACE_UNUSED_ARG to eliminate warnings. + + * ace/Hash_Map_Manager.cpp (rbegin): Added more static cast to + eliminate warning messages. + +Fri Jan 9 11:35:53 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * examples/Service_Configurator/IPC-tests/server/server_test.cpp: + Fixed a syntax error. Thanks to John Mulhern + <9107@MN3.LAWSON.lawson.com> for reporting this. + + * ace/Log_Msg.cpp (log): Changed abort_prog == 0 to abort_prog so + that STDERR would be printed correctly. + + * ACE-categories: Added all the ACE files into the ACE-categories + listing. Thanks to Andres Kruse for motivating this. + + * include/makeinclude/platform_sunos5_egcs.GNU (CXX): Removed + -pipe from CC and CXX. It was already in CCFLAGS. + +Fri Jan 09 11:56:44 1998 Irfan Pyarali <irfan@cs.wustl.edu> + + * ace/config-win32.h (ACE_ORBIX_HAS_NAMESPACES): By default, you + will get the proper namespace usage for Orbix. If you don't + like this, comment out the #define ACE_ORBIX_HAS_NAMESPACES line + or #undef ACE_ORBIX_HAS_NAMESPACES in your config.h file after + including this config-win32.h. + +Fri Jan 09 07:04:47 1998 David L. Levine <levine@cs.wustl.edu> + + * include/makeinclude/platform_sunos5_g++.GNU: removed + -pipe from CC and CXX. It was already in CCFLAGS. + + * include/makeinclude/platform_vxworks5.x_g++.GNU: added + target-dependent support for symbol table extractor, and + disabled symbol table extraction (POSTLINK) by default. + Thanks to Keith Nicewarner <knicewar@sanders.com> for + reporting problems with this on PPC604 targets. + + * ace/config-linux-common.h: added ACE_HAS_STDCPP_STL_INCLUDES + and removed ACE_LACKS_ACE_IOSTREAM. Thanks to James CE Johnson + <jcej@lads.com> for reporting these. + + * tests/run_tests.vxworks: added Env_Value_Test. + +Fri Jan 09 00:14:20 1998 Nanbor Wang <nw1@cs.wustl.edu> + + * apps/Gateway/Gateway/Connection_Handler_Acceptor.cpp: + * apps/Gateway/Gateway/Config_Files.cpp: Defined + ACE_BUILD_SVC_DLL flag. All declarations of an exported class + must be declared with the same exporting flag. + + * apps/Gateway/Peer/Options.h: Updated the path of include file + Event.h. + +Thu Jan 08 22:11:57 1998 Nanbor Wang <nw1@cs.wustl.edu> + + * ace/Env_Value_T.i (ACE_Convert): Added static cast for int and + short conversion funcions. + +Thu Jan 08 21:37:30 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.17, released Thu Jan 08 21:37:30 1998. + +Thu Jan 8 19:50:43 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/Task: Added a virtual destructor for ~ACE_Task_Base. Thanks + to Oleg Krivosheev <kriol@fnal.gov> for suggesting this. + + * ace: Added a new config-sunos5.5-egcs.h for the EGCS compiler. + Thanks to Oleg Krivosheev <kriol@fnal.gov> for contributing + this. + + * include/makeinclude: Added a new platform macros file for the + EGCS compiler on Solaris 2.x. Thanks to Oleg Krivosheev + <kriol@fnal.gov> for contributing this. + + * include/makeinclude/platform_sunos5_g++.GNU (CXX): Added the + -pipe flag. + + * man: Updated all the manual pages. + + * ace/Log_Msg: Added changes to allow the logging of custom built + log records. The main reason for these changes is to allow code + to handle the logging of out of memory conditions without + allocating any additional memory. Thanks to Patrick + J. McNerthney <pat@thememedia.com> for this feature. + + * ace/Log_Msg: Added a new method called log_priority_enabled(), + which returns true if the priority is enabled (gee, is *that* + what it does? ;-)). Thanks to Patrick J. McNerthney + <pat@thememedia.com> for this feature. + + * examples/Service_Configurator/IPC-tests/server/server_test.cpp + (main): Revised the driver program so that it doesn't create an + explicit ACE_Service_Config object. Thanks to John Mulhern + <9107@MN3.LAWSON.lawson.com> for reporting this. + + * apps/Gateway/{Gateway,Peer}/Options.cpp: Oops, ACE_BUILD_DLL + should be ACE_BUILD_SVC_DLL, yikes! Thanks to Jeff Hellzen + <JHellzen@hwdcsaws.cahwnet.gov> for reporting this. + + * apps/Gateway/{Peer,Gateway}/Options.{h,cpp}: Added a missing + #define ACE_BUILD_DLL and a missing ACE_Svc_Export. Thanks to + Jeff Hellzen <JHellzen@hwdcsaws.cahwnet.gov> for reporting this. + + * ace/Select_Reactor.cpp (suspend_i): The clr_bit call was + mistakenly made on the write mask, rather than the read mask. + Thanks to Billy Quinn <ace-users@lads.com> for reporting this. + +Thu Jan 08 16:02:33 1998 Nanbor Wang <nw1@cs.wustl.edu> + + * ace/Hash_Map_Manager.{h,cpp}: Added STL-styled iterator + functions. + + * tests/Map_Manager_Test.cpp: + * tests/Hash_Map_Manager_Test.cpp: + * tests/Conn_Test.cpp: + * ace/Local_Name_Space.cpp: + * ace/Filecache.cpp: Added missing template instantiation codes. + +Thu Jan 08 11:05:15 1998 <coryan@CHA-CHA> + + * ace/ace_dll.dsp: + * ace/ace_lib.dsp: + Added the new Shared_Memory.cpp file to the project. + +Wed Jan 07 20:40:45 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/OS.h: protect #define of AF_FILE, because Linux/RedHat 5.0 + #defines it in /usr/include/socketbits.h. Thanks to James CE + Johnson <jcej@lads.com> for reporting this. + + * tests/test_config.h (set_output): "if (! test_dir)" instead of + "if (test_dir)" so the output filename ends up non-null. + + * ace/Shared_Memory.{h,cpp},Makefile (~ACE_Shared_Memory): made + virtual and non-line. Added file Shared_Memory.cpp to contain + the definition. + +Wed Jan 07 17:59:57 1998 Nanbor Wang <nw1@cs.wustl.edu> + + * ace/Free_List.i (add): Only delete freeed item when we hit the + high water mark, not the other way around. Thanks to Stuart + Myles <smyles@wsj.dowjones.com> for pointing this out. + +Wed Jan 7 17:46:09 1998 James C Hu <jxh@cs.wustl.edu> + + * examples/Timer_Queue/Thread_Timer_Queue_Test.h: + * examples/Timer_Queue/Thread_Timer_Queue_Test.cpp: + * examples/Timer_Queue/Reactor_Timer_Queue_Test.h: + * examples/Timer_Queue/Reactor_Timer_Queue_Test.cpp: + * examples/Timer_Queue/Driver.h: + * examples/Timer_Queue/Driver.cpp: + Added virtual destructors to classes that needed them. + +Wed Jan 7 16:28:16 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/Event_Handler_T.cpp: Reordered the initializers in the + ACE_Event_Handler_T constructor so G++ doesn't complain. Thanks + to Oleg Krivosheev <kriol@fnal.gov> for reporting this. + + * ace/Shared_Memory.h: Added a virtual destructor to the + ACE_Shared_Memory abstract base class so that EGCS won't + complain. Thanks to Oleg Krivosheev <kriol@fnal.gov> for + reporting this. + + * ace/Event_Handler_T.h: Had to include the *.cpp file into .h + when ACE_TEMPLATES_REQUIRE_SOURCE is defined. Thanks to Oleg + Krivosheev <kriol@fnal.gov> for reporting this. + +Wed Jan 07 14:31:34 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.16, released Wed Jan 07 14:31:34 1998. + +Wed Jan 7 13:38:28 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tests/test_config.h (set_output): Added an environment variable + to specify where to put the log directory: ACE_TEST_DIR. Thanks + to Keith Nicewarner <knicewar@sanders.com> for reporting this. + + * ace/Service_Repository.cpp (close): Removed a fragment of + redundant code. Thanks to Eric Newton <ecn@smart.net> and Alex + Chan <Alex.Chan@Aspect.com> for reporting this. + +Tue Jan 06 17:19:13 1998 Nanbor Wang <nw1@cs.wustl.edu> + + * ace/Containers.{h,cpp} (ACE_Unbounded_Set[_Iterator]): Added + STL-styled iterator functions. Changed the internal + representation of ACE_Unbounded_Set within iterators from a + reference to a pointer. We need this to compare if two + iterators are refering to the same set or not. + +Tue Jan 6 14:11:54 1998 Carlos O'Ryan <coryan@swarm.cs.wustl.edu> + + * tests/Reader_Writer_Test.cpp: + Reverted to revision 4.21 since the latest one (4.23) fails; + thanks to Irfan for this solution. + +Tue Jan 06 10:37:49 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/OS.i (rw_trywrlock_upgrade): moved the #if 0 up a bit so + that it builds on Linux/non-glibc. For some reason, its + preprocessor was getting confused. + + * ace/OS.i (nanosleep): convert nanoseconds to microseconds + by dividing by 1000, not multiplying. Thanks to + Mitch Kuninsky <Mitch_Kuninsky@avid.com> for reporting this. + + * ace/config-mvs.h: added ACE_LACKS_LONGLONG_T because MVS doesn't + support it. Thanks to Chuck Gehr <gehr@sweng.stortek.com> for + confirming that. + +Mon Jan 5 01:20:51 1998 Nanbor Wang <nw1@cs.wustl.edu> + + * ace/Map_Manager.{h,cpp}: Made operator == and != and their + arguments const. + +Sun Jan 04 19:45:47 1998 David L. Levine <levine@cs.wustl.edu> + + * ace/IPC_SAP.cpp (enable,disable): moved return 0 at end + to inside the #endif, to avoid warning about unreachable + return statement on ghs/VxWorks. Thanks to Brian Mendel + for reporting this. + + * ace/OS.i (rw_trywrlock_upgrade): moved return 0 inside the + #if 0 block to avoid warning about unreachable return statement + on ghs/VxWorks. Thanks to Brian Mendel for reporting this. + + * ace/OS.i (rw_trywrlock_upgrade): added ACE_UNUSED_ARG (rw) + to temporary code. + + * ace/Basic_Types.{h,i},README: replaced ACE_HAS_LONGLONG_T with + ACE_LACKS_LONGLONG_T. ACE_HAS_LONGLONG_T was no longer + being used on many platforms with the scheme in Basic_Types.h. + From now on, we'll assume that a platform has long long + (unless ACE_LACKS_LONGLONG_T is #defined), which should help + porting to new platforms. + + * ace/config-aix-4.{1,2}.x.h,config-dgux-4.11-epc.h, + config-linux-{common,kcc}.h,config-lynxos.h,config-m88k.h, + config-osf1-*.h,config-sunos5.*.h,config-tandem.h: + removed ACE_HAS_LONGLONG_T. + + * ace/config-chorus.h,config-psosim-g++.h,config-vxworks*.h: + added ACE_LACKS_LONGLONG_T. + + * ace/Basic_Types.{h,i} (ACE_U_LongLong): fixed operator/, and + added operator% and operator--. + + * ace/High_Res_Timer.*: changed type of global_scale_factor_ from + u_long to ACE_UINT32. Removed some hacks now that ACE_U_LongLong + has operator%. + + * tests/Time_Value_Test.cpp: added tests of ACE_U_LongLong + operator/ and operator%. + + * ACE-INSTALL.html: added link to Cygus repo patches. Thanks + to Achint Sandhu <sandhu@nortel.ca> for providing the URL. + + * ace/OS.{h,i}: added ACE_OS::putenv (). + + * tests/Env_Value_Test.cpp: use ACE_OS::putenv (). + + * tests/Env_Value_Test.cpp: expect (unsigned long) -10 for + TEST_VALUE_NEGATIVE converted to an unsigned long. + Thanks to Jack Erickson <JErickson@exchange.ml.com> for + verifying that it _should_ return (unsigned long) -10. + + * ace/OS.i (strtoul): on Linux with glibc, use ::strtol instead of + ::strtoul and cast the result to an unsigned long. Its ::strtoul + always seems to return 0 for a negative number, at least on + RedHat 4.2/Linux 2.0.30/Alpha with glibc 2.0 (0.961212-5). + + * ace/config-linux-common.h: factored out + ACE_LACKS_SOME_POSIX_PROTOTYPES from glibc and non-glibc + sections to common section. + + * etc/purify.solaris2: added suppression of MIU from putenv. + +Sun Jan 04 17:19:31 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.15, released Sun Jan 04 17:19:31 1998. + +Sun Jan 4 10:11:53 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/OS.i (rw_trywrlock_upgrade): Temporarily comments out this + method since we need to finish implementing it correctly. + + * ace/OS.i (rw_trywrlock_upgrade): Fixed a minor bug where we + weren't releasing the lock correctly if there were competing + readers. + + * apps/Gateway/Gateway/Event_Channel.cpp (put): Uncommented the + code that sets the appropriate locking strategy for the Message + Blocks. + + * apps/Gateway/Gateway/Connection_Handler.h: Made the + remote_addr() and local_addr() accessor methods return + const-correct values. + + * build/SunOS5.5/ace/OS: Revised a bunch of #ifdefs so that we can + selectively enable the ACE rwlock emulation, even if we're + compiling with ACE_HAS_STHREADS in order to get the native + Solaris semaphores. + + * apps/Gateway/Peer/Makefile: Tweaked the Makefile rules to fix + some minor problems. Thanks to David Levine for showing the + way... + +Sun Jan 04 12:37:02 1998 David L. Levine <levine@cs.wustl.edu> + + * tests/Env_Value_Test.cpp: hacked to work with + ACE_HAS_NONSTATIC_OBJECT_MANAGER. With that, it uses ::putenv (), + which we should wrap in ACE_OS. Also, expanded TEST_THIS to + provide a more helpful log message than just the ASSERT output. + + * ace/config-vxworks5.x-g++.h: removed + ACE_HAS_TEMPLATE_SPECIALIZATION. + + * tests/Hash_Map_Manager_Test.cpp (main): added casts of i->ext_id_ + and i->int_id_ to (char *) to force g++/VxWorks to apply the + conversion from Dumb_String to char *. + +Sun Jan 04 09:51:59 1998 Nanbor Wang <nw1@cs.wustl.edu> + + * apps/Gateway/Gateway/Options.{h,cpp}: Removed macros to export + this class out of DLL. They are no longer needed. + + * apps/Gateway/Gateway/Gateway.dsp: Updated source file listings. + +Sat Jan 3 22:25:15 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * apps/Gateway/Gateway: Changed the name of the ACE_Event_Channel + class to Event_Channel since this class wasn't a part of the ACE + library. + + * apps/Gateway/Gateway/Event_Channel.h: Updated the inheritance + relationship for Event_Channel so that it inherits from + ACE_Event_Handler rather than ACE_Task. ACE_Task was + overkill... + + * apps/Gateway/Gateway: Removed the supplier_id from all the + files. We didn't use this anyway and it was just confusing. + Also, renamed Proxy_* to Connection_* to underscore the fact + that the Supplier_Handler and Consumer_Handler work atop + *connections*. The previous naming scheme was too abstract for + its own good. + +Sat Jan 03 14:16:40 1998 Nanbor Wang <nw1@cs.wustl.edu> + + * ace/Map_Manager.cpp (ACE_Map[_Reverse]_Iterator): Fixed the + initial iterator position. + +Fri Jan 02 18:43:14 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.14, released Fri Jan 02 18:43:14 1998. + +Fri Jan 2 17:39:04 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * apps/Gateway/Peer/Options.cpp (Options): Rearranged the order of + the parameters in the base/member initialization section to make + GCC happy. Thanks to David Levine for getting on me about this. + + * apps/Gateway/Gateway/Options.h: Changed DEFAULT_TIMEOUT + to MAX_TIMEOUT to be consistent. Thanks to David + Levine for reporting this. + +Fri Jan 2 17:25:05 1998 Nanbor Wang <nw1@cs.wustl.edu> + + * tests/Map_Manager_Test.cpp: Added codes to test STL-styled + functions in ACE_Map_Manager. + + * apps/Gateway/Gateway/Proxy_Handler.cpp: + * apps/Gateway/Gateway/Proxy_Handler_Connector.cpp: + * apps/Gateway/Gateway/Event_Channel.cpp: + * apps/Gateway/Peer/Peer.cpp: + * ace/Local_Name_Space.cpp: + * examples/ASX/Event_Server/Event_Server/Peer_Router.cpp: + * examples/ASX/Event_Server/Transceiver/transceiver.cpp: + * examples/ASX/UPIPE_Event_Server/Supplier_Router.cpp: + * examples/ASX/UPIPE_Event_Server/Consumer_Router.cpp: + * examples/Connection/blocking/SPIPE-connector.cpp: + * examples/Connection/misc/test_upipe.cpp: + * examples/Connection/non_blocking/test_sock_connector.cpp: + * examples/Connection/non_blocking/test_spipe_connector.cpp: + * examples/Connection/non_blocking/test_tli_connector.cpp: + * examples/Connection/non_blocking/test_lsock_connector.cpp: + * netsvcs/clients/Tokens/manual/manual.cpp: + * netsvcs/lib/TS_Clerk_Handler.cpp: + * apps/Gateway/Gateway/Proxy_Handler_Connector.cpp: Added some + more explicit template instantiations. + + * ace/Map_Manager.{h,cpp}: Added back comparison operators for + ACE_Map_Iterator and ACE_Map_Reverse_Iterator. + + * ace/Token_Invariants.cpp: + * ace/Token_Collection.cpp: + * ace/Token_Manager.cpp: Added missing ACE_Map_Reverse_Iterator. + + * ace/Map_Manager.h: Remove unnecessary method declarations from + ACE_Map_Iterator adn ACE_Map_Reverse_Iterator. + + * examples/Connection/non_blocking/test_tli_connector.cpp: + * examples/Connection/non_blocking/test_sock_connector.cpp: + * examples/Connection/non_blocking/test_lsock_connector.cpp: + * examples/Connection/non_blocking/test_spipe_connector.cpp: + * examples/Connection/misc/test_upipe.cpp: + * examples/Connection/blocking/SPIPE-connector.cpp: + * examples/ASX/UPIPE_Event_Server/Supplier_Router.cpp: + * examples/ASX/UPIPE_Event_Server/Consumer_Router.cpp: + * examples/ASX/Event_Server/Transceiver/transceiver.cpp: + * examples/ASX/Event_Server/Event_Server/Peer_Router.cpp: + * apps/JAWS/clients/Caching/http_handler.cpp: + * apps/JAWS/clients/Blobby/Blob.cpp: + * apps/Gateway/Peer/Peer.cpp: + * apps/Gateway/Gateway/Event_Channel.cpp: + * apps/Gateway/Gateway/Proxy_Handler.cpp: + * apps/Gateway/Gateway/Proxy_Handler_Connector.cpp: + * tests/Reactor_Performance_Test.cpp: + * tests/Priority_Reactor_Test.cpp: + * tests/Map_Manager_Test.cpp: + * tests/Conn_Test.cpp: + * netsvcs/lib/TS_Clerk_Handler.cpp: + * ace/Token_Manager.cpp: + * ace/Token_Invariants.cpp: + * ace/Token_Collection.cpp: + * ace/Local_Name_Space.cpp: Added explicit template instantiation + for ACE_Map_Iterator_Base. + + * ace/Map_Manager.{h,cpp}: Added a new class ACE_Map_Iterator_Base + to abstract out most common functionalities from + ACE_Map_Iterator and ACE_Map_Reverse_Iterator. Added some + missing functions to both iterator classes. + +Fri Jan 2 12:39:45 1998 Carlos O'Ryan <coryan@swarm.cs.wustl.edu> + + * ace/Map_Manager.h: + Another declaration removed from ACE_Map_Reverse_Iterator, + operator* is defined in the base class. + + * tests/Conn_Test.cpp: + * tests/Priority_Reactor_Test.cpp: + * tests/Reactor_Performance_Test.cpp: + The instantiation of ACE_Map_Manager *requires* instantiating + ACE_Map_Reverse_Iterator. + + * ace/OS.i: + Cannot use ACE_ASSERT in OS.i, at least it make SGI compiler + unhappy. + + * ace/Map_Manager.cpp: + Several methods for ACE_Map_Manager were not given their fully + qualified name. + + * ace/OS.i: + The error code should be stored in errno, not in "error". + +Fri Jan 2 17:02:36 1998 Chris Cleeland <cleeland@tango.cs.wustl.edu> + + * tests/run_tests.sh: Added Env_Value_Test to the list of tests to + run. + + * tests/Env_Value_Test.cpp (main): Fixed wrong test for negative + values with unsigned longs. Thanks to David Levine and + Linux/Alpha for finding this. + + * tests/Env_Value_Test.cpp (main): Changed the definition of the + TEST_THIS macro to be all on one line. While ugly, this helps in + locating the line when ACE_ASSERT fails, since allowing the macro + to have multiple lines skews the line # reported by ACE_ASSERT. + + * ace/Env_Value_T.*: Fixed lots of little bugs that got past both + g++ and Solaris compilers, but were caught by the ever-skeptical + SGI compiler. This included providing a definition for the missing + 'varname(void)' method. + +Fri Jan 02 10:12:28 1998 Steve Huston <shuston@riverace.com> + + * ace/config-hpux-10.x-g++.h: Added #define HPUX_10 to catch OS + version-dependent code correctly. + +Fri Jan 02 07:06:44 1998 David L. Levine <levine@cs.wustl.edu> + + * apps/Gateway/Gateway/Makefile: restored the .obj/*.o targets. + They don't affect the build of the shared lib and are used if + the unshared lib is built. + + * apps/Gateway/Gateway/Options.h: added missing , in enum definition. + + * apps/Gateway/Gateway/Options.cpp (Options ctor): reordered + initializers to match declaration order. + + * apps/Gateway/Gateway/Config_Files.cpp (read_entry): fixed syntax + error, missing "if" after "else". Added #include of Options.h. + + * ace/OS.i (rw_trywrlock_upgrade): added ACE_UNUSED_ARG (rw) with + STHREADS. + + * ace/Synch.i (tryacquire_write_upgrade): only define if + ACE_HAS_THREADS. + + * tests/test_config.h: hacked ACE_INIT_LOG to work on VxWorks. + VxWorks gets upset if its asked to unlink a nonexistant file. + + * ace/Basic_Types.*: if using ACE_U_LongLong, #define + ACE_USES_ACE_U_LONGLONG and use that in the .i and .cpp files + instead of repeating all of the complex preprocessor tests + in Basic_Types.h. Thanks to Carlos for suggesting this. + + * ace/Env_Value_T.cpp: added protection against multiple inclusion. + + * tests/Env_Value_Test.cpp: added ACE_Env_Value<long> instantiation. + +Fri Jan 02 00:47:33 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.13, released Fri Jan 02 00:47:33 1998. + +Fri Jan 2 00:17:04 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * Reader_Writer_Test.cpp: Changed from an ACE_RW_Mutex to an + ACE_RW_Thread_Mutex so that we can use the new + tryacquire_write_upgrade() method. + + * ace/Env_Value_T.h: Reformatted the file a bit to conform to + ACE coding conventions. + +Thu Jan 1 12:04:29 1998 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * apps/Gateway/Peer/Options.cpp (parse_args): Changed the option + to set the passive acceptor port from -p to -a. This is now + consistent with the option for active connector port number, + which is -c. + + * apps/Gateway/Gateway/Gateway.cpp (fini): Added a call to + ACE::remove_stdin_handler(), which removes the handler for + ACE_STDIN so the gatewayd will shutdown cleanly. + + * ace/ACE: Added a new method, remove_stdin_handler(), which is + the inverse of the register_stdin_handler() method. However, + I'm not sure how to make this work on NT! + + * examples/Reactor/Misc/notification.cpp: Removed some + CHORUS-specific, which should be a no-op with our new signal() + and sigaction() scheme. + + * ace/OS.i: Enhanced the signal() and sigaction() wrappers so that + they simply ignore signums of 0. This means that we don't need + to special case all this stuff throughout ACE anymore. + + * ace/OS.h: Changed all the #defines for various SIG* so that they + are all 0. This way, we can ensure that the signal() functions + in ACE_OS can correctly ignore these signals. This should clean + up a ton of platform-dependent code throughout ACE. + + * apps/Gateway/Gateway/File_Parser.cpp (getint): Added a new + special-case check for the '*' character, which indicates "use + the default value for this field." + + * apps/Gateway/Gateway/Options: Added a new option to provide a + default max retry timeout. + + * tests/Reader_Writer_Test.cpp: Enhanced the test so that it + exercises the new "upgrade" feature of RW_Thread_Mutexes. + + * ace/{OS,Synch}: Added new methods, + ACE_OS::rw_trywrlock_upgrade() and + ACE_RW_Thread_Mutex::tryacquire_write_upgrade() that + conditionally upgrade a read lock to a write lock. This only + works if there are no other readers present, in which case the + method returns 0. Otherwise, the method returns -1 and sets + errno to EBUSY. Note that the caller of this method *must* + already possess this lock as a read lock. + + * apps/Gateway/{Gateway,Peer}/Makefile: Removed the $(VLIB) macro + so that we don't try to build the lib*.a files by default. + Thanks to David Levine for explaining this. + + * apps/Gateway/Gateway: Added new Options.{h,cpp} files and + rearranged the program to centralize all options processing in + an Options Singleton. + + * apps/Gateway/Peer/Options.cpp (parse_args): Changed the + connector and acceptor options to use a more generalizable + format. Now we can set the Consumer and Supplier port numbers + independently. + + * apps/Gateway/Gateway/Event.h: This is currently where the macros + from the following bullets have been moved, so they can be + shared by the Peer and Gateway components. + + * ace/OS.h: Moved the ACE_DEFAULT_{GATEWAY,PEER}_SERVER_PORT + macros into the Gateway application, where they belong. + + * apps/Gateway/Peer/Options.cpp (parse_args): Changed the option + to set the passive acceptor port from -p to -a. This is now + consistent with the option for active connector port number, + which is -c. + + * apps/Gateway/Gateway/Gateway.cpp (fini): Added a call to + ACE::remove_stdin_handler(), which removes the handler for + ACE_STDIN so the gatewayd will shutdown cleanly. + + * ace/ACE: Added a new method, remove_stdin_handler(), which is + the inverse of the register_stdin_handler() method. However, + I'm not sure how to make this work on NT! + + * examples/Reactor/Misc/notification.cpp: Removed some CHORUS-specific + code, which should be a no-op with our new signal() and sigaction() + scheme. + + * ace/OS.i: Enhanced the signal() and sigaction() wrappers so that + they simply ignore signums of 0. This means that we don't need + to special case all this stuff throughout ACE anymore. + + * ace/OS.h: Changed all the #defines for various SIG* so that they + are all 0. This way, we can ensure that the signal() functions + in ACE_OS can correctly ignore these signals. This should clean + up a ton of platform-dependent code throughout ACE. + + * apps/Gateway/Gateway/Gateway.cpp (init): Revised the code a bit + to factor out platform-dependent signal handling stuff in the + right place. + + * apps/Gateway/Gateway/gatewayd.cpp: Cleaned up the gatewayd main + program so that it reuses more ACE components and so that it is + more portable. + +Thu Jan 01 18:24:56 1998 Nanbor Wang <nw1@cs.wustl.edu> + + * apps/Gateway/Gateway/Gateway.dsp: Added new file Options.cpp. + + * apps/Gateway/Gateway/Options.cpp (ACE_BUILD_SVC_DLL): Added + #define ACE_BUILD_SVC_DLL. + + * netsvcs/lib/Base_Optimizer.i: Removed this file. + + * netsvcs/lib/Base_Optimizer.h: Added codes to include in the + source file conditionally if needed. + + * netsvcs/lib/Base_Optimizer.cpp: Moved template implementation + from .i file. Removed ACE_INLINE keyword. + + * netsvcs/lib/Server_Logging_Handler.cpp: Added explicit template + instantiation macros. + +Thu Jan 01 17:13:06 1998 David L. Levine <levine@cs.wustl.edu> + + * apps/Gateway/Peer/Peer.cpp (Peer_Connector::open): added + return 0 statement at end. + + * apps/Gateway/Gateway/Options.cpp (Options ctor): reordered + initializers to match declaration order. + + * apps/Gateway/Gateway/Makefile: removed LOBJ and SHOBJ macros + because they're not needed. And, restored BUILD so that static + lib will be built if requested. + + * include/makeinclude/rules.lib.GNU: added OBJEXT macro, defaulted + to "o", and use it in VOBJS definition. + + * include/makeinclude/wrapper_macros.GNU: if building shared libs + only, set OBJEXT to "so" and VDIR to .shobj/, so that only shared + objects will be built. + + * apps/Gateway/Peer/Peer.cpp: added template instantiations. + + * netsvcs/lib/Base_Optimizer.*,Makefile: moved inline functions + to .i file and changed inline to ACE_INLINE. + + * netsvcs/lib/Server_Logging_Handler_T.{h,cpp}: don't use + Base_Optimizer with g++. Some versions of g++ 2.7.x have + trouble with its inline template member functions, especially + if __ACE_INLINE__ is disabled. + +Thu Jan 01 07:56:17 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.12, released Thu Jan 01 07:56:17 1998. + +Thu Jan 01 00:28:46 1998 Nanbor Wang <nw1@cs.wustl.edu> + + * apps/Gateway/Peer/Peer.dsp: Added a new file "Options.cpp" into + this project. + + * tests/Env_Value_Test.cpp (main): Changed variable name: 'environ' + to 'envp'. Real OSes don't understand what the word means + and Access Violations will occur. + + * tests/run_tests.bat: Added Env_Value_Test. + + * tests/version_tests/version_tests.dsw: + * tests/tests.dsw: Added Env_Value_Test.dsp. + + * tests/version_tests/Env_Value_Test.dsp: + * tests/Env_Value_Test.dsp: New file. + +Thu Jan 1 00:00:00 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * Happy New Year! Here's a thought for the new year, courtesy of + Sumedh: + + Nothing in the world is permanent, + and we're foolish when we ask anything to last; + but surely we're still more foolish + not to take delight in it while we have it. + + - W.Somerset Maugham (Razor's Edge) + +Wed Dec 31 19:10:59 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * apps/Gateway/Peer/Peer: Added the hooks for making the Peer a + Connector, as well as an Acceptor. Now it's time to have some + fun. + + * apps/Gateway/Peer/peerd.cpp: Cleaned up the peerd main program + so that it reuses more ACE components and so that it is more + portable. + + * netsvcs/servers/main.cpp (main): Revised the code a bit to + factor out platform-dependent signal handling stuff in the right + place. + + * apps/Gateway/Peer: Factored out some common initialization code + to create an Options Singleton. Yowza! + + * apps/Gateway/README: Improved the documentation so that its + easier to tell what's supposed to happen and how to configure + the system. + + * apps/Gateway/Peer/Peer: Moved the Peer_Acceptor into the Peer.h + file and updated the documentation to clarify what's going on + better. + + * examples/Reactor/Dgram/: Enhanced the examples to make sure they + close() the dgram endpoint when the object is removed from the + Reactor. Thanks to Evgeny Beskrovny + <evgeny_beskrovny@icomverse.com> for reporting this. + + * ace/Obstack.cpp: Fixed a stupid bug in the ACE_Obstack + constructor. Thanks to David Levine for reporting this. + + * ace/Local_Name_Space_T.h: Updated the documentation for class + ACE_Name_Space_Map to make it more clear. + +Wed Dec 31 21:21:50 1997 David L. Levine <levine@cs.wustl.edu> + + * examples/Reactor/Dgram/{CO,Dgram.cpp} (handle_close): added + ACE_UNUSED_ARG (handle). + + * tests/Env_Value_Test.cpp (main): removed unused arg argv and + local envargv. undef'ed ACE_HAS_NONSTATIC_OBJECT_MANAGER because + it can't deal with the three arguments to main (). + +Wed Dec 31 16:25:16 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * ace/Env_Value_T.*: Added a new template (ACE_Env_Value) which is + a typesafe encapsulation of environment variables with the + ability to provide a value to be used as a default if the + variable isn't set. An example of its use can be seen in the + corresponding test, tests/Env_Value_Test.cpp. Thanks to Carlos + O'Ryan for giving me the seed that started this. + + * tests/Env_Value_Test.cpp: Added test for the new template added + above. + + * tests/Makefile: Added new Env_Value_Test test to the Makefile. + + * ace/OS.{h,i} (strtod): Added new function for converting strings + to doubles. + +Tue Dec 30 22:07:44 1997 David L. Levine <levine@cs.wustl.edu> + + * ace/High_Res_Timer.cpp (elapsed_time): added a cast in + calculation of useconds to avoid MSVC++ warning about narrowing. + Thanks to Nanbor for reporting this. + + * ace/OS.i (gethrtime): commented out high-res tick counter on Linux + because it doesn't seem to work properly. Use ::gettimeofday () + instead. + + * tests/Basic_Types_Test.cpp (main): replaced #ifdef VXWORKS && ghs + with !ifdef ACE_HAS_WCHAR_TYPEDEFS_CHAR. + + * ace/Map_Manager.cpp (operator*): fixed typo in "ACE_Map_Entry". + + * ace/OS.h: added ACE_NSIG. In addition, I removed this: + + // Why is this defined? It must be a std C library symbol. + #if !defined (NSIG) + #define NSIG 0 + #endif /* NSIG */ + + We #define NSIG elsewhere on platforms (VxWorks, MVS) that need it. + #defining it to be 0 isn't good; it's better to catch the lack of + NSIG at compile time than at run time. + + * ace/{Log_Msg.cpp,OS.i,Select_Reactor.cpp,Signal.*,WFMO_Reactor.i}, + tests/Sigset_Ops_Test.cpp: replace NSIG with ACE_NSIG. + + * ace/Basic_Types.{h,i}: only use u_longlong_t on sun. Added + operator++ to ACE_U_LongLong, and tweaked calculation in operator/. + + * tests/Time_Value_Test.cpp (test_ace_u_longlong_): added test of + operator+, and one simple test of operator/. + + * ace/Filecache.h: removed extra , in enum ACE_Filecache_Flag definition. + +Tue Dec 30 20:32:03 1997 Nanbor Wang <nw1@cs.wustl.edu> + + * ace/Map_Manager.{h,cpp}: Added STL-styled iterator function. + Changed the references to ACE_Map_Manager within interator + classes to pointers so we can check errors. + +Tue Dec 30 14:56:18 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/Obstack: Enhanced ACE_Obstack so that it can be given a + pointer to an allocator strategy. This allows users to take + complete control of where the memory comes from for the Obstack. + + * ace/Obstack: Changed the default value of "size" so that it is + (4096 - sizeof (ACE_Obstack)). + + * ace/Obstack: Added a new ACE_Obchunk constructor to simplify + some of the code. + +Mon Dec 29 20:21:32 1997 Steve Huston <shuston@riverace.com> + + * include/makeinclude/rules.lib.GNU: Adjusted dependencies on building + a shared library to be on the object modules it will link in, not + necessarily $(VSJOBJ). + +Mon Dec 29 18:53:35 1997 James C Hu <jxh@cs.wustl.edu> + + * ace/Filecache.h: Added an enum type, ACE_Filecache_Flag, which + gets passed into the ACE_Filecache_Handle constuctor to help + determine whether or not to use memory mapping (on Windows NT, + we sometimes do not want to memory map). + + * ace/Filecache.cpp: Required modifications to accomodate the + ACE_Filecache_Flag parameter. + +Mon Dec 29 15:37:24 1997 Nanbor Wang <nw1@cs.wustl.edu> + + * ace/OS.i (event_timedwait): Added codes to guard against + negative wait time since we are passing an absolute time value + here, we may way past the target time when it gets called. + Thanks to Norbert Rapp <NRapp@nexus-informatics.de> for pointing + this. + +Mon Dec 29 13:57:43 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * ace/XtReactor.cpp: + Fixed syntax error, apparently some kind of typo. + + * ace/OS.h: + The ACE_*_cast() macros had (IMHO) surprizing priority, added + some parenthesis to make them behave as the new cast operators + are supposed to do. + +Mon Dec 29 08:59:28 1997 David L. Levine <levine@cs.wustl.edu> + + * ace/Basic_Types.h: Linux w/o glibc 2.0 doesn't have u_longlong_t, + so use "unsigned long long" for it. + + * ace/Task.cpp (activate): added ACE_UNUSED_ARG (thread_handles) on + non-threaded platforms. + + * ace/Thread_Manager.cpp (wait): added ACE_UNUSED_ARG + (abandon_detached_threads) on non-threaded platforms. + + * performance-tests/Misc/childbirth_time.cpp (prof_ace_os_thread): + added ACE_UNUSED_ARG (iteration) on non-threaded platforms. + + * performance-tests/Misc/preempt.cpp (main): added ACE_UNUSED_ARG + for argc and argv on non-threaded platforms. + + * include/makeinclude/platform_linux.GNU: enabled compiler warnings + by replacing -w with -Wall -Wpointer-arith in CFLAGS. + + * ace/ACE.cpp (count_interface,get_handle,get_ip_interfaces): use + same code for LynxOS as for __unix. + + * ace/OS.h: on LynxOS, redefine NSIG to be one greater than the + highest-numbered signal. LynxOS' signal.h #defines it to be + equal to the highest-numbered signal, 64. + +Mon Dec 29 08:35:17 1997 Steve Huston <shuston@riverace.com> + + * include/makeinclude/platform_hpux_aCC.GNU: Removed the PRELIB + and PRELIB_USES_OBJ_ONLY stuff; merged in macros for building + on HP-UX 11.00. + * include/makeinclude/platform_hpux11_aCC.GNU - Removed this file. + The 10.x and 11.x builds are now both controlled by + platform_hpux_aCC.GNU. + +Sun Dec 28 10:50:54 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.11, released Sun Dec 28 10:50:54 1997. + +Sat Dec 27 18:03:52 1997 Nanbor Wang <nw1@merengue.cs.wustl.edu> + + * ace/Log_Msg.cpp (dump): Sould test if we have a valid thr_desc + before dumping the information of it. Thanks to Luca Priorelli + <lucapri@mbox.vol.it> for pointing this out. + +Sat Dec 27 16:13:59 1997 David L. Levine <levine@cs.wustl.edu> + + * ace/{OS.i,config-linux-common.h,README} (getrusage,{get,set}rlimit): + added ACE_HAS_RUSAGE_WHO_ENUM and ACE_HAS_RLIMIT_RESOURCE_ENUM + support. glibc 2.0 for Linux uses enums for the first arguments + to ::getrusage and ::{get,set}rlimit. + +Fri Dec 26 18:04:06 1997 <nw1@JIG> + + * ace/Containers.h: Added iterator traits for following classes. + ACE_Unbounded_Set + ACE_Unbounded_Queue + ACE_Unbounded_Stack + ACE_Double_Linked_List + ACE_Fixed_Set + ACE_Bounded_Set + Thanks to <???> for recommending this. + +Fri Dec 26 12:03:05 1997 David L. Levine <levine@cs.wustl.edu> + + * ace/config-osf1-4.0.h: added support for DCE threads, and merged in + config-osf1-4.0-g++.h. Thanks to Frederic Andres + <andres@rd.nacsis.ac.jp> for the DCE threads support #defines. + + * ace/config-osf1-4.0-g++.h: removed. All Digital Unix 4.0 configs + are now supported by config-osf1-4.0.h. + + * ace/platform_osf1_4.0.GNU: added comment on how to use DCE threads + instead of POSIX threads. + + * ace/OS.i (thr_{get,set}prio): don't apply the + !defined(ACE_LACKS_SETSCHED) test if ACE_HAS_DCETHREADS. + + * ace/OS.cpp (thr_create): added || ACE_HAS_DCETHREADS to + #ifndef ACE_LACKS_SETSCHED, so that priority is set with DCETHREADS. + + * ace/OS.cpp (sched_params): moved paren so that DCETHREADS block + will be executed even if ACE_LACKS_SETSCHED. + + * ace/Sched_Params.cpp ({next,previous)_priority): added + ACE_HAS_DCETHREADS check before !defined(ACE_LACKS_SETSCHED). + + * ace/OS.i (cond_timedwait): wrapped first arg to ACE_OSCALL in + parens because it confused cxx. + + * examples/System_V_IPC/SV_Message_Queues/{,T}MQ_Server.cpp: renamed + variable msgque because it conflicted with a symbol in the DEC cxx + w/DCE threads headers. + + * ACE-INSTALL.html: expanded discussion of gcc config.status file. + Thanks to Hans Rohnert <rohnert@scr.siemens.com> for figuring + out the role of the config.status file. + +Fri Dec 26 06:44:25 1997 <nw1@JIG> + + * ace/OS.h (ACE_OS::ace_flock_t): Added a new field "lockname_" to + remember the lock filename. + + * ace/OS.i (flock_init,flock_destroy): We need to remember the + name of the lock file when initializing the lock and unlink the + file when destroying the lock. + +Thu Dec 25 18:08:42 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/XtReactor.cpp: Removed g++ warning about initialization + order, enabled read/write masks for + ACE_Event_Handler::CONNECT_MASK; fixed typo that checks a write + mask, but sets a read mask; removed unused variable "zero." + Thanks to Eric Newton for these fixes. + +Thu Dec 25 17:17:16 1997 <nw1@JIG> + + * ace/config-win32.h: * ace/config-win32-common.h: Added macro + definitions not to use C++-styled castings on Win32 by default + so that we don't depend on the RTTI support. + +Thu Dec 25 16:18:03 1997 <irfan@PACHANGA> + + * ace/SString.h (ACE_CString and ACE_WString): Added c_str() to + make it similar to STL's string class. + +Wed Dec 24 19:59:15 1997 David L. Levine <levine@cs.wustl.edu> + + * tests/IOStream_Test.cpp (client): changed stream error message + from "timeout" to "timed out", so that run_tests.check won't + complain about it. + +Wed Dec 24 18:37:49 1997 <nw1@JIG> + + * ace/Synch.i (get_thread_id,get_nesting_level): Added ACE_INLINE. + +Wed Dec 24 18:31:31 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.10, released Wed Dec 24 18:31:31 1997. + +Wed Dec 24 14:27:33 1997 <nw1@JIG> + + * ace/Synch.{h,i,cpp} (ACE_Recursive_Thread_Mutex): Changed + ACE_Recursive_Thread_Mutex to inherit from ACE_Thread_Mutex on + Win32 because ACE_Thread_Mutex is already recusive on Win32. + +Wed Dec 24 08:14:32 1997 David L. Levine <levine@cs.wustl.edu> + + * ace/Log_Msg.cpp (instance): without threads, dynamically create + the ACE_Log_Msg instance instead of using a static. Now, without + threads, the ACE library has no statics that require destruction + (at least on Solaris/g++ and Linux). And, all of the ACE tests + Purify cleanly. + + * ace/OS.cpp (ACE_Thread_Adapter::invoke): wrapped + rethrow_w32_structural_exception () call with #ifdef ACE_WIN32. + It was eliminated by the ACE_SEH_EXCEPT macro on non-WIN32 + platforms, but some compilers (cxx) warned about the + unreachable code. This call is only supported on WIN32 anyways. + + * ace/OS.h: LynxOS has ACE_HAS_PTHREADS_1003_DOT_1C, but not + ACE_HAS_PTHREAD_SIGMASK. + + * tests/Time_Value_Test.cpp: only test ACE_U_LongLong on Solaris, + and other platforms with STHREADS. + +Wed Dec 24 04:25:49 1997 <nw1@DINGO> + + * ace/OS.i (sema_init): Added checking for initial semaphore + counts and set the semaphore to non-signaled state if the + initial count is zero. Changed the internal variable lock from + a mutex to a thread_mutex (Critical Section.) + +Tue Dec 23 21:06:14 1997 David L. Levine <levine@cs.wustl.edu> + + * ace/TLI_Stream.cpp (get_remote_addr): added ACE_UNUSED_ARG + for the arg if ! ACE_HAS_SVR4_TLI. + + * examples/IPC_SAP/SOCK_SAP/CPP-inserver-poll.cpp (main): declare + local "i" outside the for loop because it is used after the loop. + +Tue Dec 23 19:34:10 1997 <nw1@JIG> + + * ace/OS.i: Added comments for semaphore simulation. + +Tue Dec 23 19:33:59 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.9, released Tue Dec 23 19:33:59 1997. + +Tue Dec 23 19:05:32 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * tests/IOStream_Test.cpp (server): Changed sleep(30) to + sleep(5). This seems more reasonable. Thanks to + James Johnson for this suggestion. + +Tue Dec 23 16:43:14 1997 Steve Huston <shuston@riverace.com> + + * ace/README: Added descriptions for ACE_HAS_PTHREADS_1003_DOT_1C (this + was in use previously but not documented), ACE_HAS_XTI (new; XTI is + the POSIX superset of TLI - this implies ACE_HAS_TLI), + ACE_NEW_THROWS_EXCEPTIONS (new; the compiler throws bad_alloc if + a 'new' memory allocation fails). + + * ace/Hash_Map_Manager.cpp - Workaround for an aC++ bug in the HP-UX 11 + version of the compiler. + + * ace/INET_Addr.cpp: Note the failing host name in the error message + from ACE_INET_Addr::ACE_INET_Addr(u_short, const char []). + + * ace/OS.h: Changes made while porting to HP-UX 11: + - If ACE_HAS_PTHREADS_1003_DOT_1C (POSIX.1C), it implies (by + way of POSIX.1C) that these also be set: + ACE_HAS_PTHREAD_SIGMASK + ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R + This is intended to make the process of configuring a new + new platform easier. + - If the new config macro ACE_NEW_THROWS_EXCEPTIONS is set, include + the file <new>. The "proper" thing to do is to include + <stdexcept>; however, at least on HP-UX 11, this will cause + other things to get brought in, like <memory>, which will + screw up auto_ptr. The day that all this standard library and + STL stuff is finally straight, there will be dancing in the + streets... + - Support including the proper header file for XTI when it's + supposed to use <xti.h> rather than <tiuser.h> (POSIX specifies + XTI, a superset of TLI, to have <xti.h>) + - If ACE_NEW_THROWS_EXCEPTIONS is set, the ACE_NEW and + ACE_NEW_RETURN macros handle the exception. + + * ace/OS.i: Fixed check for failure in ACE_OS::sema_init. + + * ace/config-hpux11.h: + * ace/config-hpux11-hpc++.h: New configs for HP-UX 11.00 + + * include/makeinclude/platform_hpux11_aCC.GNU: Platform macros for + HP-UX 11. It is set up for 32-bit build with comments for how to + do a 64-bit build. + + * examples/Makefile: Added Naming to the directory list to build. + + * examples/IPC_SAP/SOCK_SAP/CPP-inserver-poll.cpp: Changed test from + ACE_HAS_SVR4_POLL to ACE_HAS_POLL. + + * examples/IPC_SAP/SOCK_SAP/C-inclient.cpp: + * examples/IPC_SAP/SOCK_SAP/CPP-unclient.cpp: + * examples/IPC_SAP/SOCK_SAP/CPP-unserver.cpp: + * examples/IPC_SAP/SOCK_SAP/FD-unserver.cpp: Fixed a char * being + initialized by a string literal. + + * examples/Map_Manager/test_hash_map_manager.cpp: Added #include + "ace/SString.h" + + * examples/Mem_Map/IO-tests/test_io.cpp: Fixed a char * being + initialized by a string literal. Fixed diagnostic statements. + + * examples/Naming/test_multiple_contexts.cpp: + * examples/Naming/test_non_existent.cpp: + * examples/Naming/test_writers.cpp: Added Id line for CVS. + + * tests/Time_Value_Test.cpp: Added #include "test_config.h" + +Tue Dec 23 16:12:28 1997 <nw1@DINGO> + + * ace/OS.i: Must use ACE_OS::sema_wait instead of waiting on the + singling event when using simulated semaphores. + +Tue Dec 23 08:32:00 1997 Chris Gill <cdgill@cs.wustl.edu> + + * include/makeinclude/platform_sunos5_g++.GNU + Removed trailing spaces from CC and CXX macros + (the trailing space behind CXX was giving the TAO_IDL + make fits) + +Tue Dec 23 07:26:28 1997 David L. Levine <levine@cs.wustl.edu> + + * ace/TLI.cpp (get_local_addr): return -1, instead of 0, and + set errno (with ACE_NOTSUP_RETURN) if ! ACE_HAS_SVR4_TLI. + ({set,get}_option): added ACE_UNUSED_ARfor all + arguments if ! ACE_HAS_SVR4_TLI. + + * ace/TLI_Stream.cpp (get_remote_addr): return -1, instead of 0, + and set errno (with ACE_NOTSUP_RETURN) if ! ACE_HAS_SVR4_TLI. + Declare and set local "name" only if ACE_HAS_SVR4_TLI. + + * ace/TLI_Acceptor.cpp (handle_asynch_event): initialize local + "event" instead of defining it in the switch condition, to + avoid compiler warning about not using it. + + * examples/IPC_SAP/TLI_SAP/db-server.cpp (lookup_name): removed + unused local variable "len". + + * include/makeinclude/platform_osf1_4.0.GNU: removed some warning + suppressions that are no longer needed. + + * ace/Log_Msg.cpp (~ACE_Log_Msg): clean up the message queue and + allocated strings on non-threaded platforms. + + * tests/test_config.h (ACE_APPEND_LOG): added a close () of the + ace_file_stream before opening it. Forked children inherit the + opened file stream, and fail on their attempt to open it if it + is not explicitly closed. + +Mon Dec 22 22:42:57 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/OS: Added a few minor changes to Nanbor's Semaphore + emulation for WinCE. + +Mon Dec 22 11:39:19 1997 <irfan@PACHANGA> + + * OS.i (event_timedwait): Added code to handle timeouts. Thanks + to Luca Priorelli <lucapri@mbox.vol.it> for reporting this. + +Mon Dec 22 07:03:13 1997 David L. Levine <levine@cs.wustl.edu> + + * ace/IOStream_Test.cpp (spawn): changed printout from + "Process_Mutex_Test-children" to "IOStream_Test-children". + +Mon Dec 22 03:08:22 1997 <nw1@DINGO> + + * ace/OS.i: Modified ACE_OS::cond_* for WinCE. + + * ace/config-win32-common.h: Prevent ACE from using NT specific + API on Win CE. + +Sun Dec 21 16:19:40 1997 Nanbor Wang <nw1@merengue.cs.wustl.edu> + + * ace/OS.{h,i} (ACE_OS::sema_*): Added semaphore simulation code + for WinCE. This code is currently protected + ACE_USES_WINCE_SEMA_SIMULATION for debugging the code on NT. + This flag should soon be obsolete and changed to ACE_HAS_WINCE. + + Moved ACE_event_t macro definition for Win32 before ACE_sema_t + definition for NT. I need to use it in semaphore simulation. + + * ace/OS.h (class ACE_Cleanup_Info::operator ==, !=): Removed + keyword struct. ACE_Cleanup_Info is a class now. + + * ace/Containers.h (class ACE_Double_Linked_List): Removed + unused function declarations. + + * ace/Containers.h (class ACE_DNode): Removed ACE_DNode class. + +Sun Dec 21 18:47:09 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.8, released Sun Dec 21 18:47:09 1997. + +Sun Dec 21 12:39:38 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/OS.h (ACE_OS): Made the netdb_{acquire()/release()} methods + public to help ACE users stuck on weird OS platforms. Thanks to + Arturo Montes <mitosys@colomsat.net.co> for this suggestion. + + * ace: Changed all ACE class documentation so that it puts the + =TITLE and =DESCRIPTION comments *after* the opening '{' rather + than before. I did this since (1) it makes emacs C++ mode + happier and (2) it makes Rational Rose reverse-engineering tool + happier too. Thanks to Thomas Jordan + <Thomas_Jordan@deluxedata.com> for suggesting this. + + * ace/LOCK_SOCK_Acceptor.h: The accept() method of class + ACE_LOCK_SOCK_Acceptor is no longer a virtual. I don't know why + this was made virtual in the first place, but it was a mistake. + +Sun Dec 21 15:24:42 1997 Nanbor Wang <nw1@merengue.cs.wustl.edu> + + * ace/OS.h (class ACE_Cleanup_Info::operator ==, !=): Removed + keyword struct. ACE_Cleanup_Info is a class now. + + * ace/Containers.h (class ACE_Double_Linked_List): Removed + unused function declarations. + + * ace/Containers.h (class ACE_DNode): Removed ACE_DNode class. + +Sat Dec 20 11:05:45 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * tests/test_config.h (ACE_INIT_LOG): Added (%P|%t) to an + ACE_DEBUG statement to make it consistent. + + * tests/IOStream_Test.cpp (spawn): Revised the test so that it + prints data correctly to the child processes. + + * examples/Shared_Malloc/test_multiple_mallocs.cpp (main): Moved + the final print statement inside one of the if blocks so that it + appears only every second invocation to remind people to rerun + the program to remove the leaks. Thanks to Tom Arbuckle + <arbuckle@uran.informatik.uni-bonn.de> for suggesting this. + + * ace/Malloc*: Changed ACE_MALLOC_STATS to ACE_HAS_MALLOC_STATS + since this is more consistent with ACE conventions. Also, + added ACE_HAS_MALLOC_STATS to the ace/README file. Thanks + to Tom Arbuckle <arbuckle@uran.informatik.uni-bonn.de> for + suggesting this. + + * ace/Memory_Pool.cpp (ACE_Shared_Memory_Pool): Fixed the logic + for naming the backing store if the sscanf() call fails. Thanks + to Tom Arbuckle <arbuckle@uran.informatik.uni-bonn.de> for + suggesting this. + +Sat Dec 20 15:39:00 1997 Nanbor Wang <nw1@merengue.cs.wustl.edu> + + * tests/IOStream_Test.cpp (spawn): Changed ACE_LACKS_EXEC to + ACE_LACKS_FORK. + +Sat Dec 20 09:42:06 1997 David L. Levine <levine@cs.wustl.edu> + + * ace/OS.h: changed ACE_SEH_FINALLY to be if (1) on Unix, not + just pSOS. + +Fri Dec 19 23:20:42 1997 Nanbor Wang <nw1@merengue.cs.wustl.edu> + + * tests/IOStream_Test.cpp (client): Removed an extra read. + + * ace/OS.h: ACE_SEH_FINALLY should always be executed on UNIX + platforms. + +Fri Dec 19 18:49:26 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/IOStream_T.i: Enhanced ACE_IOStream and its companions as + follows: + + - ACE_Streambuf_T<> now distinguishes recv() timeout failure from + a "real" stream failure + + - ACE_IOStream::eof() honors the streambuf's recv_timeout() value + and returns FALSE if the eof() check fails on timeout. + + - IOStream_Test.cpp tests the streambuf timeout via the stream eof() + and retrys if possible. + + Thanks to James Johnson <jcej@lads.com> for these fixes. + + * ace/Log_Record.i: Removed a no-op assignment to Time_Value + in the encode() method. Thanks to Patrick J. McNerthney + <pat@thememedia.com> for reporting this. + + * ace/Log_Record.i: The time stamp put into the ACE_Log_Record + gets all messed up when the ACE_Log_Record is transmitted to the + Server_Logging_Handler and the client is run on a little-endian + architecture. This is because the ACE_Log_Record::encode method + does: + + this->time_stamp_ = ACE_Time_Value + + htonl (this->time_stamp_.sec ()), + htonl (this->time_stamp_.usec ())); + + When the ACE_Time_Value is passed in the resulting values from + "htonl", it calls "normalize" which totally messes with the + values passed. Thanks to Patrick J. McNerthney + <pat@thememedia.com> for reporting this. + + * ace/OS.i: Fixed ctime_r() so that it doesn't crash if a NULL is + returned from ctime_r(). Thanks to Patrick J. McNerthney + <pat@thememedia.com> for reporting this. + +Fri Dec 19 09:44:28 1997 David L. Levine <levine@cs.wustl.edu> + + * ace/OS.{h,i}: fixed sigwait for DEC cxx, yet again for cxx + V6.0-010. cxx #defines sigwait, and was getting confused + with ACE_OS::sigwait. I replaced Thilo's #undef sigwait, + and updated the ::sigwait declaration to what cxx uses internally. + + * examples/IPC_SAP/SOCK_SAP/CPP-inserver.cpp (server): cast arg + to long before casting to ACE_HANDLE, and removed function-style + cast. + +Fri Dec 19 00:39:40 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.7, released Fri Dec 19 00:39:40 1997. + +Thu Dec 18 19:47:47 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * examples/IPC_SAP/SOCK_SAP: Stripped the CPP-in{server,client}.cpp + tests down to their bare essence to only test the core features + of sockets. Thanks to Bryan and Brian for suggesting this. + + * ace/Message_Queue.cpp (ACE_Message_Queue_Iterator): Changed + queue to q to avoid clashes with STL. Thanks to Brian Mendel + <bmendel@mdc.com> for reporting this. + + * ace/OS.h: The server logging daemon is implemented using TCP/IP + under Win32. Therefore, we can simplify the creation of the + ACE_DEFAULT_LOGGER_KEY. Thanks to Patrick J. McNerthney + <pat@thememedia.com> for reporting this problem. + +Thu Dec 18 22:35:45 1997 David L. Levine <levine@cs.wustl.edu> + + * ace/OS.h: fixed typo in end-of-comment marker. + + * ace/OS.h: on Digital Unix 4.0, only declare sigwait () with cxx, + not with g++. Thanks to Erik Margraf <erik@asgard.gud.siemens.co.at> + for verifying this. + + * examples/IPC_SAP/SOCK_SAP/CPP-in{client,server}.cpp: tweaked + so that they build on VxWorks (spawn needs the (ACE_THR_FUNC) + cast), and without threads. + + * tests/run_tests.vxworks: updated VxWorks test status. + + * ace/Basic_Types.h: look for ULONGLONG_MAX, which Irix 6.x uses. + And, hard-code ACE_SIZEOF_LONG_DOUBLE to be 16 on __sgi, because + its float.h doesn't always allow us to distinguish them. + Thanks to Carlos for reporting these. + + * ace/High_Res_Timer.cpp,Profile_Timer.cpp: removed dependence + on ACE_U_LongLong. Thanks to Carlos for reporting this. + + * tests/Time_Value_Test.cpp: fixed #ifdefs so that ACE_ULongLong + isn't tested on Irix 6.x, etc. Thanks to Carlos for tripping + over this. + + * ace/IOStream_T.i (eof): made the return type, int, explicit. + + * ace/config-linux-common.h: started adding support for threads on + alpha (glibc). + +Thu Dec 18 21:17:46 1997 <nw1@DINGO> + + * ace/ace_dll.dsp: Added project files for Windows CE on SH3 + series CPU and x86 emulator. + + * ace/streams.h: + * ace/OS.h: Added Windows CE flags. + + * ace/OS.cpp (invoke): Added a dummy return to shut gcc up. + + * ace/OS.cpp (invoke): Added a dummy return to shut gcc up. + + * ace/OS.{h,cpp} (rethrow_w32_structural_exception): Added this + function, which prints out an error message to indicate the + occurance of structural exception and rethrow it again. + (ACE_Thread_Adapter::invoke): Rearranged try and except block + for Win32 and added a finally block so when a structural + exception occurs, a thread can clean it up properly, print out + an error message, and rethrow the exception again. + +Thu Dec 18 15:40:50 1997 James C Hu <jxh@cs.wustl.edu> + + * ace/Filecache.{cpp,h}: + - debugged writing a file. + - can select if mapping is desired. + + * ace/OS.h: Added new #defines to facilitate forward declarations + of ACE_Export classes. + +Thu Dec 18 00:15:02 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.6, released Thu Dec 18 00:15:02 1997. + +Wed Dec 17 19:42:38 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * examples/IPC_SAP/SOCK_SAP: Enhanced the + CPP-{inserver,inclient}.cpp tests so that they will spawn + multiple client and server threads to perform the data transfer. + Thanks to Brian Mendel and Bryan Doerr for suggesting this. + + * ace/OS.i: Fixed some very subtle bugs with cond_signal() and + cond_broadcast(). Thanks to Patrick J. McNerthney + <pat@thememedia.com> for reporting these and sending the fixes. + +Wed Dec 17 19:27:06 1997 Nanbor Wang <nw1@merengue.cs.wustl.edu> + + * ACE-INSTALL.html (HREF): Added an advise not to use VC5.0 SP3. + + * examples/OS/Process/Makefile: Removed inclusion of + rules.lib.GNU. Thanks to Avi Nash <anash@RedBrick.Com> for + noticing this. + +Tue Dec 16 22:09:42 1997 David L. Levine <levine@cs.wustl.edu> + + * tests/Time_Value_Test.cpp: restored #include test_config.h, + and changed #include ace/config.h to ace/inc_user_config.h. + + * examples/IPC_SAP/TLI_SAP/ftp-server.cpp, + examples/Reactor/Misc/test_timer_queue.cpp, + examples/Service_Configurator/IPC-tests/server/Handle_Timeout.i, + examples/Shared_Malloc/test_malloc.cpp, + examples/Threads/thread_specific.cpp: replaced ACE_HAS_64BIT_LONGS + preprocessor logic with a cast through a long to an int. + A void * is the same size as a long on all currently supported + ACE platforms. The int cast is also there, to avoid compiler + warnings about narrowing. As a side effect, the function-style + casts were removed. + + * ace/config-osf1*.h,README: added comment stating that + ACE_HAS_64BIT_LONGS is deprecated. + + * ace/config-tandem.h: removed commented-out line that mentioned + ACE_HAS_64BIT_LONGS. + + * ace/OS.{h,i} (sigwait): removed DEC cxx version dependence. The + standard two-arg POSIX ::sigwait () seems to work just fine even + on older releases of Digital Unix 4.0, with the sigwait declaration + that we have in OS.h. Thanks to Erik Margraf + <erik@asgard.gud.siemens.co.at> and Thilo + <kielmann@informatik.uni-siegen.de> for helping to sort this out. + + I did change the ACE_OS::sigwait () return value determination + in OS.i. It now depends on whether or not POSIX ::sigwait () + returns 0, to agree with the documenation for POSIX sigwait. + Before, the code checked for a -1 return value from ::sigwait (). + +Tue Dec 16 21:00:49 1997 Chris Gill <cdgill@tango.cs.wustl.edu> + + Single Threaded port of ACE to pSOSim - first checkin + + * psosim/Makefile: (new) make file for new psosim directory - + builds the configured simulator components + + * psosim/drv_conf.c: (new) board driver configuration code for + simulator + + * ace/sys_conf.h: (new) configuration settings for simulator, ACE + + * ace/config-psosim-g++.h: (new) config file for psosim w/ g++ + + * ace/OS.cpp: + * ace/OS.h: + * ace/OS.i: Added psos and psosim specific code + + * ace/Mem_Map.cpp: Removed function style casts which were killing + g++ + + * ace/Message_Block.cpp: Removed function style casts which were + killing g++ + + * ace/Containers.cpp: Removed function style casts which were + killing g++ + + * ace/Map_Manager.cpp: Removed function style casts which were + killing g++ + + * tests/Handle_Set_Test.cpp: Added PSOS #defines, alongside those + for VXWORKS + + * tests/SOCK_Connector_Test.cpp: Added PSOS #defines, alongside + those for VXWORKS + + * tests/Priority_Reactor_Test.cpp: Added PSOS #defines, alongside + those for VXWORKS + + * tests/MM_Shared_Memory_Test.cpp: Added PSOS #defines, alongside + those for VXWORKS + + * tests/Conn_Test.cpp: Added PSOS #defines, alongside those for + VXWORKS + + * tests/run_tests.psosim: (new) script to run only those tests + that are relevant to pSOSim, in its current single threaded + state + + * include/makeinclude/platform_psosim_g++.GNU (new) make macros + for pSOSim using g++ + + +Tue Dec 16 17:23:49 1997 Nanbor Wang <nw1@merengue.cs.wustl.edu> + + * tests/Time_Value_Test.cpp: Removed inclusion of "ace/config.h". + + * ace/inc_user_config.h: Added this file to prevent multiple + inclusions of config.h file. Replace `#include "ace/config.h"' + with `#include "ace/inc_user_config.h"'. + + * ace/Log_Msg.cpp: + * ace/OS.h: + * ace/Trace.cpp: + * ace/streams.h: + * ace/iosfwd.h: Replace "config.h" with "inc_user_config.h". + +Tue Dec 16 08:30:41 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * examples/IPC_SAP/FILE_SAP/client.cpp (main): Fixed "lines" to + "links." Thanks to Istvan Buki <ibuki@fedex.com> for reporting + this. + +Tue Dec 16 14:15:48 1997 <irfan@TWOSTEP> + + * ace/OS.i (fstat): Fixed Dr. Schmidt's typo. + +Tue Dec 16 09:17:53 1997 David L. Levine <levine@cs.wustl.edu> + + * ace/Singleton.cpp (cleanup): set instance pointer to 0 after + deleting it. Thanks to Luca Priorelli <lucapri@mbox.vol.it> + for suggesting this. + + * ace/Basic_Types.{h,i}: (ACE_U_LongLong): use ACE_UIN32 instead + of u_long for data members, to ensure that its sizeof is 8 bytes. + + * ace/OS.h: except on WIN32 and Solaris (ACE_HAS_HI_RES_TIMER), + always typedef ACE_hrtime_t to ACE_UINT64. This changes removes + the dependence on ACE_HAS_64BIT_LONGS. + + * ace/OS.cpp (ACE_TSS_Keys): replaced ACE_HAS_64BIT_LONGS + dependence with ACE_SIZEOF_LONG == 8, and similarly for + determination of 4-byte longs. + + * tests/TSS_Test.cpp (worker): replaced ACE_HAS_64BIT_LONGS + preprocessor logic with a cast of the void * argument to a long. + A void * is the same size as a long on all currently supported + ACE platforms. The int cast is also there, to avoid compiler + warnings about narrowing. + + * tests/Time_Value_Test.cpp: replaced use of ! ACE_HAS_64BIT_LONGS + with ACE_SIZEOF_LONG == 4. + +Mon Dec 15 22:47:24 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.5, released Mon Dec 15 22:47:24 1997. + +Mon Dec 15 20:17:10 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/OS.cpp: Fixed pread() and pwrite() so that they work + correctly even if we don't support threads. Thanks to Irfan for + finding this. + + * ace/OS.i: Tried to fix the fstat() wrapper on Win32 so that + it does the right think for HANDLES. Thanks to Lori Anderson + <lori@probita.com> for pointing this out. + +Mon Dec 15 15:36:07 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu> + + * ace/Thread_Manager.cpp (exit,wait): Changed these two functions + more for Chorus. Thanks again to Wei Chian + <chiang@tele.nokia.fi> for providing the patch. + +Mon Dec 15 06:42:42 1997 David L. Levine <levine@cs.wustl.edu> + + * ace/Log_Msg.cpp (instance): on non-threaded platforms, only + allocate a new ACE_Log_Msg_message_queue if the (static) pointer + is 0. Thanks to Stephen Coy <stevec@magna.com.au> for + reporting this. + + * ace/config-linux-common.h: updated header comments about + autosensing the platform capabilities. + + * tests/Process_Strategy_Test.cpp: (parse_args): added DEBUG + message if an unsupported concurreny strategy is provided with + a -c option. + +Mon Dec 15 01:12:33 1997 <irfan@TWOSTEP> + + * ace/Synch_T.h (ACE_Atmoic_Op::value_i): Explicitly return + <value_> (by reference). This gives the user full, unrestricted + access to the underlying value. This method will usually be + used in conjunction with explicit access to the lock. Use with + care ;-) + +Sun Dec 14 21:37:08 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/OS.i (cond_wait,cond_timedwait): Fixed a missing return to + handle the case where we're using USYNC_PROCESS for the external + mutexes. + + * ace/OS: Made the use of the waiters_lock_ mutex consistent in + the ACE_cond_t implementation. This was broken since we used + the external_mutex to serialize access to the waiters_ count + inconsistently. Thanks to Patrick J. McNerthney + <pat@thememedia.com> for reporting this very subtle bug. + +Sun Dec 14 12:29:26 1997 Nanbor Wang <nw1@merengue.cs.wustl.edu> + + * ace/Thread_Manager.cpp (exit,wait): Disabled thread join + functionality in Chorus. Thanks to Wei Chiang + <chiang@tele.nokia.fi> for providing the fix. + +Fri Dec 12 21:48:38 1997 Torbjorn Lindgren <tl@funcom.com> + + * ace/config-linux*.h: All Linux platform files except the + Linux-KCC modified to use the upgraded common Linux + configuration file. Linux-KCC looks reasonably easy to do, + if no-one that actually have KCC takes care of it I can do + this one later. + + * ace/config-linux-common.h: Modernized and updated the common + Linux configuration file to handle more of the common + configuration stuff. Also added the beginning of proper + glibc and egcs support for Linux. + +Sat Dec 13 14:22:28 1997 <irfan@TWOSTEP> + + * ace/Basic_Types.h: Changed _M_IX386 to _M_IX86. + +Fri Dec 12 19:41:42 1997 <irfan@TWOSTEP> + + * ace, tests, version_tests: Updated Win32 makefiles (VC4.2 and + VC5.0) to include new Basic_Types_Tests. + + * tests/Basic_Types_Test.cpp (main): Updated to use + ACE_OS::getpagesize(). + + * ace/ACE.cpp (round_to_pagesize): Updated to use + ACE_OS::getpagesize(). + + * ace/OS.i (getpagesize): Added this to ACE_OS. + +Fri Dec 12 07:49:01 1997 David L. Levine <levine@cs.wustl.edu> + + * ace/OS.i (inet_addr): changed type of "valid" from bool to u_int. + This code is only seen on VxWorks. + + * ace/IOStream.h (ACE_Quoted_String::operator <): changed return + type from bool to int. + + * ace/config-vxworks*.h,README: removed ACE_LACKS_SOCKET_BUFSIZ; + added ACE_DEFAULT_MAX_SOCKET_BUFSIZ of 32768. + + * examples/IPC_SAP/SOCK_SAP/C-in{client,server}.cpp: added + support to optionally set socket buffer sizes. + + * examples/System_V_IPC/SV_Semaphores/Semaphores_2.cpp: + removed unused constant SHMSZ. + + * examples/Timer_Queue/Reactor_Timer_Queue_Test.cpp: removed + unused constant NO_OF_IO_HANDLERS. + + * ace/IOStream_T.h (ipfx,ipfx1): don't call setstate () on WIN32, + because MS VC++ 5.0 doesn't declare it. Thanks to Irfan for + reporting this. This "fix" is temporary, maybe, until we + figure out the proper fix. + + * ace/OS.h: cast the 1 in ACE_MSB_MASK to an fd_mask, to support + 64-bit fd_masks. I suspect that with this change, the + ACE_HAS_BROKEN_BITSHIFT used in config-tandem.h is no longer + necessary. + + Added Basic_Types: + * ace/Basic_Types.*,Makefile: Basic_Types defines the + following preprocessor macros: + + Sizes of built-in types: + ACE_SIZEOF_CHAR + ACE_SIZEOF_WCHAR + ACE_SIZEOF_SHORT + ACE_SIZEOF_INT + ACE_SIZEOF_LONG + ACE_SIZEOF_LONG_LONG + ACE_SIZEOF_VOID_P + ACE_SIZEOF_FLOAT + ACE_SIZEOF_DOUBLE + ACE_SIZEOF_LONG_DOUBLE + + Wrappers for built-in types of specific sizes: + ACE_INT16 + ACE_UINT16 + ACE_INT32 + ACE_UINT32 + ACE_UINT64 + (Note: ACE_INT64 is not defined, because there is no ACE_LongLong for + platforms that don't have a native 8-byte integer type.) + + Byte-order (endian-ness) determination: + ACE_BYTE_ORDER, to either ACE_BIG_ENDIAN or ACE_LITTLE_ENDIAN + ACE_BIG_ENDIAN or ACE_LITTLE_ENDIAN + + * ace/OS.*: moved ACE_U_LongLong to Basic_Types.*. + + * ace/OS.h: added #include <float.h>. + + * ace/config-linux-common.h,README: added ACE_HAS_BYTESEX_H. + + * tests/Basic_Types_Test.cpp,run_tests.{bat,sh,vxworks),Makefile: + added new Basic_Types_Test. + + * tests/Time_Value_Test.cpp: removed ACE Version printout because + it is now in Basic_Types_Test. + +Fri Dec 12 03:00:21 1997 James C Hu <jxh@cs.wustl.edu> + + * ace/config-sunos5.5-egcs-1.0.h: Fundamemntally identical to g++ + version, except added ACE_HAS_STDCPP_STL_INCLUDES, which is + taken to mean that the Standard C++ STL include files are + supported. + + * IOStream.h: Added #if's to handle the case where + ACE_HAS_STRING_CLASS, but if ACE_HAS_STDCPP_STL_INCLUDES, then + the string class is found in <string>. Otherwise, it looks for + it in <String.h>. + + * ace/OS.i: Re-implemented strcasecmp methods. Thought bad + implementations were related to a JAWS bug, but the hand + implementations are not used on Solaris. + +Thu Dec 11 23:20:57 1997 <irfan@TWOSTEP> + + * ace/Strategies_T.cpp (activate_svc_handler): Changed the + parameter that was been passed into the open routine of + Svc_Handler. The <arg> that was passed to us is passed through + to open, rather than passing <this>. Thanks to Mats Nilsson + <mats.nilsson@xware.se> for pointing this out. + + * ace/Connector.cpp (activate_svc_handler): Made sure that we pass + the connector pointer as the void* parameter to the svc_handler. + +Thu Dec 11 23:35:04 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/OS.i. The code was always calling dlsum for the _init() + hook, even if dlopen() failed. In addition to fixing this, I + also removed a potential handle leak. Thanks to Patrick + J. McNerthney <pat@thememedia.com> for reporting this. + +Thu Dec 11 13:13:17 1997 David L. Levine <levine@cs.wustl.edu> + + * ace/LSOCK.cpp (recv_handle): fixed to remove compile errors and + warnings on platforms with both ACE_HAS_4_4BSD_SENDMSG_RECVMSG + and ACE_HAS_THREADS. The delta from version 4.3 of this file + is very small. Thanks to Kirill Rybaltchenko + <Kirill.Rybaltchenko@cern.ch> for reporting this problem and + verifying the fix on LynxOS, the only affected platform. + + * ace/config-linux-kcc.h,include/makeinclude/platform_linux_kcc.GNU: + added linuxthreads support with the linux KAI C++ config. + Thanks to Ben Eng <ben@jetpen.com> for the patches. + + * ace/IOStream_T.h: iostream fx emulation now skips whitespaces and + flushes when tied. Thanks to Ben Eng <ben@jetpen.com> for the patch. + + * tests/IOStream_Test.cpp (server): check for double-quote instead + of newline as end-of-string character. Thanks to Ben Eng + <ben@jetpen.com> for the patch. + + * tests/SV_Shared_Memory_Test.cpp: renamed "allocator" to + "myallocator" to avoid conflict with STL. Thanks to Ben Eng + <ben@jetpen.com> for the patch. + + * include/makeinclude/platform_linux_lxpthread.GNU: protect + PRELIB definition with ifndef PRELIB, to allow overriding + without modifying the platform_macros.GNU file. Thanks to + James Johnson <jcej@lads.com> for this suggestion. + + * ace/IOStream_T.cpp: restored ACE_HAS_IOSTREAMH_INCLUSION + protection around the old g++ munch hack. There's no need + to trouble all (g++) platforms with its (4 byte) space penalty. + + * examples/IOStream/server/iostream_server.cpp (handle_input): + removed unused local "addr". + + * examples/Reactor/Dgram/{CODgram,Dgram}.cpp (run_test): added + return 0 at end so that the function always returns a value. + + * include/makeinclude/platform_lynxos.GNU: added comment indicator + to comment describing POSTLINK. + + * ACE-INSTALL.html: updated DEC CXX 6.0 test status: all tests pass + with the version of DIGITAL UNIX 4.0 and cxx 6.0 that we use. + +Wed Dec 10 23:57:00 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * ACE version 4.4.4, released Wed Dec 10 23:57:00 1997. + +Wed Dec 10 16:24:09 1997 <irfan@TWOSTEP> + + * ace/Auto_Ptr.i: Apparently, the standard states that in order to + access members of a templated superclass from a templated + subclass, then the member name must be fully qualified. + Therefore, changed access to p_ to ACE_Auto_Basic_Ptr<X>::p_. + Thanks to Stephen Coy <stevec@magna.com.au> for reporting this. + +Tue Dec 09 13:05:00 1997 <nw1@CHA-CHA> + + * ace/Containers.cpp (copy_all_nodes): Added a temporary + ACE_Node<T> pointer to get around the macro side effects. + +Sun Dec 7 10:20:46 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/Service_Config.cpp (parse_args): Added an appropriate macro + to switch from char * to UNICODE. Thanks to Timothy A. Brown + <tabrown@montana.com> for reporting this. + + * ace/config-linux-*.h: Added ACE_HAS_GETRUSAGE_PROTO to all + the linux config files. Hopefully, this will help ACE to work + better with glibc. Thanks to Ernie Makris <emakris@ziplink.net> + and Torbjorn Lindgren <tl@funcom.no> for their help. + +Sat Dec 06 13:30:11 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.3, released Sat Dec 06 13:30:11 1997. + +Sat Dec 6 12:02:09 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * examples/IOStream: Revised both the client and server to + demonstrate the ACE_IOStream functionality correctly. Also + added a README file explaining how to run the examples. Thanks + to James Johnson and Dustin Laurence + <laurence@alice.wonderland.caltech.edu> for suggesting this. + + * ace/IOStream_T: Added a new method eof() to the ACE_IOStream_T<> + class. This returns 1 if we've reached the end of the socket + stream, else 0. + +Fri Dec 5 16:58:29 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/Addr.h: Added a const ACE_Addr & instead of const ACE_Addr. + This will avoid an extra copy. Thanks to Irfan for noticing + this. + + * examples/Reactor/Dgram/CODgram.cpp: Also updated the CODgram + test to be just like the Dgram test. + + * examples/Reactor/Dgram/Dgram.cpp (main): Fixed a bug where it + was sending a huge buffer instead of just the string size. + Also, exit once we've finished the send. Finally, revised the + test so that it is easier to understand and so that it exits + properly. Thanks to Michael Hoffman + <Hoffman_Michael@mac-mailserver.atc.ll.mit.edu> for reporting + this. + +Fri Dec 05 13:20:09 1997 David L. Levine <levine@cs.wustl.edu> + + * include/makeinclude/platform_vxworks5.x_ghs.GNU: added OFLAGS. + Thanks to Brian Mendel for suggesting these. + + * tests/IOStream_Test.cpp: updated to work with the standard C++ + library version of iostreams. That primarily involved not + using operator>>(char& c) and operator>>(char* c) for C strings. + Thanks to Ben Eng <ben@jetpen.com> for the patch. + + * ace/OS.{h,i},config-osf1-4.0.h: fixed sigwait on DEC CXX 6.0/ + recent DEC UNIX 4.0. The fix keys off the compiler version, + though it probably should depend on the OS. It adds a + sigwait declaration, which is a current signal.h deficiency. + With this change, ACE builds and tests cleanly on DEC UNIX. + + * ace/config-vxworks5.x-g++.h: restored comment that explains + ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION. + + * netsvcs/lib/Makefile: the first line of the Local Target + (Server_Logging_Handler.*) override mysteriously disappeared, again. + +Fri Dec 5 12:15:49 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * ace/Select_Reactor.cpp: Made error messages on open failure more + verbose. Having these in place straightaway would have helped + track down some problems at Boeing much more effectively. + +Fri Dec 5 11:15:17 1997 Nanbor Wang <nw1@merengue.cs.wustl.edu> + + * ace/Log_Msg.h (callers.): Added documentation for %I and %D + flags. Thanks to John Morey <jmorey@tbi.com> for reosting + this. + + * ace/Dynamic.h: + * ace/CORBA_Ref.h: + * ace/Token_Invariants.h: + * ace/Token_Collection.h: + * ace/Local_Tokens.h: + * ace/Remote_Name_Space.h: + * ace/Registry_Name_Space.h: + * ace/Strategies.h: + * ace/Name_Space.h: + * ace/Name_Request_Reply.h: + * ace/Naming_Context.h: + * ace/Name_Proxy.h: + * ace/Local_Name_Space.h: + * ace/Local_Name_Space_T.h: Corrected erroneous comments. These + files all contain incorrect filename info in the preambles which + make erroneous auto-generated man pages. + +Fri Dec 05 00:00:53 1997 <irfan@TWOSTEP> + + * ace/OS.h: If the user wants minimum IOStream inclusion, i.e., + they have defined ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION, we will + just include the forward declarations, i.e., ace/iosfwd.h. Else + they will get all the stream header files, i.e., ace/streams.h. + The positive thing about this change is that if your code was + using stream classes and you were depending on OS.h to provide + you the stream header files, you will not have to change your + code, unless you have defined + ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION. Thanks to Dr. Schmidt for + suggesting this and thanks to David Levine for suggesting it to + Dr. Schmidt ;-). + + * ace/config-vxworks5.x-g++.h: Restored + ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION. + + * ace/Asynch_IO.cpp (open): Fixed typo. + +Thu Dec 04 21:20:47 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.2, released Thu Dec 04 21:20:47 1997. + +Thu Dec 4 19:45:04 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * ace/Object_Manager.cpp (ACE_Object_Manager_Destroyer): Fixed a + bug in the + ACE_Object_Manager_Destroyer::~ACE_Object_Manager_Destroyer + thread comparison routine. Thanks to Steven Coy for this. Also + renamed _saved_main_thread_id to saved_main_thread_id_, which is + proper ACE style. + + * Updated the ACE-INSTALL.html file to explain why you don't need + to build everything all the time. Thanks to Dustin Laurence + <laurence@alice.wonderland.caltech.edu> for suggesting this. + + * tests/SOCK_Connector_Test.cpp (fail_no_listener_nonblocking): + Added a check for ENETUNREACH. Thanks to Dustin Laurence + <laurence@alice.wonderland.caltech.edu> for reporting this. + + * ace/Asynch_Acceptor.cpp (open): Changed the local variable named + sap_any to sa to avoid conflicts with the new sap_any macro. + + * ace/Asynch_IO: Made the ACE_Service_Hanlder::open() method + non-virtual to work around bugs with Borland C++. Thanks to + Valik Solorzano Barboza <valik@geodan.nl> for suggesting this. + + * ace/ACE.cpp (COMPUTE): Put parens around elements the COMPUTE + macros so that it will work on Borland C++. Thanks to Valik + Solorzano Barboza <valik@geodan.nl> for suggesting this. + + * ace/config-win32-common.h: Added ACE_HAS_BROKEN_SAP_ANY to deal + with Borland C++ bugs. Thanks to Valik Solorzano Barboza + <valik@geodan.nl> for suggesting this. + + * ace/Addr: Added a workaround for the Borland C++ problems. This + introduces a new global macro called sap_any. However, this is + only used for Borland, so it should be ok. Thanks to Valik + Solorzano Barboza <valik@geodan.nl> for suggesting this. + + * ace/LSOCK.cpp (recv_handle): Make the code smarter if we've got + both STREAMS and 4_4BSD_SENDMSG_RECVMSG. + + * Reran "make depend" over all of ACE. + + * netsvcs/clients/Logger/indirect_logging.cpp (main): Changed + LOGGING to LOGGER. Thanks to Irfan for noticing this. + + * netsvcs/lib/Client_Logging_Handler: Changed "rendezvous" to + "logger." + + * netsvcs/clients/Logger/indirect_logging.cpp, + netsvcs/lib/Client_Logging_Handler: Changed DEFAULT_RENDEZVOUS + to DEFAULT_LOGGER_KEY. Thanks to Steven Coy for pointing out + this inconsistency. + + * ace/OS.h: Renamed ACE_LOGGER_KEY to ACE_DEFAULT_LOGGER_KEY to + make it consistent with other ACE_DEFAULT_* names. + + * ace/OS.h: Changed the definition for ACE_LOGGER_KEY so that it + defaults to "localhost:10015" on platforms that don't support + ACE STREAM Pipes. Thanks to Steven Coy for suggesting this. + + * ace/Service_Config.cpp: Added the -k option to parse_args() so + that the user can set the logger key. Thanks to Steven Coy for + suggesting this. + + * ace/Service_Config: Added the logger_key as a parameter to the + other open() method, as well. Thanks to Steve Coy for being + picky ;-). + + * netsvcs/clients/Logger/direct_logging.cpp (main): Modified the + code to use the new framing scheme. + + * netsvcs/lib/Server_Logging_Handler_T.cpp + (handle_logging_record): Updated the code to take advantage of + our new framing scheme. + + * netsvcs/lib/Client_Logging_Handler.cpp (send): We can be smarter + now about sending the ACE_Log_Record across the network since + the length field is now fixed and it's guaranteed to be in the + first 4 bytes. Thanks to Steve Coy for suggesting this. + + * ace/Log_Record.h (ACE_Log_Record): Replaced the horribly + non-portable "long length_" field with the "ACE_INT32 length_" + field, which is nice because it is portable across platforms + with different long-word sizes. + +Thu Dec 04 09:57:40 1997 David L. Levine <levine@cs.wustl.edu> + + * include/makeinclude/platform_osf1_4.GNU: allow enabling of + WARNING_FLAGS by setting CXX_VER to POST_5X. Thanks to + James Johnson for this suggestion. + + * ace/Svc_Conf_l.cpp: rebuilt with Doug's flex. + +Thu Dec 04 03:46:04 1997 <irfan@TWOSTEP> + + * ace/Makefile (Svc_Conf_l.cpp): Changed the sed macros to produce + OS.h include instead of stdcpp.h. + + * ace/Svc_Conf_l.cpp: Updated after code was regenerated using the + new sed changes in the Makefiles. Currently there are two + inclusions of OS.h in this file and an extra stdlib.h. Maybe + someone more experienced in sed can take these out by updating + the Makefile. + + * ace/IOStream_T.h (stdcpp.h): Removed inclusion of stdcpp.h. It + is redundant because IOStream.h includes it. + + * ace/streams.h: New file. This files tries to reduce the + differences between the old and new stream libraries for the + user. This is done by automatically selecting the correct + includes depending on the ACE_HAS_STANDARD_CPP_LIBRARY variable. + This file also helps out by making commonly used classes (e.g., + ios, ostream, iostream, cin, cout, etc) available in the global + name space when used with the Standard C++ Library. Use this + file where you would usually include <iostream.h> or <iostream>. + + * ace/iosfwd.h: New file. This files deals with forward + declaration for the stream classes. Remember that since the new + Standard C++ Library uses templates for the implementation of + the streams, simple forward declaration will not work. Classes + forward declared by this class include: + + ios + streambuf + istream + ostream + iostream + filebuf + ifstream + ofstream + fstream + + Use this file where you would usually forward declare the + classes listed above. + + * ace/stdcpp.h: Removed this file from the repository. This file + was trying to do too much. All the inclusion of the C Library + headers were unnecessary. This is because the new C++ standard + preserves the old C library include files. The functions from + those files will still be in the global namescape. The new + header files (e.g., cstdio), provides the same prototypes as the + old files (e.g., stdio.h), except that all prototypes are in the + std namespace. Since we want the old behavior and global + prototypes (for backward compatibility), inclusion of the new + header files was incorrect. + + stdcpp.h was included by OS.h. This caused almost all files to + force the inclusion of the stream header files. This was + changed so that OS.h only includes the ace/iosfwd.h file. This + means that if your code was using stream classes and you were + depending on OS.h to provide you the stream header files, you + will have to change your code to either include iostream.h or + iostream, or more portably ace/streams.h. + + * ace/OS.h: Removed stdcpp.h. Moved the standard C library + includes from stdcpp.h to OS.h. Also added ace/iosfwd.h to give + forward declaration for the stream classes. + + * ACE: Added explicit inclusion of ace/streams.h to the following + files: + + ace/IOStream.cpp + ace/Log_Record.cpp + ace/OS.cpp + ace/SString.cpp + ace/Log_Msg.cpp + tests/test_config.h + examples/Log_Msg/test_log_msg.cpp + examples/Reactor/Misc/test_time_value.cpp + examples/Threads/task_three.cpp + netsvcs/lib/Logging_Strategy.cpp + examples/Logger/Acceptor-server/server_loggerd.cpp + examples/ASX/UPIPE_Event_Server/event_server.cpp + examples/Reactor/Ntalker/ntalker.cpp + examples/Shared_Malloc/test_persistence.cpp + examples/System_V_IPC/SV_Message_Queues/MQ_Server.cpp + examples/System_V_IPC/SV_Message_Queues/MQ_Client.cpp + examples/System_V_IPC/SV_Message_Queues/TMQ_Server.cpp + examples/System_V_IPC/SV_Message_Queues/TMQ_Client.cpp + + * Updated makefile dependencies throughout ACE to reflect the + removal of stdcpp.h and the addition of streams.h. + + * examples/Threads/barrier2.cpp: Removed inclusion of stdcpp.h. + + * ace/IOStream_T.cpp: Reorganized include files so that inclusion + of config.h is not necessary. + + * ace/IOStream.cpp: Changed inclusion of config.h to OS.h. + + * ace: Removed config.h from the following files. It was + redundant. + + Timer_Hash.cpp + Timer_Heap.cpp + Timer_List.cpp + Timer_Queue.cpp + Timer_Wheel.cpp + + * ace: Added code to protect against multiple inclusions of + config.h. Following files were effected: + + Trace.cpp + Log_Msg.cpp + + * ace/config-win32-common.h: Removed redundant definitions of + ACE_HAS_TYPENAME_KEYWORD and ACE_HAS_SIG_ATOMIC_T. Thanks to + Matthias Kerkhoff <make@cs.tu-berlin.de> for pointing this out. + +Wed Dec 3 21:37:47 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu> + + * Added the new ACE-inheritance.ps and pdf files, which show the + class structure of ACE. Thanks to John Lindal + <jafl@cheshire-cat.caltech.edu> for generating this. + + * ace/Service_Config: Removed the static logger_key_ member and + replaced it with a (defaulted) parameter to open(). This is + more flexible. Thanks to Steve Coy for the suggestion. + + * ace/Service_Config.h: Addressed all the "@@" questions. + + * examples/IPC_SAP/SOCK_SAP/CPP-inclient.cpp (main): Fixed a + subtle bug in the "quit" logic. Thanks to Michael Hoffman + <Hoffman_Michael@mac-mailserver.atc.ll.mit.edu> for reporting + this. + + * netsvcs/lib/Server_Logging_Handler_T.cpp (handle_logging_record), + netsvcs/lib/Client_Logging_Handler.cpp (send): + Changed the code so that we now always send ACE_UINT32 bytes + worth of data for the length field. This ensures we're portable + across platforms. Thanks to Steven Coy for noticing this. + +Wed Dec 03 18:02:09 1997 <irfan@TWOSTEP> + + * performance-tests/Synch-Benchmarks/Benchmark.cpp: Added template + instantiations for Atomic_Op. + +Wed Dec 3 10:29:58 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * ace/ACE.cpp: + Use ACE_UINT32 to compute the 32-bit CRC, on Alphas (and + probably other 64 bit machines) u_long seems to be longer than + that. + +Wed Dec 03 07:39:15 1997 Steve Huston <shuston@riverace.com> + + * include/makeinclude/platform_hpux.GNU: + * include/makeinclude/platform_hpux_gcc.GNU: Moved some compile options + from the DCFLAGS to the CCFLAGS to compile correctly with or without + debugging. + +Wed Dec 03 06:26:14 1997 David L. Levine <levine@cs.wustl.edu> + + * ace/Future.cpp, + tests/{Future_Test,Reactors_Test,Reader_Writer_Test.cpp, + examples/Threads/manual_event.cpp: + moved ACE_Atomic_Op<ACE_Thread_Mutex, int> instantiation from + ace/Future.cpp to where it is used. + + * ace/OS.cpp (inet_aton): return 0 if addr argument is 0. Thanks + to Wei for reporting this. + + * ace/config-linux.common.h: set an ACE_DEFAULT_BASE_ADDR, on Alpha + for now. This might be necessary on Intel as well. + + * ace/OS.{h,i}, config-osf1-4.0.h: fixed use of ::sigwait with + DIGITAL_UNIX's cxx 6.0, which now uses ACE_HAS_ONEARG_SIGWAIT. + Also, added an ACE_DEFAULT_BASE_ADDR to the config file. + + * tests/{Priority_Reactor_Test,Reactor_Performance_Test}.cpp: + instantiate ACE_Map_*, for use by ACE_Connector, with ACE_HANDLE + instead of int. That's the way it's declared in ace/Connector.h. + +Wed Dec 03 00:17:50 1997 <irfan@TWOSTEP> + + * tests/test_config.h: Removed code for + ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION, as this option is no longer + necessary. + + * ace/stdcpp.h: Removed code for + ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION, as this option is no longer + necessary. + + * ace/config-vxworks5.x-g++.h: Removed + ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION. This flag is no longer + required. + + * ace/IOStream_T.cpp: Removed ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION + from #if defined. + + * ACE: Removed the explicit iostream.h inclusion from these: + + examples/ASX/UPIPE_Event_Server/event_server.cpp + examples/Log_Msg/test_log_msg.cpp + examples/Logger/Acceptor-server/server_loggerd.cpp + examples/Reactor/Misc/test_time_value.cpp + examples/Shared_Malloc/test_persistence.cpp + examples/Threads/task_three.cpp + netsvcs/lib/Logging_Strategy.cpp + + * ace/IOStream.h: Darrell missed removing this explicit iostream.h + inclusion. + + * ace/Future.cpp: Removed template instantiation of Atomic_Op + since Atomic_Op is not used by Future. + +Fri Dec 02 11:46:17 1997 <nw1@CHA-CHA> + + * ace/Proactor.cpp (ACE_Proactor): Reenabled Proactor's thread + manager to wait on its Timer_Handler thread. + + * ace/Thread_Manager.cpp (close_singleton): Removed Win32 specific + codes. This is no longer necessary with above changes. + (wait): Close down thread handles when removing detached + threads. Avoid performing wait when the program is shutting + down. + (remove_thr_all): Extracted out this protected member function. + (close): Changed to use the new remove_thr_all function. + + * ace/Proactor.cpp (handle_events): Changed the magic number 258 + to WAIT_TIMEOUT. Thanks to Mark Rabotnikov + <mark@netmanage.co.il> for pointing this out. + +Tue Dec 02 14:13:15 1997 Steve Huston <shuston@riverace.com> + + * include/makeinclude/platform_hpux_aCC.GNU: Moved some compile options + from the DCFLAGS to the CCFLAGS to compile correctly with or without + debugging. Thanks to Istvan Buki <ibuki@fedex.com> for reporting + the problem. + +Tue Dec 02 06:16:39 1997 David L. Levine <levine@cs.wustl.edu> + + * ace/Object_Manager.cpp (~ACE_Object_Manager_Destroyer): don't + delete the ACE_Object_Manager if not destroyed by the main + thread. That can cause problems, at least on WIN32. And + it should only happen under exceptional conditions, at least + on WIN32. Thanks to Ari Erev <ari_erev@icomverse.com> and + John Neystadt <john_neystadt@icomverse.com> for suggesting this. + + * ace/IOStream.cpp (underflow,overflow): moved get_mode_ and + put_mode_ accesses so that it now works on KAI C++. + Thanks to Ben Eng <ben@jetpen.com> for the patch. + + * ace/config-linux-kcc.h: commented out ACE_TEMPLATES_REQUIRE_SOURCE. + Thanks to Ben Eng <ben@jetpen.com> for this update. + + * ace/Profile_Timer.cpp (elapsed_time): changed + ACE_ONE_SECOND_IN_USECS to ACE_ONE_SECOND_IN_NSECS. Thanks + to Wei for noticing this. + + * ace/OS.cpp (inet_aton): removed CHORUS specialization. + Thanks to Wei for reporting this. + + * include/makeinclude/platform_chorus.GNU: added CHORUS = 1, + for use by individual Makefiles. + + * examples/Shared_Malloc/test_persistence.cpp: removed + ACE_Malloc<ACE_MMAP_MEMORY_POOL, ACE_Null_Mutex> + instantiation because it's in ace/System_Time.cpp. + + * ace/config-lynxos.h: removed ACE_HAS_UALARM, because LynxOS + apparently doesn't. + + * include/makeinclude/platform_lynxos.GNU: added -Winline and + removed -fno-strict-prototypes. + + * tests/Message_Queue_Test.cpp (main): increased queue size from + default of 16Kb to 32Kb, so that it runs on machines with 8Kb + pagesizes. And, added a check to see if the queue is full + before enqueuing. + + * ace/OS.i, config-osf1-4.0.h: DECXX 6009006 has SIGWAIT. + + * ACE-INSTALL.html: updated DEC_UNIX test status. Message_Queue_Test + and all of the Mutex_Tests now pass. Conn_Test no longer does. + +Tue Dec 02 00:18:04 1997 <irfan@TWOSTEP> + + * ace/Memory_Pool.cpp (handle_signal): If guess_on_fault_ is true, + then we cannot call remap(0). This will always put the address + out of range. Therefore, we will shoot in the dark (user has + instructed us to do so as guess_on_fault_ is true) and try to + remap the file. If the user does not want this behavior, the + guess_on_fault_ flag should be turned off. Thanks to Jon + Prettyman <jonp@als.ameritech.com> for pointing this out. + +Mon Dec 01 16:13:06 1997 <irfan@TWOSTEP> + + * ace/config-win32-common.h: Added back ACE_LACKS_ACE_IOSTREAM to + the config file. The test is not compiling. + + * tests/run_tests.bat: Look for "Win32 structured exception" in + the log files. + +Mon Dec 1 14:01:02 1997 Darrell Brunsch <brunsch@cs.wustl.edu> + + * ace/Log_Msg.cpp, ace/Log_Msg.h, ace/Log_Record.cpp, + ace/Log_Record.h ace/OS.h, ace/stdcpp.h, tests/test_config.h: + + Changed use of ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION in stdcpp.h + to include iostream when the above is #defined. Made + changes to other files to accommodate this change. + +Mon Dec 01 12:15:00 1997 <irfan@TWOSTEP> + + * ace/config-win32-common.h (ACE_LACKS_ACE_IOSTREAM): James CE + Johnson claims that ACE_LACKS_ACE_IOSTREAM is no longer not + necessary when using the ACE_HAS_STANDARD_CPP_LIBRARY. + + * ace/OS.h: Changed the definition of ACE_UNIMPLEMENTED_FUNC so + that it just evaporates on platform that have + ACE_REQUIRES_FUNC_DEFINITIONS defined. + + ACE_UNIMPLEMENTED_FUNC is only required for template classes and + not for a normal class. When the template is explicitly + instantiated, it causes some compilers to look for the + definition of all the declared methods. + + On platforms that have this behavior, we have decided to take + out the declaration of this function. This is necessary since + an empty definition of {} usually does not work with some + constructors. And by providing a explicit definition of this + function, will cause all platforms to suffer. + + Therefore, platforms with ACE_REQUIRES_FUNC_DEFINITIONS defined + must be specially careful when using this. + +Mon Dec 01 07:56:02 1997 David L. Levine <levine@cs.wustl.edu> + + * include/makeinclude/platform_sunos5_sunc++.GNU: added + -xildoff to LDFLAGS, to avoid occasional problems with + the incremental linker. Thanks to Hans Rohnert + <Hans.Rohnert@mchp.siemens.de> for this suggestion. + + * include/makeinclude/platform_vxworks5.x_g++.GNU, + etc/ace_ld, bin/ace_ld, ACE-INSTALL.html: + moved ace_ld from etc/ to bin/. + + * Makefile: added etc/ to CLONE and RELEASE_FILES. + + * include/makeinclude/platform_lynxos.GNU: added -Wall to CFLAGS. + + * ace/ACE.cpp (set_handle_limit): only call setrlimit if + RLIMIT_NOFILE is #defined. + + * ace/OS.h: removed ACE_HAS_STDARG_THR_DEST dependence for + ACE_THR_DEST definition. + + * ace/OS.cpp (thr_keycreate): with ACE_HAS_DCETHREADS only, cast + dest argument to ::pthread_keycreate if ACE_HAS_STDARG_THR_DEST. + + * ace/OS.i (get{host,proto,serv}by{addr,name}_r): with + ACE_HAS_NONCONST_GETBY only, added some ACE_UNUSED_ARGS. + + * examples/Shared_Malloc/Malloc.cpp: removed + ACE_Guard<ACE_Process_Mutex> instantiation because it's in + ace/Synch.cpp. + + * ace/config-lynxos.h: added ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS. + Without it, the Thread_Manager went recursively ballistic. + + * performance-tests/Misc/preempt.cpp (main): fixed printout if + ACE_OS::sched_params () call failed. + +Sun Nov 30 22:44:50 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu> + + * ACE version 4.4.1, released Sun Nov 30 22:44:50 1997. + +Sun Nov 30 20:32:50 1997 David L. Levine <levine@cs.wustl.edu> + + * include/makeinclude/platform_osf1_3.2.GNU: removed -ptr option + from CCFLAGS, so the default template repository will be used. + Thanks to Dani Flexer <danif@ivory-sw.com> for reporting this. + + * ace/Svc_Conf_l.cpp,Makefile: + 1) #include ace/stdcpp.h instead of stdio.h so that anything + that needs to be #included with/before stdio.h can be. + 2) Changed ECHO to ACE_SVC_CONF_ECHO to avoid compiler warning if + ECHO was #defined to be a constant. + + * ace/Makefile: set ACELIB to null so that it can be used to build + shared libs, including libACE.$(SOEXT). + + * include/makeinclude/platform_osf1_4.0.GNU: added $(ACELIB) to + SOFLAGS to avoid shared lib build warnings about undefined ACE + symbols. + + * ace/Thread_Manager.h: declare ACE_THR_MEMBER_FUNC outside of + ACE_Thread_Manager class with __GNUG__ instead of with + VXWORKS || IRIX5. The problem is with older versions of g++, + not with the OS. + +Sun Nov 30 14:13:09 1997 Douglas C. Schmidt <schmidt@merengue.cs.wustl.edu> + + * netsvcs/servers/README: Clarified a bit more about how to + configure the client and server logging processes. Thanks to + Neil Cohen for motivating this. + +Sun Nov 30 17:36:35 1997 Sergio Flores <sergio@tango.cs.wustl.edu> + + * ace/Synch.cpp (ACE_File_Lock): Fixed order of parameters in the + call to this->open() and too many arguments in call to + ACE_File_Lock::open(). + +Sun Nov 30 16:31:41 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu> + + * ace/Synch.h: + * ace/Synch.cpp: + ACE_File_Lock should create the file if it does not exist, to do + so the constructor takes the <flags> parameter to ACE_OS::open() + and defaults to O_CREAT|O_RDWR. + +Sat Nov 29 21:31:07 1997 Nanbor Wang <nw1@merengue.cs.wustl.edu> + + * ace/Proactor.cpp (~ACE_Proactor_Timer_Handler): Removed explicit + call to thr_mgr_.close(). + (ACE_Proactor): Be sure to ask Thread_Manager not to wait for + the timer_handler_ thread. + + * ace/Thread_Manager.cpp (close_singleton): Only reset + exit_on_wait status if we are responsible for deleting the + global thread manager. + +Sat Nov 29 15:15:04 1997 Carlos O'Ryan <coryan@swarm.cs.wustl.edu> + + * ace/IPC_SAP.cpp: + Removed warning for functions not returning a value on SGI, it + seems that the flow changed and the last return was reached + sometimes, hence the ACE_NOTREACHED macro is no longer needed. + +Sat Nov 29 13:12:47 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu> + + * ace/Synch: Conditionally inlined all the ACE_Process_Mutex + wrapper calls and moved them into the Synch.i file. I'm not + sure why there weren't here before. + + * ace/Synch: Reimplemented ACE_RW_Process_Mutex to use + ACE_File_Lock, which provides the proper readers/writer + semantics that had been lacking in the previous implementation. + +Fri Nov 28 04:25:23 1997 Nanbor Wang <nw1@merengue.cs.wustl.edu> + + * ace: Removed redundant trailing commas from + ACE_UNIMPLEMENTED_FUNC. + + * ace/Thread_Manager.{h,i,cpp}: Delete declaration of + remove_thr_self. It is no longer in use. + (wait_on_exit): Added this function to let users specify whether + they want their Thread_Manager wait for spawned threads on exit + or not. + (wait): On Win32, handles should be closed if we decide to let + the thread go wild. + (remove_thr): Added another parameter to control whether + remove_thr should close the handle or not. It is only used on + Win32. + (close): Removed the <automatic_wait> parameter for it has been + incoporated as a member. + (close_singleton): Reset <automatic_wait_> on Win32. We'll never + need to wait for unfinished threads on NT. + (ACE_Thread_Manager): Added initialization of member + <automatic_wait_>. It is default to 1 (wait on exit.) + + * ace/Containers.h: Corrected erroneous comments. + +Wed Nov 26 10:33:22 1997 <irfan@TWOSTEP> + + * ace/Log_Msg (msg): Changed the parameters from char * to const + char *. + + * ace: Added unimplemented copy constructors and assignment + operators to the following classes: + + ACE_Map_Manager + ACE_Message_Block + ACE_Data_Block + ACE_Log_Msg + ACE_Message_Queue + ACE_Task + ACE_Task_Base + + Added ACE_UNIMPLEMENTED_FUNC macros to these classes: + + ACE_Mem_Map + ACE_Priority_Reactor + ACE_Select_Reactor + ACE_WFMO_Reactor + ACE_XtReactor + ACE_Reactor + ACE_Read_Buffer + ACE_CORBA_Handler + ACE_TSS_TPQ_Entry + ACE_Object_Manager + ACE_File_Lock + ACE_Semaphore + ACE_RW_Mutex + ACE_Mutex + ACE_Null_Barrier + ACE_Null_Condition + ACE_Null_Mutex_Guard + ACE_Event + ACE_Thread_Mutex + ACE_Thread_Mutex_Guard + ACE_Condition_Thread_Mutex + ACE_Recursive_Thread_Mutex + ACE_Barrier + ACE_Condition + + Thanks to Stanley D Leeson <STANLEY.D.LEESON@cdev.com> for these + suggestions. + +Sat Dec 20 14:57:30 1997 <nw1@CHA-CHA> + + * All MSVC 5.0 project files: Removed unnecessary library + inclusions. Most of them are not necessary. Thanks to + Patrick J. McNerthney <pat@thememedia.com> for suggesting + this. + +Wed Nov 26 15:49:14 1997 David L. Levine <levine@cs.wustl.edu> + + * ace/IOStream_T.i (recv) affects WIN32 only: fixed typo, + ACE_BIT_ENABLED instead of ACE_BIT_ENTABLED IOStream_T.i. + Thanks to James CE Johnson <jcej@lads.com> for reporting this. + + * include/makeinclude/platform_lynxos.GNU: added information + on necessary OS patches. + +Wed Nov 26 09:45:43 1997 Chris Cleeland <cleeland@cs.wustl.edu> + + * ace/OS.h (ACE_PROPER_SINGLETON_INSTANTIATION): Corrected + misspelling in the "! defined (MSC_VER)" branch. I just happened + to notice this, so I don't know if anybody ever tried it and it + failed. + +Tue Nov 25 12:07:07 1997 David L. Levine <levine@cs.wustl.edu> + + * include/makeinclude/platform_osf1_3.2.GNU: updated for + OSF/1 3.2g/CXX 5.7. Thanks to Dani Flexer <danif@ivory-sw.com> + for the updates. + +Tue Nov 25 01:07:39 1997 <irfan@TWOSTEP> + + * examples/Reactor/Proactor/test_multiple_loops.cpp (main): Made + sure that the Proactor was removed from reactor. + + * ace/WFMO_Reactor.cpp (remove_handler_i, + remove_suspended_handler_i): Make sure to preserve DONT_CALL + with normal event entries. + + * ace/Proactor.cpp: + + - A flag used to indicate when we are shutting down. + + - Made sure to signal the timer event when we are closing down. + + - Thread Manager: don't bother to wait (since the thread may have + already gone). But make sure to close up the descriptor. This + may not be necessary in the future when THR_DETACHED is + correctly implemented. + + * ace/Asynch_IO.h: Changed some code from protected to public. + Even though these functions are really protected, sometimes it + simplifies user code to be able to "fake" a result. Users + should use these with care. + + * examples/Reactor/Proactor/test_proactor.cpp + (handle_write_stream): Added code for partial write to socket. + However it ever seems to do a short write ;-). Also made sure + that the initial data coming from the AcceptEx call is also + dumped to the file. Thanks to Mark Rabotnikov + (mark@netmanage.co.il) for pointing this out. |