Wed Jun 21 13:25:41 2000 Steve Huston * ace/OS.i (rename): On ACE_HAS_WINNT4 systems (Win NT, 2000), the rename is accomplished via MoveFileEx, which allows an existing destination file to be replaced. This makes the behavior in this case the same on NT/2000 as on *NIX systems (the file is replaced). Wed Jun 21 13:23:18 2000 Steve Huston * ace/OS.h (rename): Added a 3rd argument (int flags) which defaults to -1 (meaning to use ACE-default flags inside the function). The flags are only useful on NT/2000 for supplying values to the MoveFileEx function's flags argument. Wed Jun 21 03:02:37 2000 Nanbor Wang * ace/OS.i (set_errno_to_last_error): * ace/OS.i (set_errno_to_wsa_last_error): The RTL for IBM VisualAge C++/NT has the same problem as Borland 4. Thanks to Boris Kaminer for reporting this. Wed Jun 21 01:12:59 2000 Irfan Pyarali * ace/ACE.cpp: Changed all the timed versions of the "_n_i()" methods so that they are more optimistic. Previously, these methods would check with select() before issuing the data transfer call. There was really no need to do this since the socket is already in non-blocking mode and will therefore not block in transferring the data. This change should make these methods faster in the case when there is no blocking since select() will not be called. As a side effect of this change, checking for EWOULDBLOCK now happens after the call to send()/recv(). This automatically fixed bug 594 though I am still not sure why send()/recv() would EWOULDBLOCK right after select() indicated that the socket was ready. Either way, thanks to Viatcheslav A. Batenine for reporting the bug and providing an example illustrating the bug. Tue Jun 20 19:37:53 2000 Carlos O'Ryan * ace/CORBA_macros.h: Fixed the definition of ACE_RE_THROW_EX, there was a space between the macro name and the ( that starts its arguments. * ace/RMCast/Makefile: * ace/RMCast/RMCast_Header_Size.h: * ace/RMCast/RMCast_Header_Size.i: * ace/RMCast/RMCast_Header_Size.cpp: A simple control message, still unused. * ace/RMCast/RMCast_Partial_Message.cpp: Verify that all fragments report the same total size. Tue Jun 20 14:55:26 2000 Nanbor Wang * ace/OS.cpp: Applied patches for ACE_BEGINTHREADEX and ACE_ENDTHREADEX for using IBM VisualAge C++ 4.0 on NT. Thanks to Boris Kaminer for providing the patches. Tue Jun 20 12:04:24 2000 Ossama Othman * ace/Makefile (ssl): Reverted change that causes the SSL wrappers to be built when SSL support isn't explicitly disabled. It caused SSL support to always be built, which was not the desired effect. Tue Jun 20 12:57:12 2000 Nanbor Wang * ace/config-freebsd-pthread.h: Undefined ACE_LACKS_SETSCHED if we are compiling on R4.0 or above. Thanks to Sergey A. Osokin for reporting this for Nick Logvinov . Tue Jun 20 07:37:18 2000 Douglas C. Schmidt * ace/Select_Reactor_T.h, * ace/Select_Reactor_T.cpp, * ace/Reactor.h, * ace/Reactor.i, * ace/Reactor_Impl.h, * ace/WFMO_Reactor.h, * ace/WFMO_Reactor.cpp: Added a new method to access the Reactor's timer queue. Also renamed the accessors timer_queue(ACE_Timer_Queue *) and ACE_Timer_Queue *timer_queue() to be more consistent with ACE naming conventions. Thanks to Jody Hagins for reporting this. Tue Jun 20 02:06:15 2000 Craig Rodrigues * include/makeinclude/platform_sunos5_g++.GNU * include/makeinclude/platform_sunos5_sunc++.GNU Updated PLATFORM_X11_CPPFLAGS to include the standard include path for X11 and Motif headers under Solaris. Mon Jun 19 22:14:26 2000 Alex Arulanthu * ace/POSIX_Asynch_IO.h: * ace/POSIX_Asynch_IO.cpp: * ace/POSIX_Proactor.h: * ace/POSIX_Proactor.cpp: * examples/Reactor/Proactor/Makefile * examples/Reactor/Proactor/test_proactor2.cpp: Thanks to Alex Libman , the following changes have been integrated onto POSIX Proactor. - Enabling the completion call backs even if aio_return fails. We will call the completion call back methods with 0 transferred data parameter. - MT safe'ing AIOCB proactor. It would not improve the efficiency. Mon Jun 19 19:44:05 2000 Ossama Othman * ace/Makefile (ssl): Fixed conditional so that the SSL wrappers are built when SSL is not explicitly disabled, i.e. when the "ssl" make variable is not equal to zero. Note that the default is not to build the SSL wrappers. * ace/OS.i (thr_yield): Corrected typo in comment. * m4/platform.m4 (ACE_CPPFLAGS): Define necessary feature test macros on the command line, not in the configuration header. This allows ACE applications to utilize those macro definitions without having to worry about header inclusion ordering. (ACE_DEFAULT_SELECT_REACTOR_SIZE): It is no longer necessary to hard-code the default reactor size for older Linux kernels that had a file descriptor limit less than FD_SETSIZE since the Select Reactor now falls back on the run-time file descriptor limit for the given process. (ACE_HAS_IRIX62_THREADS): Removed redundant definition. Only define ACE_HAS_IRIX62_THREADS for IRIX 6.2. Mon Jun 19 17:33:28 2000 Douglas C. Schmidt * ace/OS.h: Removed the special case check for # if defined (ACE_HAS_IRIX62_THREADS) # define THR_SCOPE_SYSTEM 0x00100000 # else and just used this: # define THR_SCOPE_SYSTEM THR_BOUND Thanks to John Foresteire for this suggestion. Mon Jun 19 12:38:58 2000 Carlos O'Ryan * ace/config-all.h: * ace/OS.h: * ace/OS.cpp: * ace/Log_Msg.h: * ace/Log_Msg.cpp: In Win32 we have to pass the structured exception handlers around. Mon Jun 19 11:43:43 2000 Carlos O'Ryan * Decouple the Log_Msg inheritance from the ACE_OS layer: the Log_Msg class registers hooks with the ACE_OS layer that are invoked when a new thread is created. The callback is used to first copy the state from the current thread to a temporary object and then copy (in the created thread) the temporary object state to the TSS Log_Msg object. The temporary holder for the Log_Msg state is allocated in the heap, and destroyed as soon as we don't need it anymore. * ace/Log_Msg.h: * ace/Log_Msg.cpp: New ACE_Log_Msg_Attributes class used as the temporary holder of the Log_Msg state during thread creation. * ace/config-all.h: * ace/OS.h: * ace/OS.i: * ace/OS.cpp: Define the new hooks used to inherit the Log_Msg state. Mon Jun 19 12:45:45 2000 David L. Levine * ace/config-lynxos.h: removed the ACE_LACKS_PTHREAD_SIGMASK, and added back the pthread_sigmask () declaration. With extern "C", this time. * include/makeinclude/platform_lynxos.GNU: moved our LynxOS cross development kit to where it belongs, so that ENV_PREFIX is now the same as with 2.5.0 and 3.0.0. Mon Jun 19 11:49:43 2000 David L. Levine * include/makeinclude/platform_lynxos.GNU: export environment variables that are set on the host (for cross-compilation). The cross-compile g++ needs ENV_PREFIX in order to link properly. * ace/config-lynxos.h: added ACE_LACKS_PTHREAD_SIGMASK with LynxOS 3.1.0. In addition to not be declared in the system headers, pthread_sigmask () isn't in the threads libs. Mon Jun 19 10:43:27 2000 David L. Levine * include/makeinclude/platform_lynxos.GNU: use -mthreads with LynxOS 3.1.0, as well as with prior versions. Mon Jun 19 02:47:12 2000 Nanbor Wang * ace/CORBA_macros.h: Fixed misspellings of deprecated. Thanks to Ossama for pointing this out. Sun Jun 18 11:39:48 2000 David L. Levine * include/makeinclude/platform_lynxos.GNU: rework environment variables to better support LynxOS 3.1.0. Sun Jun 18 10:54:59 2000 Douglas C. Schmidt * ace/INET_Addr: Added operator < to ACE_INET_Addr so that it can be used in an STL map. Thanks to Tomer Amiaz for this suggestion. Sun Jun 18 03:18:21 2000 Nanbor Wang * ace/CORBA_macros.h: The definition of ACE_RETHORW is flawed because it requires all ACE_RETHROW statements be the last statement executed within the ACE_CATCH block as this example: ACE_CATCH ( /* whatever */ ) { // Do something else ACE_RETHROW; } ACE_ENDTRY; ACE_CHECK; However, if this is not the case, programs may exhibit different behavior on platforms with/without native C++ exceptions, as shown in the following example: ACE_CATCH ( /* whatever */ ) { if (foo == bar) ACE_RETHROW; foo = bar; } ACE_ENDTRY; ACE_CHECK; Although the problem is easy to fix, unfortunately, I can't find a way to fix it without changing the macro name because the program flow may get completely messed up if ACE_TRY and ACE_TRY_EX are used together. Therefore, I have added two new macros ACE_RE_THROW and ACE_RE_THROW_EX. The old macro is now deprecated. If you are absolutely sure that you are not using the old ACE_RETHROW macro as mentioned above, you can define ACE_HAS_DEPRECATED_ACE_RETHROW in your ace/config.h file and continue to use ACE_RETHROW. However, you should move to the new macros as soon as possible. Sat Jun 17 18:15:00 2000 Kirthika Parameswaran * tests/Makefile.DLL: * tests/Makefile.DLL_Test: Renamed Makefile.DLL since on NT it appeared as if there was a dll version of the Makefile. Also did a make depend. Thanks to James Megquier for reporting this and to Darrell brunsch for suggesting that the name be changed. * tests/Makefile: Updated the Makefile to now have Makefile.DLL_Test. Sat Jun 17 08:03:53 2000 Douglas C. Schmidt * docs/tutorials/Chap_5/ex02.html: Fixed a typo where peer() should have been peer_i(). Thanks to Keo Kelly for reporting this. Sat Jun 17 07:46:44 2000 Chris Kohlhoff * include/makeinclude/ace_flags.bor: Added support for new LoadBalancing orbsvcs library. Fri Jun 16 17:30:18 2000 Carlos O'Ryan * ace/RMCast/Makefile: * ace/RMCast/RMCast.dsp: * ace/RMCast/RMCast.dsw: * ace/RMCast/RMCast_Export.h: In this library we will implement a simple, small scale reliable multicast protocol for ACE. The library is based on the ASX classes in ACE (Task, Module and friends). * tests/RMCast/Makefile: * tests/RMCast/RMCast_Tests.dsw: The unit test directory for the RMCast library components. * ace/RMCast/RMCast_Fragment.h: * ace/RMCast/RMCast_Fragment.i: * ace/RMCast/RMCast_Fragment.cpp: The fragmentation task. It divides a message block chain in small fragments. The fragments are limited by the number of bytes and the number of entries in the chain (for platforms with limited IO vectors). * tests/RMCast/RMCast_Fragment_Test.cpp: * tests/RMCast/RMCast_Fragment_Test.dsp: Unit test for the fragmentation layer. * ace/RMCast/RMCast_Partial_Message.h: * ace/RMCast/RMCast_Partial_Message.i: * ace/RMCast/RMCast_Partial_Message.cpp: A simply class to maintain a partial received messages, keeps track of the missing bytes and detects when the complete message has been received. * ace/RMCast/RMCast_Reassembly.h: * ace/RMCast/RMCast_Reassembly.i: * ace/RMCast/RMCast_Reassembly.cpp: The reassembly layer. Uses the Partial_Message class to do a great deal of the work. * tests/RMCast/RMCast_Reassembly_Test.cpp: * tests/RMCast/RMCast_Reassembly_Test.dsp: Unit test for the reassembly layer. Fri Jun 16 17:00:03 2000 Carlos O'Ryan * include/makeinclude/rules.bin.GNU: * include/makeinclude/wrapper_macros.GNU: Joe's change does not work. A *LOT* of makefiles in TAO do not include the rules.bin.GNU file. Fri Jun 16 16:18:21 2000 Ossama Othman * ace/Makefile (DIRS): Descend into and build the newly added SSL directory if "make ssl=1" is issued. * ace/SSL/ACE_SSL.dsp: * ace/SSL/Makefile: * ace/SSL/SSL_Context.cpp: * ace/SSL/SSL_Context.h: * ace/SSL/SSL_Export.h: * ace/SSL/SSL_SOCK.cpp: * ace/SSL/SSL_SOCK.h: * ace/SSL/SSL_SOCK_Acceptor.cpp: * ace/SSL/SSL_SOCK_Acceptor.h: * ace/SSL/SSL_SOCK_Connector.cpp: * ace/SSL/SSL_SOCK_Connector.h: * ace/SSL/SSL_SOCK_Stream.cpp: * ace/SSL/SSL_SOCK_Stream.h: Integrated the ACE SSL wrappers into the ACE mainline distribution. Enable using "make ssl=1." The library that is generated is called "libACE_SSL.so" on UNIX, and ACE_SSL{d}.dll on Win32. * examples/IPC_SAP/Makefile: Build SSL_SAP example if "make ssl=1" is issued. * examples/IPC_SAP/SSL_SAP/SSL_SOCK_SAP.dsw: * examples/IPC_SAP/SSL_SAP/Makefile: * examples/IPC_SAP/SSL_SAP/README: * examples/IPC_SAP/SSL_SAP/SSL-client.dsp: * examples/IPC_SAP/SSL_SAP/SSL-server.dsp: * examples/IPC_SAP/SSL_SAP/SSL-client-simple.cpp: * examples/IPC_SAP/SSL_SAP/SSL-client-simple.h: * examples/IPC_SAP/SSL_SAP/SSL-client.cpp: * examples/IPC_SAP/SSL_SAP/SSL-client.h: * examples/IPC_SAP/SSL_SAP/SSL-server-fancy.cpp: * examples/IPC_SAP/SSL_SAP/SSL-server-poll.cpp: * examples/IPC_SAP/SSL_SAP/SSL-server-simple.cpp: * examples/IPC_SAP/SSL_SAP/SSL-server.cpp: * examples/IPC_SAP/SSL_SAP/dummy.pem: * examples/IPC_SAP/SSL_SAP/key.pem * examples/IPC_SAP/SSL_SAP/local_data: * examples/IPC_SAP/SSL_SAP/summarize: Integrated example that demonstratres use of the ACE SSL wrappers. * include/makeinclude/wrapper_macros.GNU (ssl): Added make flag to enable compilation of OpenSSL support in ACE. (e.g. make ssl=1) Fri Jun 16 14:40:34 2000 Carlos O'Ryan * bin/run_all_list.pm: * bin/auto_run_tests.lst: Add the LongUpcalls to the run_test lists. Fri Jun 16 16:00:45 2000 Joe Hoffert * include/makeinclude/{rules.bin.GNU,wrapper_macros.GNU}: Moving VLDLIBS definition from wrapper_macros.GNU to rules.bin.GNU to allow unsetting ACE_LIB. Needed for PACE builds that don't need the ACE library. Fri Jun 16 14:24:36 2000 Steve Huston * ace/config-hpux-11.00.h: * include/makeinclude/platform_hpux_aCC.GNU: Allow user to do make exceptions=0 to disable exception handling. This is not a safe thing to do since the C++ runtime throws exceptions, but if you must, and you know what you're doing, here's the rope. Fri Jun 16 08:40:38 2000 Darrell Brunsch * bin/msvc_auto_compile.pl: Moved the print statement for a project file from Build_Config to Build, so it will be executed for the -CORE target. This was causing incorrect headers in nightly build reports. Fri Jun 16 08:12:37 2000 David L. Levine * docs/ACE-guidelines.html: added a section for PACE. Thu Jun 15 21:30:37 2000 Ossama Othman * ace/Makefile.am (pkgincludedir): Corrected value for this variable. It should have been "$(includedir)/ace" instead of "$(prefix)/include/ace." In any case, this was more of a consistency change than anything else, since this variable is actually commented out. Thu Jun 15 20:01:35 2000 Steve Huston * ace/OS.i (ACE_OS::tempnam): Made the (__IBMCPP__) a 'defined' check and combined it with defined (ACE_WIN32) so it works right on AIX. Moved the NOTSUP stuff for ACE_HAS_WINCE to the section with the other platforms that don't support it. Thu Jun 15 16:10:51 2000 Steve Huston * include/makeinclude/platform_aix4_cset++.GNU: Force exceptions=1 because IBM C/C++ doesn't have a way to disable exceptions. * ace/config-aix-4.x.h: Add #if !defined around ACE_HAS_EXCEPTIONS to avoid compile errors if exceptions=1 explicitly stated. Thu Jun 15 16:03:11 2000 David L. Levine * include/makeinclude/platform_lynxos.GNU: removed -mthreads from CFLAGS with LynxOS 3.1.0. Thu Jun 15 15:56:27 2000 Michael Ravits * ace/OS_String.inl (strtoul): removed cast to unsigned long on Linux. It's no longer needed with current glibc. Thu Jun 15 15:18:31 2000 Steve Huston * include/makeinclude/platform_aix4_g++.GNU: Add default setting for exceptions (off by default); added proper handling for turning off threads. Thanks to Soren Schmidt for these. Thu Jun 15 12:49:50 2000 Ossama Othman * ace/OS.h: Do not define priority range related macros (ACE_{PROC,THR}_PRI_{FIFO,RR,OTHER}_{MIN,MAX}) to use sched_get_priority_{min,max}() unless _POSIX_PRIORITY_SCHEDULING is defined. Include prior to using _POSIX_PRIORITY_SCHEDULING since that macro is supposed to be defined there. * ace/Malloc_T.cpp (trybind, bind, find): * ace/Process_Manager.cpp (register_handler, spawn, remove): * ace/Service_Repository.cpp (insert, remove): * ace/Thread_Manager.cpp (spawn, insert_thr, check_state): Fixed "control reaches end of non-void function" warnings issued by g++ 2.95.2. * ace/config-linux-lxpthreads.h (PTHREAD_MIN_PRIORITY, PTHREAD_MAX_PRIORITY): Removed definition of these macros. They aren't used, nor should they be, since priority ranges for each scheduling policy are determined at run-time when creating a thread by invoking the sched_get_priority_{min,max}() OS functions. This is only done when ACE is configured for platforms that support the Pthreads final standard (ACE_HAS_PTHREADS_STD), which glibc >= 2.0.x does. Thu Jun 15 13:15:06 2000 David L. Levine * ace/config-lynxos.h: fixed 3.1.0 support. Rely on the GNU compiler version instead of __LYNXOS_SDK_VERSION, because that's not defined with 3.1.0. And added a declaration of pthread_sigmask (), because that's missing from the system headers. * include/makeinclude/platform_lynxos.GNU: fixed 3.1.0 support. Removed the extra $(LYNXTARGET) from the PATH, and added a -I/usr/lynx/$(VERSION)/usr/include (which shouldn't be necessary, but apparently is). * ace/OS.i (thr_sigsetmask): don't call ::pthread_sigmask () if ACE_LACKS_PTHREAD_SIGMASK is defined. Thu Jun 15 10:28:05 2000 Martin Stack * ace/TTY_IO.cpp (control): Added dcb.fDtrControl = DTR_CONTROL_ENABLE; for Win32 so that it will have the same default semantics as Linux. Thu Jun 15 07:35:57 2000 Roger Larsson * ace/Process_Manager.cpp: Make sure to grab the lock inside the terminate() methods and also call remove_proc() rather than remove(). Thu Jun 15 12:41:05 2000 Yamuna Krishnamurthy * ACE version 5.1.4 released. Wed Jun 14 18:15:43 2000 Ossama Othman * configure.in (ACE_HAS_UCONTEXT_T): Check if ucontext_t gets defined by including , if the check in fails. Some platforms define ucontext_t in , but ACE doesn't explicitly include that header. However, it is very likely that does, either directly or indirectly. This should fix a configuration problem that was occuring on FreeBSD 4.0. Wed Jun 14 17:54:18 2000 Ossama Othman * Makefile.am: Moved generation of aceConf.sh and ace-config.1 to configure script. There was no reason for them to be generated in the Makefile. This also fixes a problem where the Solaris sed command didn't understand a substitution. * acconfig.h (PTHREAD_MIN_PRIORITY, PTHREAD_MAX_PRIORITY): Removed macros related to these macros. The configure script will automatically add them. * configure.in: Generate aceConf.sh and ace-config.1 at configure time, rather than make time. See above entry for details. Fixed tests for PTHREAD_MAX_PRIORITY and PTHREAD_MIN_PRIORITY. These macros should only be used if the sched_get_priority_max() and sched_get_priority_min() functions are not available. If PTHREAD_{MAX,MIN}_PRIORITY isn't available, then check if PX_PRIO_{MAX,MIN} is available. If so, then define PTHREAD_{MAX,MIN}_PRIORITY to be those values. These changes fix some configuration problems experienced IRIX. Improved test for ACE_Addr::sap_any support. ACE_Addr:sap_any is now passed as an argument to the ACE_FILE_Addr constructor. * ace/Cached_Connect_Strategy_T.cpp: This file was still including a file that was removed from the distribution, i.e. `ace/Cached_Connect_Strategy_T.i', which caused compile-time errors to occur when building with inlining disabled. Wed Jun 14 11:55:56 2000 Ossama Othman * ace/Cleanup_Strategies_T.cpp: This file was still including a file that was removed from the distribution, i.e. `ace/Cleanup_Strategies_T.i', which caused compile-time errors to occur when building with inlining disabled. Wed Jun 14 10:24:02 2000 Douglas C. Schmidt * netsvcs/lib/Logging_Strategy.cpp (handle_timeout): Removed a couple of non-referenced parameters. Thanks to David and Yamuna for reporting this. Wed Jun 14 07:43:27 2000 Douglas C. Schmidt * netsvcs/lib/Client_Logging_Handler.cpp: Added ACE_TEXT macros to the appropriate places in this file. * netsvcs/lib/Logging_Strategy.cpp: Removed the legacy ASYS_TEXT and replaced them with ACE_TEXT. Wed Jun 14 08:30:53 2000 Carlos O'Ryan * */Makefile: Updated dependencies (again), the last time I had static_libs_only enabled that broke a number of things. Tue Jun 13 17:46:42 2000 Irfan Pyarali * ace/Connector.cpp: - handle_close(): cleanup_AST() will unbind an entry from the map. This change of state in the map invalidates any iterators currently iterating over the map. Therefore, the code in handle_close() was changed such that a new iterator is created after every call to cleanup_AST(). - cancel(): Cannot use the after cleanup_AST() is called as cleanup_AST() will unbind the from the map. Thanks to Roland Fischer for pointing out this bug. Tue Jun 13 15:31:21 2000 Ossama Othman * ltcf-c.sh: * ltcf-cxx.sh: * ltconfig: * ltmain.sh: Updated to latest upstream versions. Tue Jun 13 15:51:33 2000 Jerry D. De Master * netsvcs/lib/Logging_Strategy: Enhanced the Logging Strategy so it can be used to limit log file size at any logging point (i.e., application, client logging daemon, or server logging daemon) by specifying the -i and -m options for the Logging_Strategy class in a svc.conf file. Tue Jun 13 12:56:36 2000 Carlos O'Ryan * */Makefile: Updated dependencies. Tue Jun 13 09:47:25 2000 Darrell Brunsch * bin/msvc_auto_compile.pl: Fixed some typos related to the static build core. Mon Jun 12 20:45:18 2000 Darrell Brunsch * bin/Process_Win32.pm: Changed the $newwindow check to check to see if the variable was defined before comparing it to "yes". This removes a perl warning. * bin/msvc_auto_compile.pl: The TAOACE[_static].dsw files were changed, so I altered the CORE option to use the TAOACE.dsw file with -DLL, and added some missing dsp files for the -LIB build. * bin/create_vt_dsps.pl: Changed the runtime library type used in the static versions and added ACE_OS_HAS_DLL=0. * ace/ace_lib.dsp: * apps/gperf/src/gperf.dsp: * apps/gperf/src/gperf_lib.dsp: * examples/IPC_SAP/ATM_SAP/CPP_client.dsp: * examples/IPC_SAP/ATM_SAP/CPP_server.dsp: Miscellaneous fixes to get the static versions working again. Mainly just adding ACE_OS_HAS_DLL=0. * tests/version_tests/CDR_Array_Test.dsp: (added) * tests/version_tests/Atomic_Op_Test.dsp: * tests/version_tests/Auto_IncDec_Test.dsp: * tests/version_tests/Barrier_Test.dsp: * tests/version_tests/Basic_Types_Test.dsp: * tests/version_tests/Buffer_Stream_Test.dsp: * tests/version_tests/CDR_File_Test.dsp: * tests/version_tests/CDR_Test.dsp: * tests/version_tests/Cache_Map_Manager_Test.dsp: * tests/version_tests/Cached_Accept_Conn_Test.dsp: * tests/version_tests/Cached_Conn_Test.dsp: * tests/version_tests/Capabilities_Test.dsp: * tests/version_tests/Collection_Test.dsp: * tests/version_tests/Conn_Test.dsp: * tests/version_tests/DLL_Test.dsp: * tests/version_tests/DLList_Test.dsp: * tests/version_tests/Dynamic_Priority_Test.dsp: * tests/version_tests/Enum_Interfaces_Test.dsp: * tests/version_tests/Env_Value_Test.dsp: * tests/version_tests/Future_Set_Test.dsp: * tests/version_tests/Future_Test.dsp: * tests/version_tests/Handle_Set_Test.dsp: * tests/version_tests/Hash_Map_Bucket_Iterator_Test.dsp: * tests/version_tests/Hash_Map_Manager_Test.dsp: * tests/version_tests/High_Res_Timer_Test.dsp: * tests/version_tests/IOStream_Test.dsp: * tests/version_tests/Lazy_Map_Manager_Test.dsp: * tests/version_tests/MM_Shared_Memory_Test.dsp: * tests/version_tests/MT_Reactor_Timer_Test.dsp: * tests/version_tests/MT_SOCK_Test.dsp: * tests/version_tests/Malloc_Test.dsp: * tests/version_tests/Map_Manager_Test.dsp: * tests/version_tests/Map_Test.dsp: * tests/version_tests/Mem_Map_Test.dsp: * tests/version_tests/Message_Block_Test.dsp: * tests/version_tests/Message_Queue_Notifications_Test.dsp: * tests/version_tests/Message_Queue_Test.dsp: * tests/version_tests/Naming_Test.dsp: * tests/version_tests/New_Fail_Test.dsp: * tests/version_tests/Notify_Performance_Test.dsp: * tests/version_tests/Object_Manager_Test.dsp: * tests/version_tests/OrdMultiSet_Test.dsp: * tests/version_tests/Pipe_Test.dsp: * tests/version_tests/Priority_Buffer_Test.dsp: * tests/version_tests/Priority_Reactor_Test.dsp: * tests/version_tests/Priority_Task_Test.dsp: * tests/version_tests/Process_Manager_Test.dsp: * tests/version_tests/Process_Mutex_Test.dsp: * tests/version_tests/Process_Strategy_Test.dsp: * tests/version_tests/RB_Tree_Test.dsp: * tests/version_tests/Reactor_Exceptions_Test.dsp: * tests/version_tests/Reactor_Notify_Test.dsp: * tests/version_tests/Reactor_Performance_Test.dsp: * tests/version_tests/Reactor_Timer_Test.dsp: * tests/version_tests/Reactors_Test.dsp: * tests/version_tests/Reader_Writer_Test.dsp: * tests/version_tests/Recursive_Mutex_Test.dsp: * tests/version_tests/Reverse_Lock_Test.dsp: * tests/version_tests/SOCK_Connector_Test.dsp: * tests/version_tests/SOCK_Send_Recv_Test.dsp: * tests/version_tests/SOCK_Test.dsp: * tests/version_tests/SPIPE_Test.dsp: * tests/version_tests/SString_Test.dsp: * tests/version_tests/SV_Shared_Memory_Test.dsp: * tests/version_tests/Semaphore_Test.dsp: * tests/version_tests/Service_Config_Test.dsp: * tests/version_tests/Sigset_Ops_Test.dsp: * tests/version_tests/Simple_Message_Block_Test.dsp: * tests/version_tests/Svc_Handler_Test.dsp: * tests/version_tests/TSS_Test.dsp: * tests/version_tests/Task_Test.dsp: * tests/version_tests/Thread_Manager_Test.dsp: * tests/version_tests/Thread_Mutex_Test.dsp: * tests/version_tests/Thread_Pool_Reactor_Test.dsp: * tests/version_tests/Thread_Pool_Test.dsp: * tests/version_tests/Time_Service_Test.dsp: * tests/version_tests/Time_Value_Test.dsp: * tests/version_tests/Timeprobe_Test.dsp: * tests/version_tests/Timer_Queue_Test.dsp: * tests/version_tests/Tokens_Test.dsp: * tests/version_tests/UPIPE_SAP_Test.dsp: * tests/version_tests/Upgradable_RW_Test.dsp: * tests/version_tests/version_tests.dsw: Regenerated. Mon Jun 12 18:17:42 2000 Darrell Brunsch * bin/auto_run_tests.lst: (added) * bin/auto_run_tests.pl: (added) * tests/run_test.lst: (added) * tests/run_test.pl: (added) New scripts to facilitate the auto_build testing on NT. Sun Jun 11 18:12:12 2000 Vishal Kachroo * examples/QOS/QoSEvent.h: Removed a warning on Win2K. Sat Jun 10 23:34:16 2000 Darrell Brunsch * docs/CE-status.txt: Updated to reflect my current plans for Windows CE. Unfortunately, ACE on CE will not be working with the next beta kit of ACE. :-( Need to get an autobuild set up for CE sometime... Sat Jun 10 20:51:56 2000 Darrell Brunsch * ace/config-win32-common.h: Changed the "You must link with Multithreaded DLL" error to make it sound less like it is a problem with the ACE project file instead of the application project file. * docs/ACE-guidelines.html: Updated the section on wchar support in ACE. Sat Jun 10 17:33:55 2000 Carlos O'Ryan * ace/Configuration.cpp: Fixed warnings under Linux/KCC * bin/auto_compile: Add separators between the different sections of the log. Darrell script would be able to generate nice color coded summaries based on that. * include/makeinclude/platform_linux_kcc.GNU: Add support for the math library. Fri Jun 09 11:31:24 2000 Nanbor Wang * ace/Service_Config.cpp (close_singletons): Applied Tom Arbuckle's patch so the Process_Manager singleton is closed before Reactor singleton. Fri Jun 9 09:28:18 2000 Carlos O'Ryan * include/makeinclude/platform_linux_kcc.GNU: More fixes to make sure that shared and static libraries are generated with the right configuration (threads, exceptions, etc.). Fri Jun 9 07:19:10 2000 Toshio Hori * ace/Stream.h (class ACE_Stream): Added an updated version an insert() and replace() that make it possible to replace the stream head and tail. Fri Jun 09 02:34:07 2000 Irfan Pyarali * ace/OS.i (floor and ceil): Added new methods. Thu Jun 8 20:58:17 2000 Darrell Brunsch Patched for IBM VAC++ 4.02 for WinNT applied on behalf of Boris Kaminer * config-win32-visualage.h: Remove dupplicate definition of ACE_HAS_TYPENAME_KEYWORD. * Auto_Ptr.h: * Auto_Ptr.i: Copy constructors bodies into class declarations from Auto_Ptr.i to Auto_ptr.h for constructors with ACE_EXPLICIT. (workaround for explicit bug in VAC++ 4.02) * Malloc.cpp: Changed ACE_ASSERT (0 == "not implemented!"); to ACE_ASSERT (!"not implemented!"); (get over codestore fault) * OS.i: (chdir) Added !defined (ACE_WIN32) to the check for IBM CPP * ace-dll.icc: Changed the order of hpp files, and added a define for _INTEGRAL_MAX_BITS = 64. Thu Jun 8 18:35:30 2000 Carlos O'Ryan * ace/Date_Time.h: * ace/Date_Time.i: Made a bunch of accessors const, thanks to Derek Dominish for pointing this out. Thu Jun 08 14:17:20 2000 Nanbor Wang * ace/Process_Manager.{h,cpp} (close_singleton): * ace/Service_Config.cpp (close_singletons): Applied Tom Arbuckle's patch to clean up Process_Manager singleton at program exit. Thu Jun 8 13:00:38 2000 Toshio Hori * ace/Stream.h (class ACE_Stream): Added support for an insert() and replace() to make it easier to insert and update the contents of an ACE_Stream. Thu Jun 8 09:52:36 2000 Joe Hoffert * bin/pace_components: Adding this file to handle setup and cleanup of PACE components just like the ace_components file does for ACE. Thu Jun 08 01:53:03 2000 Irfan Pyarali * ace/Message_Queue.i (peek_dequeue_head): Fixed typo. Wed Jun 7 20:41:33 2000 Douglas C. Schmidt * ace/Message_Queue: Added some "no-op" impls for the new pure virtual methods added to ACE_Message_Queue recently. Thanks to Darrell for pointing this out. Wed Jun 7 13:24:22 2000 Carlos O'Ryan * ace/OS.h: For KCC under linux we have to define ACE_DEFAULT_SHLIB_MODE as RLTD_LAZY (RTLD_GROUP and RTLD_NODELETE are not defined in that configuration). * ace/OS_Dirent.inl: Removed unreachable statement. * ace/config-linux-common.h: KCC does not have LLSEEK or LLSEEK64 * include/makeinclude/platform_linux_kcc.GNU: Fixed the configuration file so the default settings for debugging, optimization and exceptions can be overriden by the user. Wed Jun 7 12:05:23 2000 Darrell Brunsch * bin/fuzz.pl: Dropped the level for the TCHAR check to 4, so it runs by default. Also added a new test to check for mismatch of ace/pre.h and ace/post.h in header files (level 4). * ace/ace_wchar.h: Added a FUZZ: disable for the TCHAR check, since we need to define the ASYS_TCHAR type macros for backwards compatiblity here. Wed Jun 07 13:22:01 2000 David L. Levine * examples/IPC_SAP/SOCK_SAP/CPP-inclient.cpp (twoway_client_test): replaced ASYS_TEXT with ACE_TEXT, see Tue Jun 6 12:39:23 2000 Phil the Build Czar :-) Wed Jun 7 12:09:50 2000 Joe Hoffert * include/makeinclude/platform_sunos5_sunc++.GNU: Changed position-independent-code option from -PIC to -KPIC since the C++ compiler recognizes either and the C compiler only recognizes -KPIC. * include/makeinclude/rules.local.GNU: Added a compilation rule for C (i.e., .c) files. Tue Jun 6 22:32:16 2000 Carlos O'Ryan * ace/OS.i: * ace/OS_TLI.h: Moved the explicit declaration of t_getname() from OS.i to OS_TLI.h Tue Jun 6 20:02:18 2000 Carlos O'Ryan * ace/OS.h: * ace/OS.i: * ace/OS_TLI.cpp: * ace/OS_TLI.h: * ace/OS_TLI.inl: * ace/config-all.h: * ace/Makefile: * ace/Makefile.am: * ace/Makefile.bor: * ace/ace-dll.icc: * ace/ace-lib.icc: * ace/ace.icc: * ace/ace_dll.dsp: * ace/ace_lib.dsp: Moved the TLI wrappers to ACE_OS_TLI. Tue Jun 6 17:57:14 2000 Vishal Kachroo * examples/QOS/server.cpp: * examples/QOS/client.cpp: Changed these to reflect changes to the ACE QoS API. Tue Jun 06 15:44:03 2000 David L. Levine * ace/config-lynxos.h: added support for LynxOS 3.1.0. It uses ACE_HAS_PTHREADS_STD instead of ACE_HAS_PTHREADS_DRAFT4 + ACE_HAS_STDARG_THR_DEST. Thanks to Dorr H. Clark for reporting this. Tue Jun 6 12:39:23 2000 Phil Mesnier Ported ACE & TAO to Unixware 7.1, using GNU C++ compiler gcc 2.95.2. See ACE-INSTALL for specific information on configuring the build environment. * ACE-INSTALL.html * ace/OS.h * ace/config-unixware-7.1.0.h * examples/IPC_SAP/SOCK_SAP/CPP-inclient.cpp * examples/Threads/tss1.cpp * include/makeinclude/platform_unixware_g++.GNU * include/makeinclude/wrapper_macros.GNU Tue Jun 6 10:32:51 2000 Edan Ayal * ace/Message_Queue.h: Added the following two pure virtual methods to class 'ACE_Message_Queue_Base': virtual ACE_Notification_Strategy *notification_strategy (void) = 0; virtual void notification_strategy (ACE_Notification_Strategy *s) = 0; virtual int peek_dequeue_head (ACE_Message_Block *&first_item, ACE_Time_Value *timeout = 0); These methods allow the 'ACE_Message_Queue_Base' to be used as a base class (without specifying the synch method or templatizing on it) and access/alter the notification strategy. Tue Jun 6 09:42:39 2000 Chris Kohlhoff * include/makeinclude/ace_flags.bor: Added support for new orbsvcs libraries. Mon Jun 05 20:59:42 2000 David L. Levine * include/makeinclude/wrapper_macros.GNU: protected definitions of shared_libs and static_libs with ifeq null. Users can still override the settings in their platform_macros.GNU, because that's included after these definitions, or in their environment. But this makes the code look more consistent. Thanks to Jody Hagins for this suggestion. Mon Jun 5 14:54:46 2000 Ossama Othman * ace/Select_Reactor_T.cpp (ACE_Select_Reactor_T): There is no need to deallocate resources from the previous call to open() since the open() method deallocates any resources prior to exiting if an error was encountered. Mon Jun 5 14:18:18 2000 Ossama Othman * ace/Select_Reactor_T.cpp (ACE_Select_Reactor_T): If the Reactor fails to open with the hard-coded default size then set the Reactor size to be the current run-time limit on the number of file descriptors available to the process. This size is not necessarily the maximum limit. On platforms that do not support run-time evaluation of the current file descriptor limit, a default value of FD_SETSIZE will be used. This corrects a problem on Solaris in 32 bit mode, and on any other platform where the per-process file descriptor limit is less than FD_SETSIZE. Reported by Marvin Allen Wolfthal . * ace/config-linux-common.h (ACE_DEFAULT_SELECT_REACTOR_SIZE): It is no longer necessary to hard-code the default reactor size for older Linux kernels that had a file descriptor limit less than FD_SETSIZE since the Select Reactor now falls back on the run-time file descriptor limit for the given process. Mon Jun 5 10:22:22 2000 Darrell Brunsch * ace/OS_Memory.h: Just like in OS_String.h, added an include for stddef.h to get the definition of size_t. Mon Jun 5 09:55:20 2000 Darrell Brunsch * ace/OS_String.h: * ace/OS_String.inl: * ace/OS_String.cpp: Removed some unnecessary *_emulation methods, and fixed some other miscellaneous mistakes (like using ACE_OS instead of ACE_OS_String). During my last checkin, it seems like the strncasecmp_emulation versions were lost, so I resurrected them. Also changed the use of u_char in memchr_emulation to unsigned char, since we shouldn't depend on definitions of u_char (since on some platforms we don't have a definition of u_char at that time). Thanks to David Levine for reporting this. Sun Jun 4 14:58:37 2000 Darrell Brunsch * apps/Orbix-Examples/Event_Comm/include/Event_Comm.hh: * apps/Orbix-Examples/Event_Comm/libsrc/Event_Comm.hh: * apps/Orbix-Examples/Logger/logger.hh: * docs/ACE-categories.html: * docs/tutorials/guide-tutorials.html: * docs/tutorials/online-tutorials.html: * docs/tutorials/templates.html: * docs/tutorials/Chap_2/ex01.html: * docs/tutorials/Chap_2/ex02.html: * docs/tutorials/Chap_2/ex03.html: * docs/tutorials/Chap_2/ex04.html: * docs/tutorials/Chap_2/ex05.htm: * docs/tutorials/Chap_2/ex05.html: * docs/tutorials/Chap_2/ex06.html: * docs/tutorials/Chap_3/ex01.html: * docs/tutorials/Chap_3/ex02.html: * docs/tutorials/Chap_4/ex01.html: * docs/tutorials/Chap_4/ex02.html: * docs/tutorials/Chap_4/ex03.html: * docs/tutorials/Chap_4/ex04.html: * docs/tutorials/Chap_4/ex05.html: * docs/tutorials/Chap_4/ex06.html: * docs/tutorials/Chap_4/ex07.html: * docs/tutorials/Chap_4/ex08.html: * docs/tutorials/Chap_5/ex01.html: * docs/tutorials/Chap_5/ex02.html: * docs/tutorials/Chap_5/ex03.html: * docs/tutorials/Chap_5/ex04.html: * docs/tutorials/Chap_5/ex05.html: * docs/tutorials/Chap_6/ex01.html: * docs/tutorials/Chap_6/ex02.html: * docs/tutorials/Chap_6/ex03.html: * docs/tutorials/Chap_6/ex04.html: * docs/tutorials/Chap_6/ex05.html: * docs/tutorials/Chap_6/ex06.html: * docs/tutorials/Chap_6/ex07.html: * docs/tutorials/Chap_6/ex08.html: * docs/tutorials/Chap_6/ex09.html: * docs/tutorials/Chap_6/ex10.html: * docs/tutorials/Chap_7/ex01.html: * docs/tutorials/Chap_7/ex02.html: * docs/tutorials/Chap_7/ex03.html: * examples/Service_Configurator/IPC-tests/server/Handle_Thr_Stream.i: * os-patches/lynxos-patches.html: * performance-tests/Synch-Benchmarks/context.c: * psosim/drv_conf.c: * rpc++/callback.cc: * rpc++/request.cc: * rpc++/service.cc: * rpc++/stub.cc: * rpc++/version.h: * rpc++/xdr++.cc: * rpc++/StdHdrs/rpc/auth.h: * rpc++/StdHdrs/rpc/c_types.h: * rpc++/StdHdrs/rpc/clnt.h: * rpc++/StdHdrs/rpc/pmap_clnt.h: * rpc++/StdHdrs/rpc/svc.h: * rpc++/StdHdrs/rpc/xdr.h: * rpc++/example/calcsvc.cc: * rpc++/example/calcsvc.h: * rpc++/example/client.cc: * rpc++/example/server.cc: * rpc++/rpc++/callback.h: * rpc++/rpc++/request.h: * rpc++/rpc++/service.h: * rpc++/rpc++/stub.h: * rpc++/rpc++/xdr++.h: Added missing CVS Id strings. Sun Jun 4 14:55:46 2000 Darrell Brunsch * bin/fuzz.pl: Added html files to the list of files checked for ending with a newline. Sun Jun 4 14:38:43 2000 Darrell Brunsch * ace/OS_String.inl: Some platforms (like QNX Neutrino) need strings.h to get the declaration of strcasecmp. * ace/config-qnx-neutrino.h: Added a definition of ACE_HAS_STRINGS so strings.h will be included in OS_String.inl. Sun Jun 04 09:40:43 2000 David L. Levine * ace/config-cxx-common.h: with __USE_STD_IOSTREAM, added #define ACE_HAS_STANDARD_CPP_LIBRARY 1. Thanks to Warren Miller for reporting this [Bug 582]. Sat Jun 3 21:18:43 2000 Darrell Brunsch * ace/OS.h: * ace/OS.i: * ace/OS_Memory.cpp: (added) * ace/OS_Memory.h: (added) * ace/OS_Memory.inl: (added) Another bit of OS split off. Memory contains all the malloc, calloc, etc. stuff. * ace/Makefile: * ace/Makefile.am: * ace/Makefile.bor: * ace/ace-dll.icc: * ace/ace-lib.icc: * ace/ace.icc: * ace/ace_dll.dsp: * ace/ace_dll_ce.dsp: * ace/ace_lib.dsp: Needed to add OS_Memory to the makefiles/projects. * ace/OS_Dirent.cpp: * ace/OS_Dirent.h: * ace/OS_Dirent.inl: * ace/OS_String.cpp: * ace/OS_String.h: * ace/OS_String.inl: Over the years, the functions in OS.i have gotten way too large and complicated to make sense being inlined. But the problem is too many were complicated only on some platforms, while being really simple (and inline-able) on others. So the question is, how to separate two versions of a function into the .cpp and .inl files. The latest solution is to do this. For the simple stuff, keep it in the .inl file, but for complicated versions, add another method to the class (like foo_emulation for foo) and call that from the .inl file. This gives us the best of both worlds, and should be the easiest to understand of the possible ways of doing this. Sat Jun 3 18:51:46 2000 Darrell Brunsch * bin/msvc_auto_compile.pl: Changed the way libraries were detected to remove false positives when the dsps are in a directory with DLL in its name. Now it will search for " DLL " or " LIB " instead of "DLL" or "LIB". * bin/fuzz.pl: Was giving false positives for TEXT, changed it to search for "TEXT (" to remove it (so it will not detect "MUTEXTYPE" like words. Also disabled the 80 character check for ACE_RCSID lines, since they are difficult to reduce in size, since they contain the CVS ID string. Sat Jun 3 17:00:11 2000 Darrell Brunsch * bin/fuzz.pl: Added two new tests: - a check to see if a file ends with a newline - a check to detect use of TCHAR, LPTSTR, LPCTSR, TEXT ASYS_TEXT, and ASYS_TCHAR Changed to look at more files, including those ending with .cc, .c, .pl, .htm, .html, .hxx, .cxx, .hpp, .idl and .pidl. Changed to keep track of the number of errors and warnings and prints out the totals at the end of the run. Also will exit with an exit code of 1 if there are any errors. Added a new flag, -c, which will tell fuzz.pl to get the list of files from ARGV instead of from searching or cvs. Finally, also added support for the usage of "FUZZ: disable check_for_xxxx" and "FUZZ: enable check_for_xxxx" in files so the detection can be turned off for files where the "offending" usage is needed. This can be used with: - check_for_inline - check_for_math_include - check_for_tchar Fri Jun 02 22:33:32 2000 Irfan Pyarali * ace/Priority_Reactor.cpp (init_bucket): Removed extra inline directive. Thanks to Darrell for pointing this out. Fri Jun 2 11:06:33 2000 Darrell Brunsch * bin/fuzz.pl: Bumped up the levels for the 80 char lines and preprocessor comment tests. The latter should now not run by default. Thu Jun 2 12:30:00 2000 Kirthika Parameswaran * ace/Caching_Utility.cpp: Changed the cache entries limit to 0 so that when the Purge_Percent is 100, all the entries are purged from the cache. Thanks to Edan Ayal for reporting this bug and sending in the fix too! Thu Jun 1 15:16:26 2000 Ossama Othman * ace/config-linux-common.h: The change that allowed more than 256 file descriptors to be opened for non-root processes on Linux only works for more recent Linux kernels, such as the 2.2.x series. As such, the default Select Reactor size is now set to 256 for Linux kernels older than 2.2.0. Thanks to David for pointing out this limitation. * m4/platform.m4 (ACE_DEFAULT_SELECT_REACTOR_SIZE): Added test that sets the default Select Reactor size to 256 if the Linux kernel version is less than 2.2.0. This change is related to the 256 file descriptor limit described above. Thu Jun 01 12:35:00 2000 Nanbor Wang * ace/ace_dll.dsp: Fixed typos in ACEMFC configuration. Thanks to Steve for pointing this out. Thu Jun 1 10:08:31 2000 Darrell Brunsch * bin/fuzz.pl: Was printing out "line test" when doing the preprocessor comment test. Thu Jun 1 08:43:14 2000 Darrell Brunsch Fuzz is a script whose purpose is to check through ACE/TAO files for easy to spot (by a perl script, at least) problems. Usage is: fuzz.pl [-dhm] [-l level] -d turn on debugging -h display this help -l level set detection level (default = 5) -m only check locally modified files (uses cvs) It currently has checks for these: - ACE/ASYS_INLINE in .cpp files (level 2+) - $ID string in .h/.i/.cpp files (level 2+) - Bare inline in a .i file (level 2+) - Inclusion of math.h in a .h/.i/.cpp file (level 3+) - Check for lines of > 80 chars in .h/.i/.cpp (level 6+) - Check for use of // in a preprocessor directive (level 3+) Wed May 31 16:30:44 2000 Ossama Othman * configure.in (AC_REVISION): The RCS ID had to be quoted, otherwise the generated configure script would end up having a mangled version of the RCS ID. Wed May 31 16:18:35 2000 Ossama Othman * configure.in: Fixed the informational message that is displayed when the configuration integrity check fails so that the shell will no longer interpret the RCS ID as a variable. This was done by removing the dollar '$' signs from the RCS ID by using the M4 translit() built-in. (LIBS): Removed "-lrt" from the hardcoded list of libraries for OSF/1 {3,4,5}. The ACE_CHECK_ASYNCH_IO test should be able to detect this library. (AC_REVISION): Changed revision string to be the RCS ID. (AC_OUTPUT): Removed the commented out TAO output files from the list files the configure script should create. The latest CVS Autoconf flagged them as problems when generating the configure script. Wed May 31 18:08:12 2000 Vishal Kachroo * examples/QoS/QosEvent.h: * examples/QoS/server.cpp: * examples/QoS/client.cpp: * examples/QoS/Receiver_QOS_Event_Handler.{cpp,h}: * examples/QoS/Sender_QOS_Event_Handler.{cpp,h}: Fixed the calls to subsribe() and qos () methods that broke because of changes to ACE QoS API. Wed May 31 12:29:12 2000 Darrell Brunsch * apps/JAWS2/JAWS/jaws.dsp: Added a couple of files that were in the Makefile but not in this file. Wed May 31 14:49:36 2000 Steve Huston * ace/Log_Msg.cpp (log): Revert change from Thu May 25 17:39:22 2000. Add #if !defined (ACE_LACKS_UNIX_SIGNALS) to ACE_Log_Msg_Sig_Guard ctor which matches a similar check in the dtor. This makes it work on pSOS same as on other platforms without UNIX-like signals. * ace/Signal.i (ACE_Sig_Guard::ACE_Sig_Guard): Added compile-time check for !defined (ACE_LACKS_UNIX_SIGNALS) to not try to manipulate the signal mask for platforms that don't do it. Matches an existing check in the dtor. Wed May 31 11:51:46 2000 Darrell Brunsch * apps/gperf/src/gperf.dsp: * apps/gperf/src/gperf_lib.dsp: Fixed the output directories to be relative to ".\". Thanks to Francois Bernier for pointing this out. Wed May 31 10:31:18 2000 Darrell Brunsch * examples/ConfigViewer/ConfigurationViewer.dsp: Changed the configuration type to "Win32 wxWindows Debug" instead of "Win32 Debug" (and the same for Release). This will prevent this project from being picked up by the msvc_auto_compile.pl, since we do not have wxWindows installed with the auto builds. Wed May 31 10:13:10 2000 Darrell Brunsch * examples/Export/export_dll.dsp: * examples/Export/test.dsp: Fixed the relative paths for ace includes and libraries. Wed May 31 11:25:34 2000 Irfan Pyarali * examples/Reactor/WFMO_Reactor/test_handle_close.cpp: Fixed signed/unsigned comparison warning. Tue May 30 14:23:22 2000 Ossama Othman * apps/Gateway/Gateway/gatewayd.cpp: * examples/ASX/UPIPE_Event_Server/Options.cpp: * examples/Naming/test_multiple_contexts.cpp: Added missing "ace/Log_Msg.h" include. Tue May 30 10:41:34 2000 Darrell Brunsch * ace/Makefile.bor: * include/makeinclude/ace_flags.bor: ACE_OS_BUILD_DLL and ACE_OS_HAS_DLL were not being set correctly in Borland. Mon May 29 16:49:25 2000 Douglas C. Schmidt * ace/OS.i: Changed all 'ACE_Errno_Guard (errno, 0)' to 'ACE_Errno_Guard (errno)' in the following methods. ACE_OS::sema_wait (ACE_sema_t *s, ACE_Time_Value &tv), ACE_OS::rw_unlock (ACE_rwlock_t *rw), ACE_OS::rw_trywrlock (ACE_rwlock_t *rw), ACE_OS::rw_unlock (ACE_rwlock_t *rw) Thus, if a critical section of code is guarded using an ACE_Read_Guard, and errno is set inside, the value is not overridden with 0 when the section is exited in ACE_OS::rw_unlock. Thanks to Edan Ayal for reporting this. * ace/Connector.h: Added a new typedef defined as follows: typedef ACE_TYPENAME _ACE_PEER_CONNECTOR::PEER_ADDR ACE_TYPENAME_ACE_PEER_CONNECTOR_PEER_ADDR; This fixes some problems on some platforms due to problems with the typename in a cast expression. Thanks to Ingo Dahm for reporting this. * ace/IO_Cntl_Msg.h: Changed the ACE_IO_Cntl_Cmds enum to be a typedef u_short so that users could create their own values. Thanks to vsg@ivl.kiev.ua for this suggestion. * ace/ACE.h, * ace/ACE.h: Make the documentation consistent for both sockets and "normal" I/O methods! Mon May 29 11:36:28 2000 Michael Kircher * ace/OS_Dirent.cpp: Fixed the memory allocation in open_dir, which allocated one char too little. Sun May 28 17:26:28 2000 Ossama Othman * ace/Timer_Heap_T.cpp: * ace/Timer_Queue_T.cpp: * apps/JAWS/server/HTTP_Helpers.cpp: * apps/JAWS/server/HTTP_Response.cpp: * apps/drwho/BS_Client.cpp: * examples/ASX/Event_Server/Event_Server/Options.cpp: * examples/Logger/simple-server/Logging_Handler.cpp: * examples/Logger/simple-server/server_loggerd.cpp: * examples/Mem_Map/IO-tests/test_io.cpp: * examples/Naming/test_non_existent.cpp: * examples/Naming/test_writers.cpp: * examples/Reactor/Dgram/CODgram.cpp: * examples/Reactor/Dgram/Dgram.cpp: * examples/Reactor/FIFO/server.cpp: * examples/Reactor/Misc/pingpong.cpp: * examples/Reactor/Misc/test_signals_1.cpp: * examples/Reactor/Misc/test_timer_queue.cpp: * examples/Reactor/Multicast/server.cpp: * examples/Service_Configurator/IPC-tests/server/Handle_Broadcast.h: * examples/Service_Configurator/IPC-tests/server/Handle_L_FIFO.h: * examples/Service_Configurator/IPC-tests/server/Handle_R_Dgram.h: * examples/Service_Configurator/IPC-tests/server/Handle_Timeout.h: * examples/Service_Configurator/IPC-tests/server/server_test.cpp: * examples/Service_Configurator/Misc/Timer_Service.cpp: * examples/Service_Configurator/Misc/main.cpp: * examples/System_V_IPC/SV_Message_Queues/TMQ_Server.cpp: * examples/Threads/process_mutex.cpp: * examples/Threads/process_semaphore.cpp: * examples/Threads/tss2.cpp: * netsvcs/clients/Naming/Client/main.cpp: * netsvcs/clients/Naming/Dump_Restore/main.cpp: * performance-tests/Misc/test_naming.cpp: * performance-tests/UDP/udp_test.cpp: Added missing "ace/Log_Msg.h" include. This fixes a series of compile-time errors with Compaq C++. Sat May 27 20:55:24 2000 Ossama Othman : * tests/test_config.h: Added missing include for "ace/Log_Msg.h." This fixes a compile-time error from Sun C++ 5.0. Sat May 27 20:41:14 2000 Ossama Othman * ace/Hash_Map_Manager_T.h: Added missing include for "ace/Log_Msg.h." This fixes a compile-time error on Tru64. Sat May 27 17:09:03 2000 David L. Levine * docs/ACE-guidelines.html: added const to example accessor declaration. Sat May 27 14:17:35 2000 Ossama Othman * apps/JAWS2/HTTPU/parse_url.cpp: * examples/Web_Crawler/URL_Addr.cpp: * examples/Reactor/Multicast/client.cpp: * examples/OS/Process/process.cpp: * examples/IPC_SAP/ATM_SAP/CPP-client.cpp: * examples/IPC_SAP/ATM_SAP/CPP-server.cpp: * examples/DLL/Newsweek.cpp: * examples/DLL/Today.cpp: * examples/DLL/test_dll.cpp: * websvcs/tests/Test_URL_Addr.cpp: Added missing `ace/Log_Msg.h' include. * examples/Web_Crawler/URL_Addr.cpp (ACE_URL_Addr): Fixed warning about missing base class initialization in copy constructor base member initializer list. (~ACE_URL_Addr, addr_to_string): Changed use of "LPTSTR" to "ACE_TCHAR *". This fixes an error on UNIX builds. Sat May 27 14:59:08 2000 Douglas C. Schmidt * tests/Signal_Test.cpp (worker_parent): Yet another fix of this... Now we add an ACE_static_cast to long, as well as doing the %ld! Thanks to Yamuna for fixing this! * ace/SOCK_Stream.h: Improved the documentation of recv_n() et al. Thanks to Sami Aario for this suggestion. Sat May 27 01:07:01 2000 Darrell Brunsch * ace/config-win32-common.h: Added a semicolon to the definitions of ACE_EXPORT_SINGLETON_DECLARE ACE_IMPORT_SINGLETON_DECLARE Since the default definition for this is nothing, the semicolon is better off in the definitions themselves. Otherwise, one needs to add a semicolon after the use of these macros, which can cause warnings when the macro expands to nothing. Fri May 26 20:00:22 2000 Darrell Brunsch * ace/OS_String.inl (strcasecmp, strncasecmp): I have no idea how this worked before, but in these two functions we were using _stricmp/_strnicmp for Win32. Borland doesn't define these by default, instead they use stricmp/strnicmp. So instead of trying to figure out how this all worked before, I just added an #elif for __BORLAND__ and called the stricmp/strnicmp. Fri May 26 19:26:34 2000 Ossama Othman * netsvcs/clients/Logger/direct_logging.cpp: Added missing include of `ace/Log_Msg.h'. Fri May 26 18:14:47 2000 Darrell Brunsch * ace/OS_String.inl: Moved the ACE_OS_String::to_lower () methods up in the file, since they are used in other inlined functions. Fri May 26 16:13:08 2000 Darrell Brunsch * ace/OS.cpp: * ace/OS.h: * ace/OS_String.cpp: * ace/OS_String.h: Moved the strptime back to OS.h, because it is more a time thing than a string thing. Fri May 26 15:58:52 2000 Ossama Othman * ace/Select_Reactor_Base.cpp (open): Re-enabled the change that added ability to set the handle limit to a value greater than FD_SETSIZE on platforms that support this functionality. This was made possible by Steve Huston's change to the ACE::max_handles() method described several ChangeLog entries below. Fri May 26 14:27:02 2000 Darrell Brunsch * ace/OS_String.inl: Changed the strncasecmp methods to not use ssize_t inside of them. This required a reworking of the loop, since it depended on negative values. This was needed since ssize_t is more difficult to get defined than size_t, so it seemed less obtrusive to do it this way. Fri May 26 12:30:56 2000 Ossama Othman * ace/TLI_Connector.h: * ace/TLI_Connector.cpp: Moved include of ace/Log_Msg.h to the header file. TLI_Connector.i utilizes some of the ACE_Log_Msg macros. Fri May 26 14:25:31 2000 Jeff Parsons * ace/ace_dll.dsp: Added OS_String.h to project for convenience. Fri May 26 12:23:55 2000 Ossama Othman * ace/TLI_Acceptor.cpp: * ace/TLI_Connector.cpp: *sigh* These files also needed to include "ace/Log_Msg.h." Fri May 26 12:13:26 2000 Ossama Othman * ace/Singleton.cpp: * ace/TLI.cpp: These files needed to explicitly include "ace/Log_Msg.h," too. Fri May 26 12:04:39 2000 Ossama Othman * ace/ARGV.cpp: * ace/Capabilities.cpp: * ace/Dump.cpp: * ace/Filecache.cpp: * ace/Local_Tokens.h: * ace/Log_Msg.cpp: * ace/Malloc.h: * ace/Map_Manager.h: * ace/Memory_Pool.cpp: * ace/Name_Proxy.cpp: * ace/Process.cpp: * ace/Process_Manager.cpp: * ace/QoS_Manager.cpp: * ace/QoS_Session_Factory.cpp: * ace/QoS_Session_Impl.cpp: * ace/Remote_Name_Space.cpp: * ace/SOCK_Acceptor.cpp: * ace/SOCK_Dgram.cpp: * ace/Select_Reactor_Base.cpp: * ace/Service_Repository.cpp: * ace/Signal.cpp: * ace/Stats.h: * ace/Synch.cpp: * ace/TP_Reactor.h: * ace/Thread_Manager.h: * ace/Token.cpp: These files needed to explicitly include "ace/Log_Msg.h," too. Fri May 26 11:29:44 2000 Ossama Othman * ace/ACE.cpp: * ace/Malloc.h: Include "ace/Log_Msg.h" to pull in the appropriate definition of the ACE llessogging macros. This fixes a problem on Solaris. Thu May 25 19:39:59 2000 Ossama Othman * configure.in: Re-enabled test for ACE_HAS_SIGNAL_SAFE_OS_CALLS. The fixes to the ACE_OSCALL* macros below make it possible to enable this feature. * ace/config-all.h (ACE_OSCALL, ACE_OSCALL_RETURN): Removed call to "ACE_LOG_MSG->restart()" from these macros in the "ACE_HAS_SIGNAL_SAFE_OS_CALLS" case. * ace/OS.h: Remove inclusion of "ace/Log_Msg.h" when the ACE_ONLY_LATEST_AND_GREATEST preprocessor macro is defined. This reduces the number of extraneous header interdependencies in much of the ACE source files. Added a forward declaration for ACE_Log_Msg to compensate for the declaration that was initially pulled in by "ace/Log_Msg.h" It was only needed for "friend" declaration inside the ACE_OS_Object_Manager class. * ace/Addr.cpp: * ace/Addr.h: * ace/Auto_Ptr.h: * ace/DEV_Addr.cpp: * ace/DEV_Connector.h: * ace/DEV_Connector.i: * ace/DEV_IO.cpp: * ace/DLL.cpp: * ace/FIFO.cpp: * ace/FIFO_Recv.cpp: * ace/FIFO_Recv_Msg.cpp: * ace/FIFO_Send.cpp: * ace/FIFO_Send_Msg.cpp: * ace/FILE_Addr.cpp: * ace/FILE_Connector.h: * ace/FILE_IO.cpp: * ace/Get_Opt.cpp: * ace/Handle_Set.cpp: * ace/INET_Addr.cpp: * ace/IO_SAP.cpp: * ace/IPC_SAP.cpp: * ace/LSOCK.cpp: * ace/LSOCK_Acceptor.cpp: * ace/LSOCK_CODgram.cpp: * ace/LSOCK_Connector.cpp: * ace/LSOCK_Dgram.cpp: * ace/LSOCK_Stream.cpp: * ace/Log_Record.cpp: * ace/MEM_Addr.cpp: * ace/Makefile: * ace/Mem_Map.cpp: * ace/Name_Request_Reply.cpp: * ace/OS.cpp: * ace/Pipe.cpp: * ace/SOCK.cpp: * ace/SOCK_CODgram.cpp: * ace/SOCK_Connector.cpp: * ace/SOCK_Dgram_Bcast.cpp: * ace/SOCK_Dgram_Mcast_QoS.cpp: * ace/SPIPE_Acceptor.cpp: * ace/SPIPE_Connector.cpp: * ace/SV_Message_Queue.cpp: * ace/SV_Semaphore_Complex.cpp: * ace/SV_Semaphore_Simple.cpp: * ace/SV_Shared_Memory.cpp: * ace/Time_Request_Reply.cpp: * ace/Trace.cpp: * ace/Typed_SV_Message_Queue.cpp: * ace/UNIX_Addr.h: * apps/Gateway/Peer/Options.cpp: * apps/JAWS/server/Parse_Headers.cpp: * apps/drwho/Binary_Search.cpp: * apps/drwho/CM_Client.cpp: * apps/drwho/CM_Server.cpp: * apps/drwho/Hash_Table.cpp: * apps/drwho/Multicast_Manager.cpp: * apps/drwho/Options.cpp: * apps/drwho/PMC_All.cpp: * apps/drwho/PMC_Flo.cpp: * apps/drwho/PMC_Ruser.cpp: * apps/drwho/PMC_Usr.cpp: * apps/drwho/PMS_All.cpp: * apps/drwho/PMS_Flo.cpp: * apps/drwho/PMS_Ruser.cpp: * apps/drwho/PMS_Usr.cpp: * apps/drwho/PM_Client.cpp: * apps/drwho/Protocol_Manager.cpp: * apps/drwho/Protocol_Record.cpp: * apps/drwho/SMR_Client.cpp: * apps/drwho/SMR_Server.cpp: * apps/drwho/SM_Client.cpp: * apps/drwho/SM_Server.cpp: * apps/drwho/Search_Struct.cpp: * apps/drwho/Single_Lookup.cpp: * apps/drwho/client.cpp: * apps/drwho/server.cpp: * examples/IOStream/client/iostream_client.cpp: * examples/IPC_SAP/FIFO_SAP/FIFO-client.cpp: * examples/IPC_SAP/FIFO_SAP/FIFO-server.cpp: * examples/IPC_SAP/FIFO_SAP/FIFO-test.cpp: * examples/IPC_SAP/SOCK_SAP/CPP-inserver-poll.cpp: * examples/IPC_SAP/SPIPE_SAP/NPClient.cpp: * examples/IPC_SAP/SPIPE_SAP/NPServer.cpp: * examples/IPC_SAP/SPIPE_SAP/producer_read.cpp: * examples/IPC_SAP/TLI_SAP/CPP-ATM-client.cpp: * examples/IPC_SAP/TLI_SAP/CPP-ATM-server.cpp: * examples/IPC_SAP/TLI_SAP/CPP-client.cpp: * examples/IPC_SAP/TLI_SAP/CPP-server.cpp: * examples/IPC_SAP/TLI_SAP/db-client.cpp: * examples/IPC_SAP/TLI_SAP/ftp-client.cpp: * examples/Log_Msg/test_callback.cpp: * examples/Log_Msg/test_log_msg.cpp: * examples/Log_Msg/test_ostream.cpp: * examples/Logger/client/logging_app.cpp: * examples/Mem_Map/IO-tests/IO_Test.cpp: * examples/Mem_Map/file-reverse/file-reverse.cpp: * examples/Misc/test_get_opt.cpp: * examples/Misc/test_profile_timer.cpp: * examples/Misc/test_sstring.cpp: * examples/Reactor/FIFO/client.cpp: * examples/Reactor/Misc/test_early_timeouts.cpp: * examples/Reactor/Misc/test_time_value.cpp: * examples/Service_Configurator/IPC-tests/client/broadcast_client_test.cpp: * examples/Service_Configurator/IPC-tests/client/local_fifo_client_test.cpp: * examples/Service_Configurator/IPC-tests/client/local_spipe_client_test.cpp: * examples/Service_Configurator/IPC-tests/client/remote_dgram_client_test.cpp: * examples/Service_Configurator/IPC-tests/client/remote_service_directory_test.cpp: * examples/Service_Configurator/IPC-tests/client/remote_stream_client_test.cpp: * examples/Service_Configurator/IPC-tests/client/remote_thr_stream_client_test.cpp: * examples/Shared_Malloc/Options.cpp: * examples/Shared_Memory/test_MM.cpp: * examples/Shared_Memory/test_SV.cpp: * examples/System_V_IPC/SV_Message_Queues/TMQ_Client.cpp: * netsvcs/clients/Logger/indirect_logging.cpp: * netsvcs/lib/Logging_Strategy.cpp: * performance-tests/Misc/basic_perf.cpp: Include "ace/Log_Msg.h" to pull in the appropriate definition of the ACE logging macros. Fri May 26 09:16:21 2000 Darrell Brunsch * ace/OS_Dirent.cpp: I shall not put ACE_INLINE's in a .cpp file. I shall not put ACE_INLINE's in a .cpp file. I shall not put ACE_INLINE's in a .cpp file. I shall not put ACE_INLINE's in a .cpp file. I shall not put ACE_INLINE's in a .cpp file. I shall not put ACE_INLINE's in a .cpp file. I shall not put ACE_INLINE's in a .cpp file. I shall not put ACE_INLINE's in a .cpp file. I shall not put ACE_INLINE's in a .cpp file. I shall not put ACE_INLINE's in a .cpp file. :-) Thu May 25 20:23:45 2000 Darrell Brunsch * bin/Process_Win32.pm: The timed_wait wasn't returning the correct value if the server actually timed out. Thu May 25 18:21:41 2000 Steve Huston * ace/ACE.cpp (max_handles): If an ACE_LACKS_RLIMIT platform, let it try sysconf or FD_SETSIZE instead of always getting ENOTSUP. Thu May 25 17:39:22 2000 Steve Huston * ace/Event_Handler.cpp (register_stdin_handler): On pSOS, do stdin using another thread (like Win32) because ACE_STDIN is not a handle that select() can demux on. It only does sockets. * ace/Log_Msg.cpp (log): Don't do a ACE_Log_Msg_Sig_Guard on pSOS. It doesn't have signals to block out anyway. Thu May 25 16:57:16 2000 Steve Huston * ace/Select_Reactor_T.cpp (handle_error, check_handles): For pSOS, select() sets errno to EBADS for invalid socket handle. And, we need to use select() (not fstat) to weed out the bad ones. Thu May 25 15:19:14 2000 Darrell Brunsch * ace/OS_String.cpp: Added an include for stddef.h, since we use size_t here. Also moved the OS_Export.h include after the #pragma once stuff. Thu May 25 12:26:36 2000 Joe Hoffert * examples/IPC_SAP/ATM_SAP/Makefile: Removed libraries that FORE used to need. Thu May 25 09:07:16 2000 Carlos O'Ryan * ace/OS_String.cpp: Removed a few ACE_INLINEs. Wed May 24 20:27:26 2000 Ossama Othman * ace/OS_String.h: Changed "u_long" to "unsigned long." The u_long typedef wasn't being pulled in, so just use the basic type. This avoids having to pull in a header, and fixes a compile time problem. Wed May 24 20:18:59 2000 Ossama Othman * ace/Select_Reactor_Base.cpp (open): Temporarily backed out change that added ability to set handle limit to value greater than FD_SETSIZE. It breaks platforms that don't support getrlimit(). Wed May 24 18:56:16 2000 Darrell Brunsch : * ace/OS_Export.h: (added) In preparation for an eventual splitting up of the ACE DLLs, I'm starting to split up the Export macros also. OS_Export will be used for the lowest level OS library. * ace/Makefile: * ace/Makefile.am: * ace/Makefile.bor: * ace/ace-dll.icc: * ace/ace-lib.icc: * ace/ace_dll.dsp: * ace/ace_lib.dsp: * ace/OS.cpp: * ace/OS.h: * ace/OS.i: * ace/OS_String.cpp: (added) * ace/OS_String.h: (added) * ace/OS_String.inl: (added) Moved the string methods of ACE_OS to ACE_OS_String. * ace/OS_Dirent.cpp: * ace/OS_Dirent.h: * ace/OS_Dirent.inl: Separated the Win32 versions of some of the methods into the cpp file. The Win32 versions were a bit too complicated to make sense having inlined. Also changed to use ACE_OS_Export. Wed May 24 10:22:18 2000 Ossama Othman * THANKS: Added Håkon Innerdal to the list of contributors. * ace/config-linux-common.h (ACE_DEFAULT_SELECT_REACTOR_SIZE): Commented out the definition of this macro. Its setting unnecessarily limited the default size of the Select_Reactor to 256 file descriptors. `ace/OS.h' correctly sets the default size to FD_SETSIZE. Thanks to Håkon Innerdal for pointing this out. * ace/Select_Reactor_Base.cpp (open): Do not check if the desired size of the repository, i.e. the maximum number of file descriptors, is greater than FD_SETSIZE. The same check is effectively done in the call to ACE::set_handle_limits(). The redundant check also prevented the Reactor from supporting file descriptors numbering more than FD_SETSIZE on platforms that support them (e.g. via setrlimit(RLIMIT_NOFILE, ...)). Thanks to Håkon Innerdal for reporting the problem, and for providing a fix. * m4/platform.m4 (ACE_DEFAULT_SELECT_REACTOR_SIZE): No longer set the default size to 256 file descriptors. `ace/OS.h' correctly set it to FD_SETSIZE. Wed May 24 10:08:37 2000 Joe Hoffert * THANKS: Added Pedro Brandao name for his additions to support ATM for Linux. Wed May 24 10:01:26 2000 Joe Hoffert * ace/ATM_Acceptor.{h,i,cpp} * ace/ATM_Addr.{h,i,cpp} * ace/ATM_Connector.{h,i,cpp} * ace/ATM_Params.h * ace/ATM_QoS.{h,i,cpp} * ace/ATM_Stream.cpp: Added support for ATM on Linux. Thanks to Pedro Brandao for providing this. * ace/TLI.{h,i,cpp} * ace/TLI_Connector.{h,i,cpp} * ace/TLI_Stream.{h,i,cpp}: Changed hard-coded "inline" to "ACE_INLINE" Wed May 24 08:10:21 2000 Steve Huston * ace/WFMO_Reactor.h: Wrapped the !WinSock2 defs in defined(ACE_WIN32) to prevent compile errors on non-win32 platforms. It may be better to wrap the whole file in #if defined (ACE_WIN32), but this will solve the immediate problem. Tue May 23 20:13:52 2000 Irfan Pyarali * ace/WFMO_Reactor.h: Moved the definition of WSANETWORKEVENTS to before its use. Thanks to Craig Perras for reporting this. Tue May 23 17:59:06 2000 Luther J Baker * ACE_wrappers/pace/pace: Source files added. Changes to pace subdirectory will be noted in ACE_wrappers/pace/ChangeLog. Tue May 23 17:55:17 2000 Steve Huston * ace/Log_Msg.cpp (log): For %t on MVS, use the old ACE 5.0 cast. The pthread_t is a struct on MVS. Tue May 23 17:21:37 2000 Steve Huston * include/makeinclude/platform_psos_diab_ppc.GNU: Add -ei1676 to CCFLAGS to turn off the gazillion messages about not overriding pure virtual functions in derived classes. Thanks to Matt Emerson for this. Tue May 23 16:37:27 2000 Luther J Baker * ACE_wrappers/pace directories added to ACE_wrappers: ACE_wrappers/pace/docs ACE_wrappers/pace/examples ACE_wrappers/pace/pace ACE_wrappers/pace/pace++ ACE_wrappers/pace/tests Mon May 22 15:26:42 2000 Steve Huston * ace/Synch.(cpp h i): ACE_Process_Mutex, ACE_Process_Semaphore - changed to using ACE_Mutex and ACE_Semaphore for the underlying synch. mechanism (same as Win32 and POSIX semaphores). Process and thread are the same thing (synch-wise) on pSOS, and the underlying mechanisms Do The Right Thing. Wed May 10 16:47:31 2000 Steve Huston (actually committed on Tue May 23) * ace/OS.(h i): pSOS changes: - Use ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL ()) rather than using return func() == 0 ? 0 : -1 to avoid losing errno values. - ACE_OS::thr_getspecific, copy existing code from the TSS-emulated section to the native TSD-using section. - Use u_long as ACE_condattr_t and set its flags in ACE_OS::condattr_init rather than in ACE_OS::cond_init to avoid strange return errors in other parts of ACE that use ACE_OS::condattr_init and expect it to work. Mon May 22 15:25:33 2000 Nanbor Wang * ace/OS.{h,cpp} (ACE_Thread_Exit): * ace/Thread_Manager.cpp (~ACE_Thread_Exit): Moved the reset of ACE_Thread_Exit::is_constructed_ from the Thread_Exit's destructor to ACE_OS_Object_Manager::fini (). Otherwise, the singleton ACE_Thread_Exit may get created multiple times. Thanks to Eric Yee for reporting the problem. Notice that ACE 5.1.1, 5.1.2 and 5.1.3 all have the same problem of creating TSS keys unnecessarily without cleaning them up. This will most likely cause a long running server process creating a lot of threads to crash eventually (at least on NT.) Therefore, you should not use these versions in a production environment. Mon May 22 11:23:19 2000 Pradeep Gore * ACE version 5.1.3 released. Sun May 21 17:11:12 2000 Darrell Brunsch * ace/Configuration.cpp: Fixed some ACE_USES_WCHAR problems. Sun May 21 12:29:11 2000 Carlos O'Ryan * bin/run_all_list.pm: Removed the Connection_Purging test from the single threaded builds, the test cannot work in that configuration. Sun May 21 11:39:11 2000 Douglas C. Schmidt * tests/Signal_Test.cpp (worker_parent): My earlier fix on May 18th, 2000 was incorrect. The right fix is to make the format specifier be %ld, rather than cast the pid_t to (int). Sat May 20 18:34:05 2000 Ossama Othman * configure.in (ACE_HAS_BROKEN_T_ERROR): Fixed the test that checks if t_error() correctly accepts a "const char *" parameter. This should fix a problem that was occuring on Solaris. Sat May 20 19:47:52 2000 Nanbor Wang * ace/Memory_Pool.cpp: Added the seh_selector method for ACE_Pagefile_Memory_Pool so it can be used with ACE_Malloc. Thanks to Charlie Duke for pointing this out. Fri May 19 16:19:11 2000 Carlos O'Ryan * bin/run_all_list.pm: Removed the InterOp-Naming test from the Minimum CORBA builds. Thu May 18 20:40:37 2000 Carlos O'Ryan * tests/Makefile: More tweaking to get CDR_Array_Test *not* to compile on LynxOS but to compile in other platforms. Thu May 18 15:59:10 2000 Carlos O'Ryan * tests/CDR_File_Test.cpp: Fixed so it works on platforms that lack native 64 bit types. Thu May 18 13:56:49 2000 Jeff Parsons * ace/Configuration.cpp: Removed an unused variable from import_config(). Thu May 18 13:28:41 2000 Carlos O'Ryan * tests/Makefile: More tweaking to disable the CDR_Array_Test on LynxOS, the 3.0 version of Lynx has a newer g++ compiler, but it is still broken. Thu May 18 12:48:54 2000 Douglas C. Schmidt * tests/Signal_Test.cpp (worker_parent): Added a cast of pid_t to int to make G++ happy. Thanks to David Levine for reporting this. Thu May 18 10:37:30 2000 Darrell Brunsch * ace/OS_Dirent.h: It looks like LynxOS needed sys/types.h to be included before dirent.h. Thu May 18 10:29:49 2000 Carlos O'Ryan * tests/Makefile: Disable the CDR_Array_Test with older versions of g++ because the test breaks the templates there. * tests/CDR_File_Test.cpp: Use ULongLong instead of LongLong because the former is better supported. Thu May 18 10:11:20 2000 Darrell Brunsch * ace/streams.h: For !ACE_HAS_STANDARD_CPP_LIBRARY, iomanip wasn't being included (except for MSVC). So I moved it outside of the _MSC_VER block so platforms like IRIX will now include it. Thu May 18 09:49:12 2000 Jeff Parsons * ace/Configuration.h: * ace/Configuration.cpp: Chris Hafey's bug fixes and enhancements to ACE_Configuration. Set_string_value and set_integer_value now work when the value already exists, memory leaks have been plugged, and a new function added called find_value, which checks for the existence in a section of a field by name, and returns the data type stored there if it is found. Wed May 17 20:37:49 2000 Carlos O'Ryan * tests/Makefile.am: Add missing CDR_File_Test_SOURCES and CDR_Array_Test_SOURCES definitions. Wed May 17 20:25:21 2000 Darrell Brunsch * ace/OS.h: * ace/config-all.h: Needed to move another define from OS.h to config-all (the ENOSYS to EFAULT define) since Borland doesn't have ENOSYS defined. Wed May 17 20:02:25 2000 Darrell Brunsch * ace/Dirent.h: * ace/Dirent.i: * ace/Makefile: * ace/Makefile.am: * ace/Makefile.bor: * ace/OS.h: * ace/OS.i: * ace/OS_Dirent.cpp: (added) * ace/OS_Dirent.h: (added) * ace/OS_Dirent.inl: (added) * ace/ace-dll.icc: * ace/ace-lib.icc: * ace/ace.icc: * ace/ace_dll.dsp: * ace/ace_dll_ce.dsp: * ace/ace_lib.dsp: * ace/config-all.h: Ladies and Gentlemen, you are witnessing the beginning of the end of ACE_OS as we know it. That's right, I am taking on the bazillion lines of stuff in OS.*, and separating it into bite size pieces. So this is the first step, kind of a test of concept. I took the dirent methods and separated them out into a separate class (in its own files), ACE_OS_Dirent. So now if one only wishes to use the dirent static methods, one only has to include OS_Dirent.h. But what about all the code that thinks it is still in ACE_OS? Glad you asked, since ACE_OS now inherits from ACE_OS_Dirent, meaning using ACE_OS::opendir () and family still works. So eventually everything will be moved out, and ACE_OS will just be a shell of a class that inherits from the ACE_OS_* classes (with maybe an ACE_ONLY_LATEST_AND_GREATEST thrown in here and there). Let's just hope that this works.... Wed May 17 19:01:52 2000 Carlos O'Ryan * bin/auto_compile: Fixed minor typos in the -smart_proxies option. * bin/run_all_list.pm: The path for one of the tests (InterOp-Naming) was broken, my fault. Wed May 17 16:20:30 2000 Darrell Brunsch * ace/Future.cpp: * ace/Future.h: * ace/Future_Set.cpp: * ace/Future_Set.h: * ace/LOCK_SOCK_Acceptor.cpp: * ace/config-pharlap.h: While searching for the cause of a warning being undisabled, I noticed there were several places where we were using #include /**/ "ace/some-header.h". The #include /**/ is only for system headers, so it doesn't need to be used with ACE headers. * ace/streams.h: If ACE_HAS_STANDARD_CPP_LIBRARY is defined, then we include the .h-less versions of the header files. This is all fine and good, except that these headers in MSVC will disable some warnings with #pragma warning, but then set them back to default at the end. So if we disabled a warning in the config file, it would get reenabled because of these headers. So I added a #pragma warning(push/pop) pair around the includes in this file to localize the warning settings. Wed May 17 14:32:50 2000 Carlos O'Ryan * tests/CDR_Array_Test.cpp: Fixed warnings in KAI-3.4 (and other EDG based compilers), it makes no sense to return 'const int' Wed May 17 12:03:41 2000 Darrell Brunsch * Msg_WFMO_Reactor.cpp: * Msg_WFMO_Reactor.h: * Msg_WFMO_Reactor.i: * ace/README: * ace/config-WinCE.h: * ace/config-pharlap.h: Added an ACE_LACKS_MSG_WFMO macro that is used when ACE_WIN32 is defined but MsgWaitForMultipleOjbects isn't. This replaces the checking for Pharlap and Windows CE. Thanks to David Hauck for this suggestion. Wed May 17 13:34:22 2000 Steve Huston * tests/Thread_Pool_Reactor_Test.cpp: Added a little more diagnostic info that was useful in diagnosing a previous problem in the ACE_TP_Reactor. Wed May 17 12:48:24 2000 Carlos O'Ryan * tests/CDR_File_Test.cpp: More workarounds for compiler bugs, this time egcs-1.1.1 is at fault. Wed May 17 10:58:23 2000 Steve Huston * ace/WFMO_Reactor.(cpp h): Changed complex_dispatch_handler() and upcall() to redo upcall(s) when the handler returns 1. This adds ACE_WFMO_Reactor functionality equivalent to the ACE_Select_Reactor family. To do this, the upcall() function's signature was changed to accept a WSANETWORKEVENTS structure by reference. upcall() updates the lNetworkEvents flags to indicate which requested a callback. If the handler is not marked for deletion, the upcall is done again. To properly support this, the call to WSAEnumNetworkEvents is done once in complex_dispatch_handler and the events flags are updated on each call to upcall(). Thanks to Irfan Pyarali for his guidance in designing this change. Wed May 17 10:54:05 2000 Jeff Parsons * examples/ConfigViewer/ConfigTreeCtrl.cpp: * examples/ConfigViewer/ConfigTreeCtrl.h: * examples/ConfigViewer/ConfigurationViewer.cpp: * examples/ConfigViewer/ConfigurationViewer.dsp: * examples/ConfigViewer/ConfigurationViewer.dsw: * examples/ConfigViewer/ConfigurationViewer.rc: * examples/ConfigViewer/MainFrame.cpp: * examples/ConfigViewer/MainFrame.h: * examples/ConfigViewer/README: * examples/ConfigViewer/ValueDlg.cpp: * examples/ConfigViewer/ValueDlg.h: * examples/ConfigViewer/ValueListCtrl.cpp: * examples/ConfigViewer/ValueListCtrl.h: * examples/ConfigViewer/mondrian.ico: * examples/ConfigViewer/mondrian.xpm: * examples/ConfigViewer/stdafx.cpp: * examples/ConfigViewer/stdafx.h: Chris Hafey's ACE_Configuration viewer/editor for vxWindows. For details, see the README file or email Chris at . Wed May 17 09:02:45 2000 Carlos O'Ryan * tests/CDR_Array_Test.cpp: Workaround problems with old versions of g++, in some cases it gets confused with sizeof(T) inside a template. Tue May 16 12:01:56 2000 Darrell Brunsch * ace/Msg_WFMO_Reactor.cpp: * ace/Msg_WFMO_Reactor.h: Applied some patches that Bruce Trask sent for building ACE on Pharlap. * ace/OS.cpp: * ace/OS.h: * ace/Process.cpp: * ace/ace_wchar.h: GetEnvironmentStrings is the only Windows API function that I've seen that doesn't follow the same FuncA/FuncW naming that the rest do. So I added a wrapper in ACE_OS (getenvstrings) and it does the appropriate magic in the .cpp file to get this to work. This only showed up when UNICODE was defined but ACE_USES_WCHAR wasn't. * ace/Process.cpp: Removed a comment that stated that the WinCE version of inherit_environment () was in Process.i. Actually, there isn't a version for CE at all. * tests/CDR_Array_Test.cpp: Updated the test so it works with ACE_USES_WCHAR. Tue May 16 10:02:33 2000 Carlos O'Ryan * tests/CDR_File_Test.cpp: The test was removing the file even when the user requested not to do so. Tue May 16 09:53:19 2000 Carlos O'Ryan * ace/CDR_Stream.i: Change swap_8 again, this time it compiles with -O2 and -O3, using the assembly instructions for full performance. * tests/CDR_Array_Test.cpp: Fixed several problems reported during the last night builds. Mostly template quirks and the ever annoying problems of Sun/CC 4.2 with static_casts * tests/CDR_File_Test.cpp: Don't use ?: operators when the arguments are of different types. Mon May 15 21:00:31 2000 Carlos O'Ryan * ace/CDR_Stream.i: The swap_8 operator was not working when debugging was disabled. Mon May 15 16:06:01 2000 Priyanka Gontla * ace/CORBA_macros.h: Added Support for Exception::_downcast () by modifying _narrow to _downcast (). Thanks to William Horn . Mon May 15 15:49:37 2000 Carlos O'Ryan * bin/run_all_list.pm: Add Connection_Purging to the list. Mon May 15 15:23:27 2000 Ossama Othman The following are primarily consistency related updates. * ace/LSOCK.i (ACE_LSOCK): Initialize "aux_handle_" member to ACE_INVALID_HANDLE in the base member initializer list. * ace/Thread_Manager.i (ACE_At_Thread_Exit): Initialize "next_" member to 0 in the base member initializer list. (ACE_Thread_Descriptor_Base): Initialize "next_" and "prev_" members to 0 in the base member initializer list. Mon May 15 15:14:41 2000 Carlos O'Ryan * ace/CDR_Stream.h: * ace/CDR_Stream.i: * ace/CDR_Stream.cpp: Cristian Ferretti has contributed a number of optimizations to the byte swapping code for CDR streams. The optimizations include loop unrolling for 32-bit and 64-bit architectures, use of especial assembly instructions for x86-based platforms and use of bit operations (instead of memory manipulation) for other processors. * tests/Makefile: * tests/Makefile.am: * tests/Makefile.bor: * tests/run_tests.bat: * tests/run_tests.lst: * tests/run_tests.vxworks: * tests/tests.dsw: * tests/CDR_Array_Test.cpp: * tests/CDR_Array_Test.dsp: * tests/CDR_Array_Test.icc: New test to verify that the array operations in the CDR classes actually work, this is specially critical because the new versions unroll loop, perform assembly instructions that work best when the alignment is right, etc. * tests/CDR_File_Test.cpp: The test was extended. Now we can save a file in one platform and load it (manually) in another platform, to verify that byte swapping actually works. Both tests were contributed by Cristian Ferretti , which is good because all this voodoo programming needs testing. The changes were tested using PA-RISC, Alphas, Sparcs and finally Pentiums in various forms and using several compilers. Mon May 15 14:01:23 2000 Ossama Othman * ace/OS.h: QNX Neutrino has the header, so include it. * ace/config-qnx-neutrino.h: QNX supports the {get,set}rlimit() functions. ACE's autoconf support detected this support. Mon May 15 12:32:05 2000 Ossama Othman * ace/Log_Record.cpp (print): Added a "%s" format specifier to the fprintf() call. This was needed to allow strings containing percent signs '%' to be printed. This problem was inadvertently introduced during some UNICODE related updates. The "%s" format specifier can handle UNICODE strings. Thanks to Edan Ayal for reporting this problem and providing a fix. Mon May 15 10:25:38 2000 Darrell Brunsch * bin/create_vt_dsps.pl: I got tired of creating the version tests for the ACE tests, so why not script it? * tests/version_tests/ACE_Init_Test.dsp: (removed) This test is tricky. It uses MFC, which gets complicated when also using the static version of ACE. Since this is the only test that does this, I just disabled it in the create_vt_dsps.pl. * tests/version_tests/Reactor_Exception_Test.dsp: (removed) * tests/version_tests/Sigset_Op_Test.dsp: (removed) These two were named differently than their parents in tests/, so they have been renamed. * tests/version_tests/Atomic_Op_Test.dsp: * tests/version_tests/Auto_IncDec_Test.dsp: * tests/version_tests/Barrier_Test.dsp: * tests/version_tests/Basic_Types_Test.dsp: * tests/version_tests/Buffer_Stream_Test.dsp: * tests/version_tests/CDR_File_Test.dsp: * tests/version_tests/CDR_Test.dsp: * tests/version_tests/Cache_Map_Manager_Test.dsp: * tests/version_tests/Cached_Accept_Conn_Test.dsp: * tests/version_tests/Cached_Conn_Test.dsp: * tests/version_tests/Capabilities_Test.dsp: * tests/version_tests/Collection_Test.dsp: * tests/version_tests/Conn_Test.dsp: * tests/version_tests/DLL_Test.dsp: * tests/version_tests/DLList_Test.dsp: * tests/version_tests/Dynamic_Priority_Test.dsp: * tests/version_tests/Enum_Interfaces_Test.dsp: * tests/version_tests/Env_Value_Test.dsp: * tests/version_tests/Future_Set_Test.dsp: * tests/version_tests/Future_Test.dsp: * tests/version_tests/Handle_Set_Test.dsp: * tests/version_tests/Hash_Map_Bucket_Iterator_Test.dsp: * tests/version_tests/Hash_Map_Manager_Test.dsp: * tests/version_tests/High_Res_Timer_Test.dsp: * tests/version_tests/IOStream_Test.dsp: * tests/version_tests/Lazy_Map_Manager_Test.dsp: * tests/version_tests/MM_Shared_Memory_Test.dsp: * tests/version_tests/MT_Reactor_Timer_Test.dsp: * tests/version_tests/MT_SOCK_Test.dsp: * tests/version_tests/Malloc_Test.dsp: * tests/version_tests/Map_Manager_Test.dsp: * tests/version_tests/Map_Test.dsp: * tests/version_tests/Mem_Map_Test.dsp: * tests/version_tests/Message_Block_Test.dsp: * tests/version_tests/Message_Queue_Notifications_Test.dsp: * tests/version_tests/Message_Queue_Test.dsp: * tests/version_tests/Naming_Test.dsp: * tests/version_tests/New_Fail_Test.dsp: * tests/version_tests/Notify_Performance_Test.dsp: * tests/version_tests/Object_Manager_Test.dsp: * tests/version_tests/OrdMultiSet_Test.dsp: * tests/version_tests/Pipe_Test.dsp: * tests/version_tests/Priority_Buffer_Test.dsp: * tests/version_tests/Priority_Reactor_Test.dsp: * tests/version_tests/Priority_Task_Test.dsp: * tests/version_tests/Process_Manager_Test.dsp: * tests/version_tests/Process_Mutex_Test.dsp: * tests/version_tests/Process_Strategy_Test.dsp: * tests/version_tests/RB_Tree_Test.dsp: * tests/version_tests/Reactor_Notify_Test.dsp: * tests/version_tests/Reactor_Performance_Test.dsp: * tests/version_tests/Reactor_Timer_Test.dsp: * tests/version_tests/Reactors_Test.dsp: * tests/version_tests/Reader_Writer_Test.dsp: * tests/version_tests/Recursive_Mutex_Test.dsp: * tests/version_tests/Reverse_Lock_Test.dsp: * tests/version_tests/SOCK_Connector_Test.dsp: * tests/version_tests/SOCK_Send_Recv_Test.dsp: * tests/version_tests/SOCK_Test.dsp: * tests/version_tests/SPIPE_Test.dsp: * tests/version_tests/SString_Test.dsp: * tests/version_tests/SV_Shared_Memory_Test.dsp: * tests/version_tests/Semaphore_Test.dsp: * tests/version_tests/Service_Config_Test.dsp: * tests/version_tests/Simple_Message_Block_Test.dsp: * tests/version_tests/Svc_Handler_Test.dsp: * tests/version_tests/TSS_Test.dsp: * tests/version_tests/Task_Test.dsp: * tests/version_tests/Thread_Manager_Test.dsp: * tests/version_tests/Thread_Mutex_Test.dsp: * tests/version_tests/Thread_Pool_Reactor_Test.dsp: * tests/version_tests/Thread_Pool_Test.dsp: * tests/version_tests/Time_Service_Test.dsp: * tests/version_tests/Time_Value_Test.dsp: * tests/version_tests/Timeprobe_Test.dsp: * tests/version_tests/Timer_Queue_Test.dsp: * tests/version_tests/Tokens_Test.dsp: * tests/version_tests/UPIPE_SAP_Test.dsp: * tests/version_tests/Upgradable_RW_Test.dsp: * tests/version_tests/version_tests.dsw: * tests/version_tests/Reactor_Exceptions_Test.dsp: (added) * tests/version_tests/Sigset_Ops_Test.dsp: (added) These files were regenerated. Mon May 15 12:28:32 2000 Aviad Eden * ace/Object_Manager.h: In the paragraph that describes the behavior of ::exit function (starting with the words "NOTE on the use of ::exit --"). The first sentence states that using ::exit "does not destroy static objects" while it should be "does not destroy automatic objects". Mon May 15 12:25:59 2000 David L. Levine * ace/OS.i (thr_join): removed comments about possible implementation using ::taskSafe ()/::taskUnsafe () on VxWorks. Join functionality is better implemented in the Thread_Manager. Thanks to Umar for asking about this comment. Mon May 15 09:09:49 2000 Darrell Brunsch * ace/Local_Name_Space_T.cpp: * ace/Remote_Name_Space.cpp: * netsvcs/lib/Name_Handler.cpp: Changed my use of ACE_Auto_Array_Ptr for ACE_USHORT16 to ACE_Auto_Basic_Array_Ptr. Thanks to Andy Gokhale for reporting this. Mon May 15 08:31:13 2000 Darrell Brunsch * ace/streams.h: Undid the commenting out of #include for ACE_USES_OLD_IOSTREAMS. It had previously been commented out because of a problem with Qt. A better solution would be to not include it only when ACE is used with Qt. This problem was showing up with Explicit_Event_Loop. Sun May 14 12:43:35 2000 Darrell Brunsch (On behalf of Christopher Kohlhoff ) * ace/Makefile.bor: * include/makeinclude/ace_flags.bor: Added new file, moved ACE_BUILD_DLL macro into ACE library's makefile. Thanks also to Mogens Hansen . * include/makeinclude/recurse.bor: Arguments like -i should now be propogated with makefile recursion Sun May 14 12:19:41 2000 Darrell Brunsch * bin/msvc_auto_compile.pl: Added a -TAO option to specify that the TAO subdirectory should be compiled. Sat May 13 19:05:23 2000 Darrell Brunsch * ace/SString.cpp: Forgot to add a base member initialization for the allocator in the new ACE_USHORT16 constructor for ACE_WString. Thanks to Chris Kohlhoff for noticing this. Sat May 13 19:07:32 2000 Nanbor Wang * ace/config-kcc-common.h: Added ACE_HAS_STRING_CLASS. This fixed the IOStream_Test. Sat May 13 13:01:08 2000 Darrell Brunsch * tests/SString_Test.cpp: So yesterday I changed a type from ACE_USHORT16 to wchar_t. Rather, it should have been ACE_WSTRING_TYPE. Sat May 13 01:06:22 2000 Darrell Brunsch * ace/Local_Name_Space_T.cpp: * ace/Remote_Name_Space.cpp: SunCC 5 didn't like the template instantiations in the Local_Name_Space_T file, so I moved them to Remote_Name_Space.cpp. Fri May 12 17:48:17 2000 Darrell Brunsch * bin/generate_export_file.pl: Found a new way to write this script using map and a __DATA__ block. Fri May 12 17:52:22 2000 Nanbor Wang * ace/OS.cpp (ACE_Thread_Adapter::invoke): Reverted James' previous change for now. It's causing problem with MSVC. Fri May 12 15:04:58 2000 Carlos O'Ryan * bin/run_all_list.pm: * bin/auto_compile_win32.pl: Updated to include the new TAO test. Fri May 12 11:25:10 2000 Darrell Brunsch * ace/Basic_Types.h: Didn't understand at first why ACE_SIZEOF_WCHAR wasn't defined to just "sizeof (wchar_t)". So I changed it, but now I realize that this will not work if ACE_SIZEOF_WCHAR is used in a #if. Bleh. Since wchar_t is always different, I just defined it as 2 for WIN32 and 0 for others (so the tests/Basic_Types_Test will catch it). [Bug 560] * ace/ACE.cpp: Chris Kohlhoff reported that Borland didn't like "sizeof wchar_t", but adding parenthesis worked. Applied this patch, and changed the cast to an ACE_static_cast. [Bug 560] * ace/High_Res_Timer.cpp: Borland was giving some warnings here since a const method was calling this->global_scale_factor (), which is a static method. Changed it to ACE_High_Res_Timer::global_scale_factor () and things compiled cleanly. * ace/config-win32-borland.h: * ace/README: * ace/SString.cpp: * ace/SString.h: * ace/Local_Name_Space_T.cpp: * ace/Remote_Name_Space.cpp: * netsvcs/lib/Name_Handler.cpp: On Borland BCB 5, wchar_t is (correctly) a separate type than unsigned short, so all the implicit casting between the two in the ACE Name Space. So added a new macro, ACE_WSTRING_HAS_USHORT_SUPPORT, that enables another constructor for ACE_WString. Chris Kohlhoff also reported this problem and a solution, but unfortunately ACE_Name_Space requires that this type is 2 bytes so we couldn't just use ACE_WSTRING_TYPE here. Instead I added in both the new constructor and a ushort_rep method on ACE_WString. I changed the Name Space stuff to use this instead. BTW, old code shouldn't need to be changed on MSVC, just if you use BCB. [Bug 561] * tests/SString_Test.cpp: We were using ACE_USHORT16 as the single character type for ACE_WString. This has been changed to wchar_t. Thanks to Chris for this one also. [Bug 561] Fri May 12 10:12:05 2000 James Hu * ace/OS.cpp (ACE_Thread_Adapter::invoke): If the TSS instance of the ACE_Thread_Exit class fails to create, the application will crash. The new code will detect the failure, and use an instance created off the stack if it happens. This mimics how ACE does it in the case of platforms that do not support TSS. Thu May 11 18:07:53 2000 Chris Cleeland * ace/OS.i (malloc): Bug 566. * ace/OS.i (realloc): * ace/OS.i (calloc): * ace/OS.i (free): Use the new macros (below) instead of directly calling malloc-like functions, thereby allowing an installation to substitute an alternate mallocator for the global (see comment for OS.h below). * ace/OS.i (strdup): Changed the emulation of strdup() to use ACE_OS::malloc() rather than ::malloc(). * ace/OS.h: Added the four macros ACE_MALLOC_FUNC, ACE_CALLOC_FUNC, ACE_REALLOC_FUNC, and ACE_FREE_FUNC which default to the names of the global ::malloc, ::calloc, ::realloc and ::free. Using this, a site can define these in their config.h in order to substitute an alternate malloc-like allocator. Thu May 11 17:23:14 2000 Jeff Parsons * ace/ace_dll.dsp: Removed non-existent file Configuration.i from project. Thu May 11 15:21:34 2000 Darrell Brunsch * ace/OS.i (dlsym): I was checking for ACE_HAS_WIN32 instead of ACE_WIN32, so this wasn't doing what it was supposed to with ACE_USES_WCHAR turned on. Thu May 11 02:04:58 2000 Irfan Pyarali * ace/OS.h * ace/OS.cpp * ace/SOCK_Stream.h * ace/SOCK_Stream.i * ace/TLI_Stream.h * ace/TLI_Stream.i * ace/ACE.cpp * ace/ACE.h * ace/ACE.i In order to make the return values of recv_n() and send_n() match the return values of recv() and send(), the following changes were made to the interface: old interface: static ssize_t recv_n (ACE_HANDLE handle, void *buf, size_t len, const ACE_Time_Value *timeout = 0, int error_on_eof = 1); new interface: static ssize_t recv_n (ACE_HANDLE handle, void *buf, size_t len, const ACE_Time_Value *timeout = 0, size_t *bytes_transferred = 0); Return value are: - On complete transfer, is returned. - On timeout, -1 is returned, errno == ETIME. - On error, -1 is returned, errno is set to appropriate error. - On EOF, 0 is returned, errno is irrelevant. On partial transfers, i.e., if any data is transferred before timeout/error/EOF, will contain the number of bytes transferred. These return values now closely match the return values from the non "_n" methods. Thanks to Douglas Schmidt, Chris Cleeland, Steve Huston, James Hu, and Rich Seibel for helping out! Thu May 11 01:59:10 2000 Irfan Pyarali * ace/Pipe.cpp: Reader and writer handles were being left open when there was an error in ACE_Pipe::open(). This fixes bug 549. Thanks to Rick Ohnemus for reporting this bug and providing patches. Wed May 10 18:36:58 2000 Carlos O'Ryan * THANKS: Add a new contributor * bin/msvc_auto_compile.pl: * bin/auto_compile_win32.pl: Upgraded to use the new libraries in orbsvcs. Tue May 9 20:02:41 2000 Darrell Brunsch * ace/Asynch_Acceptor.cpp: Was still including "Asynch_Acceptor.i" which has been removed. * apps/JAWS2/JAWS/Cache_Manager_T.cpp: Removed iostream.h include here. This is not good since ACE already includes it, and ACE might already include , which is incompatible with . * examples/Reactor/WFMO_Reactor/test_talker.cpp: Looks like the constructor to Proactor was changed, but this test didn't get changed also. Removed one of the arguments being passed to it. * websvcs/lib/websvcs_export.h: Regenerated it. It seems like I changed the websvcs library based on what I thought was in this file. This didn't work, since I was assuming that ACE_WEBSVCS_HAS_DLL was automatically defined (and older versions of these export files did not do that). * apps/JAWS/server/HTTP_Helpers.cpp: * examples/Shared_Malloc/test_malloc.cpp: Changed empty ;'s in if statements to {} to remove warnings. * bin/msvc_auto_compile.pl: Added a -u option that tells the script to pass the /USEENV flag to msdev when it runs. Added a -ACE option that tells the script just to compile the ACE directories. Changed -core to -CORE to be consistent with -ACE (and the upcoming -TAO). * apps/Gateway/Gateway/Gateway.dsp: * apps/Gateway/Gateway/gatewayd.dsp: * apps/Gateway/Peer/Peer.dsp: * apps/Gateway/Peer/peerd.dsp: * apps/JAWS/clients/Caching/Caching.dsp: * apps/JAWS/server/jaws.dsp: * apps/JAWS2/server.dsp: * apps/JAWS2/HTTPU/HTTPU.DSP: * apps/JAWS2/HTTPU/HTTPU.DSW: * apps/JAWS2/JAWS/jaws.dsp: * examples/ASX/Event_Server/Event_Server/Event_Server.dsp: * examples/ASX/Event_Server/Transceiver/transceiver.dsp: * examples/ASX/Message_Queue/Bounded_Buffer.dsp: * examples/ASX/Message_Queue/Buffer_Stream.dsp: * examples/ASX/Message_Queue/Priority_Buffer.dsp: * examples/ASX/UPIPE_Event_Server/UPIPE_Event_Server.dsp: * examples/Bounded_Packet_Relay/Bounded_Packet_Relay.dsp: * examples/Configuration/Test.dsp: * examples/Connection/blocking/SPIPE.dsp: * examples/Connection/blocking/acceptor.dsp: * examples/Connection/non_blocking/non_blocking.dsp: * examples/Connection/non_blocking/server.dsp: * examples/IPC_SAP/ATM_SAP/CPP_client.dsp: * examples/IPC_SAP/ATM_SAP/CPP_server.dsp: * examples/IPC_SAP/SOCK_SAP/CPP_inclient.dsp: * examples/IPC_SAP/SOCK_SAP/CPP_inserver.dsp: * examples/IPC_SAP/SOCK_SAP/CPP_memclient.dsp: * examples/IPC_SAP/SOCK_SAP/CPP_memserver.dsp: * examples/IPC_SAP/SOCK_SAP/C_inserver.dsp: * examples/IPC_SAP/SOCK_SAP/SOCK_SAP.dsp: * examples/Log_Msg/Callback.dsp: * examples/Log_Msg/Log_Msg.dsp: * examples/Log_Msg/Ostream.dsp: * examples/Logger/Acceptor-server/server_loggerd.dsp: * examples/Mem_Map/file-reverse/file_reverse.dsp: * examples/Naming/Naming.dsp: * examples/Naming/multiple_contexts.dsp: * examples/Naming/non_existent.dsp: * examples/OS/Process/Process.dsp: * examples/OS/Process/imore.dsp: * examples/QOS/client.dsp: * examples/QOS/server.dsp: * examples/Reactor/Dgram/CODgram.dsp: * examples/Reactor/Dgram/Dgram.dsp: * examples/Reactor/Misc/Misc.dsp: * examples/Reactor/Misc/demuxing.dsp: * examples/Reactor/Misc/early_timeouts.dsp: * examples/Reactor/Misc/notification.dsp: * examples/Reactor/Misc/reactors.dsp: * examples/Reactor/Misc/signals_1.dsp: * examples/Reactor/Misc/signals_2.dsp: * examples/Reactor/Ntalker/ntalker.dsp: * examples/Reactor/Proactor/post_completions.dsp: * examples/Reactor/Proactor/test_cancel.dsp: * examples/Reactor/Proactor/test_end_event_loop.dsp: * examples/Reactor/Proactor/test_multiple_loops.dsp: * examples/Reactor/Proactor/test_proactor.dsp: * examples/Reactor/Proactor/test_timeout.dsp: * examples/Reactor/WFMO_Reactor/Handle_Close.dsp: * examples/Registry/Registry.dsp: * examples/Registry/update.dsp: * examples/Service_Configurator/Misc/Timer.dsp: * examples/Service_Configurator/Misc/main.dsp: * examples/Shared_Malloc/malloc.dsp: * examples/Shared_Malloc/multiple_mallocs.dsp: * examples/Shared_Malloc/persistence.dsp: * examples/Shared_Malloc/position_independent_malloc.dsp: * examples/Web_Crawler/Web_Crawler.dsp: * performance-tests/Misc/basic_perf.dsp: * performance-tests/Misc/childbirth_time.dsp: * performance-tests/Misc/context_switch_time.dsp: * performance-tests/Misc/test_mutex.dsp: * performance-tests/Misc/test_naming.dsp: * performance-tests/Misc/test_singleton.dsp: * performance-tests/Server_Concurrency/Leader_Follower/Leader_Follower.dsp: * performance-tests/Server_Concurrency/Queue_Based_Workers/Queue_Based_Workers.dsp: * performance-tests/TCP/TCP.dsp: While testing the -ACE flag in msvc_auto_compile, I found that there were many dsps that were either creating precompiled headers, didn't have the correct include paths, or even weren't in the CRLF format. Fixed them up. * apps/JAWS/clients/Caching/testing.dsp: * performance-tests/Synch-Benchmarks/Synch_Tests.dsp: These project files didn't look like they are used anymore, so I removed them. Tue May 9 17:38:47 2000 Carlos O'Ryan * bin/auto_compile_win32.pl: Include the new library used in the RT CORBA tests. Tue May 9 09:01:24 2000 Darrell Brunsch * examples/Export/README: (added) * examples/Export/dll.cpp: (added) * examples/Export/dll.h: (added) * examples/Export/export_dll.dsp: (added) * examples/Export/export_test.dsw: (added) * examples/Export/run_test.pl: (added) * examples/Export/test.cpp: (added) * examples/Export/test.dsp: (added) * examples/Export/test_export.h: (added) The export example is an example of how to use the ACE_Export type macros for DLLs. Mon May 8 14:37:32 2000 Douglas C. Schmidt * ace/Task.h: Cleaned up the documentation so that it will work correctly with class2man. Thanks to Charlie Duke for reporting this. Mon May 08 22:56:28 2000 Carlos O'Ryan * ACE version 5.1.2 released. Mon May 8 11:02:49 2000 Darrell Brunsch * docs/CE-status.txt: I will not get a chance to update this before the beta, so I just put in a note mentioning that it is out of date and will be updated next time. Mon May 8 12:30:15 2000 Nanbor Wang * include/makeinclude/platform_sunos5_kcc.GNU: Added "--once_instantiation_per_object" flag for both compiler and linker to avoid some warnings about duplicate symbol definitions. Sun May 7 19:50:21 2000 Darrell Brunsch * include/makeinclude/platform_sunos5_sunc++.GNU: Undid Doug's change on "Wed May 3 18:07:16 2000". The fix wasn't working in our SUNCC 5 builds. Sat May 6 17:49:01 2000 Darrell Brunsch * ace/Log_Msg.h: * ace/Log_Msg.cpp: Changed the signature of log_priority_enabled to have both the char * and wchar_t * versions when using ACE_USES_WCHAR. The reason why this has to be done is because of ACE_HEX_DUMP. ACE_HEX_DUMP calls both log_priority_enabled and log_hexdump, and it doesn't make sense to change the signature of log_hexdump. If it were to take in a wchar_t buffer, it should print the entire wchar_t. But if we have a buffer that is a char *, then it doesn't make sense to convert it to a wchar_t * buffer, since it adds all those extra bytes that would show up with hexdump. And now that we have 3 versions of this method which do the same things, I changed the ones that is used by the macros to call the one that just takes in the priority. An extra function call, but if that is a problem, then they can be inlined. Sat May 6 19:33:49 2000 Nanbor Wang * include/makeinclude/platform_freebsd.GNU: Removed definition BIN_TRUE. It's no longer used. Thu May 4 14:53:45 2000 Darrell Brunsch * ace/config-all.h: * ace/config-win32-common.h: * bin/generate_export_file.pl: Changed the ACE_EXPORT_SINGLETON_DECLARE and ACE_IMPORT_SINGLETON_DECLARE to take in arguments, but this time it takes in 3, the singleton type, the class, and then the lock. So we have: ACE_EXPORT_SINGLETON_DECLARE (ACE_Singleton, foo, ACE_Null_Mutex); Thu May 4 13:59:58 2000 Darrell Brunsch * ace/config-all.h: * ace/config-win32-common.h: Added two new macros, ACE_EXPORT_SINGLETON_DECLARE and ACE_IMPORT_SINGLETON_DECLARE. They do the same thing as the *_DECLARATION macros except they do not take arguments. So instead of ACE_EXPORT_SINGLETON_DECLARATION (foo); you use ACE_EXPORT_SINGLETON_DECLARE foo; This was needed since foo may be a template, and if so, the comma that can be between multiple arguments causes problems. * bin/generate_export_file.pl: Now creates the above DECLARE macros in addition to the rest. Thu May 4 14:47:09 2000 Nanbor Wang * include/makeinclude/platform_freebsd.GNU: Defined BIN_TRUE as /usr/bin/true. Wed May 3 19:35:48 2000 Carlos O'Ryan * ace/Log_Msg.cpp: The implementation of the log_priority_enabled function did not match its declaration. Wed May 3 17:21:50 2000 Darrell Brunsch * ace/config-win32-common.h: After many reports of not having _MT defined (and then not quite knowing what to do about it), I felt we needed a bit more descriptive error and comment. * docs/ACE-FMM.html: * docs/ACE-bug-process.html: * docs/ACE-development-process.html: * docs/ACE-guidelines.html: * docs/ACE-lessons.html: * docs/ACE-porting.html: * docs/ACE-subsets.html: * docs/exceptions.html: * docs/index.html: (added) * docs/usage-bugzilla.html: Added an index for the files in this directory. Added backlinks to the other files. Wed May 3 18:07:16 2000 Douglas C. Schmidt * ace/Malloc_T (memory_pool): Found another bug with SunC++ 5.0... Moved the ACE_Allocator_Adapter::protect() into the Malloc_T.cpp file. Wed May 3 17:16:12 2000 Ossama Othman * ace/Log_Msg.h (log_priority_enabled): Corrected use of "ASYS_TCHAR." "ACE_TCHAR" should be used instead. Wed May 3 18:07:16 2000 Douglas C. Schmidt * ace/Log_Msg: Added the new log_priority_enabled() method. Thanks to Ossama for reporting this ;-). * include/makeinclude/platform_sunos5_sunc++.GNU (CC_VERSION): The keywords to check if the version if greater than 5 is "C++" on Solaris, not "Compilers." Thanks to Rick Weisner for reporting this. Wed May 3 15:08:03 2000 Nanbor Wang * include/makeinclude/platform_freebsd.GNU: Changed to set versioned_so only when building on version 2 of FreeBSD. Thanks to Henrik Kai for pointing this out. Wed May 3 12:31:32 2000 Ossama Othman * ace/Makefile.am (INLINE_FILES): Removed deprecated inline files from the list. Wed May 3 11:59:14 2000 Carlos O'Ryan * include/makeinclude/macros.GNU: * include/makeinclude/rules.common.GNU: * include/makeinclude/rules.local.GNU: New target that recusively builds all the IDL generated files. Wed May 3 11:43:05 2000 Douglas C. Schmidt * ace/Log_Msg.h: Only call set() in the ACE_{ERROR,DEBUG} macros if the log_priority_enabled() is non-0, which avoids making unecessary strcpy() calls. Thanks to Ganesh Pai for reporting this. * ace/Timer_Queue_Adapters (schedule): Make sure to pass the act to the schedule() method. Also, updated the header file so that it explains that interval timers aren't implemented. Thanks to Umar Syyid for reporting these. Wed May 3 09:49:57 2000 Jeff Parsons * ace/Caching_Utility_T.cpp: * ace/Map.cpp: * ace/Pair.cpp: * ace/Svc_Handler.cpp: * ace/Win32_Asynch_IO.cpp: * ace/Win32_Proactor.cpp: * ace/ace_dll.dsp: * ace/ace_lib.dsp: Removed inclusion of non-existent .i files from corresponding .cpp files and from the project files. Tue May 2 19:33:57 2000 Douglas C. Schmidt * Updated all the dependencies. * ace: Removed all the following files because they were empty and yet were being #included into various other *.h files, which slowed down compilation unnnecessarily! Thanks to Espen Harlinn for reporting this. * ace/Acceptor.i * ace/WIN32_Proactor.i: * ace/WIN32_Asynch_IO.i: * ace/Token_Invariants.i: * ace/TLI_Acceptor.i: * ace/Svc_Handler.i: * ace/Proactor.i: * ace/Stream_Modules.i: * ace/Select_Reactor.i: * ace/Map.i: * ace/Priority_Reactor.i: * ace/Pair.i: * ace/Hash_Map_Manager.i: * ace/LSOCK_Acceptor.i * ace/CORBA_Ref.i: * ace/Configuration.i: * ace/Connector.i: * ace/Cleanup_Strategies_T.i; * ace/SPIPE_Acceptor.i: * ace/Trace.i: * ace/Log_Msg.i: * ace/IO_Cntl_Msg.i: * ace/Dynamic_Service.i: * ace/Caching_Utility_T.i: * ace/Cached_Connect_Strategy_T.i: * ace/Asynch_IO.i: * ace/Asynch_Acceptor.i: * ace/OS.i (readdir_r): Apparently the GNU compiler on DEC UNIX defines a macro for readdir_r() that was breaking things. Therefore, we #ifdef for that! Thanks to Jean-Marc Strauss for reporting this. Tue May 2 12:48:00 2000 Carlos O'Ryan * bin/g++dep: Use `pwd` instead of $PWD to get the currenct directory because some shell don't get that one right. Tue May 02 13:51:21 2000 David L. Levine * bin/create_ace_build: updated comments at top to reflect the fact that dead symlinks are removed when run on an existing build tree. Tue May 2 10:24:10 2000 Darrell Brunsch * bin/auto_compile_win32.pl: Fixed a couple of release configurations that were out of date. Tue May 2 10:05:21 2000 Darrell Brunsch * websvcs/lib/URL_Addr.cpp: * websvcs/lib/URL_Addr.h: * websvcs/lib/URL_Addr.i: * websvcs/lib/websvcs.dsp: The changes to the new wchar style wasn't completely correct, and I missed quite a few LPCTSTRs in the .i file. Also corrected my earlier attempt at doing the export stuff the "right way". Also changed the use of the variable passwd to password. passwd is also used as a structure so it confused MSVC when used in the FTP class constructor Tue May 2 09:34:31 2000 Steve Huston * tests/SOCK_Send_Recv_Test.cpp: Fix signed/unsigned warnings. Mon May 1 16:51:07 2000 Darrell Brunsch * bin/msvc_auto_compile.pl: Now gets the current directory for the default of ACE_ROOT instead of using ".". Also only tries compiling files ending with dsp, not just ones with .dsp in their name (like *.dsp.bak). Finally, added a print_status options (-s) that will output status messages to STDERR, so you can see how much far it has progressed when you are redirecting stdout to a file. Mon May 01 12:41:39 2000 Irfan Pyarali * ace/Hash_Map_Manager_T.cpp (close_i): Restored freeing of the table memory which had been mistakenly removed. Thanks to David for pointing this out. Mon May 1 10:27:48 2000 Darrell Brunsch * bin/auto_compile_win32.pl: Some minor changes that should make the Win32 builds clean ( which I want to see once before bugging Nanbor to switch to my script :-) ) Mon May 01 02:06:02 2000 Nanbor Wang * ace/Malloc_T.cpp (avail_chunks): Changed to use do-while loop to go over all freelist when calculating the avail_chunks to make sure all nodes in the freelist are accounted for. doesn't always point to the anchoring Malloc_Header in the control block. Thanks to Ivan Murphy for reporting the problem. Also we must reduce the header size count by one when calculating the avail_chunks because each returning allocated memory chunk takes at least two Malloc_Header's. This change made the result of more realistic. * ace/Malloc.h: Added more documentation explaining how Malloc_T works. Sun Apr 30 23:20:00 2000 Darrell Brunsch * ace/SString.h: SunCC 5 had problems with ACE_TString when it was typdefed, but not when it was #defined. * ace/ace_wchar.h: Noticed I was including tchar.h still, which is no longer necessary since ACE's use of wchar_t is separate from tchar.h's. Sat Apr 29 20:02:39 2000 Ossama Othman * bin/autoconf_compile (BUILD_LIST): Remove TAO from the build list. It's autoconf support hasn't been fully integrated yet. Sat Apr 29 19:45:41 2000 Ossama Othman * netsvcs/lib/Log_Message_Receiver.cpp (attach, detach): Fixed warning that occured when ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES was not defined. Use ACE_GUARD{_RETURN} macro instead of naked ACE_Guard. Sat Apr 29 19:17:25 2000 Ossama Othman * ace-dll.icc: * ace_dll.dsp: * ace_lib.dsp: These files still referred to the deprecated `inc_user_config.h' header. The header is now called `config-all.h'. Sat Apr 29 19:09:00 2000 Ossama Othman * ace/QoS_Manager.h: Moved inclusion of one of the ACE headers prior to the check for ACE_LACKS_PRAGMA_ONCE. The definition of ACE_LACKS_PRAGMA_ONCE wasn't pulled before the check, so it ended up being defined twice. Sat Apr 29 16:15:29 2000 Ossama Othman * bin/autoconf_compile: * bin/autoconf_compile_wrapper: The ACE+autoconf counterparts to the auto_compile* scripts. These scripts are used to run automatic builds of the ACE's autoconf support. Sat Apr 29 15:59:53 2000 Ossama Othman * ace/Makefile.am (HEADER_FILES): Removed `inc_user_config.h' from the list of headers. It no longer exists. Added `config-all.h', `ACE_export.h' and `svc_export.h' to the list of headers. Sat Apr 29 17:13:55 2000 Vishal Kachroo * ace/Makefile.am: Added the SOCK_Dgram_Mcast_QoS.{cpp,h,i} Sat Apr 29 14:49:13 2000 Darrell Brunsch * examples/DLL/Newsweek.dsp: * examples/Threads/barrier1.dsp: * examples/Threads/barrier2.dsp: * examples/Threads/cancel.dsp: * examples/Threads/future1.dsp: * examples/Threads/future2.dsp: * examples/Threads/manual_event.dsp: * examples/Threads/process_mutex.dsp: * examples/Threads/process_semaphore.dsp: * examples/Threads/reader_writer.dsp: * examples/Threads/recursive_mutex.dsp: * examples/Threads/task_five.dsp: * examples/Threads/task_four.dsp: * examples/Threads/task_one.dsp: * examples/Threads/task_three.dsp: * examples/Threads/task_two.dsp: * examples/Threads/test.dsp: * examples/Threads/thread_manager.dsp: * examples/Threads/thread_pool.dsp: * examples/Threads/thread_specific.dsp: * examples/Threads/token.dsp: * examples/Threads/tss1.dsp: * examples/Threads/tss2.dsp: * examples/Timer_Queue/Async_Timer_Queue_Test.dsp: * examples/Timer_Queue/Reactor_Timer_Queue_Test.dsp: * examples/Timer_Queue/Thread_Timer_Queue_Test.dsp: * examples/Web_Crawler/Web_Crawler.dsp: * performance-tests/Synch-Benchmarks/synch_driver.dsp: * performance-tests/Synch-Benchmarks/Base_Test/Base_Test.dsp: * performance-tests/Synch-Benchmarks/Perf_Test/Perf_Test.dsp: * performance-tests/Synch-Benchmarks/Synch_Lib/Synch_Lib.dsp: * websvcs/lib/websvcs.dsp: * websvcs/tests/Test_URL_Addr.dsp: I started to test out my msvc_auto_compile.pl script and after testing it for the whole thing, found out that I soon ran out of disk space. By the time I ran out of space, the PCH files made up 3 GB of disk. So I removed them from these projects. Sat Apr 29 14:15:12 2000 Darrell Brunsch * bin/clean_dsp.pl: Was still some bugs in this script. In general, beware of using it. There is no guarantess that it does or ever will work. * ace/ace_dll.dsp: * ace/ace_lib.dsp: Having said that, I went and used it on these project files anyway. Reduced their size by a good 50%. * ace/ace_dll_ce.dsp: Made the x86 emulation release configuration build correctly by ingoring default libraries. Also cleaned this dsp, which had an improvement of 98%. Sat Apr 29 13:20:11 2000 Darrell Brunsch * apps/drwho/PMS_All.cpp: * apps/drwho/PMS_Ruser.cpp: Was still using some ACE::strecpy, changed to ACE_OS::strecpy. Fri Apr 28 21:30:46 2000 Darrell Brunsch * bin/msvc_auto_compile.pl: Fixed the build core logic to work correctly when more than one configuration is specified. * bin/vc_filter.pl: Now ignores the LINK4089 warnings. We haven't quite figured out how to fix them yet. Fri Apr 28 21:11:32 2000 Darrell Brunsch * bin/clean_dsp.pl: (added) This script should clean out excess baggage from DSP files. Fri Apr 28 13:11:20 2000 Ossama Othman * include/makeinclude/platform_linux_lxpthread.GNU: * include/makeinclude/platform_linux_lxpthreads.GNU: Renamed `platform_linux_lxpthread.GNU' to platform_linux_lxpthreads.GNU to be consistent with the name of its corresponding config header `config-linux-lxpthreads.h'. Thanks to Ken Weinert for reporting this. `platform_linux_lxpthread.GNU' now includes the newly renamed file for backward compatibility. Fri Apr 28 11:54:21 2000 Douglas C. Schmidt * ace/SString.cpp: Fixed the delimiter_replace() method so that it actually does what it's comment implies... Thanks to Martin Krumpolec for reporting this. Thu Apr 27 18:19:19 2000 James Hu * ace/Dirent.i: Added checks to see if dirp_ is initialized before calling into ACE_OS. Thu Apr 27 16:53:49 2000 Irfan Pyarali * ace/Hash_Map_Manager_T.cpp (unbind_all_i): Added new method unbind_all() for removing all the entries in one shot. Thanks to Boris Sukholitko for providing this enhancement. * tests/Hash_Map_Manager_Test.cpp: Added test for unbind_all(). Thu Apr 27 14:17:52 2000 Darrell Brunsch * ace/OS.i: isatty (): Messed up on my CE change, so the version that takes an int was hidden by a ACE_WIN32 block. This has been moved outside again. * ace/OS.cpp: Weird, somehow part of a section that should have been removed with the CE changes was still present. Removed again. Thu Apr 27 13:08:00 2000 Darrell Brunsch * bin/msvc_auto_compile.pl: Changed the code style and made it consistent. Also changed the core build to build all of the orbsvcs and do the static builds in the right order. * ace/OS.cpp: * ace/OS.i: For some reason, I had trouble with the libraries when the ACE_Cleanup destructor was in the .i file. So I moved it to the .cpp file instead. * ace/ace_dll.dsp: Was defining ACE_ACE_HAS_DLL=1, which is #1, not needed and, #2, the wrong macro name. * ace/ace_lib.dsp: Changed the static configs to be of type Win32 Static Release/ Debug instead of Win32 Release/Debug. * apps/gperf/src/gperf.dsp: * apps/gperf/src/gperf_lib.dsp: Added Win32 Static Release/Debug configs. Thu Apr 27 14:32:45 2000 Douglas C. Schmidt * ACE-INSTALL (make): Updated the documentation. Thanks to Ken Weinert for reporting this. Thu Apr 27 12:41:42 2000 James C. Hu * ace/OS.i: * ace/OS.cpp: * ace/config-freebsd-pthread.h: * ace/README: Removed ACE_HAS_TIME_R in favor of using existing mechanism of ACE_HAS_REENTRANT_FUNCTIONS, and then adding ACE_LACKS_NETDB_REENTRANT_FUNCTIONS and also ACE_LACKS_PWD_REENTRANT_FUNCTIONS. Created a new lacks called ACE_LACKS_RAND_REENTRANT_FUNCTIONS to match the previous two. FreeBSD can now use its native *time_r functions. Thu Apr 27 10:55:11 2000 Darrell Brunsch These changes bring the Windows CE port up to date. It currently supports Windows CE 2.11 on the H/PC Pro. I am looking into the 2.11 P/PC port, but there are other problems with it still. Hopefully the WinCE 3.0 SDK will be more mature. * ace/ace_dll_ce.dsp: (added) * ace/ace_ce_dll.dsp: (removed) * ace/ace_ce.dsw: Created a new dsp file from scratch from CE to see how the toolkit sets up the projects. Removed the old one. * ace/ACE.cpp: format_hexdump (): Changed usage of isprint to ACE_OS::ace_isprint. get_ip_interfaces (): Changed use of deprecated ACE_TEXT_STRING to ACE_TString. Also added an ACE_TEXT_CHAR_TO_TCHAR to a use of the ACE_INET_Addr constructor. * ace/ARGV.cpp: create_buf_from_queue (): We were not adjusting the size of a ACE_TCHAR buffer by sizeof ACE_TCHAR when we did a memcopy. Thanks to Valery Arkhangorodsky for reporting this. * ace/Memory_Pool.cpp: seh_selector (): Changed use of LPEXCEPTION_POINTERS to EXCEPTION_POINTERS * since it seems like that definition is missing in some WinCE configs. * ace/ace_wchar.h: Added deprecated definition of ACE_TEXT_STRING. convert (): Changed the conversions from CharToOem to MultiByteToWideChar, since it is more widely supported in Win32. Also removed the loading of user32.lib since it was only needed for CharToOem. * ace/config-win32-common.h: Changed the _MT check so it doesn't do anything on CE. Some CE targets do not have the Multithreaded DLL generation option. * ace/config-WinCE.h: Changed ACE_DEFAULT_LD_SEARCH_PATH to use ACE_TEXT. Added a define for ACE_HAS_WCHAR and a check to always define ACE_USES_WCHAR. Commented out the ACE_HAS_MFC check. Defined FILE, since it seems to be missing from CE 2.11 H/PC Pro. Added a definition for EXCEPTION_ACCESS_VIOLATION that was in older SDK's. Removed some UNDER_CE < 2.11 defines. < 2.11 CE will not be supported anymore. Removed definition of is_print, since it was moved into ACE_OS. Added a definition for the operator placement new, which is missing when MFC isn't used. * ace/OS.h: Enabled is_atty for Windows CE. Added ace_isprint and made ace_isspace an ACE_TCHAR method. * ace/OS.i: chdir (): NOTSUP on CE 2.11 tempnam (): Also NOTSUP on CE 2.11 abort (): changed ::exit to exit to get it to compile. ace_isspace (): Changed to use ACE_TCHAR, but also made it NOTSUP on CE 2.11. ace_isprint (): Added, but NOTSUP on CE 2.11. sema_init (): Needed to cast an void *arg to ACE_mutexattr_t. dlsym (): Changed the way ACE declares symbolname so it uses the right one on Win32 (WinNT always uses char *, CE always uses wchar_t *). The function still takes in ACE_TCHAR * though. Thanks to Jeff Greif for reporting this. Removed a few global function definitions that were just for CE (like fwrite, fread, getc, etc.). These are either supported in newer CE's or is disabled in the ACE_OS methods. is_atty (): Enabled on CE. * ace/OS.cpp: Enabled fopen on CE by using _wfopen (but not sure if this will work correctly, since on other Win32 platforms we have a lot more stuff. Enabled several printf methods on CE. open (): Removed the use of FILE_SHARE_DELETE on CE. * ace/Service_Config.i: initialize (): Added an ACE_TEXT_CHAR_TO_TCHAR and replaced an ACE_WIDE_STRING with it also. * ace/Svc_Conf.h: * ace/Svc_Conf.y: * ace/Svc_Conf_y.cpp: ace_yyerror (): Takes an ACE_TCHAR * instead of char * now. Thanks to Valery Arkhangorodsky for also reporting this. * ace/Svc_Conf.l: * ace/Svc_Conf_l.cpp: Changed to use ACE_OS::isatty () and ACE_OS::ace_isprint. Thu Apr 27 11:49:52 2000 Douglas C. Schmidt * ace/OS.i (memchr): Do not cast away constness when emulating memchr(). Thanks to Rick Ohnemus for reporting this. * ace/Select_Reactor_Base.cpp (open): The notification pipe handlers created by the ACE_Select_Reactor_Notify::open were being left open after fork() and exec(). Thanks to Rick Ohnemus for reporting this. Wed Apr 26 23:47:31 2000 Douglas C. Schmidt * ace/Process_Manager.cpp (open): Make sure that the dummy I/O handle is not inherited by child processes. Thanks to Rick Ohnemus for reporting this. Wed Apr 26 20:32:59 2000 James C. Hu * ace/OS.cpp: * ace/OS.i: * ace/README: * ace/config-freebsd-pthread.h: Added a new define ACE_HAS_TIME_R. FreeBSD supports *time_r() calls, but not gethostbyname_r, so a new feature specification was needed to get these functions into ACE_OS. Wed Apr 26 12:21:16 2000 Steve Huston * ace/ACE.cpp (send_n_i (ACE_HANDLE, const void *, size_t, int) and send_n_i (ACE_HANDLE, const void *, size_t): If the send fails with EWOULDBLOCK, wait for the handle to become writeable again before retrying the send. Thanks to Edan Ayal for reporting this. * tests/SOCK_Send_Recv_Test.cpp: Added test 3 for send_n to verify fix for writing to nonblocking handle. Wed Apr 26 08:43:21 2000 Darrell Brunsch * apps/drwho/PMC_Flo.cpp: * apps/drwho/PMC_Usr.cpp: * apps/drwho/PMS_All.cpp: * apps/drwho/PMS_Flo.cpp: * apps/drwho/PMS_Ruser.cpp: * apps/drwho/PMS_Usr.cpp: Was still using ACE::strecpy, changed to ACE_OS::strecpy. Tue Apr 25 15:11:41 2000 Carlos O'Ryan * THANKS: Add new member to the list. Tue Apr 25 11:35:07 2000 Darrell Brunsch * ace/Local_Name_Space.cpp: The hash function was using the wrong length of the USHORT16 string representation. The len_ actually is the length in bytes, not characters. Tue Apr 25 08:57:59 2000 Darrell Brunsch * ASNMP/tests/test_config.h: Was using XXX_A and XXX_W macros which really do not make sense anymore. Removed them and replaced with just the XXX macro which uses ACE_TEXT. * examples/Naming/test_multiple_contexts.cpp: * examples/Naming/test_non_existent.cpp: * examples/Naming/test_writers.cpp: * performance-tests/Misc/test_naming.cpp: * tests/Naming_Test.cpp: * tests/SString_Test.cpp: All of these were still being disabled when ACE_HAS_WCHAR wasn't defined. Since the naming stuff was changed to work without ACE_HAS_WCHAR, these were reenabled. Tue Apr 25 00:02:08 2000 Douglas C. Schmidt * ace/Log_Msg.h (ACE_Log_Msg): Split msg_ostream() into two functions, one of which allows the delete_ostream_ flag to be reset and the other that doesn't. Thanks to Boris Sukholitko for reporting this. * ace/Message_Block.i (replace_data_block): If a data block is replaced with a NULL pointer then don't bother doing certain operations! Thanks to Boris Sukholitko for reporting this. * ace/OS.i (dlerror): Changed sizeof buf to sizeof buf / sizeof buf[0] to avoid over-allocating a buffer in the ACE_TEXT_FormateMessage() function. Thanks to Valery Arkhangorodsky for reporting this. * ace/Service_Repository.cpp: The fini() method was claiming it was the close() method. Likewise, changed the close() method so that it keeps decrementing the current_size each time through the look to allow checking the respository size or doing other work from inside the fini() call. Thanks to Valery Arkhangorodsky for reporting this. Mon Apr 24 17:44:21 2000 Darrell Brunsch * ace/Object_Manager.cpp: Ai Carumba! I disabled some stuff here a while back when I first disabled the Naming Service, but forgot to enable it again once I fixed that. Mon Apr 24 16:44:22 2000 Darrell Brunsch * ace/SString.i: A couple of compilers were having problems with some casting I was doing in a const hash method. Changed the types of casts to hopefully make the compilers happy. Mon Apr 24 10:04:51 2000 Darrell Brunsch * ace/OS.cpp: Another problem with a missing parenthesis. Mon Apr 24 09:15:03 2000 Darrell Brunsch * ace/OS.i: Forgot a couple of ')'s that showed up on Lynx builds. Also, ACE_const_char doesn't exist, ACE_const_cast does. Sun Apr 23 19:51:41 2000 Darrell Brunsch * ace/ACE.cpp: * ace/Naming_Context.cpp: * ace/SOCK_Dgram_Mcast_QoS.cpp: Just tried the ACE_USES_WCHAR build and there were a couple of things that needed updating. Mainly some missing ACE_TEXT's or char's used instead of ACE_TCHAR's. * tests/Process_Mutex_Test.cpp: Was still using an old ACE_DEFAULT_MUTEX_A macro (updated to ACE_DEFAULT_MUTEX). * ace/ace_lib.dsp: Added "static" to the config names (Win32 Debug => Win32 Static Debug) so it is easier for the msvc_auto_compile.pl script to figure out which is which. Sun Apr 23 18:14:33 2000 Darrell Brunsch * ace/ace_wchar.h: Added compatibility for all the old ASYS_* macros by default. But no part of ACE/TAO should still use them anymore. This compatibility can be turned off by defining ACE_ONLY_LATEST_AND_GREATEST. * ace/SString.cpp: * ace/SString.h: * ace/SString.i: * ace/Local_Name_Space.cpp: * ace/Local_Name_Space.h: * ace/Local_Name_Space_T.h: * ace/Name_Space.cpp: * ace/Name_Space.h: * ace/Naming_Context.cpp: * ace/Naming_Context.h: * ace/Remote_Name_Space.cpp: * ace/Remote_Name_Space.h: Found a better way of support for the ACE_Name_Space classes when there isn't a wchar_t. We now define the ACE_WString to internally use a type called ACE_WSTRING_TYPE, which is defined to wchar_t unless ACE_USES_WCHAR is not defined (in which case it is defined to ACE_USHORT16). Sun Apr 23 14:27:11 2000 Darrell Brunsch * ace/CLASSIX/CLASSIX_Port.cpp: * tests/IOStream_Test.cpp: * tests/SOCK_Connector_Test.cpp: Found some old ASYS macros still hanging around in code that wasn't enabled on NT. Sat Apr 22 22:01:15 2000 Darrell Brunsch * ace/Local_Name_Space_T.cpp: * ace/Naming_Context.cpp: Fixed some wchar related changes. Sat Apr 22 20:53:11 2000 Darrell Brunsch This is my first checkin of my Unicode changes. They should be mostly harmless, since most platforms and build do not use Unicode stuff, in which these changes *should* result in the exact same behavior as before. But, if Unicode was being used, then chances are it is not going to work without a few changes. A summary of the changes are: - Standardized wide char support to the following macros: ACE_HAS_WCHAR - if not defined, ACE will not use the type wchar_t or provide any of the functions that use it. ACE_USES_WCHAR - if defined, ACE will use wchar_t instead of char for its strings (but not its buffers). This support has been mostly completed, but there are still some loose ends that need to be cleaned up. Note also that even if ACE_USES_WCHAR is defined or not, both wide and narrow versions of the string operations will be available. - Removed all the ASYS_* macros (besides ASYS_INLINE). So all code using ASYS_TEXT and ASYS_TCHAR should now use ACE_TEXT and ACE_TCHAR. And unlike their predecessers, these *will* turn into wide character versions when ACE_USES_WCHAR is defined. - Removed the macros ACE_HAS_WCHAR_TYPEDEFS_USHORT and ACE_HAS_WCHAR_TYPEDEFS_CHAR since ACE will not depend on what wchar_t defaults to. - Messed around with Windows CE support, most likely it broke it even more. I've halted my work on Windows CE until after this change, so I'll be fixing it up in upcoming checkins. - Since ACE_WString was changed, everything using it will now not be available when ACE_HAS_WCHAR is not defined. The motivation for this change was that the Unicode support was a mess and was very unintuitive. Since I was given the job of maintaining it (since I'm doing Windows CE stuff now), I decided to fix it instead of try to figure out what was currently happening. A consistent design is much easier to explain and maintain. * ace/ACE.h: * ace/ACE.i: * ace/ACE.cpp: * ace/ARGV.cpp: Removed ACE's strecpy since all it did was call ACE_OS's strecpy. * ace/ace_wchar.h: (added) Moved all the unicode specific stuff here. * ace/SString.cpp: * ace/SString.h: * ace/SString.i: ACE_WString used to use ACE_USHORT16 instead of wchar_t. I changed it so it does, since it will be more useful and intuitive this way. * ace/Log_Record.cpp: We were using ACE_OS::fwrite to print the string. This didn't work when the string was wchar_t, so this was changed to ACE_OS::fprintf instead. * TODO: * acconfig.h: * configure.in: * ace/ACE.cpp: * ace/ACE.h: * ace/ACE.i: * ace/ARGV.cpp: * ace/ARGV.h: * ace/ARGV.i: * ace/ATM_Addr.cpp: * ace/ATM_Addr.h: * ace/ATM_Connector.i: * ace/ATM_QoS.cpp: * ace/Acceptor.cpp: * ace/Acceptor.h: * ace/Activation_Queue.cpp: * ace/Addr.cpp: * ace/Arg_Shifter.cpp: * ace/Arg_Shifter.h: * ace/Asynch_Acceptor.cpp: * ace/Asynch_IO.cpp: * ace/Based_Pointer_T.cpp: * ace/Basic_Types.h: * ace/CORBA_Handler.cpp: * ace/Cache_Map_Manager_T.cpp: * ace/Cached_Connect_Strategy_T.cpp: * ace/Caching_Strategies_T.i: * ace/Capabilities.cpp: * ace/Capabilities.h: * ace/Capabilities.i: * ace/Configuration.cpp: * ace/Configuration.h: * ace/Connector.cpp: * ace/Connector.h: * ace/Containers_T.cpp: * ace/DEV_Addr.cpp: * ace/DEV_Addr.h: * ace/DEV_Addr.i: * ace/DEV_Connector.i: * ace/DLL.cpp: * ace/DLL.h: * ace/Dirent.h: * ace/Dirent.i: * ace/Dynamic_Service.cpp: * ace/Dynamic_Service.h: * ace/Env_Value_T.h: * ace/Env_Value_T.i: * ace/FIFO.cpp: * ace/FIFO.h: * ace/FIFO.i: * ace/FIFO_Recv.cpp: * ace/FIFO_Recv.h: * ace/FIFO_Recv_Msg.cpp: * ace/FIFO_Recv_Msg.h: * ace/FIFO_Send.cpp: * ace/FIFO_Send.h: * ace/FIFO_Send_Msg.cpp: * ace/FIFO_Send_Msg.h: * ace/FILE_Addr.cpp: * ace/FILE_Addr.h: * ace/FILE_Addr.i: * ace/FILE_Connector.cpp: * ace/FILE_Connector.i: * ace/Filecache.cpp: * ace/Filecache.h: * ace/Functor.h: * ace/Functor.i: * ace/Future.cpp: * ace/Get_Opt.cpp: * ace/Get_Opt.h: * ace/Handle_Set.cpp: * ace/Hash_Map_Manager_T.cpp: * ace/Hash_Map_Manager_T.i: * ace/High_Res_Timer.cpp: * ace/High_Res_Timer.h: * ace/INET_Addr.cpp: * ace/INET_Addr.h: * ace/INET_Addr.i: * ace/IO_SAP.cpp: * ace/IPC_SAP.cpp: * ace/LSOCK.cpp: * ace/LSOCK_CODgram.cpp: * ace/LSOCK_Connector.cpp: * ace/LSOCK_Dgram.cpp: * ace/Local_Name_Space.cpp: * ace/Local_Name_Space.h: * ace/Local_Name_Space_T.cpp: * ace/Local_Name_Space_T.h: * ace/Local_Tokens.cpp: * ace/Local_Tokens.h: * ace/Local_Tokens.i: * ace/Log_Msg.cpp: * ace/Log_Msg.h: * ace/Log_Record.cpp: * ace/Log_Record.h: * ace/Log_Record.i: * ace/MEM_Acceptor.cpp: * ace/MEM_Acceptor.h: * ace/MEM_Acceptor.i: * ace/MEM_Addr.cpp: * ace/MEM_Addr.h: * ace/MEM_Addr.i: * ace/MEM_Connector.cpp: * ace/MEM_SAP.cpp: * ace/MEM_SAP.h: * ace/Malloc.cpp: * ace/Malloc_T.cpp: * ace/Malloc_T.h: * ace/Malloc_T.i: * ace/Map_Manager.cpp: * ace/Map_Manager.i: * ace/Mem_Map.cpp: * ace/Mem_Map.h: * ace/Mem_Map.i: * ace/Memory_Pool.cpp: * ace/Memory_Pool.h: * ace/Message_Block.cpp: * ace/Message_Queue.cpp: * ace/Message_Queue_T.cpp: * ace/Module.cpp: * ace/Module.h: * ace/Module.i: * ace/NT_Service.cpp: * ace/NT_Service.h: * ace/NT_Service.i: * ace/Name_Proxy.cpp: * ace/Name_Request_Reply.cpp: * ace/Name_Space.cpp: * ace/Name_Space.h: * ace/Naming_Context.cpp: * ace/Naming_Context.h: * ace/OS.cpp: * ace/OS.h: * ace/OS.i: * ace/Object_Manager.cpp: * ace/Obstack.cpp: * ace/Obstack.h: * ace/POSIX_Asynch_IO.cpp: * ace/Parse_Node.cpp: * ace/Parse_Node.h: * ace/Pipe.cpp: * ace/Proactor.cpp: * ace/Process.cpp: * ace/Process.h: * ace/Process.i: * ace/Process_Manager.cpp: * ace/QoS_Manager.cpp: * ace/QoS_Session_Factory.cpp: * ace/QoS_Session_Impl.cpp: * ace/RB_Tree.cpp: * ace/RB_Tree.i: * ace/README: * ace/Read_Buffer.cpp: * ace/Registry.cpp: * ace/Registry.h: * ace/Registry_Name_Space.cpp: * ace/Remote_Name_Space.cpp: * ace/Remote_Name_Space.h: * ace/Remote_Tokens.cpp: * ace/Remote_Tokens.h: * ace/Remote_Tokens.i: * ace/SOCK.cpp: * ace/SOCK_Acceptor.cpp: * ace/SOCK_CODgram.cpp: * ace/SOCK_Connector.cpp: * ace/SOCK_Dgram.cpp: * ace/SOCK_Dgram_Bcast.cpp: * ace/SOCK_Dgram_Bcast.h: * ace/SOCK_Dgram_Mcast.cpp: * ace/SOCK_Dgram_Mcast.h: * ace/SOCK_Dgram_Mcast_QoS.cpp: * ace/SOCK_Dgram_Mcast_QoS.h: * ace/SPIPE_Acceptor.cpp: * ace/SPIPE_Addr.cpp: * ace/SPIPE_Addr.h: * ace/SPIPE_Addr.i: * ace/SPIPE_Connector.cpp: * ace/SString.cpp: * ace/SString.h: * ace/SString.i: * ace/SV_Message_Queue.cpp: * ace/SV_Semaphore_Complex.cpp: * ace/SV_Semaphore_Simple.cpp: * ace/SV_Shared_Memory.cpp: * ace/Select_Reactor_Base.cpp: * ace/Select_Reactor_T.cpp: * ace/Service_Config.cpp: * ace/Service_Config.h: * ace/Service_Config.i: * ace/Service_Manager.cpp: * ace/Service_Manager.h: * ace/Service_Object.cpp: * ace/Service_Object.h: * ace/Service_Object.i: * ace/Service_Repository.cpp: * ace/Service_Repository.h: * ace/Service_Types.cpp: * ace/Service_Types.h: * ace/Service_Types.i: * ace/Shared_Memory_MM.cpp: * ace/Shared_Memory_MM.h: * ace/Shared_Memory_MM.i: * ace/Shared_Object.cpp: * ace/Shared_Object.h: * ace/Singleton.cpp: * ace/Stats.cpp: * ace/Stats.h: * ace/Stats.i: * ace/Strategies_T.cpp: * ace/Strategies_T.i: * ace/Stream.cpp: * ace/Stream.h: * ace/Stream_Modules.cpp: * ace/Stream_Modules.h: * ace/Svc_Conf.h: * ace/Svc_Conf.l: * ace/Svc_Conf.y: * ace/Svc_Conf_l.cpp: * ace/Svc_Conf_y.cpp: * ace/Svc_Handler.cpp: * ace/Svc_Handler.h: * ace/Synch.cpp: * ace/Synch.h: * ace/Synch.i: * ace/Synch_T.cpp: * ace/Synch_T.h: * ace/Synch_T.i: * ace/System_Time.cpp: * ace/System_Time.h: * ace/TLI.cpp: * ace/TLI_Acceptor.cpp: * ace/TLI_Connector.i: * ace/TP_Reactor.cpp: * ace/TP_Reactor.i: * ace/Task_T.cpp: * ace/Task_T.h: * ace/Template_Instantiations.cpp: * ace/Thread_Manager.cpp: * ace/Time_Request_Reply.cpp: * ace/Timeprobe_T.cpp: * ace/Timer_Hash_T.cpp: * ace/Timer_Heap_T.cpp: * ace/Timer_List_T.cpp: * ace/Timer_Queue_Adapters.cpp: * ace/Timer_Queue_T.cpp: * ace/Timer_Wheel_T.cpp: * ace/Token.cpp: * ace/Token.h: * ace/Token_Collection.cpp: * ace/Token_Collection.h: * ace/Token_Collection.i: * ace/Token_Invariants.cpp: * ace/Token_Invariants.h: * ace/Token_Manager.cpp: * ace/Token_Manager.h: * ace/Token_Request_Reply.cpp: * ace/Token_Request_Reply.h: * ace/Token_Request_Reply.i: * ace/Trace.cpp: * ace/Trace.h: * ace/UPIPE_Acceptor.cpp: * ace/UPIPE_Connector.cpp: * ace/UPIPE_Connector.i: * ace/WFMO_Reactor.cpp: * ace/WFMO_Reactor.i: * ace/WIN32_Asynch_IO.cpp: * ace/WIN32_Proactor.cpp: * ace/XTI_ATM_Mcast.i: * ace/config-WinCE.h: * ace/config-all.h: * ace/config-ghs-common.h: * ace/config-tandem.h: * ace/config-win32-borland.h: * ace/config-win32-common.h: * ace/config-win32-msvc.h: * ace/config-win32-visualage.h: * ace/CLASSIX/CLASSIX_CLD_Connector.cpp: * ace/CLASSIX/CLASSIX_CO_Acceptor.cpp: * ace/CLASSIX/CLASSIX_Port.cpp: * ace/CLASSIX/CLASSIX_Port.h: * ace/CLASSIX/CLASSIX_Select_Reactor.cpp: * apps/Gateway/Gateway/Options.cpp: * apps/JAWS/PROTOTYPE/JAWS/JAWS.h: * bin/envinfo.cpp: * docs/ACE-guidelines.html: * docs/tutorials/Chap_3/mm.cpp: * examples/Connection/blocking/SPIPE-acceptor.cpp: * examples/Connection/blocking/SPIPE-acceptor.h: * examples/Connection/blocking/SPIPE-connector.cpp: * examples/Connection/blocking/SPIPE-connector.h: * examples/Connection/non_blocking/test_lsock_acceptor.cpp: * examples/Connection/non_blocking/test_lsock_connector.cpp: * examples/IPC_SAP/ATM_SAP/CPP-client.cpp: * examples/IPC_SAP/ATM_SAP/CPP-server.cpp: * examples/IPC_SAP/SOCK_SAP/CPP-inclient.cpp: * examples/IPC_SAP/SOCK_SAP/CPP-inserver-fancy.cpp: * examples/IPC_SAP/SOCK_SAP/CPP-inserver.cpp: * examples/IPC_SAP/UPIPE_SAP/ex3.cpp: * examples/Naming/test_multiple_contexts.cpp: * examples/Naming/test_non_existent.cpp: * examples/Naming/test_writers.cpp: * examples/Reactor/WFMO_Reactor/test_console_input.cpp: * examples/Reactor/WFMO_Reactor/test_directory_changes.cpp: * examples/Reactor/WFMO_Reactor/test_handle_close.cpp: * examples/Reactor/WFMO_Reactor/test_registry_changes.cpp: * examples/Registry/test_registry_iterator.cpp: * examples/Service_Configurator/Misc/Timer_Service.cpp: * examples/Service_Configurator/Misc/Timer_Service.h: * examples/Service_Configurator/Misc/main.cpp: * examples/Service_Configurator/Misc/main.dsp: * examples/Web_Crawler/Options.cpp: * examples/Web_Crawler/Options.h: * examples/Web_Crawler/URL_Addr.cpp: * examples/Web_Crawler/URL_Addr.h: * netsvcs/clients/Logger/indirect_logging.cpp: * netsvcs/clients/Naming/Client/main.cpp: * netsvcs/lib/Logging_Strategy.cpp: * netsvcs/lib/TS_Clerk_Handler.cpp: * netsvcs/lib/TS_Clerk_Handler.h: * performance-tests/Misc/test_naming.cpp: * performance-tests/Server_Concurrency/Leader_Follower/leader_follower.cpp: * performance-tests/Server_Concurrency/Queue_Based_Workers/workers.cpp: * performance-tests/TCP/tcp_test.cpp: * tests/ACE_Init_Test.dsp: * tests/ARGV_Test.cpp: * tests/Atomic_Op_Test.cpp: * tests/Auto_IncDec_Test.cpp: * tests/Barrier_Test.cpp: * tests/Basic_Types_Test.cpp: * tests/Buffer_Stream_Test.cpp: * tests/CDR_File_Test.cpp: * tests/CDR_Test.cpp: * tests/Cache_Map_Manager_Test.cpp: * tests/Cached_Accept_Conn_Test.cpp: * tests/Cached_Conn_Test.cpp: * tests/Capabilities_Test.cpp: * tests/Collection_Test.cpp: * tests/Conn_Test.cpp: * tests/DLL_Test.cpp: * tests/DLL_Test.h: * tests/DLList_Test.cpp: * tests/Dynamic_Priority_Test.cpp: * tests/Enum_Interfaces_Test.cpp: * tests/Env_Value_Test.cpp: * tests/FlReactor_Test.cpp: * tests/Future_Set_Test.cpp: * tests/Future_Test.cpp: * tests/Handle_Set_Test.cpp: * tests/Hash_Map_Bucket_Iterator_Test.cpp: * tests/Hash_Map_Manager_Test.cpp: * tests/High_Res_Timer_Test.cpp: * tests/IOStream_Test.cpp: * tests/Lazy_Map_Manager_Test.cpp: * tests/Log_Msg_Test.cpp: * tests/MM_Shared_Memory_Test.cpp: * tests/MT_Reactor_Timer_Test.cpp: * tests/MT_SOCK_Test.cpp: * tests/Malloc_Test.cpp: * tests/Map_Manager_Test.cpp: * tests/Map_Test.cpp: * tests/Mem_Map_Test.cpp: * tests/Message_Block_Test.cpp: * tests/Message_Queue_Notifications_Test.cpp: * tests/Message_Queue_Test.cpp: * tests/Naming_Test.cpp: * tests/New_Fail_Test.cpp: * tests/Notify_Performance_Test.cpp: * tests/Object_Manager_Test.cpp: * tests/OrdMultiSet_Test.cpp: * tests/Pipe_Test.cpp: * tests/Priority_Buffer_Test.cpp: * tests/Priority_Reactor_Test.cpp: * tests/Priority_Task_Test.cpp: * tests/Process_Manager_Test.cpp: * tests/Process_Mutex_Test.cpp: * tests/Process_Strategy_Test.cpp: * tests/Process_Strategy_Test.h: * tests/RB_Tree_Test.cpp: * tests/Reactor_Exceptions_Test.cpp: * tests/Reactor_Notify_Test.cpp: * tests/Reactor_Performance_Test.cpp: * tests/Reactor_Timer_Test.cpp: * tests/Reactors_Test.cpp: * tests/Reader_Writer_Test.cpp: * tests/Recursive_Mutex_Test.cpp: * tests/Reverse_Lock_Test.cpp: * tests/SOCK_Connector_Test.cpp: * tests/SOCK_Send_Recv_Test.cpp: * tests/SOCK_Test.cpp: * tests/SPIPE_Test.cpp: * tests/SString_Test.cpp: * tests/SV_Shared_Memory_Test.cpp: * tests/Semaphore_Test.cpp: * tests/Service_Config_Test.cpp: * tests/Signal_Test.cpp: * tests/Sigset_Ops_Test.cpp: * tests/Simple_Message_Block_Test.cpp: * tests/Svc_Handler_Test.cpp: * tests/TSS_Test.cpp: * tests/Task_Test.cpp: * tests/Thread_Manager_Test.cpp: * tests/Thread_Mutex_Test.cpp: * tests/Thread_Pool_Reactor_Test.cpp: * tests/Thread_Pool_Test.cpp: * tests/Time_Service_Test.cpp: * tests/Time_Value_Test.cpp: * tests/Timeprobe_Test.cpp: * tests/Timer_Queue_Test.cpp: * tests/TkReactor_Test.cpp: * tests/Tokens_Test.cpp: * tests/UPIPE_SAP_Test.cpp: * tests/Upgradable_RW_Test.cpp: * tests/XtReactor_Test.cpp: * tests/test_config.h: * websvcs/lib/URL_Addr.cpp: * websvcs/lib/URL_Addr.h: * websvcs/lib/URL_Addr.i: * websvcs/tests/Test_URL_Addr.cpp: Made all the appropriate changes to support the new wide char policy. Most changes were macro changes, changing ASYS_* to ACE_*, changing char's to ACE_TCHAR's, adding in ACE_TEXT ()'s when necessary, etc. Sat Apr 22 18:41:06 2000 Vishal Kachroo * ace/SOCK_Dgram_Mcast.h: * ace/SOCK_Dgram_Mcast.cpp: * ace/SOCK_Dgram_Mcast.i: Removed the QoS enabled overloaded methods. * ace/SOCK_Dgram_Mcast_QoS.h: * ace/SOCK_Dgram_Mcast_QoS.cpp: * ace/SOCK_Dgram_Mcast_QoS.i: Added this new class that derives from ACE_SOCK_Dgram_Mcast and handles all the QoS functionality that was being done by the latter. * ace/ace_dll.dsp: * ace/ace_lib.dsp: Added the ace/SOCK_Dgram_Mcast_QoS.{cpp,i,h} Fri Apr 21 10:23:19 2000 Darrell Brunsch * bin/msvc_auto_compile.pl: Removed all chdir's and fixed a bug with specifying multiple -dir's. Fri Apr 21 09:13:20 2000 Carlos O'Ryan * websvcs/lib/URL_Addr.cpp: The URL schemes are supposed to be case insensitive, thanks to Paul Carreiro for pointing this out. Thu Apr 20 21:05:42 2000 Darrell Brunsch * bin/msvc_auto_compile.pl: Added a -core for only the core libraries. Also fixed a problem with specifying incorrect directories and the -DLL/-Debug/etc. macros. Thu Apr 20 18:11:48 2000 Darrell Brunsch * examples/DLL/Main.dsp: * examples/DLL/Newsweek.dsp: * examples/DLL/Today.dsp * examples/Configuration/Configuration.dsw: * examples/Bounded_Packet_Relay/Bounded_Packet_Relay.dsp: * examples/Configuration/Test.dsp: * examples/IPC_SAP/ATM_SAP/ATM_SAP.dsw: * examples/IPC_SAP/ATM_SAP/CPP_client.dsp: * examples/IPC_SAP/ATM_SAP/CPP_server.dsp: * examples/IPC_SAP/SOCK_SAP/CPP_memclient.dsp: * examples/Mem_Map/file-reverse/file_reverse.dsp: * examples/NT_Service/NT_Service.dsp: * examples/NT_Service/NT_Service.dsw: * examples/OS/Process/Process.dsp: * examples/OS/Process/imore.dsp: * examples/QOS/client.dsp: * examples/QOS/server.dsp: * examples/Reactor/Misc/demuxing.dsp: * examples/Reactor/Multicast/client.dsp: * examples/Reactor/Multicast/server.dsp: * examples/Service_Configurator/Misc/Timer.dsp: * examples/Service_Configurator/Misc/main.dsp: * examples/Timer_Queue/Async_Timer_Queue_Test.dsp: * examples/Timer_Queue/Reactor_Timer_Queue_Test.dsp: * examples/Timer_Queue/Thread_Timer_Queue_Test.dsp: * examples/Timer_Queue/Timer_Queue.dsw: * examples/Web_Crawler/Web_Crawler.dsp: Fixed miscellaneous problems with these projects and workspaces. Some projects were missing from workspaces or listed incorrectly. Many project didn't have the correct include paths or definitions. * examples/Reactor/Proactor/post_completion.dsp: (removed) There was already a post_completions.dsp that was being used. * examples/OS/Process/imore.cpp: * examples/OS/Process/process.cpp: Changed the type of the variables used with Process::wait from int to ACE_exitcode. * examples/Reactor/WFMO_Reactor/test_abandoned.cpp: * examples/Reactor/WFMO_Reactor/test_apc.cpp: Missing parentheses. * Synch-Benchmarks/Synch_Lib/Synch_Lib.dsp: Changed the name of the project so win32_auto_compile.pl works with it properly. * bin/msvc_auto_compile.pl: (added) This is a new script for autocompiling with MSVC 6. Eventually this should replace auto_compile_win32.pl. It still needs more directories added to it and tested before we put it into production * bin/vc_filter.pl: Updated to properly color code output from msvc_auto_compile.pl also. Thu Apr 20 09:50:49 2000 Carlos O'Ryan * ace/RB_Tree.h: * ace/RB_Tree.i: Fixed implementation of the end() method. It should return a singular iterator that is different from all valid iterator, not an iterator pointing to the last element in the collection. Thu Apr 20 08:53:31 2000 Carlos O'Ryan * ace/CDR_Stream.i: Fixed problem in the align_write_ptr() method. It was optimized for the case where there was enough room in the current buffer, but the optimization broke with a previous fix from Feb 29. Thu Apr 20 08:40:00 2000 Chris Gill * examples/Bounded_Packet_Relay/BPR_Drivers_T.h, examples/Bounded_Packet_Relay/Thread_Bounded_Packet_Relay.cpp: Fixed warnings from g++ Wed Apr 19 21:53:52 2000 Douglas C. Schmidt * examples/Bounded_Packet_Relay: Added some missing template instantiations and other assorted problems. Thanks to Aoxiang Xu for reporting these. Wed Apr 19 07:04:13 2000 Douglas C. Schmidt * ace/Containers_T.cpp (copy_nodes): insert_head() should have been insert_tail(). Thanks to Umar Syyid for clarifying this. Also, added some comments to explain what's going on in insert_tail() since the code was somewhat non-intuitive ;-). Wed Apr 19 15:00:44 2000 Carlos O'Ryan * apps/Makefile: * apps/drwho/Makefile: * performance-tests/Makefile: * performance-tests/Server_Concurrency/Leader_Follower/Makefile: * performance-tests/Server_Concurrency/Queue_Based_Workers/Makefile: More Makefiles that were not in the default compilation path, added them and update dependencies. * bin/Makefile: * examples/Bounded_Packet_Relay/Makefile: * examples/QOS/Makefile: * performance-tests/RPC/Makefile: * performance-tests/Synch-Benchmarks/Base_Test/Makefile: * performance-tests/Synch-Benchmarks/Perf_Test/Makefile: * performance-tests/Synch-Benchmarks/Synch_Lib/Makefile: * ASNMP/asnmp/Makefile: * ASNMP/examples/get/Makefile: * ASNMP/examples/next/Makefile: * ASNMP/examples/set/Makefile: * ASNMP/examples/trap/Makefile: * ASNMP/examples/walk/Makefile: * ASNMP/tests/Makefile: Just updated dependencies. More fixes are needed to put them in the normal compilation path. * performance-tests/Server_Concurrency/Queue_Based_Workers/workers.cpp: * performance-tests/Server_Concurrency/Leader_Follower/leader_follower.cpp: They wouldn't compile on platforms that lack context switch counters in rusage. Conditionally compile that code to avoid the problem. Wed Apr 19 14:09:29 2000 Darrell Brunsch * etc/Svc_Conf_l.cpp.diff: Fixed the diff so it generates the correct Svc_Conf_l.cpp. Wed Apr 19 12:48:21 2000 Balachandran Natarajan * ace/ACE.cpp: Added a missing pointer in the signature of ACE::t_rcv_n_i (). Wed Apr 19 10:11:23 2000 Darrell Brunsch * tests/Atomic_Op_Test.dsp: * tests/Auto_IncDec_Test.dsp: * tests/Barrier_Test.dsp: * tests/Basic_Types_Test.dsp: * tests/Buffer_Stream_Test.dsp: * tests/CDR_File_Test.dsp: * tests/CDR_Test.dsp: * tests/Cache_Map_Manager_Test.dsp: * tests/Cached_Accept_Conn_Test.dsp: * tests/Cached_Conn_Test.dsp: * tests/Capabilities_Test.dsp: * tests/Collection_Test.dsp: * tests/Conn_Test.dsp: * tests/DLList_Test.dsp: * tests/Dynamic_Priority_Test.dsp: * tests/Enum_Interfaces_Test.dsp: * tests/Env_Value_Test.dsp: * tests/Future_Set_Test.dsp: * tests/Future_Test.dsp: * tests/Handle_Set_Test.dsp: * tests/Hash_Map_Bucket_Iterator_Test.dsp: * tests/Hash_Map_Manager_Test.dsp: * tests/High_Res_Timer_Test.dsp: * tests/IOStream_Test.dsp: * tests/Lazy_Map_Manager_Test.dsp: * tests/MM_Shared_Memory_Test.dsp: * tests/MT_Reactor_Timer_Test.dsp: * tests/MT_SOCK_Test.dsp: * tests/Malloc_Test.dsp: * tests/Map_Manager_Test.dsp: * tests/Map_Test.dsp: * tests/Mem_Map_Test.dsp: * tests/Message_Block_Test.dsp: * tests/Message_Queue_Notifications_Test.dsp: * tests/Message_Queue_Test.dsp: * tests/Naming_Test.dsp: * tests/New_Fail_Test.dsp: * tests/Notify_Performance_Test.dsp: * tests/Object_Manager_Test.dsp: * tests/OrdMultiSet_Test.dsp: * tests/Pipe_Test.dsp: * tests/Priority_Buffer_Test.dsp: * tests/Priority_Reactor_Test.dsp: * tests/Priority_Task_Test.dsp: * tests/Process_Manager_Test.dsp: * tests/Process_Mutex_Test.dsp: * tests/Process_Strategy_Test.dsp: * tests/RB_Tree_Test.dsp: * tests/Reactor_Exceptions_Test.dsp: * tests/Reactor_Notify_Test.dsp: * tests/Reactor_Performance_Test.dsp: * tests/Reactor_Timer_Test.dsp: * tests/Reactors_Test.dsp: * tests/Reader_Writer_Test.dsp: * tests/Recursive_Mutex_Test.dsp: * tests/Reverse_Lock_Test.dsp: * tests/SOCK_Connector_Test.dsp: * tests/SOCK_Send_Recv_Test.dsp: * tests/SOCK_Test.dsp: * tests/SPIPE_Test.dsp: * tests/SString_Test.dsp: * tests/SV_Shared_Memory_Test.dsp: * tests/Semaphore_Test.dsp: * tests/Service_Config_Test.dsp: * tests/Sigset_Ops_Test.dsp: * tests/Simple_Message_Block_Test.dsp: * tests/Svc_Handler_Test.dsp: * tests/TSS_Test.dsp: * tests/Task_Test.dsp: * tests/Thread_Manager_Test.dsp: * tests/Thread_Mutex_Test.dsp: * tests/Thread_Pool_Reactor_Test.dsp: * tests/Thread_Pool_Test.dsp: * tests/Time_Service_Test.dsp: * tests/Time_Value_Test.dsp: * tests/Timeprobe_Test.dsp: * tests/Timer_Queue_Test.dsp: * tests/Tokens_Test.dsp: * tests/UPIPE_SAP_Test.dsp: * tests/Upgradable_RW_Test.dsp: * tests/pharlap/Atomic_Op_Test.dsp: (added) * tests/pharlap/Auto_IncDec_Test.dsp: (added) * tests/pharlap/Barrier_Test.dsp: (added) * tests/pharlap/Basic_Types_Test.dsp: (added) * tests/pharlap/Buffer_Stream_Test.dsp: (added) * tests/pharlap/CDR_File_Test.dsp: (added) * tests/pharlap/CDR_Test.dsp: (added) * tests/pharlap/Cache_Map_Manager_Test.dsp: (added) * tests/pharlap/Cached_Accept_Conn_Test.dsp: (added) * tests/pharlap/Cached_Conn_Test.dsp: (added) * tests/pharlap/Capabilities_Test.dsp: (added) * tests/pharlap/Collection_Test.dsp: (added) * tests/pharlap/Conn_Test.dsp: (added) * tests/pharlap/DLList_Test.dsp: (added) * tests/pharlap/Dynamic_Priority_Test.dsp: (added) * tests/pharlap/Enum_Interfaces_Test.dsp: (added) * tests/pharlap/Env_Value_Test.dsp: (added) * tests/pharlap/Future_Set_Test.dsp: (added) * tests/pharlap/Future_Test.dsp: (added) * tests/pharlap/Handle_Set_Test.dsp: (added) * tests/pharlap/Hash_Map_Bucket_Iterator_Test.dsp: (added) * tests/pharlap/Hash_Map_Manager_Test.dsp: (added) * tests/pharlap/High_Res_Timer_Test.dsp: (added) * tests/pharlap/IOStream_Test.dsp: (added) * tests/pharlap/Lazy_Map_Manager_Test.dsp: (added) * tests/pharlap/MM_Shared_Memory_Test.dsp: (added) * tests/pharlap/MT_Reactor_Timer_Test.dsp: (added) * tests/pharlap/MT_SOCK_Test.dsp: (added) * tests/pharlap/Malloc_Test.dsp: (added) * tests/pharlap/Map_Manager_Test.dsp: (added) * tests/pharlap/Map_Test.dsp: (added) * tests/pharlap/Mem_Map_Test.dsp: (added) * tests/pharlap/Message_Block_Test.dsp: (added) * tests/pharlap/Message_Queue_Notifications_Test.dsp: (added) * tests/pharlap/Message_Queue_Test.dsp: (added) * tests/pharlap/Naming_Test.dsp: (added) * tests/pharlap/New_Fail_Test.dsp: (added) * tests/pharlap/Notify_Performance_Test.dsp: (added) * tests/pharlap/Object_Manager_Test.dsp: (added) * tests/pharlap/OrdMultiSet_Test.dsp: (added) * tests/pharlap/Pipe_Test.dsp: (added) * tests/pharlap/Priority_Buffer_Test.dsp: (added) * tests/pharlap/Priority_Reactor_Test.dsp: (added) * tests/pharlap/Priority_Task_Test.dsp: (added) * tests/pharlap/Process_Manager_Test.dsp: (added) * tests/pharlap/Process_Mutex_Test.dsp: (added) * tests/pharlap/Process_Strategy_Test.dsp: (added) * tests/pharlap/RB_Tree_Test.dsp: (added) * tests/pharlap/Reactor_Exceptions_Test.dsp: (added) * tests/pharlap/Reactor_Notify_Test.dsp: (added) * tests/pharlap/Reactor_Performance_Test.dsp: (added) * tests/pharlap/Reactor_Timer_Test.dsp: (added) * tests/pharlap/Reactors_Test.dsp: (added) * tests/pharlap/Reader_Writer_Test.dsp: (added) * tests/pharlap/Recursive_Mutex_Test.dsp: (added) * tests/pharlap/Reverse_Lock_Test.dsp: (added) * tests/pharlap/SOCK_Connector_Test.dsp: (added) * tests/pharlap/SOCK_Send_Recv_Test.dsp: (added) * tests/pharlap/SOCK_Test.dsp: (added) * tests/pharlap/SPIPE_Test.dsp: (added) * tests/pharlap/SString_Test.dsp: (added) * tests/pharlap/SV_Shared_Memory_Test.dsp: (added) * tests/pharlap/Semaphore_Test.dsp: (added) * tests/pharlap/Service_Config_Test.dsp: (added) * tests/pharlap/Sigset_Ops_Test.dsp: (added) * tests/pharlap/Simple_Message_Block_Test.dsp: (added) * tests/pharlap/Svc_Handler_Test.dsp: (added) * tests/pharlap/TSS_Test.dsp: (added) * tests/pharlap/Task_Test.dsp: (added) * tests/pharlap/Thread_Manager_Test.dsp: (added) * tests/pharlap/Thread_Mutex_Test.dsp: (added) * tests/pharlap/Thread_Pool_Reactor_Test.dsp: (added) * tests/pharlap/Thread_Pool_Test.dsp: (added) * tests/pharlap/Time_Service_Test.dsp: (added) * tests/pharlap/Time_Value_Test.dsp: (added) * tests/pharlap/Timeprobe_Test.dsp: (added) * tests/pharlap/Timer_Queue_Test.dsp: (added) * tests/pharlap/Tokens_Test.dsp: (added) * tests/pharlap/UPIPE_SAP_Test.dsp: (added) * tests/pharlap/Upgradable_RW_Test.dsp: (added) * tests/pharlap/pharlap_tests.dsw: (added) Moved all the pharlap configurations to their own dsp files in their own subdirectory. This was done so those of us who don't have pharlap can load tests.dsw and do a select all in the Build All window and only get the relavant builds. * tests/run_pharlap_tests.bat: (removed) * tests/pharlap/run_pharlap_tests.bat: (added) Moved this file to the pharlap directory also. Wed Apr 19 10:03:10 2000 Carlos O'Ryan * ace/SOCK_Stream.i: The new flag was present but not used in several methods, just forward them to the ACE::xxx() operation. Wed Apr 19 08:18:30 2000 Carlos O'Ryan * */Makefile: Updated all the dependencies Wed Apr 19 09:44:14 2000 Jeff Parsons * ace/Log_Msg.cpp: Changed the signature of a (WIN32-specific) call to send_n, to resolve a function overload ambiguity on NT. Wed Apr 19 00:00:29 2000 Irfan Pyarali * ace: There are two general use cases of the _n() methods: (1) The method keeps looping, until all the data has been transmitted, or until timeout occurs, or until the handle is closed. This use case occurs when one does not know how much data is coming across in the case of a recv(), or one wants to know exactly how much data was sent in the case of a send(). And one don't want to treat a premature eof as an error but wants to know the exact number of bytes that have been transferred so far. (2) In other cases when one knows exactly how much data is coming across in the case of recv(), or how much data needs to be transmitted in the case of a send(). Premature closing of the handle is usually an error. By adding an additional parameter to all the _n() methods, the above two use cases can be distinguished. The following files were modified: - OS - ACE - SOCK_Stream - TLI_Stream The other IO classes such as FIFO, MEM_IO, PIPE, etc., should also include this change. However, they should first get fixed with respect to timeouts. If comes before timeouts, ordering of the parameters will get messed up. Thanks to Steffen Winther Sorensen for reporting this second use of the _n() methods. * ace/OS.h: t_snd() interface was fixed. The buffer parameter should be const. * ace/ACE: Added support for TLI I/O functions to the ACE class. Tue Apr 18 19:08:37 2000 Darrell Brunsch * ace/config-all.h: (added) * ace/inc_user_config.h: (removed) * ace/Codeset_IBM1047.h: * ace/NT_Service.h: * ace/config-win32-common.h: * ace/OS.h: Started moving several of the macros from OS.h to config-all.h. The plan is to eventually split up OS.h, and config-all is a place where the macros (which are not specific to any part of ACE_OS) can go. config-all.h also ate inc_user_config.h. * ASNMP/agent/main.cpp: * ace/iosfwd.h: * ace/streams.h: * apps/JAWS/PROTOTYPE/JAWS/Assoc_Array.cpp: * tests/OrdMultiSet_Test.cpp: * tests/Time_Value_Test.cpp: * tests/test_config.h: Since inc_user_config.h was eaten, needed to change includes of it to config-all.h. * bin/generate_export_file.pl: (added) * bin/GenExportH.BAT: (removed) Replaced the batch file with a perl file so - people can generate on other platforms - it can generate Word_export and WORD_BUILD_DLL (the batch file couldn't change the case of the key) * ace/ACE_export.h: (added) * ace/svc_export.h: (added) Took the existing ACE_Export and ACE_Svc_Export macro and moved them to separate files. Also tested out the new generate_export_file.pl. * ace/ACE.cpp: * ace/ARGV.cpp: * ace/ATM_Acceptor.cpp: * ace/ATM_Addr.cpp: * ace/ATM_Connector.cpp: * ace/ATM_Params.cpp: * ace/ATM_QoS.cpp: * ace/ATM_Stream.cpp: * ace/Acceptor.cpp: * ace/Activation_Queue.cpp: * ace/Active_Map_Manager.cpp: * ace/Addr.cpp: * ace/Arg_Shifter.cpp: * ace/Asynch_Acceptor.cpp: * ace/Asynch_IO.cpp: * ace/Asynch_IO_Impl.cpp: * ace/Auto_IncDec_T.cpp: * ace/Auto_Ptr.cpp: * ace/Based_Pointer_Repository.cpp: * ace/Based_Pointer_T.cpp: * ace/Basic_Types.cpp: * ace/CDR_Stream.cpp: * ace/CORBA_Handler.cpp: * ace/CORBA_Ref.cpp: * ace/Cache_Map_Manager_T.cpp: * ace/Cached_Connect_Strategy_T.cpp: * ace/Capabilities.cpp: * ace/Cleanup_Strategies_T.cpp: * ace/Configuration.cpp: * ace/Connector.cpp: * ace/Containers.cpp: * ace/Containers_T.cpp: * ace/DEV.cpp: * ace/DEV_Addr.cpp: * ace/DEV_Connector.cpp: * ace/DEV_IO.cpp: * ace/DLL.cpp: * ace/Date_Time.cpp: * ace/Dirent.cpp: * ace/Dump.cpp: * ace/Dynamic.cpp: * ace/Dynamic_Service.cpp: * ace/Event_Handler.cpp: * ace/Event_Handler_T.cpp: * ace/FIFO.cpp: * ace/FIFO_Recv.cpp: * ace/FIFO_Recv_Msg.cpp: * ace/FIFO_Send.cpp: * ace/FIFO_Send_Msg.cpp: * ace/FILE.cpp: * ace/FILE_Addr.cpp: * ace/FILE_Connector.cpp: * ace/FILE_IO.cpp: * ace/Filecache.cpp: * ace/FlReactor.cpp: * ace/Functor.cpp: * ace/Functor_T.cpp: * ace/Future.cpp: * ace/Future_Set.cpp: * ace/Get_Opt.cpp: * ace/Handle_Set.cpp: * ace/Hash_Cache_Map_Manager_T.cpp: * ace/Hash_Map_Manager.cpp: * ace/High_Res_Timer.cpp: * ace/INET_Addr.cpp: * ace/IOStream.cpp: * ace/IOStream_T.cpp: * ace/IO_SAP.cpp: * ace/IPC_SAP.cpp: * ace/LSOCK.cpp: * ace/LSOCK_Acceptor.cpp: * ace/LSOCK_CODgram.cpp: * ace/LSOCK_Connector.cpp: * ace/LSOCK_Dgram.cpp: * ace/LSOCK_Stream.cpp: * ace/Local_Name_Space.cpp: * ace/Local_Name_Space_T.cpp: * ace/Local_Tokens.cpp: * ace/Log_Msg.cpp: * ace/Log_Record.cpp: * ace/MEM_Acceptor.cpp: * ace/MEM_Addr.cpp: * ace/MEM_Connector.cpp: * ace/MEM_IO.cpp: * ace/MEM_SAP.cpp: * ace/MEM_Stream.cpp: * ace/Malloc.cpp: * ace/Malloc_T.cpp: * ace/Managed_Object.cpp: * ace/Map.cpp: * ace/Map_Manager.cpp: * ace/Mem_Map.cpp: * ace/Memory_Pool.cpp: * ace/Message_Block.cpp: * ace/Message_Block_T.cpp: * ace/Message_Queue.cpp: * ace/Message_Queue_T.cpp: * ace/Method_Request.cpp: * ace/Module.cpp: * ace/Msg_WFMO_Reactor.cpp: * ace/Multiplexor.cpp: * ace/NT_Service.cpp: * ace/Name_Proxy.cpp: * ace/Name_Request_Reply.cpp: * ace/Name_Space.cpp: * ace/Naming_Context.cpp: * ace/OS.cpp: * ace/Object_Manager.cpp: * ace/Obstack.cpp: * ace/POSIX_Proactor.cpp: * ace/Pair.cpp: * ace/Parse_Node.cpp: * ace/Pipe.cpp: * ace/Priority_Reactor.cpp: * ace/Proactor.cpp: * ace/Process.cpp: * ace/Process_Manager.cpp: * ace/Profile_Timer.cpp: * ace/QoS_Manager.cpp: * ace/QoS_Session_Factory.cpp: * ace/QoS_Session_Impl.cpp: * ace/Reactor.cpp: * ace/Read_Buffer.cpp: * ace/Registry.cpp: * ace/Registry_Name_Space.cpp: * ace/Remote_Name_Space.cpp: * ace/Remote_Tokens.cpp: * ace/SOCK.cpp: * ace/SOCK_Acceptor.cpp: * ace/SOCK_CODgram.cpp: * ace/SOCK_Connector.cpp: * ace/SOCK_Dgram.cpp: * ace/SOCK_Dgram_Bcast.cpp: * ace/SOCK_Dgram_Mcast.cpp: * ace/SOCK_IO.cpp: * ace/SOCK_Stream.cpp: * ace/SPIPE.cpp: * ace/SPIPE_Acceptor.cpp: * ace/SPIPE_Addr.cpp: * ace/SPIPE_Connector.cpp: * ace/SPIPE_Stream.cpp: * ace/SString.cpp: * ace/SV_Message.cpp: * ace/SV_Message_Queue.cpp: * ace/SV_Semaphore_Complex.cpp: * ace/SV_Semaphore_Simple.cpp: * ace/SV_Shared_Memory.cpp: * ace/Sched_Params.cpp: * ace/Select_Reactor.cpp: * ace/Select_Reactor_Base.cpp: * ace/Select_Reactor_T.cpp: * ace/Service_Config.cpp: * ace/Service_Manager.cpp: * ace/Service_Object.cpp: * ace/Service_Repository.cpp: * ace/Service_Types.cpp: * ace/Shared_Memory.cpp: * ace/Shared_Memory_MM.cpp: * ace/Shared_Memory_SV.cpp: * ace/Shared_Object.cpp: * ace/Signal.cpp: * ace/Singleton.cpp: * ace/Stats.cpp: * ace/Strategies.cpp: * ace/Strategies_T.cpp: * ace/Stream.cpp: * ace/Stream_Modules.cpp: * ace/Svc_Conf.y: * ace/Svc_Conf_l.cpp: * ace/Svc_Conf_y.cpp: * ace/Svc_Handler.cpp: * ace/Synch.cpp: * ace/Synch_Options.cpp: * ace/Synch_T.cpp: * ace/System_Time.cpp: * ace/TLI.cpp: * ace/TLI_Acceptor.cpp: * ace/TLI_Connector.cpp: * ace/TLI_Stream.cpp: * ace/TP_Reactor.cpp: * ace/TTY_IO.cpp: * ace/Task.cpp: * ace/Task_T.cpp: * ace/Thread.cpp: * ace/Thread_Manager.cpp: * ace/Time_Request_Reply.cpp: * ace/Timeprobe.cpp: * ace/Timer_Hash.cpp: * ace/Timer_Hash_T.cpp: * ace/Timer_Heap.cpp: * ace/Timer_Heap_T.cpp: * ace/Timer_List.cpp: * ace/Timer_List_T.cpp: * ace/Timer_Queue.cpp: * ace/Timer_Queue_Adapters.cpp: * ace/Timer_Queue_T.cpp: * ace/Timer_Wheel.cpp: * ace/Timer_Wheel_T.cpp: * ace/TkReactor.cpp: * ace/Token.cpp: * ace/Token_Collection.cpp: * ace/Token_Invariants.cpp: * ace/Token_Manager.cpp: * ace/Token_Request_Reply.cpp: * ace/Trace.cpp: * ace/Typed_SV_Message.cpp: * ace/Typed_SV_Message_Queue.cpp: * ace/UNIX_Addr.cpp: * ace/UPIPE_Acceptor.cpp: * ace/UPIPE_Connector.cpp: * ace/UPIPE_Stream.cpp: * ace/WFMO_Reactor.cpp: * ace/WIN32_Asynch_IO.cpp: * ace/WIN32_Proactor.cpp: * ace/XTI_ATM_Mcast.cpp: * ace/XtReactor.cpp: * include/makeinclude/ace_flags.bor: * ace/ace_dll.dsp: * ace/ace_lib.dsp: The definition of ACE_BUILD_DLL was moved from the .cpp files to the project files - so it is now handled like most of the other libraries in ACE and TAO. Tue Apr 18 21:32:21 2000 Douglas C. Schmidt * ace/OS.i (sema_init): Fixed another problem that required a cast to ACE_mutexattr_t *. Thanks to Priyanka for reporting this. Tue Apr 18 19:39:41 2000 Douglas C. Schmidt * ace/Synch.cpp, * ace/OS.cpp: Added a cast to ACE_mutexattr_t *. Thanks to Darrell for pointing this out. Tue Apr 18 15:18:53 2000 Douglas C. Schmidt * ace/OS.h, * ace/OS.i, * ace/Synch.h, * ace/Synch.cpp: Updated the ACE_OS::*mutex_init() methods (and the corresponding ACE_Thread_Mutex, ACE_Mutex, and ACE_Recursive_Thread_Mutex classes) so that they now take an optional ACE_mutexattr_t * rather than just a void *. This is nice because it makes it possible to pass in special attributes, such as the mutex prioceiling attribute, to the underlying pthreads mutex (assuming we're running on pthreads, of course). Thanks to lafortg@res.raytheon.com for motivating this. * ace/Containers_T.cpp (copy_nodes): Added a call to the allocator->malloc() rather than new. Thanks to Umar Syyid for reporting this. Tue Apr 18 14:06:32 2000 Jeff Parsons * ace/CDR_Stream.cpp: Patch to ACE_CDR::consolidate() sent in by Carlos, that fixes a bug reported by Harald Finster , and an added check for 0 value of the 'length' arg in read_array() and write_array(), that fixes [Bug 540], reported by Mathew Samuel . Tue Apr 18 11:47:57 2000 Ossama Othman * ace/SOCK_Connector.cpp: Removed inclusion of `ace/Handle_Set.h'. The ACE_SOCK_Connector doesn't directly use an ACE_Handle_Set. * ace/Makefile: Updated dependencies. Tue Apr 18 08:54:04 2000 Darrell Brunsch * bin/vc_filter.pl: Brand spankin' new filter script for Win32 auto build results. Sun Apr 16 22:24:34 2000 Douglas C. Schmidt * ACE-INSTALL.html: Updated the link for GNU make to be more specific. Thanks to Xiaojun Wu for reporting this. BTW, Xiaojun was the 900th contributor to ACE+TAO, so he gets a free copy of ACE+TAO! Mon Apr 17 20:10:18 2000 Vishal * ACE version 5.1.1 released. Mon Apr 17 16:33:17 2000 Ossama Othman * acconfig.h (ACE_LACKS_ACE_OTHER, ACE_LACKS_ACE_SVCCONF, ACE_LACKS_ACE_TOKEN): Added support for these macros. They are used when enabling subsetting. * configure.in: lseek64() and llseek() test has been moved to `m4/acinclude.m4'. Include `sys/types.h' when running the TLI/XTI tests. Some platforms use typedefs such as "ulong" but such typedefs may not be defined in the TLI/XTI headers. (ACE_HAS_BROKEN_T_ERROR): Corrected test for broken t_error(). A variable, "errmsg" was being passed to the t_error() call in the test, but the variable was declared as "ace_errmsg." Thanks to Roland Gigler for pointing this out. (ACE_MAJOR, ACE_MINOR, ACE_BETA): If any of these variables is evaluates to the empty string, then set it to zero. This fixes a problem that was occuring when the the ACE version contained no beta number (e.g. "5.1" instead "5.1.0"). Libtool didn't like the fact that one of the numbers was an empty string. * ace/Makefile.am (libACE_IPC_la_SOURCES, libACE_Other_la_SOURCES, HEADER_FILES, INLINE_FILES): Synchronized the sources associated with these Makefile variables with those in the classical ACE Makefile. * m4/acinclude.m4 (ACE_CHECK_LSEEK64): Moved checks for lseek64() and llseek() from configure.in to this file. The beginnings of a test for a 64 bit offset type have also been added, but that test is currently not in use. * m4/ace.m4 (ACE_COMPILATION_OPTIONS): Removed check for exception support in C compiler. It didn't make too much sense to check for exception support in a C compiler. Since exception support is disabled by default, make sure "-fno-exceptions" is set when using g++ with the default ACE exception configuration value. * m4/compiler.m4 (ACE_SET_COMPILER_FLAGS): Fixed typos where "$GXX" was used instead of "$CXX." "$GXX" is set to yes when GNU C++ is being used, and "$CXX" is set to the compiler being used (e.g. "c++"). Thanks to Rich Seibel for pointing this out. This also fixes a problem where "-fcheck-new" wasn't being added to the C++ flags ($CXXFLAGS). * m4/subsets.m4 (ACE_LACKS_ACE_OTHER, ACE_LACKS_ACE_SVCCONF, ACE_LACKS_ACE_TOKEN): When disabling the "Other," "SvcConf" and/or the "Token" subset, then define the corresponding preprocessor macro. Sat Apr 15 21:49:04 2000 Darrell Brunsch * ace/ACE.cpp: * apps/Gateway/Gateway/Options.cpp: Nick Pratt reported two cases where we were using sizeof some_string to figure out its length. This of course doesn't work when the string is a wide string, so they have been changed to account for the character size. * ace/ace_dll.dsp: * ace/ace_lib.dsp: * apps/gperf/src/gperf.dsp: * apps/gperf/src/gperf_lib.dsp: Changed around the order of the configurations so that in the default case (such as out of the box) the regular Debug version will be the current configuration. Sat Apr 15 19:35:57 2000 Darrell Brunsch (On behalf of Christopher Kohlhoff ) * ace/Makefile.bor: Added new file QoS_Manager.cpp. * ace/Basic_Types.h: * ace/Timer_Queue_Adapters.h: Added missing pre/post includes. * include/makeinclude/ace_flags.bor: * include/makeinclude/build_example.bor: Updated for new orbsvcs libraries. Sat Apr 15 18:17:02 2000 Douglas C. Schmidt * apps/Gateway/Gateway/Concrete_Connection_Handlers.cpp: Fixed the handle_output() function so that it does the "Right Thing"[TM] on Windows NT. Win32 Winsock doesn't trigger multiple "You can write now" signals, so we have to assume that we can continue to write until we get another EWOULDBLOCK. Thanks to Nick Pratt Thu Apr 13 16:30:01 2000 David L. Levine * ace/config-sunos5.7.h: added #undef ACE_NEEDS_LWP_PRIO_SET. SunOS 5.7 no longer needs it, as shown by performance-tests/Misc/preempt (run as superuser). Thanks to John Foresteire for reporting this. Tue Apr 11 21:41:20 2000 Nanbor Wang * bin/auto_compile_win32.pl: Updated the lists of workspaces/projects to build. Tue Apr 11 16:15:31 2000 David L. Levine * ace/OS.cpp: moved ACE_Thread_Exit::is_constructed_ definition so that it's seen on all platforms, not just those that are ACE_MT_SAFE. Fixes: Mon Apr 10 07:30:22 2000 John Rodgers Thanks to Vishal for reporting it. Tue Apr 11 13:57:11 2000 Douglas C. Schmidt * ace/Synch_T.cpp: Make sure to cast the "type" argument to "short" to avoid overload confusions by certain compilers. Thanks to Charles Taurines for reporting this. Tue Apr 11 12:52:04 2000 Vishal Kachroo * ace/SOCK_Dgram_Mcast.cpp (subscribe): Removed the #ifdef for template instantiation. Tue Apr 11 11:32:03 2000 Chad Elliott * bin/ACEutils.pm Refactored duplicate test code into ACEutils.pm Mon Apr 10 19:45:32 2000 Vishal Kachroo * ace/SOCK_Dgram_Mcast.cpp (subscribe): Added a #ifdef to get past a g++ error. I am looking into the right way to do this. Mon Apr 10 17:37:53 2000 Nanbor Wang * ace/config-freebsd-pthread.h: Addplied John Aughey 's patch for FreeBSD 4.0. Mon Apr 10 07:30:22 2000 John Rodgers * ace/OS.{h,cpp},Thread_Manager.cpp (instance,~ACE_Thread_Exit): added a state variable, is_constructed_, to ACE_Thread_Exit. instance () sets it, ~ACE_Thread_Exit () clears it. This allows ACE::init () to be called after ACE::fini (), because a new ACE_Thread_Exit instance will be created. [Bug 526] Sun Apr 9 14:16:23 2000 James CE Johnson * docs/tutorials/015/page01.html : Thanks to Conrad Hughes for pointing out that a real implementation would compress before encrypting since encrypted data shouldn't really be compressible anyway. * docs/tutorials/015/Protocol_Stream.cpp (open): Reorder the module pushing so that encryption happens before compression. * docs/tutorials/015/Crypt.cpp : * docs/tutorials/015/Compressor.cpp : Add a few extra bytes when creating the new message blocks. A real implementation would probably need that. Sun Apr 09 00:04:25 2000 Nanbor Wang * ace/Malloc_T.cpp (remove): Removed invocation of destructor to . It is a member of Control_Block and does not require explicit initialization/destruction. This was causing ACE not to compile when ACE_HAS_MALLOC_STATS was defined. Thanks to John Smyder for reporting the problem. * ace/Malloc_T.cpp (open): Removed invocation of contructor to for the same reason. Fri Apr 07 23:32:16 2000 Nanbor Wang * ace/ace_dll.dsp: * ace/ace_lib.dsp: Added QoS_Manager.* into project files. Thu Apr 6 07:29:48 2000 Douglas C. Schmidt * ace/Token.h (ACE_Token): Clarified the recursive semantics of ACE_Token. Thanks to Antti Valtokari for reporting this. Wed Apr 5 22:59:58 2000 Douglas C. Schmidt * ace/config-sunos5.5.h: Moved the ACE_HAS_USING_KEYWORD into the part of this header file that's enabled when __SUNPRO_CC_COMPAT >= 5 is defined. Thanks to Susan Liebeskind for reporting this. Tue Apr 4 23:50:02 2000 Douglas C. Schmidt * ace/ACE.cpp (sock_error): Changed "int error" to "ssize_t error" to be consistent... Tue Apr 4 20:19:36 2000 * ace/Acceptor.cpp: Modified the implementation of ACE_Acceptor::open() and ACE_Acceptor::accept_svc_handler() so that the peer acceptor's handle is set into non-blocking mode. This is a safe-guard against the race condition that can otherwise occur between the time when