Thu Sep 2 22:21:35 2004 Ossama Othman * tao/Exception.h: * tao/Exception.i: * tao/Exception.cpp: Moved CORBA::SystemException and CORBA::UserException related code to separate files to improve compile times. (Exception): Improved exception safety by making "id_" and "name_" attributes CORBA::String_vars instead of "char *"s. * tao/SystemException.h: * tao/SystemException.inl: * tao/SystemException.cpp: Moved CORBA::SystemException class and related code to this set of files to improve compile-times of sources that don't need the declarations and definitions now in these files. (SystemException): Fixed problem where SystemException attributes were not initialized in the default constructor, as required by the C++ mapping. * tao/UserException.h: * tao/UserException.inl: * tao/UserException.cpp: Moved CORBA::SystemException class and related code to this set of files. This was done mostly for the sake of consistency since this is not an expensive set of sources in terms of compile times and footprint. * tao/Acceptor_Registry.cpp: * tao/Adapter.cpp: * tao/Adapter.h: * tao/Any_Basic_Impl.cpp: * tao/Any_Dual_Impl_T.cpp: * tao/Any_Impl.cpp: * tao/Any_Impl_T.cpp: * tao/Any_SystemException.cpp: * tao/Any_Unknown_IDL_Type.cpp: * tao/BiDir_Adapter.h: * tao/BoundsC.cpp: * tao/Buffering_Constraint_Policy.cpp: * tao/CDR.cpp: * tao/CDR_Encaps_Codec.cpp: * tao/CORBALOC_Parser.cpp: * tao/CORBANAME_Parser.cpp: * tao/ClientRequestInfo.inl: * tao/ClientRequestInfo_i.inl: * tao/CodecFactory.cpp: * tao/CodecFactory_ORBInitializer.cpp: * tao/Codeset_Manager.cpp: * tao/Connector_Registry.cpp: * tao/DLL_Parser.cpp: * tao/Default_Stub_Factory.cpp: * tao/Environment.cpp: * tao/GIOP_Message_Base.cpp: * tao/GIOP_Message_Generator_Parser.h: * tao/GIOP_Message_Generator_Parser_10.cpp: * tao/GIOP_Message_Lite.cpp: * tao/GIOP_Message_Lite.h: * tao/IIOP_Connector.cpp: * tao/IIOP_Profile.cpp: * tao/IORInterceptor_Adapter.h: * tao/IORInterceptor_Adapter_Factory.h: * tao/IOR_Parser.h: * tao/Interceptor_List.cpp: * tao/Invocation_Base.cpp: * tao/Invocation_Endpoint_Selectors.cpp: * tao/LocalObject.cpp: * tao/MProfile.cpp: * tao/NVList.cpp: * tao/ORB.cpp: * tao/ORB.h: * tao/ORBInitializer_Registry.cpp: * tao/Object_Loader.h: * tao/Object_Ref_Table.cpp: * tao/Object_T.cpp: * tao/PICurrent.cpp: * tao/PICurrent_ORBInitializer.cpp: * tao/PolicyFactory_Registry.cpp: * tao/Policy_ForwardA.cpp: * tao/Policy_Set.cpp: * tao/PollableC.cpp: * tao/Profile.cpp: * tao/Profile_Transport_Resolver.cpp: * tao/Profile_Transport_Resolver.h: * tao/Remote_Object_Proxy_Broker.cpp: * tao/RequestInfo_Util.cpp: * tao/Request_Dispatcher.h: * tao/Service_Callbacks.cpp: * tao/Services_Activate.h: * tao/Stub.cpp: * tao/Synch_Invocation.cpp: * tao/Synch_Invocation.h: * tao/TAO_Server_Request.cpp: * tao/Thread_Lane_Resources.cpp: * tao/Transport_Connector.cpp: * tao/TypeCodeFactory_Adapter.h: * tao/Typecode_Constants.cpp: * tao/WrongTransactionA.cpp: * tao/WrongTransactionC.cpp: * tao/append.cpp: * tao/corba.h: * tao/operation_details.cpp: * tao/operation_details.h: * tao/skip.cpp: * tao/Messaging/AMH_Response_Handler.cpp: * tao/PortableServer/Object_Adapter.i: * tao/PortableServer/POAManager.i: * tao/TypeCodeFactory/TypeCodeFactory_i.cpp: Include "tao/SystemException.h" and/or "tao/UserException.h" to pull in CORBA::{System,User}Exception class declaration. * tao/Array_VarOut_T.h: * tao/Array_VarOut_T.inl: * tao/Array_VarOut_T.cpp: * tao/CurrentC.cpp: * tao/CurrentC.h: * tao/DomainC.cpp: * tao/DomainC.h: * tao/Fixed_Array_Argument_T.cpp: * tao/IOP_CodecC.cpp: * tao/IOP_CodecC.h: * tao/ORBInitInfo.cpp: * tao/ORBInitInfo.h: * tao/Object.cpp: * tao/Object.h: * tao/Object_Argument_T.cpp: * tao/Objref_VarOut_T.cpp: * tao/Objref_VarOut_T.h: * tao/PolicyC.cpp: * tao/PolicyC.h: * tao/Policy_ForwardC.cpp: * tao/Policy_ForwardC.h: * tao/PortableInterceptorC.cpp: * tao/PortableInterceptorC.h: * tao/Sequence_T.cpp: * tao/Sequence_T.i: * tao/TAOC.cpp: * tao/TAOC.h: * tao/Typecode.cpp: * tao/Typecode.h: * tao/Var_Array_Argument_T.cpp: * tao/BiDir_GIOP/BiDirPolicyC.cpp: * tao/BiDir_GIOP/BiDirPolicyC.h: * tao/DynamicAny/DynamicAnyC.cpp: * tao/DynamicAny/DynamicAnyC.h: * tao/DynamicInterface/Context.cpp: * tao/DynamicInterface/ExceptionList.cpp: * tao/DynamicInterface/Unknown_User_Exception.cpp: * tao/DynamicInterface/Unknown_User_Exception.h: * tao/IFR_Client/IFR_BaseC.cpp: * tao/IFR_Client/IFR_BaseC.h: * tao/IFR_Client/IFR_BasicC.cpp: * tao/IFR_Client/IFR_BasicC.h: * tao/IFR_Client/IFR_ComponentsC.cpp: * tao/IFR_Client/IFR_ComponentsC.h: * tao/IFR_Client/IFR_ExtendedC.cpp: * tao/IFR_Client/IFR_ExtendedC.h: * tao/IORInterceptor/IORInfoC.cpp: * tao/IORInterceptor/IORInfoC.h: * tao/IORInterceptor/IORInterceptorC.cpp: * tao/IORInterceptor/IORInterceptorC.h: * tao/IORTable/IORTableC.cpp: * tao/IORTable/IORTableC.h: * tao/Messaging/AMH_Response_Handler.cpp: * tao/Messaging/MessagingC.cpp: * tao/Messaging/MessagingC.h: * tao/Messaging/Messaging_No_ImplC.cpp: * tao/Messaging/Messaging_No_ImplC.h: * tao/Messaging/Messaging_RT_PolicyC.cpp: * tao/Messaging/Messaging_RT_PolicyC.h: * tao/Messaging/Messaging_SyncScope_PolicyC.cpp: * tao/Messaging/Messaging_SyncScope_PolicyC.h: * tao/Messaging/TAO_ExtC.cpp: * tao/Messaging/TAO_ExtC.h: * tao/ObjRefTemplate/Default_ORTC.cpp: * tao/ObjRefTemplate/Default_ORTC.h: * tao/ObjRefTemplate/ObjectReferenceTemplateC.cpp: * tao/ObjRefTemplate/ObjectReferenceTemplateC.h: * tao/PortableServer/ImR_LocatorC.cpp: * tao/PortableServer/ImR_LocatorC.h: * tao/PortableServer/ImplRepoC.cpp: * tao/PortableServer/ImplRepoC.h: * tao/PortableServer/PortableServerC.cpp: * tao/PortableServer/PortableServerC.h: * tao/RTCORBA/RTCORBAC.cpp: * tao/RTCORBA/RTCORBAC.h: * tao/RTScheduling/RTSchedulerC.cpp: * tao/RTScheduling/RTSchedulerC.h: * tao/Valuetype/Sequence_T.cpp: * tao/Valuetype/Sequence_T.inl: * tao/Valuetype/ValueBase.cpp: * tao/Valuetype/ValueBase.h: * tao/Valuetype/ValueFactory.cpp: * tao/Valuetype/ValueFactory.h: * tao/Valuetype/Value_VarOut_T.cpp: * tao/Valuetype/Value_VarOut_T.h: Removed "tao_" prefix from methods in the TAO traits templates used in these sources. It is redundant since the traits templates are TAO-specific, and in the TAO namespace. * tao/ORB_Core.cpp (check_shutdown): * tao/ORB_Core.i (check_shutdown): Uninlined this method so that we can avoid including "tao/SystemException.h" in the inline source file. * tao/tao.mpc: Added new SystemException.cpp and UserException.cpp files to the ORB_Core source list. * TAO_IDL/be/be_codegen.cpp: Updated conditional Exception.h header include directive to generate include directives for tao/SystemException.h and tao/UserException.h instead. This code is still commented out, as it was previously, and will be enabled once we reduce included headers in tao/ORB.h. * TAO_IDL/be/be_codegen.cpp: * TAO_IDL/be/be_visitor_traits.cpp: * TAO_IDL/be/be_visitor_array/array_ci.cpp: * TAO_IDL/be/be_visitor_component/component_cs.cpp: * TAO_IDL/be/be_visitor_field/cdr_op_cs.cpp: * TAO_IDL/be/be_visitor_interface/interface_cs.cpp: * TAO_IDL/be/be_visitor_sequence/cdr_op_cs.cpp: * TAO_IDL/be/be_visitor_union_branch/cdr_op_cs.cpp: * TAO_IDL/be/be_visitor_union_branch/public_assign_cs.cpp: * TAO_IDL/be/be_visitor_union_branch/public_ci.cpp: * TAO_IDL/be/be_visitor_valuetype/valuetype_cs.cpp: Removed "tao_" prefix from methods in the TAO traits templates and their uses generated by TAO_IDL. It is redundant since the traits templates are TAO-specific, and in the TAO namespace. Thu Sep 2 14:41:42 2004 Chris Cleeland * tao/Connection_Handler.cpp (handle_input_eh): Updated to be consistent with the OCI 1.3a version. Somehow during the merge an older version from the OCI repo got in here. Thanks to Johnny Willemsen for spotting this. * tao/default_client.cpp (parse_args): Changed ACE_LIB_TEXT usage to ACE_TEXT. The merge of MT_NOUPCALL brought in uses of the ACE_LIB_TEXT macro. Thu Sep 2 09:41:28 2004 Dale Wilson * interop-tests/wchar/interop_wchar_i.cpp: Add a cast to keep the TRUE64 compiler from complaining that a wchar_t * cannot be used for a const CORBA::WChar_T * argument. Thu Sep 2 08:52:12 UTC 2004 Johnny Willemsen * tao/PortableServer/ServerRequestInfo.cpp: Replaced ACE cast macros with normal C++ casts Thu Sep 2 07:22:12 UTC 2004 Johnny Willemsen * tao/PortableServer/Servant_Base.cpp: Replaced ACE cast macros with normal C++ casts Wed Sep 1 12:55:41 2004 J.T. Conklin * docs/libraries.html: Removed duplicate DynamicInterface entry. * docs/orbsvcs.html: Fixed Sched service directory Wed Sep 1 10:42:38 2004 Chad Elliott * docs/cec_options.html: * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerControl.h: * orbsvcs/orbsvcs/CosEvent/CEC_ConsumerControl.cpp: * orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.h: * orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.i: * orbsvcs/orbsvcs/CosEvent/CEC_Default_Factory.cpp: * orbsvcs/orbsvcs/CosEvent/CEC_Defaults.h: * orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.h: * orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.i: * orbsvcs/orbsvcs/CosEvent/CEC_EventChannel.cpp: * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullConsumer.cpp: * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPullSupplier.cpp: * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushConsumer.cpp: * orbsvcs/orbsvcs/CosEvent/CEC_ProxyPushSupplier.cpp: * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_ConsumerControl.h: * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_ConsumerControl.cpp: * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_Pulling_Strategy.h: * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_Pulling_Strategy.cpp: * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_SupplierControl.h: * orbsvcs/orbsvcs/CosEvent/CEC_Reactive_SupplierControl.cpp: * orbsvcs/orbsvcs/CosEvent/CEC_SupplierControl.h: * orbsvcs/orbsvcs/CosEvent/CEC_SupplierControl.cpp: Added a configurator option to determine the number of retries before removing an unresponsive consumer or supplier from the CosEvent Service. This option is fully documented in docs/cec_options.html. Wed Sep 1 11:36:12 UTC 2004 Johnny Willemsen * tao/Policy_Set.h: Replaced html style with doxygen style Wed Sep 1 06:20:12 UTC 2004 Johnny Willemsen * tao/Transport.cpp (dump_iov): Reverted my change of yesterday, this is an ACE_OS::sprintf and no ACE_DEBUG, so %P and %t don't work. Tue Aug 31 17:53:30 2004 J.T. Conklin * orbsvcs/orbsvcs/Makefile.am: Update after Portable Server refactor changes. Tue Aug 31 19:01:12 UTC 2004 Johnny Willemsen * orbsvcs/tests/AVStreams/Full_Profile/ftp.cpp: When the input file cannot be opened, log an error and return -1 instead of going on further without an input file, which results in strange crashes. Tue Aug 31 10:00:48 2004 Chad Elliott * TAO_IDL/be/be_visitor_array/array_ch.cpp: When an array is not nested inside a class we need to specify the storage type as the TAO_EXPORT_MACRO to get the functions required for copying, freeing, duplicating and allocating exported into the dll for Windows. Tue Aug 31 14:55:12 UTC 2004 Johnny Willemsen * tao/GIOP_Message_Base.cpp: Updated some debug messages so that the formatting matches other messages in TAO and when the log is read, it is clear where this message is coming from. Tue Aug 31 09:06:40 2004 Dale Wilson * interop-tests/wchar/interop_wchar_i.cpp: Another exception emulation problem. Tue Aug 31 13:43:12 UTC 2004 Johnny Willemsen * tao/Transport.cpp (dump_iov): Updated formatting of debug messages so that it matches other debug lines Tue Aug 31 13:25:12 UTC 2004 Johnny Willemsen * orbsvcs/examples/ORT/run_test.pl: New perl script that is usefull to automatically run this example, the example itself it still broken, working on it but the script saves a lot of test time Tue Aug 31 11:53:12 UTC 2004 Johnny Willemsen * tests/Big_Oneways/server.cpp: Added some more debug statements so that we can better track the steps of the server Tue Aug 31 09:23:12 UTC 2004 Johnny Willemsen * docs/Options.html: Removed trailing " which was incorrect Mon Aug 30 23:03:48 2004 J.T. Conklin * tao/Makefile.am: Update after Portable Server refactor changes. Mon Aug 30 18:14:49 2004 Jeff Parsons * TAO_IDL/ast/ast_expression.cpp: * TAO_IDL/include/ast_expression.h: * TAO_IDL/include/utl_err.h: * TAO_IDL/util/utl_err.cpp: Fixed handling of boolean IDL constants so that 'true' or 'false' is generated on the rhs, instead of '0' or '1' as formerly. Also added a check for the use of infix operators in an expression with types other than integer or floating point, (illegal as per CORBA 3.0.3 section 3.10.2), and a new error to report if a violation is found. This last fix closes [BUGID:1682]. Mon Aug 30 12:27:38 2004 Ossama Othman * orbsvcs/examples/Security/Send_File/README: Added note that "-SSLNoProtection" flag must be set when running IIOP client to SSLIOP server test. Thanks to Jules Colding for pointing out the inconsistency. * orbsvcs/examples/Security/Send_File/server.conf: Enabled "-SSLNoProtection" flag to server configuration to allow IIOP client to SSLIOP server test to work as documented. Mon Aug 30 14:24:20 2004 Dale Wilson * interop-tests/wchar/interop_wchar_i.cpp: Build correctly with exception emulation. Mon Aug 30 12:19:04 2004 Chris Cleeland * performance-tests/Sequence_Latency/AMH_Single_Threaded/Single_Threaded.mpc: Reordered base projects, putting amh last, to resolve generation problems on RH80_Static_Core. Mon Aug 30 15:33:12 UTC 2004 Johnny Willemsen * tao/Makefile.am: Updated this file for the moving of AMH_Response_Handler, forgot this file this morning Mon Aug 30 15:29:07 2004 Balachandran Natarajan * tao/ORB.h (CORBA): Added documentation for run () with a timeout parameter. Thanks to Jules Colding for motivating this. Mon Aug 30 08:18:12 UTC 2004 Johnny Willemsen * tests/Big_Oneways/Session.cpp: When catching an exception in the svc method print out the number of messages sent. This test fails in some builds, maybe it is just taking a long time, this should give us some more info. Mon Aug 30 08:18:12 UTC 2004 Johnny Willemsen * tests/Big_Twoways/Session.cpp: When catching an exception in the svc method print out the number of messages sent. This test fails in some builds, maybe it is just taking a long time, this should give us some more info. Mon Aug 30 07:11:12 UTC 2004 Johnny Willemsen * tao/PortableServer/AMH_Response_Handler.{h,cpp}: * tao/Messaging/AMH_Response_Handler.{h,cpp}: Moved the AMH Response Handler class from PortableServer to Messaging, when using AMH we need Messaging because of the ExceptionHolder. Moving this class doesn't change anything then when you use AMH, but when not using AMH, the portableserver library will be smaller. * TAO_IDL/be/be_codegen.cpp: Updated include path of AMH_Response_Handler.h Fri Aug 27 23:08:33 2004 Balachandran Natarajan * TAO_IDL/fe/idl.ll: Fix for BUG 1683. Jeff prepared this lex file. I just generated the code, and applied the patches. * TAO_IDL/fe/lex.yy.cpp: Regenerated code for the new lex file. * TAO_IDL/fe/lex.yy.cpp.diff: Another useless diff that we maintain which we cannot use! The above change took only 4-5 hours! Anyway, we have tested on Linux and things seem to be working. Let us see how other platforms behave. * TAO_IDL/util/utl_scope.cpp: Fixed unused variable warnings. Fri Aug 27 13:34:58 2004 J.T. Conklin * utils/NamingViewer/NamingViewerDlg.cpp: Changed #include "Naming/Naming_Server.h" to #include "Naming/Naming_Client.h". Fri Aug 27 18:33:12 UTC 2004 Johnny Willemsen * orbsvcs/orbsvcs/CosLoadBalancing.mpc: Added iorinterceptor as base project Fri Aug 27 16:36:12 UTC 2004 Johnny Willemsen * tao/ObjRefTemplate/ObjectReferenceTemplate_i.cpp: Added .in() to silence gcc warning about better conversion Fri Aug 27 10:07:17 2004 Jeff Parsons * orbsvcs/orbsvcs/IFRService/Contained_i.cpp: * orbsvcs/orbsvcs/IFRService/Container_i.cpp: * orbsvcs/orbsvcs/IFRService/ExtValueDef_i.cpp: * orbsvcs/orbsvcs/IFRService/IFR_Service_Utils.cpp: * orbsvcs/orbsvcs/IFRService/InterfaceDef_i.cpp: * orbsvcs/orbsvcs/IFRService/PrimitiveDef_i.cpp: * orbsvcs/orbsvcs/IFRService/Repository_i.cpp: * orbsvcs/orbsvcs/IFRService/ValueDef_i.cpp: Added logical ORs of CORBA::OMGVMCID to the minor codes in raised exceptions. Thanks to Ossama Othman for pointing out this oversight. Fri Aug 27 14:07:12 UTC 2004 Johnny Willemsen * orbsvcs/examples/ORT/ORT.mpc: Added iorinterceptor as base of the server project * orbsvcs/examples/ORT/Object_Factory_i.cpp: Commented out some code that uses a non portable way of getting the ORT Factory, this now doesn't work anymore. I am working on changing this example so that it works again, but for a day or so comment out the incorrect code so that we get green build results again Fri Aug 27 10:19:12 UTC 2004 Johnny Willemsen * orbsvcs/orbsvcs/Security.mpc: SecurityLevel3.idl uses valuetype, so add valuetype as base project. Fri Aug 27 09:58:12 UTC 2004 Johnny Willemsen * orbsvcs/tests/Concurrency/CC_command.cpp: Added #include "ace/Log_Msg.h" Fri Aug 27 01:12:59 2004 Ossama Othman * tao/ORB_Table.h: No need to include "tao/corbafwd.h". * tao/TC_Constants_Forward.h: Added missing "tao/TAO_Export.h" include. Fri Aug 27 08:05:12 UTC 2004 Johnny Willemsen Integrated ORTrefactor_2 branch into main. Previously the PortableServer library was dependent on IORInterceptor, ObjRefTemplate and Valuetype, this dependency has been removed. PortableServer doesn't use these libs anymore, but IORInterceptor, ObjRefTemplate and Valuetype are now dependent on PortableServer. This will reduce the size of corba servers which don't use IORInterceptor, ObjRefTemplate and Valuetype. * tao/Makefile.am: Updated for changes below. Fri Aug 27 06:02:12 UTC 2004 Johnny Willemsen * tao/PortableServer/POA.cpp (ORT_adapter_i): Readded the check whether ort_adapter_ is not null, we call this method from _i methods and we need this check for that invocation path Thu Aug 26 17:07:52 2004 Balachandran Natarajan * tao/ObjRefTemplate/ORT_Adapter_Factory_Impl.cpp: * tao/ObjRefTemplate/ORT_Adapter_Factory_Impl.h: * tao/ObjRefTemplate/ORT_Adapter_Impl.cpp: * tao/PortableServer/POA.cpp: * tao/PortableServer/POA.i: * tao/PortableServer/PortableServer.pidl: Cosmtic changes after a review. Thu Aug 26 13:37:12 UTC 2004 Johnny Willemsen * tao/ORB_Core.cpp: Fix for emulated exceptions builds Thu Aug 26 13:27:12 UTC 2004 Johnny Willemsen * tao/PortableServer/POA.{h,cpp,i}: * tao/IORInterceptor/IORInfo.cpp: * tao/ObjRefTemplate/ORT_Adapter_Factory_Impl.cpp: * tao/ObjRefTemplate/ORT_Adapter_Impl.cpp: Fixes for emulated exceptions builds Thu Aug 26 09:05:12 UTC 2004 Johnny Willemsen * tao/PortableServer/POA.cpp: Changed invoke_key_to_helper to invoke_key_to_helper_i, this is always called from _i methods, and also use then ORT_adapter_i instead of ORT_adapter Thu Aug 26 08:05:12 UTC 2004 Johnny Willemsen * tao/PortableServer/POA.{h,cpp,i}: Shorted some method names, also added a get_adapter_template_i() with which I can try to get an ORT Adapter without that it tries to grep the POA lock, we also have the lock in destroy_i() and we can't grep it another time because it is non recursive. Wed Aug 25 13:14:12 UTC 2004 Johnny Willemsen * tao/PortableServer/POA.cpp (object_reference_template_adapter): When we don't have a adapter, first see if we have a factory before locking the POA, in case we then get called from POA::destroy_i() and we don't have an adapter and not factory we don't grep the lock and don't get a deadlock, have to solve this better, but this way I can continue testing Wed Aug 25 12:50:12 UTC 2004 Johnny Willemsen * tao/ORB_Core.cpp (ior_interceptor_adapter): Added ACE_CHECK_RETURN after the ACE_ENDTRY as last check for uncaught exceptions * tao/PortableServer/POA.cpp (object_reference_template_adapter): Changed logic that when adapter_name_i fails we don't have a not activated adapter. The guard here seems to cause a problem on Linux Wed Aug 25 12:35:12 UTC 2004 Johnny Willemsen * tao/PortableServer/POA.i: Added missing returns statements Wed Aug 25 12:32:12 UTC 2004 Johnny Willemsen * tao/PortableServer/POA.cpp (object_reference_template_adapter): Fixed for emulated exception case Wed Aug 25 10:12:12 UTC 2004 Johnny Willemsen * tao/PortableServer/POA.i: Removed the throw from get_obj_ref_factory() and get_adapter_template() when we can't retrieve these, exceptions are already thrown in the IORInterceptor and we call the get_adapter_template() also from the POA and we don't want to have an exception then. * tao/PortableServer/POA.cpp: In the destroy_i() check whether get_adapter_template() doesn't return zero, if it returns zero, then we don't have an adapter_template, so don't add it to the array, this can happen when we don't load the ORT library. In the object_reference_template_adapter() method use a POA Guard that doesn't check for closure, this method can be called by destroy_i() when we don't have an ORT library loaded and then we don't want to get an exception by the guard that we are closing Tue Aug 24 14:22:12 UTC 2004 Johnny Willemsen * tao/PortableServer/POA.cpp (destroy_i): Changed the logic of informing the IORInterceptors of state changed, first iterate through all the child_poa's, set their state to inactive and gather the ort adapters, then in one call inform all IORInterceptors, then destroy the child poa's and as last step destroy ourself and only notify that this poa has changed to non_existent, each child POA will have done this already for itself. Tue Aug 24 13:23:12 UTC 2004 Johnny Willemsen * tao/ObjRefTemplate/ORT_Adapter_Impl.{h,cpp} * tao/ObjRefTemplate/ObjectReferenceTemplate_i.{h,cpp} * tao/PortableServer/ORT_Adapter.h: * tao/PortableServer/POA.cpp: Instead of passing and storing a TAO_POA*, pass a PortableServer::POA_ptr, duplicate that and store it in a PortableServer::POA_var. At the moment the ORT adapter is then destructed we automatically drop the refcount on the POA and we don't have the risk the POA is destructed before the ORT adapter is destructed. There is no need anymore then for the poa() method to set the TAO_POA* to zero. Tue Aug 24 12:45:12 UTC 2004 Johnny Willemsen * tao/PortableServer/POA.cpp: Added todo with activation of ort_adapter because we hold the lock there Tue Aug 24 10:11:12 UTC 2004 Johnny Willemsen The ORTrefactor branch is now ORTrefactor_2 and the compile archive is branched now. * tests/Abstract_Interface/Abstract_Interface.mpc: Added missing base projects * tests/ORT/ORT.mpc: * tests/Portable_Interceptors/IORInterceptor/PI_IORInterceptor.mpc: * tests/Portable_Interceptors/ORB_Shutdown/PI_ORB_Shutdown.mpc: Added missing base projects and removed not needed idlflags * tao/PortableServer/*C.i: Renamed all generated .i files to .inl * tao/ObjRefTemplate/ObjectReferenceTemplate_*.*: Renamed all to ORT_*.*, moved classes to TAO namespace and shortened classnames * tao/PortableServer/POA.h: Make TAO_IORInfo a friend and make the methods that this class needs protected instead of public. * tao/Messaging.mpc: Messaging is dependent on valuetype Mon Aug 23 18:33:59 2004 Balachandran Natarajan * tao/Thread_Per_Connection_Handler.cpp: Fixed a compile error with the latest version of ACE. This has been fixed in the main trunk. * tao/IORInterceptor/IORInterceptor_List.cpp: * tao/IORInterceptor/IORInterceptor_List.h: * tao/ObjRefTemplate/ObjectReferenceTemplate_Adapter_Factory_Impl.cpp: * tao/ObjRefTemplate/ObjectReferenceTemplate_Adapter_Factory_Impl.h: * tao/ObjRefTemplate/ObjectReferenceTemplate_Adapter_Impl.cpp: * tao/ObjRefTemplate/ObjectReferenceTemplate_Adapter_Impl.h: * tao/ObjRefTemplate/ObjectReferenceTemplate_Adapter_Impl.inl: * tao/ObjRefTemplate/ObjectReferenceTemplate_i.cpp: * tao/ObjRefTemplate/ObjectReferenceTemplate_i.h: * tao/ObjRefTemplate/ObjectReferenceTemplate_i.inl: * tao/PortableServer/ObjectReferenceTemplate_Adapter.cpp: * tao/PortableServer/ObjectReferenceTemplate_Adapter.h: * tao/PortableServer/ObjectReferenceTemplate_Adapter_Factory.h: * tao/PortableServer/POA.cpp: * tao/PortableServer/POA.h: Added a number of comments and suggestions for Johnny. The significant among them are: - adding implementations in the TAO namespace. The TAO_* naming should be killed. - Make the names of the classes and file names shorter. The existing makes things harder to read and find the relation ships. I have done a few. I have left the rest for Johnny as homework :-) Mon Aug 23 12:26:12 UTC 2004 Johnny Willemsen * tao/IORInterceptor/IORInterceptor_List.cpp: When copying the array into the sequence to an add_ref on each of array members. Have to look a little bit more at this, but now the tests doesn't crash, but I think I maybe have a leak now somewhere. Fri Aug 20 14:02:12 UTC 2004 Johnny Willemsen * tao/PortableServer/POAManager.cpp: Corrected the variable to be passed Fri Aug 20 12:36:12 UTC 2004 Johnny Willemsen * tao/PortableInterceptor.pidl: * tao/IORInterceptor/IORInfo.pidl: Moved AdapterState constants from IORInfo to PortableInterceptor file * tao/PortableInterceptorC.h: * tao/IORInterceptor/IORInfoC.{h,cpp,inl}: Updated these files with changes above * tao/PortableServer/POA.cpp: * tao/PortableServer/POAManager.cpp: No need anymore to include IORInfoC.h to get AdapterState constants Fri Aug 20 12:14:12 UTC 2004 Johnny Willemsen * tao/PortableServer/POA.{h,cpp}: Include PI_ForwardC.h in header file, and PortableInterceptorC.h in the cpp file. Fri Aug 20 12:09:12 UTC 2004 Johnny Willemsen * tao/PortableServer/POA.cpp: Removed some commented out code and removed comment after include of IORInfoC.h, no good idea yet how to prevent this Fri Aug 20 12:05:12 UTC 2004 Johnny Willemsen * tao/PortableServer/POAManager.cpp: Removed not needed include of Interceptor_List Fri Aug 20 11:44:12 UTC 2004 Johnny Willemsen * tao/IORInterceptor.mpc: IORInterceptor is now dependent on PortableServer * tao/IORInterceptor_Adapter.h: Added several new pure virtual methods that must be implemented by the real adapter implementations * tao/ORB_Core.{h,cpp}: Removed ior_interceptor_list(), make ior_interceptor_adapter() public, the POA will just retrieve the ior_interceptor_adapter from the ORB core and will use it then from then. * tao/PortableServer.mpc: PortableServer is not dependent on IORInterceptor anymore. * tao/IORInterceptor/IORInterceptor_Adapter_Factory_Impl.cpp: Initialise pointer with 0. * tao/IORInterceptor/IORInterceptor_Adapter_Impl.{h,cpp}: Implemented new pure virtual methods from the base, this code was previously in the POA, but couples the POA to the IORInterceptor, by moving it here we can decouple it * tao/PortableServer/POA.cpp: * tao/PortableServer/POAManager.cpp: Instead of handling IORInterceptors here, just try to retrieve the IORInterceptor adapter from the ORB Core and pass the call to the adapter, this removes the dependency of the POA on IORInterceptor * tao/PortableServer/IORInfo.{h,cpp,inl}: * tao/IORInterceptor/IORInfo.{h,cpp,inl}: Moved this class from PortableServer to IORInterceptor, because of the changes above the usage of IORInfo is restricted to the IORInterceptor library Fri Aug 20 07:59:12 UTC 2004 Johnny Willemsen * tao/IORInterceptor/IORInterceptor.pidl: * tao/IORInterceptor/IORInfo.pidl: Moved IORInfo interface to its own file * tao/IORInterceptor/IORInterceptorC.{h,cpp,i}: Regenerated * tao/IORInterceptor/IORInfoC.{h,cpp,i}: New generated files * tao/PortableServer/IORInfo.h: Include IORInfoC.h instead of IORInterceptorC.h Thu Aug 19 17:58:12 UTC 2004 Johnny Willemsen * tao/PI_Forward.pidl: Moved AdapterManagerId and AdapterState typedefs to this file * tao/PI_ForwardC.{h,cpp,i,inl}: Regenerated these files, replaced .i with .inl file * tao/ObjRefTemplate/ObjectReferenceTemplate.pidl: No need to include orb.idl, removed AdapterMangerId and AdapterState, these moved to other places * tao/ObjRefTemplate/Attic/ObjectReferenceTemplate_Adapter_Impl.cpp: Added missing .in() * tao/ObjRefTemplate/ObjectReferenceTemplateC.{h,cpp,i,inl}: Regenerated these files, replaced .i with .inl file * tao/PortableServer/POA.h: Fixed include * tao/PortableServer/POA_Manager.h: No need to include ObjectReferenceTemplaceC.h now the typedefs are in PI_Forward * tao/IORInterceptor/IORInterceptor.pidl: Moved AdapterState constants to this file * tao/IORInterceptor/IORInterceptorC.{h,cpp,i,inl}: Regenerated these files * tao/diffs/ObjectReferenceTemplate.diff: No diffs need to be applied anymore, so zapped this file Wed Aug 18 13:33:12 UTC 2004 Johnny Willemsen * tao/PortableServer/POA.h: Removed some unneeded friends but had to make invoke_key_to_object public because we now need it from the ORT library, friend doesn't work anymore because it moved to a default servant we don't know anything about in this library, any other ideas? Wed Aug 18 12:28:12 UTC 2004 Johnny Willemsen * tao/IORInterceptor/IORInterceptor.pidl: * tao/IORInterceptor/IORInterceptorC.{h,cpp,i,inl}: Regenerated these files, no need to apply patches anymore, and use .inl file instead of .i files. * tao/PortableServer/ObjectReferenceTemplate_Adapter.h: Added typedef for a list of ORT Adapter pointers * tao/IORInterceptor/IORInterceptor_List.{h,cpp}: Removed typedef of array of ObjectReferenceTemplate*, include the ORT Adapter header file instead * tao/PorableServer.mpc: * tao/ObjRefTemplate.mpc: PortableServer library is not dependent on objreftemplate anymore but objreftemplate is dependent on portableserver * tao/ObjRefTemplate/ObjectReferneceTemplate_Adapter_Impl.{h,cpp,i}: * tao/ObjRefTemplate/ObjectReferenceTemplate_i.{h,cpp,i}: Split the adapter implementation and the ort_factory and ort_template. The adapter creates a TAO_ObjectReferenceTemplate which is a ort_template, which then also a ort_factory. The ort_factory can be replaced using IORInfo, for the identity methods the ort_template is used, until the ort_factory is changed from outside the ort_template is used, after that the new set one. Tue Aug 17 14:30:12 UTC 2004 Johnny Willemsen Checkin of rework until now, not happy with the interfaces yet, now the test app seems to work a little, I am going to review all changed interfaces again and improve things. * tao/POA.{h,cpp}: - Changed adapter_state_changed to use IORInterceptor_List functionality to call adapter_state_changed on all IORInterceptors - Changed access of some methods * tao/IORInfo.cpp: Commented out some add_refs on the ORT, this should be done in the ORT Adapter. Need to check this * tao/ObjRefTemplate/ObjectReferenceTemplate_Adapter_Factory.{h,cpp}: * tao/ObjRefTemplate/ObjectReferenceTemplate_Impl.{h,cpp,inl}: New files with first implementation Tue Aug 17 13:59:12 UTC 2004 Johnny Willemsen * tao/IORInterceptor/IORInterceptor_List/{h,cpp}: Added adapter_state_changed, this gets a normal TAO_ObjectReferenceTemplate_Array, converts this into a corba sequence and calls adapter_state_change for each interceptor. * tao/PortableServer/diffs/Default_ORT.diff: Zap this file Tue Aug 17 10:31:12 UTC 2004 Johnny Willemsen * tao/PortableServer/ObjectReferenceTemplate_Adapter.h: * tao/PortableServer/ObjectReferenceTemplate_Adapter_Factory.h: Corrected export macro Tue Aug 17 90:31:12 UTC 2004 Johnny Willemsen * tao/PortableServer/ObjectReferenceTemplate_Adapter_Factory.cpp: Fixed incorrect include * tao/PortableServer/ObjectReferenceTemplate_Adapter.h: - Added adapter_name as constructor argument - Added destroy() method, called by POA when this adapter is not needed anymore, adapter must do its own cleanup - Added activate() method with just a ORT* to activate the adapter with an existing factory. - Added get_adapter_template and get_obj_ref_factory to get the real servant, this is needed for the IORInterceptors * tao/PortableServer/POA.{h,cpp,i}: - Added invoke_key_to_object_helper() which will check for the ORT and if available will call that or will call invoke_key_to_object instead. - Added object_reference_template_adapter() which will check ir an ORT Adapter is already available, if not, tries to get an ORT Adapater Factory, if that is available, create a new ORT Adapter. - Added some doxygen grouping to group methods belonging to each other in one doxygen group. - Added ort_adapter_ member to store the ORT Adapter when we have retrieved one. - Removed set_adapter_template() from the header file, there is no implementation of this method and it is not needed - Added TAO_POA_Static_Resources to store the name of the ORT factory, used the TAO_ORB_Core_Static_Resources but I didn't it put it there because the ORB_Core doesn't need to know anything or ORT. - Removed old ort_template, def_ort_template and obj_ref_factory and its usage. * tao/PortableServer/Default_ORT*.*: * tao/PortableServer/ObjectReferenceTemplate.{h,cpp,i}: Removed these files, default ORT implementation is now in the ORT library Fri Aug 13 18:12:12 UTC 2004 Johnny Willemsen * tao/PortableServer/ObjectReferenceTemplate_Adapter.{h,cpp} New file with base calss for ORT Adapters * tao/PortableServer/ObjectReferenceTemplate_Adapter_Facotry.{h,cpp} New file with base calss for ORT Adapter factories Fri Aug 27 00:25:47 2004 Ossama Othman * tao/ORB_Constants.h: No need to include "tao/TAO_Export.h". (CORBA::OMGVMCID): Added documentation about how and when to use this constant. (TAO_DEFAULT_MINOR_CODE, TAO_MAX_MINOR_CODE): Deprecated these constants. They have been replaced with counterparts in the TAO namespace, as described below, but still exist in order to maintain backward compatibility for a reasonable amount of time. Added documentation that details how TAO_DEFAULT_MINOR_CODE is often misused. (TAO::VMCID): New constant in the TAO namespace that replaces global namespace constant TAO_DEFAULT_MINOR_CODE. The latter constant name was not very descriptive about what the constant represents. "TAO::VMCID" is improves on that, and is also more consistent with OMG naming conventions. (TAO::MAX_MINOR_CODE): Moved the global namespace TAO_MAX_MINOR_CODE constant into the TAO namespace to be consistent with the above TAO::VMCID change. Added documentation that makes it obvious how this constant is determined. Previously, a "magic number" was assigned to this constant (actually TAO_MAX_MINOR_CODE). This constant is now defined in terms of TAO::VMCID. (TAO::VPVID): New TAO namespace constant that is TAO's OMG assigned Vendor PolicyType Valueset ID (VPVID). This constant is the same as the VMCID, and is automatically assigned by the OMG in this manner when a VMCID is reserved for a given vendor (i.e TAO / DOC group in this case). Please refer to the documentation for this constant when creating new TAO-specific CORBA::PolicyType values. * tao/Exception.cpp: Use new TAO::VMCID instead of the deprecated TAO_DEFAULT_MINOR_CODE constant. * tao/CORBA.pidl: Removed this file. It has been deprecated for at least four years. * tao/Invocation_Endpoint_Selectors.cpp: * tao/Profile_Transport_Resolver.cpp: Corrected grammar in a comment. * tao/Policy_Forward.pidl: Added a "-*- IDL -*-" Emacs mode comment to this file so that we can automatically get some syntax highlighting and automatic indenting. * tao/TypeCodeFactory/TypeCodeFactory_i.cpp: Corrected minor codes passed to CORBA::SystemException constructors. They were not logically OR-ed with the CORBA::OMGVMCID constant. Fri Aug 27 00:03:51 2004 J.T. Conklin * orbsvcs/orbsvcs/AV/Makefile.am: * orbsvcs/orbsvcs/Concurrency/Makefile.am: * orbsvcs/orbsvcs/CosEvent/Makefile.am: * orbsvcs/orbsvcs/Event/Makefile.am: * orbsvcs/orbsvcs/Naming/Makefile.am: * orbsvcs/orbsvcs/Property/Makefile.am: * orbsvcs/orbsvcs/Sched/Makefile.am: * orbsvcs/orbsvcs/Time/Makefile.am: * orbsvcs/orbsvcs/Trader/Makefile.am: Removed. * orbsvcs/tests/Concurrency/CC_naming_service.cpp: * orbsvcs/tests/Concurrency/CC_test_utils.cpp: * orbsvcs/tests/Concurrency/CC_tests.cpp: * orbsvcs/tests/Time/client.cpp: Changed to #include "ace/Log_Msg.h" * examples/RTScheduling/Starter.h: * examples/Simple/Simple_util.h: * orbsvcs/examples/CosEC/RtEC_Based/tests/Multiple/Multiple.h: * orbsvcs/tests/Sched_Conf/Sched_Conf.cpp: Changed #include "orbsvcs/Naming/Naming_Utils.h" to #include "orbsvcs/Naming/Naming_Client.h" and "orbsvcs/Naming/Naming_Server.h". * examples/Callback_Quoter/Notifier_Input_Handler.h: * examples/Event_Comm/Notifier_Server.h: * examples/Logging/Logging_Service_i.h: * examples/Quoter/server.h: * orbsvcs/Concurrency_Service/Concurrency_Service.h: * orbsvcs/Naming_Service/Naming_Service.h: * orbsvcs/Time_Service/Clerk_i.h: * orbsvcs/Time_Service/Server_i.h: * orbsvcs/orbsvcs/Naming/Naming_Loader.h: * orbsvcs/orbsvcs/Time/TAO_Time_Service_Clerk.h: * orbsvcs/tests/Redundant_Naming/client.cpp: * orbsvcs/tests/Sched_Conf/Sched_Conf_Anomalies.cpp: * orbsvcs/tests/Sched_Conf/Sched_Conf_Runtime.cpp: * utils/NamingViewer/NamingViewerDlg.cpp: * utils/wxNamingViewer/wxNamingViewerFrame.cpp: Changed #include "orbsvcs/Naming/Naming_Utils.h" to #include "orbsvcs/Naming/Naming_Server.h". * orbsvcs/Logging_Service/RTEvent_Logging_Service/RTEvent_Logging_Service.h: * orbsvcs/examples/Callback_Quoter/Consumer_Handler.h: * orbsvcs/examples/Callback_Quoter/Supplier_i.h: * orbsvcs/examples/CosEC/Factory/FactoryDriver.h: * orbsvcs/examples/Event_Comm/Consumer_Handler.h: * orbsvcs/examples/Event_Comm/Notifier_Handler.h: * orbsvcs/tests/AVstreams/Asynch_Three_Stage/Connection_Manager.h: * orbsvcs/tests/AVstreams/Bidirectional_Flows/receiver.h: * orbsvcs/tests/AVstreams/Bidirectional_Flows/sender.h: * orbsvcs/tests/AVstreams/Component_Switching/Connection_Manager.h: * orbsvcs/tests/AVstreams/Full_Profile/server.h: * orbsvcs/tests/AVstreams/Modify_QoS/receiver.h: * orbsvcs/tests/AVstreams/Modify_QoS/sender.h: * orbsvcs/tests/AVstreams/Multicast/ftp.h: * orbsvcs/tests/AVstreams/Multicast/server.h: * orbsvcs/tests/AVstreams/Multicast_Full_Profile/ftp.h: * orbsvcs/tests/AVstreams/Multicast_Full_Profile/server.h: * orbsvcs/tests/AVstreams/Multiple_Flows/receiver.h: * orbsvcs/tests/AVstreams/Multiple_Flows/sender.h: * orbsvcs/tests/AVstreams/Pluggable/ftp.h: * orbsvcs/tests/AVstreams/Pluggable/server.h: * orbsvcs/tests/AVstreams/Pluggable_Flow_Protocol/receiver.h: * orbsvcs/tests/AVstreams/Pluggable_Flow_Protocol/sender.h: * orbsvcs/tests/AVstreams/Simple_Three_Stage/distributer.h: * orbsvcs/tests/AVstreams/Simple_Three_Stage/receiver.h: * orbsvcs/tests/AVstreams/Simple_Three_Stage/sender.h: * orbsvcs/tests/AVstreams/Simple_Two_Stage/receiver.h: * orbsvcs/tests/AVstreams/Simple_Two_Stage/sender.h: * orbsvcs/tests/AVstreams/Simple_Two_Stage_With_QoS/receiver.h: * orbsvcs/tests/AVstreams/Simple_Two_Stage_With_QoS/sender.h: * orbsvcs/tests/Concurrency/CC_naming_service.h: * orbsvcs/tests/Property/client.h: * orbsvcs/tests/Property/server.h: * orbsvcs/tests/Simple_Naming/client.h: * orbsvcs/tests/Time/Client_i.h: * examples/Logging/Logging_Test_i.h: * performance-tests/POA/Demux/demux_test_server.h: Changed #include "orbsvcs/Naming/Naming_Utils.h" to #include "orbsvcs/Naming/Naming_Client.h". * orbsvcs/orbsvcs/Makefile.am: Updated. * orbsvcs/orbsvcs/CosNaming.mpc: Changed Naming_Utils.{cpp,h} to Naming_{Client,Server}.{cpp,h}. * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp: * orbsvcs/orbsvcs/Naming/Naming_Utils.h: Removed files. * orbsvcs/orbsvcs/Naming/Naming_Client.cpp: * orbsvcs/orbsvcs/Naming/Naming_Client.h: * orbsvcs/orbsvcs/Naming/Naming_Server.cpp: * orbsvcs/orbsvcs/Naming/Naming_Server.h: New files, split out from Naming_Utils.cpp and Naming_Utils.h so that it is possible to have client and server side libraries. Thu Aug 26 22:54:37 2004 J.T. Conklin * tao/Current.pidl: Added #ifndef guard, as was done with GIOP.idl in: Thu Aug 26 22:54:35 2004 Jeff Parsons Thu Aug 26 22:48:26 2004 J.T. Conklin * Makefile.am: * configure.ac: Changed to enable building utils directory. * utils/Makefile.am: * utils/catior/Makefile.am: * utils/nslist/Makefile.am: New files, built with a little help from MPC. Thu Aug 26 22:46:24 2004 J.T. Conklin * orbsvcs/orbsvcs/Makefile.am: Fixed tipo I introduced when adding Shutdown_Utilities.cpp. Thu Aug 26 22:54:35 2004 Jeff Parsons * tao/GIOP.pidl: Added missing #ifndef guard around the file. With recent changes that have tightened up redefinition checking in reopened modules, we were getting a redefinition error from GIOP.pidl being included in FT_CORBA_ORB.idl by two different paths and having no protection from the #ifndef guard. Thanks to J.T. Conklin for reporting the problem. Thu Aug 26 20:19:19 2004 J.T. Conklin * tao/Makefile.am: Added back includedir definition that got lost in a previous edit. Thu Aug 26 22:07:30 2004 Jeff Parsons * TAO_IDL/be_include/be_visitor_amh_pre_proc.h: * TAO_IDL/be/be_visitor_amh_pre_proc.cpp: Removed the overridden visit_scope() method. It does nothing different from the be_visitor_scope base class method. This closes [BUGID:1882]. Thu Aug 26 18:58:22 2004 Jeff Parsons * TAO_IDL/be/be_codegen.cpp: * TAO_IDL/be/be_visitor_interface/interface_ih.cpp: * TAO_IDL/be/be_visitor_interface/interface_is.cpp: Fixed code generation in implementation files for local interfaces. Changes include: - inheritance from TAO_Local_RefCounted_Object instead of PortableServer::ServantBase. - no copy constructor generated. - tao/LocalObject.h included if local interface is seen. This fix closes [BUGID:1871]. Thu Aug 26 18:11:09 2004 Jeff Parsons * orbsvcs/orbsvcs/IFRService/IFR_Service_Utils.cpp: Changed the minor code of a BAD_PARAM exception to 3 (local name clash) from its incorrect value of 5 (inherited name clash). Thu Aug 26 16:37:29 2004 Dale Wilson * interop-tests/wchar/interop_wchar.idl: * interop-tests/wchar/interop_wchar_i.h: * interop-tests/wchar/interop_wchar_i.cpp: * interop-tests/wchar/Client.java: * interop-tests/wchar/WChar_PasserImpl.java: Modified to test interoperability test JDK 1.4x ORB. The JDK ORB has trouble marshaling wide character strings when they are embedded in structures. This revised test reveals the problem so the solution can be tested. Declare/implement methods to send and receive wide character strings in structures and validate the results. Remove explicit references to JACOrb. * interop-tests/wchar/Server.java: Honor -o option rather than using argv[1] as IOR filename. Thu Aug 26 16:29:53 2004 Jeff Parsons * TAO_IDL/be/be_visitor_valuetype/valuetype_ch.cpp: * TAO_IDL/be/be_visitor_valuetype/valuetype_cs.cpp: * TAO_IDL/be/be_visitor_valuetype/valuetype_obv_ch.cpp: * TAO_IDL/be/be_visitor_valuetype/valuetype_obv_cs.cpp: Changed the check for generating _add_ref(), _remove_ref(), and _tao_to_value() for valuetypes from support of abstract interface(s) to support for any interface(s). For the first two methods, the generation is done to avoid their ambiguous inheritance. One source of inheritance is CORBA::ValueBase, and the other could be CORBA::Object, or CORBA::AbstractBase, or both. The third method is generated to extract a valuetype from an abstract interface, if it was passed by value. A valuetype could support a concrete interface that inherits from an abstract one, so again the method is necessary even if the valuetype supports a concrete interface. Thu Aug 26 15:46:36 2004 Jeff Parsons * TAO_IDL/ast/ast_component.cpp: * TAO_IDL/ast/ast_home.cpp: * TAO_IDL/ast/ast_interface.cpp: * TAO_IDL/ast/ast_valuetype.cpp: * TAO_IDL/include/ast_component.h: * TAO_IDL/include/ast_home.h: * TAO_IDL/include/ast_interface.h: * TAO_IDL/include/ast_valuetype.h: * TAO_IDL/include/utl_scope.h: * TAO_IDL/util/utl_scope.cpp: Made UTL_Scope::look_in_inherited() virtual and a no-op, while adding overrides to the appropriate AST_* classes. Also added a no-op look_in_supported() to UTL_Scope, and overrides where appropriate. Modified code in UTL_Scope::lookup_by_name() to call these new methods, and removed the check for node type, which is no longer needed. Thanks to Boris Kolpackov for providing the IDL example that (legally) references by local name things declared in supported interfaces, base valuetypes, base components and base homes. This closes [BUGID:1706]. Thu Aug 26 13:48:31 2004 Jeff Parsons * TAO_IDL/ast/ast_module.cpp: * TAO_IDL/include/ast_module.h: * TAO_IDL/include/utl_scope.h: Specialized the referenced() method for modules to catch redefinitions in a reopened module. Thanks to Boris Kolpackov for reporting this bug. This fixed closes [BUGID:1695]. Thu Aug 26 12:37:45 2004 Jeff Parsons * TAO_IDL/driver/drv_preproc.cpp (DRV_check_for_include): Added check for .pidl file included as a local filename. Because of lookup quirks necessary for orb.idl, the above case will also be found, even without a proper -I option, but the generated C++ include will be incorrect. So we add the necessary path to the .pidl filename before it is stored for later validation and code generation. This closes [BUGID:1608]. Thu Aug 26 11:22:51 2004 Jeff Parsons * tests/Abstract_Interface/Abstract_Interface.mpc: Changed dependencies in the client project, and added explicit file lists to both projects. Thu Aug 26 10:38:49 2004 Chris Cleeland * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.h: * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.cpp: Fix fuzz build complaints about returning 'int' rather than 'bool' from operator== and operator!=. Thu Aug 26 10:17:45 2004 Jeff Parsons * TAO_IDL/be/be_visitor_valuetype/valuetype_ch.cpp: Fixed incorrect generation of base classes for C++ classes mapped from valuetypes, to include only the immediate supported abstract interfaces rather than the entire graph of supported abstract interfaces. Thu Aug 26 00:17:41 2004 J.T. Conklin * orbsvcs/orbsvcs/Makefile.am: Added Shutdown_Utilities.cpp to Svc_Util libraries sources. * orbsvcs/tests/FaultTolerance/GroupRef_Manipulation/Makefile.am: Removed -Gv from IDL compiler flags. Wed Aug 25 16:03:29 2004 Chris Cleeland * orbsvcs/Naming_Service/Naming_Server.cpp: * orbsvcs/Naming_Service/Naming_Service.cpp: * orbsvcs/Naming_Service/Naming_Service.h: * orbsvcs/orbsvcs/IOR_Multicast.cpp: * orbsvcs/orbsvcs/Shutdown_Utilities.cpp: * orbsvcs/orbsvcs/Shutdown_Utilities.h: * orbsvcs/orbsvcs/Svc_Utils.mpc: * orbsvcs/orbsvcs/Naming/Flat_File_Persistence.cpp: * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp: * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.cpp: * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.h: * orbsvcs/orbsvcs/Naming/Storable_Naming_Context_Activator.cpp: * orbsvcs/orbsvcs/Naming/Storable_Naming_Context_Activator.h: * utils/nslist/nsadd.cpp: * utils/nslist/nsdel.cpp: Integrated many memory leak fixes for the Naming Service originally done in OCITAO 1.3a. All relevant original changelog entries are below: Thu Jul 22 11:31:30 2004 Chris Cleeland * utils/nslist/nsdel.cpp (main): Added a new option, --destroy, that can be used to destroy the specified context after the unbind. If the context is unbound but not destroyed using "nsdel", then the context will leak within the Naming Service because no NS client will be able to resolve() to get a reference to it again. * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.cpp (TAO_Storable_Naming_Context::DTOR): Corrected a problem where the file that acts as persistent backing store for context information didn't get removed when the context had been destroyed via the "destroy()" operation. This should address [RT 4221]. Wed Jul 7 15:41:33 2004 Chris Cleeland * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp (TAO_Naming_Server): Made deletion of servant_activator_ conditional on the use_servant_activator_ member variable, since servant_activator_ should only have a value when use_servant_activator_ is true. For safety sake, however, we now also explicitly initialize servant_activator_ to zero. This should fix scoreboard problems on tests that instantiate a TAO_Naming_Server directly in their code rather than starting up a naming service executable, such as TAO/examples/Simple/grid. Fri Jul 2 10:16:06 2004 Rich Seibel * utils/nslist/nsadd.cpp: Integrated change from Dave Knox at Intrado Inc. to add the ability to add a new context to the Naming Service. At the same time, I pulled over the DOC group change to automatically add any intermediate contexts. RT4014. * utils/nslist/runtest.pl: New test added to test the ability to use the above. Wed Jun 30 12:29:50 2004 Chris Cleeland * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.cpp (File_Open_Lock_and_Check::File_Open_Lock_and_Check): Added an else clause to delete the file returned from create_stream in case none of the other branches were executed. This eliminates a continuous leak seen only using the "-u" option on the Naming Service. Wed Jun 30 12:29:18 2004 Chris Cleeland * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp (TAO_Naming_Server::DTOR): Added an explicit delete for the servant_activator_. * orbsvcs/orbsvcs/Naming/Storable_Naming_Context_Activator.h (ServantActivator): Eliminated the inheritance from TAO_RefcountedLocalObject. The inheritance was placed there with the thought that the servant would be reference counted and, thus, its lifecycle magically managed. Empirical evidence shows otherwise, so we have these two changes. This eliminates a one-time 88 byte or so leak when running the Naming Service with flat file persistence. Mon Jun 21 16:43:06 2004 Chris Cleeland * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.cpp: Forgot to update this when I did the entry below. Mon Jun 21 12:17:35 2004 Chris Cleeland * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.h (TAO_Storable_Naming_Context): * tao/ORB_Core.{h,cpp} (instance_): Changed use of auto_ptr<> to ACE_Auto_Ptr<> to avoid compatibility problems on VC6 platforms. Sun Jun 20 09:34:46 2004 Chris Cleeland * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.cpp: More tweaks in various places to use *_var's in() method in order to de-warn about ambiguous conversions on certain compilers. * orbsvcs/tests/ImplRepo/NameService/run_test.pl: Increaed the waitforfile_timed timeout value so the test could succeed on slow/overloaded nightly build platforms. Sat Jun 19 00:21:28 2004 Chris Cleeland * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.cpp (~TAO_Storable_Naming_Context): Sigh...removed code residue from debugging the problem below that was causing rampant breakage on any platform that wasn't glibc-based. Fri Jun 18 17:34:22 2004 Chris Cleeland * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.cpp (~TAO_Storable_Naming_Context): Got rid of the call to remove the file. Having the remove in here broke persistence when all the memory leaks got fixed, because upon destruction it would end up removing the file for the context. This should fix the failures of the persistent variant of the Simple_Naming test. A point worth noting is that I originally thought that the remove() needed to be moved into a different, new method so that when a context got unbound the file would get properly removed. While I can find no place in the code where an unbind calls the equivalent of remove(), anecdotal evidence shows that, indeed, the files get removed at unbind time, and everything works the way it's supposed to. Mysterious... Fri Jun 18 13:52:07 2004 Chris Cleeland * orbsvcs/orbsvcs/IOR_Multicast.cpp (~TAO_IOR_Multicast): Changed to use the leave() method, since apparently *all* unsubscribe methods are deprecated. Fri Jun 18 13:34:01 2004 Chris Cleeland * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.cpp: Tweaks in various places to use the ORB_var's in() method in order to de-warn on gcc 3.2. * orbsvcs/orbsvcs/IOR_Multicast.cpp (~TAO_IOR_Multicast): Eliminated use of deprecated unargumented unsubscribe() call, and use the correct calls instead. This should get rid of the deprecation message printed out when the naming service terminates, which was also upsetting the Simple_Naming test output processing script (see below). * orbsvcs/Naming_Service/Naming_Server.cpp (operator()): Made the message only get printed out when the debug level is turned on. Seems that the multithreaded version of the Simple_Naming test was seeing this message, not expecting it, and declaring that the test had failed. Thu Jun 17 18:30:52 2004 Chris Cleeland * orbsvcs/Naming_Service/Naming_Service.cpp (fini): Add call to the naming server object's fini method so things get properly removed/deallocated. * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp (fini): Moved code that was in the destructor into here in order to parallel the allocation of things occurring in the init*() methods. Also changed to get the reactor through orb->orb_core() rather than TAO_ORB_Core_instance(), which is old and decrepit. Hopefully this fixes core dumps on exit when using "-m 1". Tue Jun 15 17:34:42 2004 Chris Cleeland * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp (DTOR): Removed the delete of the servant activator. Turns out that reference-counting the servant activator was enough. This should fix a core dump observed in the nightly builds on exit from the Naming Service. Mon Jun 14 13:56:22 2004 Chris Cleeland * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp (init_with_orb): Fixed message printed in exception so that it has the correct class name. Mon Jun 14 12:22:03 2004 Chris Cleeland Corrected a bunch of memory leaks throughout the naming service. Details below... * orbsvcs/orbsvcs/Naming/Flat_File_Persistence.cpp (close): Properly close the flat file to reclaim memory allocated in the system's stdio library. * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp (init_with_orb): Use auto_ptr<> to hold the persistence factory so that it gets properly cleaned up. The servant activator accepts and holds on to a pointer to the persistence factory. However, we don't always create a servant activator. We need to use auto_ptr<> over the persistence factory to insure proper cleanup in the case of an exception or in the case where we don't use use servant activator, so the code is a little goofy, and we end up releasing the pointer from the auto_ptr<> if the servant activator's in use. There's probably a better way to handle this, such as reference counting, but I wanted going for the minimal thing that worked. * orbsvcs/orbsvcs/Naming/Storable_Naming_Context_Activator.*: Refined the role of the activator with regard to ownership of and responsibility for managing the persistence factory--the activator is now responsible for cleaning up the persistence factory. The destructor now performs its duty. * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp (init_new_naming): Change to hold the heap-allocated servant activator in a data member rather than a local so that we can clean it up when we're finished rather than just leak it. * orbsvcs/orbsvcs/Naming/Naming_Utils.cpp (DTOR): Make sure everything gets cleaned up. * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.cpp: * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.h: Discontinued use of the TAO_Persistent_*Id classes. These classes were designed and implemented to be used with the Persistent store, which is memory-mapped. Therefore, they assume that some external entity will be doing any and all dynamic allocations, and that they should do none lest they screw it up. We now have analogous TAO_Storable_*Id classes which DO assume responsibility for managing their dynamically-allocated memory. For the moment, since they are not used anywhere except within the Storable_Naming_Context, they do not have their own files. * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.* (gfl_): Wrap in an auto_ptr<> so that the stream gets properly destroyed at the proper time and doesn't leak. * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.cpp (shared_bind): Capture the return from object_to_string in a String_var to eliminate a leak. * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.cpp (DTOR): * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.cpp (recreate_all): Use an auto_ptr<> to capture the values returned from create_stream() so that they get properly destroyed. * orbsvcs/orbsvcs/Naming/Storable_Naming_Context.h (TAO_Storable_Bindings_Map): Hold the ORB reference in a _var rather than a _ptr so it gets properly refcounted. * orbsvcs/orbsvcs/Naming/Storable_Naming_Context_Activator.h: Mixed-in TAO_Local_RefCounted_Object hoping that the POA called the reference-counting methods, and, thus, it would insure that the POA would manage the activator's instance automagically. Alas, this didn't appear to work, but I can't see any harm in leaving this in for now. Mon Jun 14 12:06:45 2004 Chris Cleeland * orbsvcs/Naming_Service/Naming_Service.*: Added a fini() method to clean up resources acquired/allocated in the init*() methods. The onus is on the application to call fini(), however. * orbsvcs/Naming_Service/Naming_Server.cpp (main): Added call to new fini() method to insure proper cleanup. Mon Jun 7 11:13:44 2004 Chris Cleeland * orbsvcs/orbsvcs/Shutdown_Utilities.cpp: Defined our own TAO_ORBSVCS_MAXSIG as "one plus the largest signal number to which we pay attention", rather than using SIGRTMIN. This should be portable across all platforms. Bracketed use of actual signal names in the convenience CTOR by ACE_LACKS_UNIX_SIGNALS so that non-Unix platforms actually compile. Fri Jun 4 16:16:02 2004 Chris Cleeland * orbsvcs/orbsvcs/Shutdown_Utilities.h: * orbsvcs/orbsvcs/Shutdown_Utilities.cpp: * orbsvcs/orbsvcs/Svc_Utils.mpc: Added a new utility class to the Svc_Utils library that makes it easy to have a service propertly shut itself down in response to a signal. The motivation for this was an apparent memory leak in the Naming Service and the desire to use purify-like tools to diagnose. However, the service never shut itself down properly, so purify would not produce a leak report. * orbsvcs/Naming_Service/Naming_Service.h (shutdown): * orbsvcs/Naming_Service/Naming_Service.cpp (shutdown): Added a new method to shut down the Naming Service. * orbsvcs/Naming_Service/Naming_Server.cpp: Added code to use the new shutdown utility classes to gracefully shut down the naming service. Wed Aug 25 15:06:35 2004 Rich Seibel * examples/PluggableUDP/tests/SimplePerformance/client.cpp: The test does an FPE if the time measured is smaller than the resolution of the Hi-Res timer. It now tests for zero elapsed time and does not try to divide by zero. Wed Aug 25 11:24:20 2004 Ossama Othman * orbsvcs/orbsvcs/SSLIOP/SSLIOP_EVP_PKEY.cpp: Include * TAO_IDL/be/be_visitor_valuetype/field_ch.cpp: Fixed newline formatting of generated code. Wed Aug 25 09:02:12 UTC 2004 Johnny Willemsen * orbsvcs/orbsvcs/LoadBalancing/LB_CPU_Load_Average_Monitor.cpp: * orbsvcs/orbsvcs/LoadBalancing/LB_CPU_Utilization_Monitor.cpp: Added missing sys in the include path of my change below Wed Aug 25 07:18:12 UTC 2004 Johnny Willemsen * orbsvcs/orbsvcs/LoadBalancing/LB_CPU_Load_Average_Monitor.cpp: Instead of including sys/loadavg.h, include ace/os_include/os_loadavg.h * orbsvcs/orbsvcs/LoadBalancing/LB_CPU_Utilization_Monitor.cpp: Instead of including sys/loadavg.h, include ace/os_include/os_loadavg.h. Added include of os_pstat.h to fix compile error on HPUX on Itanium Tue Aug 24 20:33:08 2004 J.T. Conklin * tests/RTCORBA/RTMutex/server.cpp: Changed test_mutex_try_lock to unlock mutex before releasing it. Tue Aug 24 16:09:00 UTC 2004 Martin Corino * docs/releasenotes/OBV.html: * docs/releasenotes/index.html: Updated documentation of valuetype support. See [Bug 1908]. Tue Aug 24 08:53:00 UTC 2004 Martin Corino * docs/compiler.html: Removed documentation of '-Sv' option. See [Bug 1908]. Tue Aug 24 06:55:12 UTC 2004 Johnny Willemsen * tests/Portable_Interceptors/PolicyFactory/PI_PolicyFactory.mpc: Added missing base project, removed not needed idlflags Mon Aug 23 23:27:01 2004 Ossama Othman * Makefile.am (AUTOMAKE_OPTIONS): Removed required Automake version from `Makefile.am'. `configure.ac' already defines it. * configure.ac (AM_INIT_AUTOMAKE): Updated required version of Automake to 1.9. Mon Aug 23 21:40:36 2004 Balachandran Natarajan * tao/Synch_Invocation.cpp: * tao/Messaging/Asynch_Invocation.cpp: Fixed a problem which used to make the client ORB hang when the BiDirPolicy was set and a corbaloc URL was used. The problem stemmed from the following - The reply dispatcher was bound to the table with some request ID. - When the request header was generated, the request ID was munged to be compliant with BiDir GIOP semantics. - The request could possible be sent out with a different request ID whose reply dispatcher could have been bounded with a different ID. The above made the client ORB hang. We now marshal the whole request before we bind the dispatcher, which will get us the right ID. This fixes the problem. After getting permissions from Thomas Lockhart, I will checkin the test. Thanks to Thomas Lockhart for reporting the problem. Mon Aug 23 20:36:59 2004 Balachandran Natarajan * tao/Transport_Connector.cpp: A simple programmatic error while trying to set the type of role on the client caused a bunch of tests to fail. Many tests should be going strong after this change. Mon Aug 23 06:40:12 UTC 2004 Johnny Willemsen * orbsvcs/orbsvcs/PortableGroup/PG_Object_Group.cpp: Fixed incorrect usage of iterator, thanks to Sebastien Roy for reporting this. This fixes bugzilla id [1911]. Sun Aug 22 10:04:33 2004 J.T. Conklin * tao/DynamicAny.mpc: Changed to not inherit from valuetype. Sun Aug 22 10:19:00 UTC 2004 Johnny Willemsen * tao/Wait_On_LF_No_Upcall.cpp: Fixed compile error with Borland compiler Sun Aug 22 09:44:00 UTC 2004 Martin Corino * TAO_IDL/be/be_global.cpp: * TAO_IDL/include/idl_global.h: * TAO_IDL/util/utl_global.cpp: Removed all support for '-Gv' and '-Sv' valuetype switches as per [Bug 1908]. Fri Aug 20 13:11:38 2004 J.T. Conklin * orbsvcs/orbsvcs/Makefile.am: Updated. * orbsvcs/orbsvcs/ec_typed_events.mpc: Changed to prepend "orbsvcs/" to export include path. Fri Aug 20 19:15:16 2004 Balachandran Natarajan * tao/Wait_On_LF_No_Upcall.cpp: * tao/Wait_On_LF_No_Upcall.h: Moved the classes within the TAO namespace. The TAO_* classes have to die. New classes needs to go in TAO namespace. * tao/Transport.cpp: * tao/Transport.h: * tao/Transport.inl: The Connection_Role enum is now in TAO namespace instead of the the global namespace. * tao/Acceptor_Impl.cpp: * tao/Transport_Connector.cpp: * tao/default_client.cpp: Changes that got propagated from above. Fri Aug 20 10:36:57 2004 Chris Cleeland * tao/Wait_On_LF_No_Upcall.h: Fix fuzz build errors from missing /**/ on pre.h/post.h includes. Fri Aug 19 14:57:12 UTC 2004 Johnny Willemsen * tests/Bug_1670_Regression/Bug_1670_Regression.mpc: Instead of adding -GH to the idlflags, use amh as base project, this does the same and is much better to maintain Fri Aug 19 14:43:12 UTC 2004 Johnny Willemsen * tests/Bug_1568_Regression/Bug_1568_Regression.mpc: Instead of adding -GH to the idlflags, use amh as base project, this does the same and is much better to maintain Fri Aug 19 10:42:12 UTC 2004 Johnny Willemsen * tao/Transport.h: Removed not allowed comma at end of enum list Fri Aug 20 02:15:42 2004 J.T. Conklin * tao/Makefile.am: Updated to account for addition of Wait_On_LF_No_Upcall.* plus some improvements in MPC's automake support. Fri Aug 20 09:27:00 UTC 2004 Martin Corino * tests/ORT/ORT.mpc: * tests/Bug_1670_Regression/Bug_1670_Regression.mpc: * tests/Bug_1568_Regression/Bug_1568_Regression.mpc: * orbsvcs/tests/FaultTolerance/GroupRef_Manipulation/GroupRef_Manipulation.mpc: Removed outdated -Gv IDL option according to [Bug 1908]. Thu Aug 19 23:28:25 2004 Ossama Othman * tao/Acceptor_Impl.cpp: Include "Transport.h" to pull in "TAO_SERVER_ROLE" enumeration member definition. Thu Aug 19 22:00:39 2004 Ossama Othman * orbsvcs/tests/Security/MT_IIOP_SSL/MT_IIOP_SSL.mpc: * orbsvcs/tests/Security/Secure_Invocation/Secure_Invocation.mpc: * orbsvcs/tests/Security/SecurityLevel1/SecurityLevel1.mpc: Fixed incorrect base project. "orbsvcslib", not "orbsvcsexe". Addresses problems related to missing directories in the preprocessor include path. Removed unecessary base projects from client projects. Thu Aug 19 16:49:24 2004 Chris Cleeland * tao/Wait_On_LF_No_Upcall.h: * tao/Wait_On_LF_No_Upcall.cpp: * tao/tao.mpc: Created new wait strategy that combines features of Wait_On_Read and Wait_On_Leader_Follower. This strategy re-enters the leader-follower, but does not permit nested upcalls on the requesting thread while waiting for a reply. Other threads are permitted to operate normally. The strategy was motivated by the need to recognize connections opened in the client role and closed by the far side. Using Wait_On_Read, the closure would only be recognized the next time an invocation gets made that goes through that connection. Notably in the notification service, there is a _narrow() that causes an invocation on an object, and that connection never gets reused. Thus, it sits in CLOSE_WAIT consuming a file descriptor for the rest of the process. Implementing this required modifications to other files to allocate and honor a flag set by this wait strategy. * docs/Options.html: Added documentation on the new wait strategy. * orbsvcs/orbsvcs/PortableGroup/UIPMC_Connection_Handler.cpp: * orbsvcs/orbsvcs/SSLIOP/IIOP_SSL_Connection_Handler.cpp: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Connection_Handler.cpp: * tao/Strategies/DIOP_Connection_Handler.cpp: * tao/Strategies/SCIOP_Connection_Handler.cpp: * tao/Strategies/SHMIOP_Connection_Handler.cpp: * tao/Strategies/UIOP_Connection_Handler.cpp: * tao/Transport.h: * tao/Transport.cpp: * tao/Transport.inl: * tao/Transport_Connector.cpp: * tao/Connection_Handler.h: * tao/Connection_Handler.inl: * tao/ORB_Core.h: * tao/ORB_Core.cpp: * tao/Connection_Handler.cpp: * tao/IIOP_Connection_Handler.cpp: * tao/Acceptor_Impl.cpp: * tao/default_client.cpp: * tao/default_client.h: * tao/Thread_Per_Connection_Handler.cpp: Updated to cooperate with the new wait strategy. Note that some refactoring in the Connection_Handler requires changes in any pluggable transport's derived Connection_Handler in order to participate in this wait strategy. Thu Aug 19 01:54:51 2004 Ossama Othman * orbsvcs/orbsvcs/SSLIOP/SSLIOP_OpenSSL_st_T.inl: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_SSL.h: Fixed some syntax errors that MSVC++ 6 let slip through. Thu Aug 19 08:49:12 UTC 2004 Johnny Willemsen * tao/BiDir_GIOP/BiDirGIOP.h: Corrected comment after #endif Thu Aug 19 08:44:12 UTC 2004 Johnny Willemsen * PROBLEM-REPORT-FORM: Ask for the default.features file used by MPC. Wed Aug 18 23:09:29 2004 Ossama Othman * orbsvcs/orbsvcs/SSLIOP/SSLIOP_ClientCredentials.cpp: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Credentials.cpp: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Credentials.inl: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_OpenSSL_st_T.inl: Due MSVC++ 6's inability to correctly deduce the function template specialization to use based on the function argument, resort to explicitly calling the type-specific TAO::SSLIOP::OpenSSL trait function instead. Once we drop support for MSVC++ 6, we can go back to using the function templates so that the code can be cleaner once again. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_EVP_PKEY.h: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_SSL.h: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_X509.h: Added new _duplicate() static trait function. MSVC++ 6 couldn't handle the function templates in the TAO::SSLIOP namespace so resort to reproducing code in each specialization. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_EVP_PKEY.cpp (copy): Not all versions of OpenSSL declare the RSAPrivateKey_dup() function in the global namespace. Remove the global "::" namespace qualifier to fix a compile-time error when using those versions of OpenSSL. Wed Aug 18 10:41:03 2004 Jeff Parsons * TAO_IDL/be/be_visitor_component/component.cpp: Changed context state in switch case labels to correspond with changes in Tue Aug 17 15:48:28 2004 Jeff Parsons Wed Aug 18 08:32:12 UTC 2004 Johnny Willemsen * tao/ORB_Core.h: Converted some old style documentation to doxygen style Wed Aug 18 06:44:12 UTC 2004 Johnny Willemsen * tao/Strategies/SCIOP_Connector.{h,cpp}: Fixed compile errors in sctp enabled builds. Now the ATL builds are online again, these reported some errors. Tue Aug 17 21:33:35 2004 J.T. Conklin * orbsvcs/orbsvcs/CosNaming.mpc: Removed explicit libs and after statements for messaging, since project allready inherits from messaging base project. Tue Aug 17 21:16:44 2004 J.T. Conklin * orbsvcs/orbsvcs/FtRtEvent.mpc: Changed to inherit from corba_messaging instead of providing requires statement to eliminate duplicate entries in list. * orbsvcs/orbsvcs/RTCosScheduling.mpc: * orbsvcs/orbsvcs/SSLIOP.mpc: * orbsvcs/orbsvcs/Security.mpc: Changed to inherit from interceptors instead of providing requires statements to eliminate duplicate entries in list. Tue Aug 17 17:32:39 2004 J.T. Conklin * {docs,examples,orbsvcs,performance-tests,utils}/.../*.{cpp,h,idl}: Changed #include to #include . Tue Aug 17 17:56:23 2004 Jeff Parsons * TAO_IDL/be/be_interface.cpp: * TAO_IDL/be/be_visitor_component/component.cpp: * TAO_IDL/be/be_visitor_component/component_ch.cpp: * TAO_IDL/be/be_visitor_component/component_cs.cpp: * TAO_IDL/be/be_visitor_interface/interface_ch.cpp: * TAO_IDL/be/be_visitor_module/module.cpp: * TAO_IDL/be/be_visitor_root/root.cpp: * TAO_IDL/fe/fe_interface_header.cpp: * TAO_IDL/include/utl_err.h: * TAO_IDL/util/utl_err.cpp: Eliminated the error message generated when a component is supporting an abstract interface - it was mistakenly assumed that such a thing was barred by the spec. Once this error was eliminated, other changes were required to support the new 'feature'. Tue Aug 17 15:48:28 2004 Jeff Parsons * TAO_IDL/be/be_interface.cpp: Changed the logic of the check for 'mixed parentage' (abstract & concrete) in an interface, to return true not only if an interface has an immediate abstract parent (as before) but also if there is an abstract interface anywhere in its ancestry. This is necessary for skeletons-side code generation, since abstract interfaces have no operations generated on the skeleton side for children to inherit, the operations must be regenerated in each child. * TAO_IDL/be/be_visitor_interface/direct_proxy_impl_sh.cpp: * TAO_IDL/be/be_visitor_interface/direct_proxy_impl_ss.cpp: * TAO_IDL/be/be_visitor_interface/interceptors_ss.cpp: * TAO_IDL/be/be_visitor_interface/interface.cpp: * TAO_IDL/be/be_visitor_interface/interface_ch.cpp: * TAO_IDL/be/be_visitor_interface/interface_cs.cpp: * TAO_IDL/be/be_visitor_interface/interface_sh.cpp: * TAO_IDL/be/be_visitor_interface/interface_ss.cpp: * TAO_IDL/be/be_visitor_interface/thru_poa_proxy_impl_sh.cpp: * TAO_IDL/be/be_visitor_interface/thru_poa_proxy_impl_ss.cpp: For the gen_abstract_ops_helper() static method in each of the above visitors, changed the logic to do nothing unless the base interface passed to the method is abstract. The check has been moved here from its former location in the method call so operations inherited from distance abstract ancestors can be found and regenerated. Thanks to Markus Stenberg for sending in an example that uncovered the bug. * TAO_IDL/be/be_visitor_valuetype/valuetype_ci.cpp: * TAO_IDL/be/be_valuetype.cpp: * TAO_IDL/be_include/be_valuetype.h: Removed unused code. Tue Aug 17 11:40:05 2004 Jeff Parsons * TAO_IDL/be/be_visitor_root/root.cpp: Added generation of '\n' as the very last thing that happens in each generated file, to make absolutely sure every file ends with a newline (required by CVS and some compilers). Thanks to Markus Stenberg for reporting the problem in *S.inl when -Sp (suppression of thru-POA collocation code) is in effect. Mon Aug 16 23:56:21 2004 J.T. Conklin * orbsvcs/orbsvcs/FtRtEvent.mpc: Changed FTRT_EventChannel project to inherit from core. * orbsvcs/orbsvcs/RTCosScheduling.mpc: Changed RTCosScheduling project to inherit from core. Tue Aug 17 06:49:12 UTC 2004 Johnny Willemsen * TAO_IDL/be/be_visitor_ccm_pre_proc.cpp: Fixed member initialisation order warning Mon Aug 16 23:35:00 2004 J.T. Conklin * configure.ac: Update to configure orbsvcs/tests/F*. * orbsvcs/tests/Makefile.am: Update to build new tests. * orbsvcs/tests/FT_App/Makefile.am: * orbsvcs/tests/FaultTolerance/Makefile.am: * orbsvcs/tests/FaultTolerance/GroupRef_Manipulation/Makefile.am: * orbsvcs/tests/FaultTolerance/IOGR/Makefile.am: * orbsvcs/tests/FaultTolerance/IOGRManipulation/Makefile.am: * orbsvcs/tests/FtRtEvent/Makefile.am: New files. * orbsvcs/orbsvcs/AV.mpc: * orbsvcs/orbsvcs/CosConcurrency.mpc: * orbsvcs/orbsvcs/CosEvent.mpc: * orbsvcs/orbsvcs/CosLifeCycle.mpc: * orbsvcs/orbsvcs/CosLoadBalancing.mpc: * orbsvcs/orbsvcs/CosNaming.mpc: * orbsvcs/orbsvcs/CosNotification.mpc: * orbsvcs/orbsvcs/CosProperty.mpc: * orbsvcs/orbsvcs/CosTime.mpc: * orbsvcs/orbsvcs/CosTrading.mpc: * orbsvcs/orbsvcs/DsEventLogAdmin.mpc: * orbsvcs/orbsvcs/DsLogAdmin.mpc: * orbsvcs/orbsvcs/DsNotifyLogAdmin.mpc: * orbsvcs/orbsvcs/FTORB.mpc: * orbsvcs/orbsvcs/FaultTolerance.mpc: * orbsvcs/orbsvcs/FtRtEvent.mpc: * orbsvcs/orbsvcs/PortableGroup.mpc: * orbsvcs/orbsvcs/RTCORBAEvent.mpc: * orbsvcs/orbsvcs/RTCosScheduling.mpc: * orbsvcs/orbsvcs/RTEvent.mpc: * orbsvcs/orbsvcs/RTEventLogAdmin.mpc: * orbsvcs/orbsvcs/RTSched.mpc: * orbsvcs/orbsvcs/RT_Notification.mpc: * orbsvcs/orbsvcs/SSLIOP.mpc: * orbsvcs/orbsvcs/Security.mpc: * orbsvcs/orbsvcs/Svc_Utils.mpc: Changed to prepend "orbsvcs/" to export include path. * orbsvcs/Concurrency_Service/Makefile.am: * orbsvcs/CosEvent_Service/Makefile.am: * orbsvcs/Dump_Schedule/Makefile.am: * orbsvcs/Event_Service/Makefile.am: * orbsvcs/FTRT_Event_Service/Event_Service/Makefile.am: * orbsvcs/FTRT_Event_Service/Factory_Service/Makefile.am: * orbsvcs/FTRT_Event_Service/Gateway_Service/Makefile.am: * orbsvcs/FT_ReplicationManager/Makefile.am: * orbsvcs/Fault_Detector/Makefile.am: * orbsvcs/Fault_Notifier/Makefile.am: * orbsvcs/IFR_Service/Makefile.am: * orbsvcs/LifeCycle_Service/Makefile.am: * orbsvcs/LoadBalancer/Makefile.am: * orbsvcs/Logging_Service/Basic_Logging_Service/Makefile.am: * orbsvcs/Logging_Service/Event_Logging_Service/Makefile.am: * orbsvcs/Logging_Service/Notify_Logging_Service/Makefile.am: * orbsvcs/Logging_Service/RTEvent_Logging_Service/Makefile.am: * orbsvcs/Naming_Service/Makefile.am: * orbsvcs/Notify_Service/Makefile.am: * orbsvcs/Scheduling_Service/Makefile.am: * orbsvcs/Time_Service/Makefile.am: * orbsvcs/Trading_Service/Makefile.am: * orbsvcs/orbsvcs/Makefile.am: * orbsvcs/performance-tests/LoadBalancing/LBPerf/RPS/Makefile.am: * orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/Makefile.am: * orbsvcs/performance-tests/RTEvent/Federated_Roundtrip/Makefile.am: * orbsvcs/performance-tests/RTEvent/Roundtrip/Makefile.am: * orbsvcs/performance-tests/RTEvent/lib/Makefile.am: * orbsvcs/tests/AVStreams/Asynch_Three_Stage/Makefile.am: * orbsvcs/tests/AVStreams/Bidirectional_Flows/Makefile.am: * orbsvcs/tests/AVStreams/Component_Switching/Makefile.am: * orbsvcs/tests/AVStreams/Full_Profile/Makefile.am: * orbsvcs/tests/AVStreams/Latency/Makefile.am: * orbsvcs/tests/AVStreams/Modify_QoS/Makefile.am: * orbsvcs/tests/AVStreams/Multicast/Makefile.am: * orbsvcs/tests/AVStreams/Multicast_Full_Profile/Makefile.am: * orbsvcs/tests/AVStreams/Multiple_Flows/Makefile.am: * orbsvcs/tests/AVStreams/Pluggable/Makefile.am: * orbsvcs/tests/AVStreams/Pluggable_Flow_Protocol/Makefile.am: * orbsvcs/tests/AVStreams/Simple_Three_Stage/Makefile.am: * orbsvcs/tests/AVStreams/Simple_Two_Stage/Makefile.am: * orbsvcs/tests/AVStreams/Simple_Two_Stage_With_QoS/Makefile.am: * orbsvcs/tests/Bug_1334_Regression/Makefile.am: * orbsvcs/tests/Concurrency/Makefile.am: * orbsvcs/tests/CosEvent/Basic/Makefile.am: * orbsvcs/tests/CosEvent/lib/Makefile.am: * orbsvcs/tests/EC_Custom_Marshal/Makefile.am: * orbsvcs/tests/EC_MT_Mcast/Makefile.am: * orbsvcs/tests/EC_Mcast/Makefile.am: * orbsvcs/tests/EC_Multiple/Makefile.am: * orbsvcs/tests/EC_Throughput/Makefile.am: * orbsvcs/tests/Event/Basic/Makefile.am: * orbsvcs/tests/Event/Mcast/Common/Makefile.am: * orbsvcs/tests/Event/Mcast/Complex/Makefile.am: * orbsvcs/tests/Event/Mcast/Simple/Makefile.am: * orbsvcs/tests/Event/Mcast/Two_Way/Makefile.am: * orbsvcs/tests/Event/Performance/Makefile.am: * orbsvcs/tests/Event/lib/Makefile.am: Updated to access orbsvcs headers with -I$(TAO_ROOT)/orbsvcs.: Mon Aug 16 16:45:06 2004 J.T. Conklin * examples/Kokyu_dsrt_schedulers/muf_example/muf_example.mpc: Changed muf_client project to inherit from svc_utils. * {docs,examples,orbsvcs,performance-tests,utils}/.../*.{cpp,h,idl}: Changed #include "orbsvcs/orbsvcs/..." to #include "orbsvcs/...". Mon Aug 16 18:14:53 2004 Jeff Parsons * TAO_IDL/be/be_interface.cpp (gen_stub_ctor): Fixed logic in generation of constructor taking stub and servant, for abstract interfaces that inherit from other abstract interfaces. Mon Aug 16 16:31:19 2004 Balachandran Natarajan * TAO-INSTALL.html (href): Addressed an additional concern from Dr. Schmidt regarding broken documentation. Mon Aug 16 12:13:30 2004 Balachandran Natarajan * TAO-INSTALL.html (href): Fixed some notes on .sln files generated for VC71. Sun Aug 15 18:16:00 2004 Jeff Parsons * TAO_IDL/ast/ast_decl.cpp: Fixed minor bug in setting the default version to 1.0. * TAO_IDL/be/be_global.cpp: * TAO_IDL/be/be_produce.cpp: * TAO_IDL/be/be_visitor_ccm_pre_proc.cpp: * TAO_IDL/be_include/be_global.h: * TAO_IDL/be_include/be_visitor_ccm_pre_proc.h: * TAO_IDL/driver/drv_preproc.cpp: * TAO_IDL/fe/idl.yy: * TAO_IDL/fe/y.tab.cpp: * TAO_IDL/include/idl_global.h: * TAO_IDL/util/utl_global.cpp: - Moved code to create AST nodes for a struct and sequence implied IDL for 'uses multiple' declarations from the parser back to its original location in the CCM preprocessing visitor. - Added a command line option (-Sm) to suppress the CCM preprocessing visitor, for use on IDL files that have already had their CCM-related implied IDL converted explicitly. - Added a flag to change the way the includes orb.idl, Components.idl and *.pidl are handled. This flag can be set to modify the default behavior by a plugin back end. Sun Aug 15 18:07:04 2004 Jeff Parsons * docs/compiler.html: * docs/releasenotes/index.html: Added items for a new IDL compiler command line option -Sm, that disables the visitor that converts IDL3 constructs to the equivalent IDL2. This option is for use in IDL files where such conversions are already present explicitly, for example if the IDL file is the product of a converstion tool. Sat Aug 14 20:21:34 2004 Ossama Othman * orbsvcs/orbsvcs/SSLIOP/SSLIOP_OpenSSL_st_T.h (OpenSSL_traits): Replaced primary template definition with a forward declaration. OpenSSL data structure-specific traits should always define/specialize their own traits template. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_EVP_PKEY.h (OpenSSL_traits): * orbsvcs/orbsvcs/SSLIOP/SSLIOP_SSL.h (OpenSSL_traits): * orbsvcs/orbsvcs/SSLIOP/SSLIOP_X509.h (OpenSSL_traits): More MSVC++ 6 brain damage. MSVC++ 6 cannot handle initialization of a static constant variable in the structure declaration. It considers non-zero initialization to be an improper pure function specifier despite the fact no function is declared in this case. Define the constant inside an enumeration instead to work around the problem. Sat Aug 14 18:17:59 2004 Jeff Parsons * TAO_IDL/be/be_interface.cpp: In the traversal of the inheritance graph for components, changed the algorithm so that CCMObject is processed before the base component, if any. This move ensures that, in the generated copy constructor in the skeleton class of the equivalent interface, the calls to base class copy constructors will be generated in the correct order. For compilers that are strict about this, the correct order is depth-first pre-order on the inheritance tree. Sat Aug 14 12:11:06 2004 Ossama Othman * orbsvcs/orbsvcs/Event/ECG_UDP_Out_Endpoint.cpp (is_loopback): The "ACE_Sock_Connect" interim pseudo namespace no longer exists. Use the true "ACE" C++ namespace instead. Fixes a compile-time error. Fri Aug 13 23:58:50 2004 Ossama Othman * tao/Thread_Per_Connection_Handler.cpp (svc): The "ACE_Flag_Manip" pseudo namespace no longer exists, and was not meant to be used in the long run in this code. Use the true "ACE" C++ namespace instead. Sat Aug 14 03:32:38 2004 Balachandran Natarajan * tests/Bug_1904_Regression/test.cpp: Fixed warnings in the daily builds. Fri Aug 13 11:06:43 2004 Ossama Othman * orbsvcs/orbsvcs/SSLIOP/SSLIOP_OpenSSL_st_T.h (OpenSSL_st_var): The types used as template parameters for this class template do not inherit from a common base class so there is no need to inherit from TAO_Base_var and declare undefined a TAO_Base_var copy constructor and assignment operator to prevent widening assignments. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_OpenSSL_st_T.inl (OpenSSL_st_var): Removed TAO_Base_var constructor call from the base member initializer list. This class no longer inherits from TAO_Base_var. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.h (Current_var): Define this class in terms of the TAO::Pseudo_Var_T class template instead of customized class. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.cpp: Removed the custom TAO::SSLIOP::Current_var class definition. It is no longer needed. * orbsvsc/orbsvcs/SSLIOP/SSLIOP_Credentials.cpp: * orbsvsc/orbsvcs/SSLIOP/SSLIOP_OwnCredentials.cpp: * orbsvcs/orbsvcs/Security/SL3_CredentialsCurator.cpp: Added missing explicit template instantiations for TAO_Pseudo_Var_T template instances defined in the corresponding headers of these files. Fixes link-time errors in explicit template instantiation builds. Fri Aug 13 17:46:12 UTC 2004 Johnny Willemsen * tao/IOR_Parser.h: Small doxygen tag improvements Fri Aug 13 10:25:25 2004 Ossama Othman * orbsvcs/orbsvcs/SSLIOP/SSLIOP_OpenSSL_st_T.h (OpenSSL_traits): Corrected doxygen documentation for this traits structure. "@struct", not "@class". Fri Aug 13 10:17:46 2004 J.T. Conklin * orbsvcs/orbsvcs/Makefile.am: * orbsvcs/orbsvcs/SSLIOP.mpc: Remove PIDL_Files. Thanks to Ossama Othman who let me know that ssl_endpoint.pidl needn't be installed. Fri Aug 13 09:38:24 2004 Ossama Othman * orbsvcs/orbsvcs/SSLIOP/SSLIOP_OpenSSL_st_T.h (copy): Corrected function parameter. It should have been "T const &", not "T *". This should fix a Borland C++ Builder X compile-time problem. Interestingly, g++ 3.4.1 did not complain about this problem. Fri Aug 13 11:10:00 2004 Liang-Jui Shen * orbsvcs/orbsvcs/Event/EC_Basic_Factory.cpp: * orbsvcs/orbsvcs/Event/EC_Default_Factory.cpp: * orbsvcs/orbsvcs/Event/EC_Null_Factory.cpp: * orbsvcs/orbsvcs/Event/EC_Reactive_Timeout_Generator.cpp: * orbsvcs/orbsvcs/Event/EC_Reactive_Timeout_Generator.h: My previous check-ins failed the tests. Therefore, I reverted to the original version. Fri Aug 13 09:01:00 2004 J.T. Conklin * configure.ac: Update to configure orbsvcs/tests/[A-E]*. * orbsvcs/Makefile.am: Update to build tests. * orbsvcs/tests/Makefile.am * orbsvcs/tests/AVStreams/Makefile.am: Updated. * orbsvcs/tests/AVStreams/Asynch_Three_Stage/Makefile.am: * orbsvcs/tests/AVStreams/Bidirectional_Flows/Makefile.am: * orbsvcs/tests/AVStreams/Component_Switching/Makefile.am: * orbsvcs/tests/AVStreams/Full_Profile/Makefile.am: * orbsvcs/tests/AVStreams/Latency/Makefile.am: * orbsvcs/tests/AVStreams/Modify_QoS/Makefile.am: * orbsvcs/tests/AVStreams/Multicast/Makefile.am: * orbsvcs/tests/AVStreams/Multicast_Full_Profile/Makefile.am: * orbsvcs/tests/AVStreams/Multiple_Flows/Makefile.am: * orbsvcs/tests/AVStreams/Pluggable/Makefile.am: * orbsvcs/tests/AVStreams/Pluggable_Flow_Protocol/Makefile.am: * orbsvcs/tests/AVStreams/Simple_Three_Stage/Makefile.am: * orbsvcs/tests/AVStreams/Simple_Two_Stage/Makefile.am: * orbsvcs/tests/AVStreams/Simple_Two_Stage_With_QoS/Makefile.am: * orbsvcs/tests/Bug_1334_Regression/Makefile.am: * orbsvcs/tests/Bug_1393_Regression/Makefile.am: * orbsvcs/tests/Bug_1395_Regression/Makefile.am: * orbsvcs/tests/Bug_1630_Regression/Makefile.am: * orbsvcs/tests/Concurrency/Makefile.am: * orbsvcs/tests/CosEvent/Makefile.am: * orbsvcs/tests/CosEvent/Basic/Makefile.am: * orbsvcs/tests/CosEvent/lib/Makefile.am: * orbsvcs/tests/EC_Custom_Marshal/Makefile.am: * orbsvcs/tests/EC_MT_Mcast/Makefile.am: * orbsvcs/tests/EC_Mcast/Makefile.am: * orbsvcs/tests/EC_Multiple/Makefile.am: * orbsvcs/tests/EC_Throughput/Makefile.am: * orbsvcs/tests/Event/Makefile.am: * orbsvcs/tests/Event/Basic/Makefile.am: * orbsvcs/tests/Event/Mcast/Makefile.am: * orbsvcs/tests/Event/Mcast/Common/Makefile.am: * orbsvcs/tests/Event/Mcast/Complex/Makefile.am: * orbsvcs/tests/Event/Mcast/Simple/Makefile.am: * orbsvcs/tests/Event/Mcast/Two_Way/Makefile.am: * orbsvcs/tests/Event/Performance/Makefile.am: * orbsvcs/tests/Event/lib/Makefile.am: New files, built with a little help from MPC. Fri Aug 13 09:30:54 2004 Balachandran Natarajan * orbsvcs/tests/ior_corbaname/README: Fixed a typo in the instructions. Thanks to TG . Fri Aug 13 12:48:48 2004 Simon McQueen * TAO_IDL/fe/fe_lookup.cpp (lookup): Fixed warning in Linux builds. * tests/Bug_1904_Regression/test.mpc: Added missing $Id tag. Fri Aug 13 00:46:24 2004 J.T. Conklin * orbsvcs/orbsvcs/Makefile.am: Update to account for Ossama's SSLIOP changes. * configure.ac: Update to configure orbsvcs/performance-tests/*. * orbsvcs/Makefile.am: Update to build performance-tests. * orbsvcs/performance-tests/Makefile.am: * orbsvcs/performance-tests/LoadBalancing/Makefile.am: * orbsvcs/performance-tests/LoadBalancing/LBPerf/Makefile.am: * orbsvcs/performance-tests/LoadBalancing/LBPerf/RPS/Makefile.am: * orbsvcs/performance-tests/RTEvent/Makefile.am: * orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/Makefile.am: * orbsvcs/performance-tests/RTEvent/Federated_Roundtrip/Makefile.am: * orbsvcs/performance-tests/RTEvent/RTCORBA_Baseline/Makefile.am: * orbsvcs/performance-tests/RTEvent/RTCORBA_Callback/Makefile.am: * orbsvcs/performance-tests/RTEvent/Roundtrip/Makefile.am: * orbsvcs/performance-tests/RTEvent/TCP_Baseline/Makefile.am: * orbsvcs/performance-tests/RTEvent/lib/Makefile.am: New files, built with a little help from MPC. Thu Aug 12 21:00:22 2004 J.T. Conklin * orbsvcs/orbsvcs/Makefile.am: * tao/Makefile.am: Update, with a little help from MPC. * orbsvcs/orbsvcs/SSLIOP.mpc: * tao/BiDir_GIOP.mpc: * tao/Domain.mpc: * tao/DynamicAny.mpc: * tao/DynamicInterface.mpc: * tao/IFR_Client.mpc: * tao/IORInterceptor.mpc: * tao/IORManipulation.mpc: * tao/IORTable.mpc: * tao/Messaging.mpc: * tao/ObjRefTemplate.mpc: * tao/PortableServer.mpc: * tao/RTCORBA.mpc: * tao/RTPortableServer.mpc: * tao/RTScheduler.mpc: * tao/SmartProxies.mpc: * tao/Strategies.mpc: * tao/TypeCodeFactory.mpc: * tao/Utils.mpc: * tao/Valuetype.mpc: * tao/tao.mpc: Use new PIDL_Files custom file type so that *.pidl files are known to MPC. This will be used by the automake template so *.pidl files are installed. Thu Aug 12 19:21:25 2004 Ossama Othman * orbsvcs/orbsvcs/SSLIOP.mpc: Removed SSLIOPS.cpp from the source file list. No unconstrained interfaces are defined in the SSLIOP.idl IDL file, meaning that there is no need to compile and link the corresponding skeleton file. Thu Aug 12 18:45:20 2004 Ossama Othman * orbsvcs/orbsvcs/SSLIOP/SSLIOP_ClientCredentials.h Added new OpenSSL "SSL" data structure constructor parameter, and accompanying cached member. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_ClientCredentials.cpp (ClientCredentials): Initialize new SSL data structure member with given SSL argument. (parent_credentials, client_authentication, integrity): Implemented these methods. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Connector.cpp (ssliop_connect): Do not widen the retrieved OwnCredentials pointer to a Credentials pointer. We really want to retain the narrower interface for later use. Furthermore, it is more correct to store an OwnCredentials reference in an endpoint rather than one that has been widened to a Credentials reference. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.cpp: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Factory.cpp: Cosmetic updates. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current_Impl.cpp (client_credentials): Pass the underlying SSL data structur to the ClientCredentials constructor. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_EVP_PKEY.cpp: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_EVP_PKEY.h: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_X509.cpp: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_X509.h: The types that were defined in these files are now implemented in terms of the new TAO::SSLIOP::OpenSSL_st_T<> template. Reduces code duplication and maintenance burden. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Endpoint.h: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Endpoint.i: Cache and return an OwnCredentials reference, not a wider Credentials reference. It is more correct to use the former. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_OpenSSL_st_T.cpp: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_OpenSSL_st_T.h: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_OpenSSL_st_T.inl: New template used to implement a "_var" class for OpenSSL data structures such as "X509, EVP_PKEY" and "SSL". * orbsvcs/orbsvcs/SSLIOP/SSLIOP_OwnCredentials.h: Corrected typo in documentation. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_SSL.cpp: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_SSL.h: New files containing TAO::SSLIOP::SSL_var typdef and accompanying explicit template instantiations. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_X509.inl: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_EVP_PKEY.inl: Removed these files. They are no longer used. Thu Aug 12 17:52:36 2004 Ossama Othman * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Credentials.cpp (operator==): Cast away the const-ness of the right hand side argument before invoking its non-const cred_type() method. The method in question doesn't modify the object so doing so is not violating any "immutability contract". Fixes a compile-time error. Thu Aug 12 17:51:52 2004 Simon McQueen * TAO_IDL/fe/fe_lookup.cpp (lookup): Added test for matching string lengths to prevent incorrect identification of non-keyword strings as c++ keywords. This fixes bugzilla #1904. * tests/Bug_1904_Regression/test.cpp: * tests/Bug_1904_Regression/test.idl: * tests/Bug_1904_Regression/test.mpc: Regression test for the above. Thu Aug 12 11:56:12 UTC 2004 Johnny Willemsen * tao/IIOP_Transport.cpp: * tao/Codeset_Manager.cpp: Smaller debug message formatting so that things look the same and that it is directly clear where the message is coming from when reading a log. * tao/IIOP_Transport.cpp (set_bidir_context_info): After we retrieved all listen_points check that the list is empty, if it is, we really have a problem and we report it. * tao/IIOP_Connection_Handler.cpp (process_listen_point_list): This method processes the listen_point_list, when we are here we should have a list with something in it, when the client has a misconfigured DNS, it can be that an empty list is send by the client because in TAO_IIOP_Transport::get_listen_point we only add endpoints there that match the local address and when we have misconfigured this, this check could fail and we could send an empty list. Thu Aug 12 10:09:12 UTC 2004 Johnny Willemsen * tests/Big_Oneways/server.cpp: * tests/Big_Oneways/Session_Control.cpp: Added a few more debug lines to the shutdown process, so that we can see how far we get when this test fails. Thu Aug 12 09:36:12 UTC 2004 Johnny Willemsen * tests/Portable_Interceptors/Collocated/Service_Context_Manipulation/Client_Task.cpp: * tests/Portable_Interceptors/Collocated/Service_Context_Manipulation/Server_Task.cpp: When catching an exception, tell whether it is in the client or server task. When an event loop ends, also tell which loop it is. Thu Aug 12 09:22:12 UTC 2004 Johnny Willemsen * tests/AMI_Buffering/admin.cpp: * tests/AMI_Buffering/client.cpp: * tests/AMI_Buffering/server.cpp: When catching an exception, tell whether it is in the client, admin or server. * tests/Faults/client.cpp: * tests/Faults/middle.cpp: * tests/Faults/ping.cpp: * tests/Faults/server.cpp: When catching an exception, tell whether it is in the client, ping, admin or server. When an event loop ends, also tell which loop it is. Wed Aug 11 22:28:47 2004 Balachandran Natarajan * orbsvcs/orbsvcs/CSI.idl: * orbsvcs/orbsvcs/CSIIOP.idl: * orbsvcs/orbsvcs/SecurityLevel3.idl: Fixed fuzz errors. Wed Aug 11 18:54:35 2004 J.T. Conklin * orbsvcs/orbsvcs/Makefile.am: * tao/Makefile.am: Update, with help from the latest version of automake.mpd. Adds resource files to EXTRA_DIST, and installs *.idl files. Wed Aug 11 15:34:59 2004 Ossama Othman * orbsvcs/orbsvcs/SSLIOP/SSLIOP_ClientCredentials.cpp: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_OwnCredentials.cpp: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_TargetCredentials.cpp: Remove explicit namespace qualifier from base class constructor call in the base member initializer list due to MSVC++ 6 brain damage. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Credentials.cpp (operator==): Added missing SSLIOP Credentials attribute checks. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_CredentialsAcquirer.cpp: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Endpoint.cpp: Coding style updates. Wed Aug 11 14:54:31 2004 Balachandran Natarajan * docs/ORBEndpoint.html: Improved documentation with additional examples and fixed a few typos. Thanks to Jules Colding for motivating this. Wed Aug 11 09:36:16 2004 J.T. Conklin * docs/tutorials/Quoter/Event_Service/Quoter_Event_Service.mpc: * docs/tutorials/Quoter/On_Demand_Activation/Quoter_On_Demand_Activation.mpc: * docs/tutorials/Quoter/RT_Event_Service/Quoter_RT_Event_Service.mpc: * docs/tutorials/Quoter/Simple/ImprovedServer/Quoter_Simple_ImprovedServer.mpc: * examples/Load_Balancing_persistent/Load_Balancing_persistent.mpc: * examples/OBV/Typed_Events/Typed_Events.mpc: * examples/POA/Adapter_Activator/POA_Adapter_Activator.mpc: * examples/POA/DSI/POA_DSI.mpc: * examples/POA/Default_Servant/POA_Default_Servant.mpc: * examples/POA/Explicit_Activation/POA_Explicit_Activation.mpc: * examples/POA/FindPOA/POA_FindPOA.mpc: * examples/POA/Forwarding/POA_Forwarding.mpc: * examples/POA/Generic_Servant/POA_Generic_Servant.mpc: * examples/POA/Loader/POA_Loader.mpc: * examples/POA/NewPOA/POA_NewPOA.mpc: * examples/POA/On_Demand_Activation/POA_On_Demand_Activation.mpc: * examples/POA/On_Demand_Loading/POA_On_Demand_Loading.mpc: * examples/POA/POA_BiDir/POA_BiDir.mpc: * examples/POA/Reference_Counted_Servant/Reference_Counted_Servant.mpc: * examples/POA/TIE/POA_TIE.mpc: * examples/Quoter/Quoter.mpc: * examples/TypeCode_Creation/TypeCode_Creation.mpc: * orbsvcs/FT_ReplicationManager/FT_ReplicationManager.mpc: * orbsvcs/LifeCycle_Service/LifeCycle_Service.mpc: * orbsvcs/examples/Notify/Subscribe/Notify_Subscribe.mpc: * orbsvcs/examples/Notify/ThreadPool/Notify_ThreadPool.mpc: * orbsvcs/examples/ORT/ORT.mpc: * orbsvcs/orbsvcs/CosEvent.mpc: * orbsvcs/orbsvcs/CosLoadBalancing.mpc: * orbsvcs/orbsvcs/FaultTolerance.mpc: * orbsvcs/orbsvcs/FtRtEvent.mpc: * orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/Colocated_Roundtrip.mpc: * orbsvcs/performance-tests/RTEvent/Federated_Roundtrip/Federated_Roundtrip.mpc: * orbsvcs/performance-tests/RTEvent/RTCORBA_Baseline/RTCORBA_Baseline.mpc: * orbsvcs/performance-tests/RTEvent/RTCORBA_Callback/RTCORBA_Callback.mpc: * orbsvcs/performance-tests/RTEvent/Roundtrip/Roundtrip.mpc: * orbsvcs/performance-tests/RTEvent/TCP_Baseline/TCP_Baseline.mpc: * orbsvcs/performance-tests/RTEvent/lib/RTEC_Perf.mpc: * orbsvcs/tests/Bug_1630_Regression/test.mpc: * orbsvcs/tests/FT_App/FT_App.mpc: * orbsvcs/tests/InterfaceRepo/Application_Test/IFR_Application_Test.mpc: * orbsvcs/tests/InterfaceRepo/IDL3_Test/IFR_IDL3_Test.mpc: * orbsvcs/tests/InterfaceRepo/IFR_Test/IFR_IFR_Test.mpc: * orbsvcs/tests/InterfaceRepo/Persistence_Test/IFR_Persistence_Test.mpc: * orbsvcs/tests/Notify/performance-tests/Filter/Filter.mpc: * orbsvcs/tests/Notify/performance-tests/Throughput/Throughput.mpc: * performance-tests/Cubit/TAO/DII_Cubit/DII_Cubit.mpc: * performance-tests/Latency/DII/DII.mpc: * performance-tests/Latency/DSI/DSI.mpc: * performance-tests/Latency/Deferred/Deferred.mpc: * performance-tests/RTCorba/Multiple_Endpoints/Common/Common.mpc: * performance-tests/RTCorba/Multiple_Endpoints/Orb_Per_Priority/ORB_Per_Priority.mpc: * performance-tests/RTCorba/Oneways/Reliable/Reliable.mpc: * performance-tests/RTCorba/Thread_Pool/Thread_Pool.mpc: * performance-tests/Sequence_Latency/DII/DII.mpc: * performance-tests/Sequence_Latency/DSI/DSI.mpc: * performance-tests/Sequence_Latency/Deferred/Deferred.mpc: * tao/DynamicInterface.mpc: * tests/Bug_1636_Regression/test.mpc: * tests/POA/Default_Servant/Default_Servant.mpc: * tests/POA/MT_Servant_Locator/MT_Servant_Locator.mpc: * tests/RTCORBA/Diffserv/RTCORBA_Diffserv.mpc: * tests/RTCORBA/Explicit_Binding/RTCORBA_Explicit_Binding.mpc: * tests/RTCORBA/Linear_Priority/RTCORBA_Linear_Priority.mpc: * tests/RTCORBA/MT_Client_Protocol_Priority/RTCORBA_MT_Client_Proto_Prio.mpc: * tests/RTCORBA/Persistent_IOR/RTCORBA_Persistent_IOR.mpc: * tests/RTCORBA/Policies/Policies.mpc: * tests/RTCORBA/Policy_Combinations/RTCORBA_Policy_Combinations.mpc: * tests/RTCORBA/Priority_Inversion_With_Bands/Priority_Inversion_With_Bands.mpc: * tests/RTCORBA/Private_Connection/RTCORBA_Private_Connection.mpc: * tests/RTCORBA/Profile_And_Endpoint_Selection/PaE_Selection.mpc: * tests/RTCORBA/Server_Protocol/RTCORBA_Server_Protocol.mpc: * tests/RTCORBA/Thread_Pool/RTCORBA_Thread_Pool.mpc: Changed to inherit from minimum_corba instead of providing avoids statements to eliminate duplicate entries in list. Wed Aug 11 13:20:12 UTC 2004 Johnny Willemsen * tests/Oneway_Buffering/admin.cpp: * tests/Oneway_Buffering/client.cpp: * tests/Oneway_Buffering/server.cpp: When catching an exception, tell whether it is in the client, admin or server. Wed Aug 11 09:50:12 UTC 2004 Johnny Willemsen * tao/PortableServer/POA.h: Updated documentation to doxygen style Wed Aug 11 09:28:12 UTC 2004 Johnny Willemsen * tao/PortableServer/ImplRepo.pidl: Updated documentation to doxygen style Wed Aug 11 07:57:12 UTC 2004 Johnny Willemsen * orbsvcs/tests/Notify/Basic/Basic.mpc: * orbsvcs/tests/Notify/Structured_Filter/Struct_Filter.mpc: * orbsvcs/tests/Notify/Structured_Multi_Filter/Struct_Multi_Filter.mpc: * orbsvcs/tests/Notify/performance-tests/RedGreen/RedGreen.mpc: * orbsvcs/tests/Notify/performance-tests/Throughput/Throughput.mpc: Removed naming as base project, the notifytests base used is also based on naming Tue Aug 10 18:33:30 2004 J.T. Conklin * configure.ac: * orbsvcs/CosEvent_Service/Makefile.am: * orbsvcs/Event_Service/Makefile.am: * orbsvcs/FTRT_Event_Service/Event_Service/Makefile.am: * orbsvcs/FTRT_Event_Service/Factory_Service/Makefile.am: * orbsvcs/FTRT_Event_Service/Gateway_Service/Makefile.am: * orbsvcs/FT_ReplicationManager/Makefile.am: * orbsvcs/Fault_Detector/Makefile.am: * orbsvcs/Fault_Notifier/Makefile.am: * orbsvcs/IFR_Service/Makefile.am: * orbsvcs/LifeCycle_Service/Makefile.am: * orbsvcs/LoadBalancer/Makefile.am: * orbsvcs/Logging_Service/Event_Logging_Service/Makefile.am: * orbsvcs/Logging_Service/Notify_Logging_Service/Makefile.am: * orbsvcs/Trading_Service/Makefile.am: * orbsvcs/orbsvcs/Makefile.am: * tao/Makefile.am: Initial support for user-configurable features (ssl, rt_corba, minimum_corba, etc.) with automake conditionals. Conditional values are currently hard-coded in configure.ac and will have to be replaced by --with-* and --enable-* options. Tue Aug 10 17:56:00 2004 Jeff Parsons * TAO_IDL/be/be_interface.cpp: Fixed bug in the inheritance graph traversal algorithm that was sometimes failing to enqueue CCMObject and therefore also its parents Navigation, Receptacles, and Events. Thanks to Matthew Gillen for pointing out resulting runtime error in the generated skeleton operation table. * TAO_IDL/be/be_visitor_arg_traits.cpp: Fixed bug where the stub export macro was getting generated on the skeleton side. * TAO_IDL/be/be_visitor_component/component_sh.cpp: Cosmetic changes to source code. * TAO_IDL/be/be_visitor_interface/interface_sh.cpp: Removed generation of collocation classes for abstract interfaces in the skeleton header file, since they are not generated in the skeleton source file, thus causing a link error. For abstract interfaces, all the code related to their operations is duplicated in code generation for concrete interfaces deriving from them, at least on the skeleton side, so no code generation is required on the skeleton side at all for abstract interfaces. * TAO_IDL/be/be_visitor_valuetype/valuetype_ss.cpp: Fixed a bug in code generation of the copy constructor for a valuetype that supports an abstract interface. Tue Aug 10 13:24:12 UTC 2004 Johnny Willemsen * tao/BiDir_GIOP/BiDirPolicy_Validator.h: Use unique ifdef defines Tue Aug 10 12:54:12 UTC 2004 Johnny Willemsen * tests/Bug_1476_Regression/Client_Task.cpp: * tests/Bug_1476_Regression/Sender_i.h: Fixed compile errors with emulated exceptions Tue Aug 10 10:57:12 UTC 2004 Johnny Willemsen * NEWS: Updated that the fixes for bug 1476 aren't planned anymore but will be visible in the x.4.3 release Tue Aug 10 08:13:12 UTC 2004 Johnny Willemsen * tests/Bug_1476_Regression/*: New regression test for bug 1476. This tests that when using oneways with sync_none policy applied the ORB doesn't block on connection establishment. To be able to run this test you must have a long connection establishment time, this isn't the case on localhost, so run client and server far far from away. Because of this, this test isn't able to run in our daily builds. Tue Aug 10 00:41:10 2004 Ossama Othman * utils/nslist/nslist.cpp (display_endpoint_info): Fixed compile-time error. "CORBA::is_nil()", not "CORBA::Object::is_nil()". Mon Aug 9 23:31:45 2004 J.T. Conklin * orbsvcs/PSS/PSDL_Scope.cpp: Change call to ACE_OS::to_lower() to ACE_OS::ace_tolower() to adapt to API change. Mon Aug 9 17:43:33 2004 Ossama Othman * tao/Utils/Servant_Var.inl: Include "tao/Exception.h" to pull CORBA::Exception declaration. Fixes a compile-time error regarding an incomplete CORBA::Exception type in a catch() statement. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Credentials.cpp: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Credentials.h: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Credentials.inl: Renamed TAO::SSLIOP::Credentials class to TAO::SSLIOP_Credentials, i.e. moved it one namespace level up. Brain damaged MSVC++ 6 cannot handle calling base class constructors of classes declared in a nested namespace inside a sub-class base member initializer. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_ClientCredentials.cpp: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_ClientCredentials.h: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Endpoint.h: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Endpoint.i: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_OwnCredentials.cpp: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_OwnCredentials.h: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_TargetCredentials.cpp: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_TargetCredentials.h: Updated these sources to refer to the renamed TAO::SSLIOP_Credentials class. Mon Aug 9 12:16:50 2004 Jeff Parsons * tao/BD_String_Argument_T.cpp: Fixed incorrect placement of #if TAO_HAS_INTERCEPTORS == 1 guard. Mon Aug 9 15:44:12 UTC 2004 Johnny Willemsen * orbsvcs/orbsvcs/PortableGroup/UIPMC_Connection_Handler.cpp: * orbsvcs/orbsvcs/PortableGroup/UIPMC_Connector.{h,cpp}: Updated these files because of the interface changes of the base class Mon Aug 9 11:51:12 UTC 2004 Johnny Willemsen Integration of the fixes for bug 1476. In short, when making oneway calls with sync_none policy applied, the ORB shouldn't block, this was working for all calls, except for the first call, the connection establishment blocked and violated the meaning of sync_none. All changes below are there to also don't block on the first call, but just queue the messages until the transport is connection. Thanks to Bala for helping with this. Fri Aug 6 15:27:12 UTC 2004 Johnny Willemsen * tao/IIOP_Connector: * tao/SCIOP_Connection: * tao/UIOP_Connector: * orbsvcs/orbsvcs/SSLIOP/IIOP_SSL_Connector.cpp: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Connector.cpp: As last step in the make_connection register the transport with the reactor when the transport is connected. When it is not connected it will or happen in the Transport_Connector when there the connection is established or in the Transport::post_open when the transport is connected and we have outgoing data. Fri Aug 6 15:11:12 UTC 2004 Johnny Willemsen * tao/IIOP_Connector.cpp (make_connection): * tao/Transport_Connector.cpp (connect): Corrected method name in debug statement Fri Aug 6 14:58:18 2004 Balachandran Natarajan * tao/IIOP_Connector.cpp: * tao/Transport_Connector.cpp: Test for is_connected () before registration. Fri Aug 6 14:11:10 2004 Balachandran Natarajan * tao/IIOP_Connection_Handler.cpp: Cosmetic fix. * tao/IIOP_Connector.cpp: Register handler after the caching the transport. * tao/Transport.cpp: Register handler if there is a non-empty queue. then call schedule_wakeup (). Added locks to prevents races. Removed locks from format_queue_message (), since I think its not necessary. * tao/Transport.inl: Added a lock to is_connected (). This introduces a lock on the critical path. We need to think about this later. * tao/Transport_Connector.cpp: Added code to register the handler with the reactor. Fri Aug 6 13:52:12 UTC 2004 Johnny Willemsen * tao/IIOP_Connection_Handler.cpp: Removed duplicate include * ace/Thread_Per_Connection_Handler.cpp: Corrected classname in debug statement Thu Aug 5 08:09:12 UTC 2004 Johnny Willemsen * tao/Invocation_Adapter.{h,cpp}: Renamed set_sync_policy to set_response_flags, we are setting the response flags using sync_policy for oneways. Also, when having a twoway set the correct response_flags, this was done later in the twoday invocation, but the response_flags are SYNC_NONE by default, resulting that all twoways used a non blocking connect. By setting the response_flags earlier, the blocked member of the profile transport resolver is set to the correct value * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Connector.cpp: Corrected some errors * tao/Transport.cpp: When we are not connected, also purge us from the connection cache. When we are connected, the connection closure will do this but not when we are not connected. Use in recache_transport() the this->purge_entry() call to reduce code duplication * tao/IIOP_Connector: * tao/SCIOP_Connection: * tao/UIOP_Connector: * orbsvcs/orbsvcs/SSLIOP_Connector.cpp: * orbsvcs/orbsvcs/IIOP_SSL_Connector.cpp: When the connect() calls return -1, only when errno == EWOULDBLOCK we wait for completion, for other errno's we have to set transport to zero, because the transport is not usable in that case and we just don't have a connection then. Wed Aug 4 09:44:12 UTC 2004 Johnny Willemsen * orbsvs/orbsvcs/SSLIOP/IIOP_SSL_Connector.cpp: * orbsvs/orbsvcs/SSLIOP/SSLIOP_Connector.{h,cpp}: * orbsvs/orbsvcs/SSLIOP/SSLIOP_Connection_Handler.cpp: Updated for changes. These files wheren't added to my original branch and they where recently changed by Ossame, so make a new branch bug1476 on the head, so that I can merge all changes in one action to the main Wed Aug 4 09:31:12 UTC 2004 Johnny Willemsen * tao/IIOP_Connector.cpp: Fixed typo in debug line * tao/IIOP_Connector.h: Added virtual to cancel_svc_handler() to show that this is a virtual method. * tao/Strategies/DIOP_Connection_Handler.cpp: * tao/Strategies/SCIOP_Connection_Handler.cpp: * tao/Strategies/SHMIOP_Connection_Handler.cpp: * tao/Strategies/UIOP_Connection_Handler.cpp: * tao/Strategies/DIOP_Connector.{h,cpp}: * tao/Strategies/SCIOP_Connector.{h,cpp}: * tao/Strategies/SHMIOP_Connector.{h,cpp}: * tao/Strategies/UIOP_Connector.{h,cpp}: Updated these protocols with all changes we did in the base classes Tue Aug 3 11:56:12 UTC 2004 Johnny Willemsen An overview of the changes in the pluggable transport interface which has to be done in all pluggable transports: * Connection_Handler::open(), instead of setting just the id of the transport, call transport::post_open() with the id, this will set the id, mark the transport as connected, register the transport with the reactor and in case there is data in the outgoing queue it will also schedule the transport for output. * Connection_Handler::close(), check the implementation of this method, it should in most cases sufficient to just call this->close_handler(). * Connector::make_connection(), check using the profile transport resolver whether to make a blocked connect or non blocked. A non blocked is done when making oneways with sync_none policy applied. In case the connect returns -1 and errno == EWOULDBLOCK use the base method wait_for_connection_completion to wait for the connection to be established. Don't register here anymore the transport with the reactor, this is already done in your derived Connection_Handler::open() by calling the post_open() * Connector::cancel_svc_handler, a new method that must be implemented by each pluggable protocol to cancel the connection handler from the connector. Tue Aug 3 09:45:12 UTC 2004 Johnny Willemsen * tao/Remove_Invocation.cpp: Removed debug comment Tue Aug 3 09:21:12 UTC 2004 Johnny Willemsen * tao/Transport_Connector.{h,cpp}: * tao/IIOP_Connector.cpp: Changed signature of wait_for_connection_completion, pass transport as *&, so that is can be set to 0 when not usable and return a bool whether succeeded or not. Tue Aug 3 08:25:12 UTC 2004 Johnny Willemsen * tao/Transport.h: Corrected link to pluggable protocols documentation Mon Aug 2 18:20:12 UTC 2004 Johnny Willemsen * tao/Transport_Connector.cpp: Added wait_for_connection_completion() which now contains the code from connect that handles the waiting until the connection is completed. The only thing is the result value, maybe add a bool as return value and pass Transport by *&, what about that? * tao/IIOP_Connector.cpp: Use the new Transport_Connector::wait_for_connection_completion instead of doing everything here again Mon Aug 2 13:52:27 2004 Balachandran Natarajan * tao/Transport_Connector.cpp (connect): Left some comments for Johnny. Mon Aug 2 09:45:36 UTC 2004 Johnny Willemsen * tao/Transport.h: Added a todo that event_handler_i has to be renamed to event_handler * tao/Transport.cpp (send_message_shared_i): Use ACE_ERROR for a fatal message instead of a debug Mon Aug 2 09:16:36 UTC 2004 Johnny Willemsen * tao/Transport_Connector.cpp (connect): Refactored this method so that checking for errors is easier, seems to me that part of this method can be factored out again and can then also be called from IIOP_Connector::make_connection(). Added some remarks for Bala, in case we do a wait of zero on a non blocking connection, how to handle any return value? Mon Aug 2 07:54:36 UTC 2004 Johnny Willemsen * tao/Transport.{h,cpp}: Changed the result value type of post_open from int to bool. In case registration succeeds and we have data in our outgoing queue, schedule ourselves for output. * tao/IIOP_Connection_Handler.cpp: Check the result value of post_open. In case this fails, we return -1, the setting of the state to success, is now moved after the post_open. * tao/IIOP_Connector.cpp: Added a comment for Bala. Only call check_connection_closure when wait return -1. * tao/Transport_Connector.{h,cpp}: Only when wait fails call check_connection_closure. Removed the result argument from this method, the caller should only call this when wait returns -1, clarified the return value meaning. Removed the printing of errno when connection establishment fails, shouldn't we do the same in TAO_IIOP_Connector::make_connection()? Not all comments of Bala below are handled yet, handling of connection failures must still be improved. Mon Aug 2 03:40:36 2004 Balachandran Natarajan * tao/Transport_Connector.cpp: Fixed a logic error and added a few comments for Johnny. * tao/IIOP_Connection_Handler.cpp: * tao/IIOP_Connector.cpp: * tao/Transport.cpp: * tao/Transport_Connector.h: More comments for Johnny. Fri Jul 30 10:25:12 UTC 2004 Johnny Willemsen * tao/Transport.cpp: * tao/Transport_Connector.cpp: * tao/IIOP_Connector.cpp: Added some comments, removed commented out code * tao/IIOP_Connection_Handler.cpp: Removed not needed include which I added during my changes but is now not needed anymore * tao/Invocation_Endpoint_Selectors.cpp: Removed comments and changed the logic of selecting an endpoint, if one isn't usable not break but try the next. Thu Jul 29 13:35:12 UTC 2004 Johnny Willemsen * tao/Transport_Connector.cpp: Removed not needed include Thu Jul 29 13:35:12 UTC 2004 Johnny Willemsen * tao/Transport.{h,cpp}: Renamed set_connected to post_open, we do much more then just setting a property. When the transport is connected we register ourselves with the reactor. In case of failure we close the connection. The thing to check is whether it is safe to assume that we are also in the transport cache * tao/Transport_Connector.{h,cpp}: Removed register_transport() because the transport register itselves now. Also removed the calls to register_transport, we don't have to register the transport as connector anymore, the transport does that. * tao/IIOP_Connector.cpp (make_connection): Removed the registration of the transport with the reactor, see above. Use a ACE_Event_Handler_var to make sure that we always do a remove reference on the connection handler. * tao/IIOP_Connection_Handler.cpp (open): Call transport::post_open instead of set_connected Thu Jul 29 10:00:12 UTC 2004 Johnny Willemsen * tao/Transport.cpp (set_connected): Commented out schedule_output, this doesn't work, have to think about something else * tao/Transport_Connector.cpp (connect): When we get a connected transport out of the transport cache it can happen that another thread drove the reactor and set the transport to connected, but then it is not registered with the reactor, so add a check here that when we get a connected transport and it is not registered it yet, register it. In case we get a setup where the connection_handler::open() could safely register it, we could remove the checks above. Thu Jul 29 08:44:12 UTC 2004 Johnny Willemsen * tao/Transport_Connector.cpp (connect): Added more error handling to handle situations where connections can't be established Wed Jul 28 15:24:12 UTC 2004 Johnny Willemsen * tao/Transport_Connector.{h,cpp} Added pure virtual cancel_svc_handler() method which must be implemented by derived connectors to cancel the passed svc_handler with their base connector, the cancel on the base_connector must have derived connection handler, so we just can't do it in the base. Another option would be to make Transport_Connector a template which gets the connection handler type as template argument. Added also check_connection_closure, which is now generic and can also be used from the connect() call. * tao/IIOP_Connector.{h,cpp}: Implemented the cancel_svc_handler() and removed the check_connection_closure() because it is now in the base. Tue Jul 27 18:12:12 UTC 2004 Johnny Willemsen * tao/Connection_Handler.{h,cpp}: Added virtual close_handler() method, this will be called the the Transport_Connector and derived classes if they want to close the connection_handler, the default implementation changes the LF state to closed and removes a reference from the transport * tao/IIOP_Connection_Handler.cpp (close): Instead of modifing the LF state and removing a reference from the transport, just call this->close_handler(), this calls the Connection_Handler::close_handler(). With this we can close handlers in a generic way from the Transport_Connectors. When we would move a template class between the ACE_Svc_Handler template and the derived connection handlers, this extra template could implement the close method in a generic way, this would reduce the footprint a little. * tao/IIO_Connector.cpp: Moved docu to the correct place Tue Jul 27 17:26:12 UTC 2004 Johnny Willemsen * tao/IIOP_Connection_Handler.cpp: Instead of modifying the transport in several steps, just call set_connected which will do all work. * tao/Transport.{h,cpp,inl}: Removed the is_connected accessor, made a set_connected, which will set the id, set the connected_ bool and will schedule an output when the queue is not empty Tue Jul 27 12:28:12 UTC 2004 Johnny Willemsen * tao/Transport.{h,cpp}: * tao/Synch_Invocation.cpp: Renamed queue_message to format_queue_message Tue Jul 27 12:22:12 UTC 2004 Johnny Willemsen * tao/Transport.{h,cpp}: Added out_stream() which returns the out_stream from the messaging_object, this way the invocation classes don't need to use messaging_object anymore, just get the stream from the transport * tao/Synch_Invocation.cpp: * tao/Messaging/Asynch_Invocation.cpp: * tao/LocateRequest_Invocation.cpp: Instead of getting the out_stream from the messaging_object which is retrieved from the transport, get it from the transport. This way we don't have to include tao/Pluggable_Messaging.h Tue Jul 27 08:37:12 UTC 2004 Johnny Willemsen * tao/Transport_Connector.{h,cpp}: Factered out the registration of the transport into register_transport() Tue Jul 27 07:31:12 UTC 2004 Johnny Willemsen * tao/Sync_Invocation.cpp: * tao/Transport.{h,cpp}: Changed queue_message so that transport does the formatting Tue Jul 27 02:47:18 2004 Balachandran Natarajan * tao/Synch_Invocation.cpp: Left some comments for Johnny. Mon Jul 26 13:48:12 UTC 2004 Johnny Willemsen * tao/Synch_Invocation.cpp (remote_oneway): When queueing the message, stream it first else we just queue no message contents. The only question is how to handle the failure of the streaming Mon Jul 26 13:09:12 UTC 2004 Johnny Willemsen * tao/Transport.{h,cpp}: Moved cleaning up the queue out of destruction and send_connection_closed_notifications_i annd into the new method cleanup_queue_i which is called from these places * tao/IIOP_Connection_Handler.cpp: Marked the transport as connected after we changed the state to success * tao/IIOP_Connector.cpp: We have to handle the timeout of wait, made an implementation, but with a remark to Bala to check this, not sure if this is the correct way todo. Mon Jul 26 11:38:41 2004 Balachandran Natarajan * tao/Transport.cpp (TAO_Transport): Left a comment for Johnny. Mon Jul 26 11:04:12 UTC 2004 Johnny Willemsen * tao/Invocation_Adapter.cpp: Check for blocked or not blocked connection was wrong * tao/Transport_Connector.cpp: Corrected debug statement Mon Jul 26 09:24:12 UTC 2004 Johnny Willemsen * tao/Transport.cpp: In case we destruct a not connected transport it can happen that we have queued messages, zap these then from memory, we just can't deliver them. Sat Jul 24 18:08:13 2004 Balachandran Natarajan * tao/Connect_Strategy.h: Added a new wait () method which takes in a transport. * tao/Blocked_Connect_Strategy.cpp: * tao/Blocked_Connect_Strategy.h: Provided a default implementation for the new wait () method. * tao/LF_Connect_Strategy.cpp: * tao/LF_Connect_Strategy.h: * tao/Reactive_Connect_Strategy.cpp: * tao/Reactive_Connect_Strategy.h: Provided an implementation of the new wait () method. * tao/Invocation_Adapter.h: Changed the setup_operation_details_i () to set_syncscope_policy () since that is what it does. * tao/Invocation_Adapter.cpp: Changed the operation name in the implementation of the above method. Did a bunch of cosmetic changes to keep the line lengths smaller. * tao/Profile_Transport_Resolver.h: * tao/Profile_Transport_Resolver.inl: Changed the name of the connected () method as blocked (). Improved const correctness so that the blocked_ data member is const. * tao/Invocation_Endpoint_Selectors.cpp: Use TAO::ProfileTransportResolver::blocked () instead of TAO::ProfileTransportResolver::connected (). * tao/Transport_Connector.cpp: * tao/IIOP_Connector.cpp: Made a bunch of changes to improve readability of the code. Left a couple of questions for Johnny. There are a few more things that need to be addressed here. Fri Jul 22 09:54:12 UTC 2004 Johnny Willemsen * tao/IIOP_Connector.cpp (make_connection): Call the check_connection_closure only when we want to have a connected transport, for the non-blocking case we have to do something else because the return value of -1 doesn't mean there always the we have a problem just establishing this connection. * tao/IIOP_Connector.{h,cpp} (check_connection_closure): Changed method signature to have a return value Fri Jul 22 09:20:12 UTC 2004 Johnny Willemsen * tao/Transport_Connector.cpp (connect): When getting a transport out of the cache, print out whether it is connected or not Thu Jul 21 15:03:12 UTC 2004 Johnny Willemsen * tao/IIOP_Connector.cpp (make_connection): Use timeout to change the sync_options, this way we don't change the bitmask Thu Jul 21 14:34:12 UTC 2004 Johnny Willemsen * tao/ORB_Core.h: Removed the transport_cache accessor method, it was just declared and not implemented, the ORB_Core know nothing about this Thu Jul 21 13:35:12 UTC 2004 Johnny Willemsen * tao/Transport_Connector.cpp: In case we have a not connected transport we should look if we need to deliver a connected transport or not and behave accordingly to it Wed Jul 20 15:25:12 UTC 2004 Johnny Willemsen * tao/TAO_Server_Request.cpp: Updated all ACE_DEBUG and ACE_ERROR macros so that the formatting of messages is the same as in the rest of TAO. This makes reading the logfiles much easier. Wed Jul 20 14:42:12 UTC 2004 Johnny Willemsen * tao/IIOP_Connector.cpp (make_connection): Removed commented out code and only check for registration errors when we are calling the register_handler(). Wed Jul 20 11:12:12 UTC 2004 Johnny Willemsen * tao/Transport_Connector.cpp: Changed some remarks, some are not valid, some need some more clarification * tao/IIOP_Connector.{h,cpp}: Moved the handling of connection closure to a new separate method check_connection_closure(). This contains code original in make_connection(). This code is dependent on the type of tranport used, so it can't move into the base class. Thu Jul 8 14:50:12 UTC 2004 Johnny Willemsen * tao/IIOP_Connection_Handler.cpp (open): Set the transport to connected here. We should refactor the last lines of this method, these lines are copied in each different type of connection_handler. * tao/IIOP_Connector.cpp: Removed not needed code, just us is_connected() on the transport. Made a remark with the registration of the wait_strategy, do we need to do this here? * tao/Transport_Connector.cpp: Use the transport->is_connected() instead of the wait of the result. Thanks to Bala for getting me on the right track. Thu Jul 8 13:18:12 UTC 2004 Johnny Willemsen * tao/IIOP_Connector.cpp: * tao/Transport_Connector.cpp: Some changes to handle the wait, but things are still not correct * tao/Transport.cpp: Initialize is_connected+ to false Thu Jul 8 11:58:12 UTC 2004 Johnny Willemsen * tao/IIOP_Connector.cpp: Added some test code for how the handle the wait result value * tao/Transport_Connector.cpp: Added more logic what to do when a not connected transport is retrieved Mon Jul 5 12:37:12 UTC 2004 Johnny Willemsen * tao/Transport.{h,cpp}: Removed commented out method in the header file and give purge_entry a return value, so that we can check for failure. Mon Jul 5 12:02:12 UTC 2004 Johnny Willemsen * tao/IIOP_Connector.cpp: * tao/Transport_Connector.cpp: * tao/Profile_Transport_Resolver.cpp: Added some documentation and added some question to some code parts to be sure that we check this Fri Jul 2 11:32:12 UTC 2004 Johnny Willemsen * tao/Invocation_Adapter.{h,cpp}: Added setup_operation_details_i() which will setup the operation details and determine whether we want to block until a connection is ready or not, this removes duplicated code and we ony determine the settings once in the invocation path. Thu Jul 1 12:52:12 UTC 2004 Johnny Willemsen * tao/Transport_Connector.{h,cpp}: Removed the block argument from the make_connection and connect method again, if we should get a connected transport or not can be retrieved from the ProfileTransportResolver * tao/Transport_Connector.cpp: In case we get a transport from the cache that is not connected, call wait with zero time. We have to add more functionality here to handle the closing of that transport, and check the implementation what we do when we can't register the wait strategy with the reactor * tao/IIOP_Connector.{h,cpp}: Added better handling of blocking or non-blocking connects. Thu Jul 1 10:02:12 UTC 2004 Johnny Willemsen * tao/Transport.{h,inl}: Added connection_handler accessor function and made connetion_handler_i protected again * tao/Transport_Connector.cpp: Use Transport::connection_handler instead of the _i version. Wed Jun 30 14:26:12 UTC 2004 Johnny Willemsen * tao/Profile_Transport_Resolver.{h,cpp,i}: Instead of passed with each operation whether the connect should block or not, we now pass a boolean with the constructor if this tranport must deliver a connected transport or whether it is also allowed to deliver a not connected transport. Added an accessor for this member. * tao/Invocation_Adapter.cpp: * tao/Invocation_Endpoint_Selectors.{h,cpp}: * tao/LocateRequest_Invocation_Adapter.cpp: Instead of passing the block boolean with each operation, pass it with the constructor or the Profile_Transport_Resolver. Wed Jun 30 10:19:12 UTC 2004 Johnny Willemsen * tao/Synch_Invocation (remote_oneway): At the top of the method we check for sync with server or sync with target. In case of this we do a twoway. I don't see any reason why lower in the method we check another time for sync with server, so removed that check. Changed the calling of Synch_Twoway_Invocation::remote_twoway(), so that we check for exceptions in case of emulated exception macros. Add transport local variable, so that we don't need to get it several times in one method call. * tao/Transport.cpp (send_message_shared_i): Removed queueing, it should be here, added some comments that the code checking for twoways or replies should go out of here. This class also got the new methods queue_message and queue_message_i when it was created as branch. Tue Jun 20 10:10:10 UTC 2004 Johnny Willemsen * tao/Transport.{h,cpp}: Added queue_message and queue_message_i to be able to queue a message from the outside, use this method also internally. Added connected_ member and accessors to indicate whether this transport is connected or not * tao/LocateRequest_Invocation_Adapter.cpp: We use the Profile_Transport_Resolver here, assume that we always need to get a connected transport Mon Aug 9 09:29:12 UTC 2004 Johnny Willemsen * tao/Buffer_Allocator_T.h: Added missing access control specifier public for the base class Sat Aug 7 23:06:41 2004 J.T. Conklin * orbsvcs/orbsvcs/Makefile.am: Changed to introduce an intermediate dependency between the IDL sources and generated output files so that only one instance of tao_idl is spawned per input file with parallel make. Sat Aug 7 18:08:51 2004 Balachandran Natarajan * utils/catior/catior.cpp: Removed direct inclusion of . This file already includes ace/os_include/os_ctype.h. If LynxOS has problems, then the problem is elsewhere. * utils/nslist/nslist.cpp: Used Object::is_nil () instead of _nil (). Fri Aug 6 15:44:50 2004 J.T. Conklin * orbsvcs/TAO_Service/Makefile.am: New file. Fri Aug 6 12:51:33 2004 Jeff Parsons * tao/Argument.cpp: * tao/Argument.h: * tao/BD_String_Argument_T.cpp: * tao/BD_String_Argument_T.h: * tao/BD_String_SArgument_T.cpp: * tao/BD_String_SArgument_T.h: * tao/Basic_Argument_T.cpp: * tao/Basic_Argument_T.h: * tao/Basic_SArgument_T.cpp: * tao/Basic_SArgument_T.h: * tao/DomainC.cpp: * tao/Fixed_Array_Argument_T.cpp: * tao/Fixed_Array_Argument_T.h: * tao/Fixed_Array_SArgument_T.cpp: * tao/Fixed_Array_SArgument_T.h: * tao/Fixed_Size_Argument_T.cpp: * tao/Fixed_Size_Argument_T.h: * tao/Fixed_Size_SArgument_T.cpp: * tao/Fixed_Size_SArgument_T.h: * tao/Object_Argument_T.cpp: * tao/Object_Argument_T.h: * tao/Object_SArgument_T.cpp: * tao/Object_SArgument_T.h: * tao/Special_Basic_Argument_T.cpp: * tao/Special_Basic_Argument_T.h: * tao/Special_Basic_SArgument_T.cpp: * tao/Special_Basic_SArgument_T.h: * tao/UB_String_Argument_T.cpp: * tao/UB_String_Argument_T.h: * tao/UB_String_SArgument_T.cpp: * tao/UB_String_SArgument_T.h: * tao/Var_Array_Argument_T.cpp: * tao/Var_Array_Argument_T.h: * tao/Var_Array_SArgument_T.cpp: * tao/Var_Array_SArgument_T.h: * tao/Var_Size_Argument_T.cpp: * tao/Var_Size_Argument_T.h: * tao/Var_Size_SArgument_T.cpp: * tao/Var_Size_SArgument_T.h: * tao/operation_details.cpp: * tao/operation_details.h: * tao/DynamicInterface/DII_Invocation.cpp: Added TAO_HAS_INTERCEPTORS == 1 guards to all interceptor-related operations, so code generated from IDL operations will compile if Any operators (used by interceptors) are suppressed in code generation. Thanks to Nicolas HUYNH for reporting the problem. Fri Aug 6 15:45:00 UTC 2004 Simon Massey * TAO/utils/catior/catior.cpp Added #include required for Lynxos cross build. Fri Aug 6 08:05:25 2004 Douglas C. Schmidt * orbsvcs/orbsvcs/Log/LogMgr_i.cpp (TAO_LogMgr_i): Initialize max_id_ to 0. Thanks to Thomas Girard for reporting this. * orbsvcs/orbsvcs/Log/NotifyLogFactory_i.cpp (create_with_id): Duplidate object references before putting them in the hash map. Thanks to Thomas Girard for this fix. Fri Aug 6 12:16:35 2004 Balachandran Natarajan * utils/nslist/nslist.cpp: Fixed a core dump with the Object is _nil (). Thanks to Tufan Oruk for the patch. Thu Aug 5 23:42:02 2004 J.T. Conklin * orbsvcs/orbsvcs/ec_typed_events.mpb: Changed to inherit from dynamicinterface and ifr_client instead of providing libs and after statements so that dependency chain is complete. Thu Aug 5 20:20:37 2004 J.T. Conklin * orbsvcs/orbsvcs/Makefile.am: Changed custom build rules to use $(srcdir)/ so resulting makefiles will work on systems where make doesn't support VPATH. Thu Aug 5 07:08:12 UTC 2004 Johnny Willemsen * examples/PluggableUDP/tests/Performance/run_test.pl: The client also has a servant, so we must specifiy also an -ORBEndPoint for the client process. This fixes bugzilla bug 1899. Thu Aug 5 07:01:12 UTC 2004 Johnny Willemsen * examples/PluggableUDP/tests/Performance/run_test.pl: Updated this script to use the PerlACE module, simplifies this script a lot. Wed Aug 4 23:03:45 2004 Ossama Othman * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Credentials.cpp (Credentials): Older versions of OpenSSL didn't define the OpenSSL macro. Use CRYPTO_free if OPENSSL_free isn't defined. Wed Aug 4 22:13:19 2004 Ossama Othman * orbsvcs/orbsvcs/Security/SL3_CredentialsCurator.cpp (register_acquirer_factory): Release the String_var containing the acquisition method Id once the factory is successfully registered. Memory management becomes the responsiblity of the CredentialsCurator. Fixes a double deletion error. Wed Aug 4 21:23:52 2004 Ossama Othman * tao/IIOP_Acceptor.h (BASE_ACCEPTOR, CREATION_STRATEGY): (CONCURRENCY_STRATEGY, ACCEPT_STRATEGY): * tao/IIOP_Acceptor.cpp: Removed the "TAO_IIOP_" prefix from these typedefs. It was redundant since these typedefs are already encapsulated within the TAO_IIOP_Acceptor class. * tao/ORB_Table.cpp (get_orbs): Minor TAO coding convention update. Wed Aug 4 21:16:42 2004 Ossama Othman * orbsvcs/orbsvcs/SSLIOP/SSLIOP_ClientCredentials.cpp (ClientCredentials): * orbsvcs/orbsvcs/SSLIOP/SSLIOP_OwnCredentials.cpp (OwnCredentials): * orbsvcs/orbsvcs/SSLIOP/SSLIOP_TargetCredentials.cpp (TargetCredentials): Explicitly qualify the namespace to which the Credentials base class belongs to work around MSVC++ 6 namespace brain damage. * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Connector.cpp (open, close): (iiop_connect): Wrap calls to TAO::IIOP_SSL_Connector base class methods with the ACE_NESTED_CLASS macro to work around MSVC++ 6 namespace brain damage. Wed Aug 4 15:48:06 2004 Ossama Othman * TAO_IDL/be/be_global.cpp (destroy): * TAO_IDL/driver/drv_preproc.cpp (DRV_cpp_init): Fixed memory leaks. Wed Aug 4 14:10:12 UTC 2004 Johnny Willemsen * orbsvcs/tests/Security/MT_IIOP_SSL/run_test.pl: This test uses multiple clients, when a client timeouts, report which client this is. Wed Aug 4 07:17:12 UTC 2004 Johnny Willemsen * examples/AMH/Sink_Server/Timer_Handler.h: * examples/AMH/Sink_Server/Client_Task.cpp: Removed old comments that just shouldn't be in the code anymore Tue Aug 3 17:08:38 2004 J.T. Conklin * orbsvcs/orbsvcs/Makefile.am: Removed duplicate rules for building CosEventComm and CosEventChannelAdmin IDL files. Changed to not install headers, at least for the time being. * orbsvcs/FTRT_Event_Service/Makefile.am: * orbsvcs/FTRT_Event_Service/Event_Service/Makefile.am: * orbsvcs/FTRT_Event_Service/Factory_Service/Makefile.am: * orbsvcs/FTRT_Event_Service/Gateway_Service/Makefile.am: * orbsvcs/FT_ReplicationManager/Makefile.am: * orbsvcs/Fault_Detector/Makefile.am: * orbsvcs/Fault_Notifier/Makefile.am: * orbsvcs/LoadBalancer/Makefile.am: * orbsvcs/Logging_Service/Makefile.am: * orbsvcs/Logging_Service/Basic_Logging_Service/Makefile.am: * orbsvcs/Logging_Service/Event_Logging_Service/Makefile.am: * orbsvcs/Logging_Service/Notify_Logging_Service/Makefile.am: * orbsvcs/Logging_Service/RTEvent_Logging_Service/Makefile.am: * orbsvcs/Notify_Service/Makefile.am: New file. * orbsvcs/Concurrency_Service/Makefile.am: * orbsvcs/CosEvent_Service/Makefile.am: * orbsvcs/Dump_Schedule/Makefile.am: * orbsvcs/Event_Service/Makefile.am: * orbsvcs/IFR_Service/Makefile.am: * orbsvcs/LifeCycle_Service/Makefile.am: * orbsvcs/Naming_Service/Makefile.am: * orbsvcs/Scheduling_Service/Makefile.am: * orbsvcs/Time_Service/Makefile.am: * orbsvcs/Trading_Service/Makefile.am: Update, with a little help from MPC. * orbsvcs/Makefile.am: Added Concurrency, CosEvent, Dump Schedule, Event, Fault Detector, Fault Notifier, FT Replication Manager, FTRT Event, IFR, LifeCycle, Load Balancer, Logging, Naming, Notify, Scheduling, Time, and Trading services to list of SUBDIRS. * configure.ac: Added Concurrency, CosEvent, Dump Schedule, Event, Fault Detector, Fault Notifier, FT Replication Manager, FTRT Event, IFR, LifeCycle, Load Balancer, Logging, Naming, Notify, Scheduling, Time, and Trading service Makefile.am's to list of config files. Tue Aug 3 16:32:56 2004 Jeff Parsons * TAO_IDL/be/be_interface.cpp: Made the checking more strict for enqueueing abstract interfaces to an internally used list - abstract valuetypes and eventtypes were also getting put on it, leading to generated code that wouldn't compile. Thanks to Will Otte for pointing out the problem. Tue Aug 3 13:10:04 2004 J.T. Conklin * orbsvcs/orbsvcs/Makefile.am: Update, with a little help from MPC. * orbsvcs/Makefile.am: Added orbsvcs to list of SUBDIRS. * configure.ac: Added orbsvcs/orbsvcs/Makefile to list of config files. Tue Aug 3 08:05:20 2004 J.T. Conklin * orbsvcs/PSS/PSDL_Datastore.cpp: Fixed TAO_PSDL_Datastore::create_index_helper() where the ACE_NEW_RETURN macro was being ab/used for placement new. This caused problems for targets w/ACE_HAS_NOTHROW_NEW. I eliminated the error checks because this function can never called with a bad buffer pointer. * orbsvcs/PSS/Makefile.am: New file. * orbsvcs/Makefile.am: Update with current MPC generated file, but enable only PSS and TAO_Service in SUBDIRS. * Makefile.am: Added orbsvcs to SUBDIRS. * configure.ac: Added orbsvcs/{,PSS/,TAO_Service/}Makefile to list of config files. Tue Aug 3 13:47:12 UTC 2004 Johnny Willemsen * tao/PortableServer/AMH_Response_Handler.{h,cpp}: Corrected the method name for decrementing the reference count from decr_refcount to _remove_ref. The AMH Response Handler is derived from TAO_Local_RefCounted_Object and this defines the virtual method _remove_ref, we now had two methods where the base method didn't know anything of the allocator. By overruling we also get the derived _remove_ref and use the allocator when needed. This fixes the crashing of the AMH Sink_Server example in our daily builds. Tue Aug 3 08:34:53 2004 Jeff Parsons * orbsvcs/IFR_Service/be_extern.h: * orbsvcs/IFR_Service/be_global.cpp: * orbsvcs/IFR_Service/be_global.h: * orbsvcs/IFR_Service/be_init.cpp: Changes corresponding to those in TAO_IDL_BE, made in Sun Aug 1 20:57:32 2004 Jeff Parsons Mon Aug 2 14:28:12 UTC 2004 Johnny Willemsen * tao/PortableServer/AMH_Response_Handler.cpp: Removed incorrect ACE_INLINE, fixes linker errors in the builds Mon Aug 2 08:40:12 UTC 2004 Johnny Willemsen * tao/Collocated_Invocation.h: Doxygen fix Mon Aug 2 07:59:12 UTC 2004 Johnny Willemsen * tao/Transport_Cache_Manager.cpp (is_entry_idle): Corrected method name in debug statement and instead of retrieving the recycle_state three times, get it into a local variable and use that for checking. Mon Aug 2 06:46:12 UTC 2004 Johnny Willemsen * orbsvcs/tests/Security/MT_IIOP_SSL/test_i.cpp: Fixed compile error due to SSLIOP Transport name change Sun Aug 1 23:41:50 2004 J.T. Conklin * tao/Makefile.am: Update after last change. Fixes "make install" failure due to bad dependencies. Mon Aug 2 06:34:12 UTC 2004 Johnny Willemsen * tao/PortableServer/AMH_Response_Handler.{h,cpp}: Changed this class so that AMH Response Handlers can be allocated with an allocator and when the reference count reaches zero we look if we have an allocator, if so, release from the allocator, else just delete * TAO_IDL/be/be_codegen.cpp: * TAO_IDL/be/be_visitor_interface/amh_rh_sh.cpp: * TAO_IDL/be/be_visitor_interface/amh_rh_ss.cpp: * TAO_IDL/be/be_visitor_operation/amh_ss.cpp: * TAO_IDL/be/be_visitor_tmplinst/tmplinst_ss.cpp: Changed the generation of the allocation of the AMH Response Handler so that we use an allocator. Mon Aug 2 06:10:12 UTC 2004 Johnny Willemsen * tao/PortableServer/Active_Object_Map.h: Doxygen improvement Sun Aug 1 22:39:44 2004 J.T. Conklin * tao/BiDir_GIOP.mpc: * tao/Domain.mpc: * tao/DynamicAny.mpc: * tao/DynamicInterface.mpc: * tao/IFR_Client.mpc: * tao/IORInterceptor.mpc: * tao/IORManipulation.mpc: * tao/IORTable.mpc: * tao/Messaging.mpc: * tao/ObjRefTemplate.mpc: * tao/PortableServer.mpc: * tao/RTCORBA.mpc: * tao/RTPortableServer.mpc: * tao/RTScheduler.mpc: * tao/SmartProxies.mpc: * tao/Strategies.mpc: * tao/TypeCodeFactory.mpc: * tao/Utils.mpc: * tao/Valuetype.mpc: Fix thinko. When these files were moved from subdirectories, I first merged them into tao.mpc, which required explicit project names. I didn't realize at that time that the precise name was significant. This caused build failures due to bad dependencies. I've removed the explicit names since the projects have been split back into separate project files. Sun Aug 1 21:05:59 2004 J.T. Conklin * TAO_IDL/Makefile.am: Add _LDFLAGS definitions with -version-number flag for FE and BE libraries. * tao/Makefile.am: Update, with a little help from MPC. * Makefile.am: Update. * configure.ac: Added. First cut at a new configure script with bits taken from ACE's configure.ac and the old TAO configure.in in the CVS Attic. Sun Aug 1 20:57:32 2004 Jeff Parsons * TAO_IDL/tao_idl.cpp: * TAO_IDL/ast/ast_decl.cpp: * TAO_IDL/ast/ast_home.cpp: * TAO_IDL/ast/ast_root.cpp: * TAO_IDL/ast/ast_sequence.cpp: * TAO_IDL/be/be_init.cpp: * TAO_IDL/be_include/be_extern.h: * TAO_IDL/include/idl_defines.h: * TAO_IDL/include/idl_global.h: * TAO_IDL/include/utl_scope.h: * TAO_IDL/util/utl_global.cpp: * TAO_IDL/util/utl_scope.cpp: - Fixed bugs in cleanup between iterations in processing eacj IDL file in the list passed on the command line. - Fixed bug in checking for recursive types. - Fixed bug in eager calculation of the version segment of the repository ID. - Fixed bug in checking number of interfaces supported by a home. - Added markers in existing bit vector to keep track of which sequences of basic types have been referenced, and code to update the markers. Sun Aug 1 16:32:56 2004 J.T. Conklin * TAO_IDL/Makefile.am: Update, with a little help from MPC. * TAO_IDL/ast/Makefile.am: * TAO_IDL/be/Makefile.am: * TAO_IDL/be_include/Makefile.am: * TAO_IDL/driver/Makefile.am: * TAO_IDL/fe/Makefile.am: * TAO_IDL/include/Makefile.am: * TAO_IDL/narrow/Makefile.am: * TAO_IDL/util/Makefile.am: Remove stale Makefile.am's. Sun Aug 1 09:48:46 2004 J.T. Conklin * tao/BiDir_GIOP/BiDir_GIOP.mpc: * tao/Domain/Domain.mpc: * tao/DynamicAny/DynamicAny.mpc: * tao/DynamicInterface/DynamicInterface.mpc: * tao/IFR_Client/IFR_Client.mpc: * tao/IORInterceptor/IORInterceptor.mpc: * tao/IORManipulation/IORManipulation.mpc: * tao/IORTable/IORTable.mpc: * tao/Messaging/Messaging.mpc: * tao/ObjRefTemplate/ObjRefTemplate.mpc: * tao/PortableServer/PortableServer.mpc: * tao/RTCORBA/RTCORBA.mpc: * tao/RTPortableServer/RTPortableServer.mpc: * tao/RTScheduling/RTScheduler.mpc: * tao/SmartProxies/SmartProxies.mpc: * tao/Strategies/Strategies.mpc: * tao/TypeCodeFactory/TypeCodeFactory.mpc: * tao/Utils/Utils.mpc: * tao/Valuetype/Valuetype.mpc: Move from here... * tao/BiDir_GIOP.mpc: * tao/Domain.mpc: * tao/DynamicAny.mpc: * tao/DynamicInterface.mpc: * tao/IFR_Client.mpc: * tao/IORInterceptor.mpc: * tao/IORManipulation.mpc: * tao/IORTable.mpc: * tao/Messaging.mpc: * tao/ObjRefTemplate.mpc: * tao/PortableServer.mpc: * tao/RTCORBA.mpc: * tao/RTPortableServer.mpc: * tao/RTScheduler.mpc: * tao/SmartProxies.mpc: * tao/Strategies.mpc: * tao/TypeCodeFactory.mpc: * tao/Utils.mpc: * tao/Valuetype.mpc: ...to here. Adapt as necessary to find source, inline, and template files. Sun Aug 1 17:27:12 UTC 2004 Johnny Willemsen * tests/QtTests/server.cpp: Added missing include Sun Aug 1 17:07:12 UTC 2004 Johnny Willemsen * tests/RTCORBA/Banded_Connections/server.cpp: When we get an exception, an internal corba error is handled to look if it is an permission error and a specific minor code is set, this fails on HPUX and then the test just uses ACE_ASSERT, added some more code to get some specific feedback what the retrieved minor code from the exception is Sun Aug 1 08:53:48 2004 J.T. Conklin * tao/tao.mpc: Updated Header_Files, Inline_Files, and Template_Files so that generated project files will contain complete list for install. Suggested by Chad Elliot . Sun Aug 1 15:42:12 UTC 2004 Johnny Willemsen * orbsvcs/orbsvcs/Security/SL3_CredentialsCurator.cpp: Fixed conversion warning by adding missing .in() Sun Aug 1 15:34:12 UTC 2004 Johnny Willemsen * orbsvcs/orbsvcs/Security/SL3_SecurityCurrent_Impl.h: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_ClientCredentials.h: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_CredentialsAcquirer.h: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_CredentialsAcquirerFactory.h: * orbsvcs/orbsvcs/SSLIOP/SSLIOP_OwnCredentials.h: * orbsvcs/orbsvcs/Security/SL3_CredentialsAcquirerFactory.h: * orbsvcs/orbsvcs/Security/SL3_CredentialsCurator.h: * orbsvcs/orbsvcs/Security/SL3_SecurityCurrent.h: Fixed fuzz errors Sun Aug 1 15:27:12 UTC 2004 Johnny Willemsen * tao/Wait_Strategy.h: * tao/Strategies/SCIOP_Transport.h: * tao/Valuetype/AbstractBase.h: Doxygen improvement * tao/RTCORBA/RT_Invocation_Endpoint_Selectors.h: Removed not needed forward declarations * orbsvcs/examples/LoadBalancing/RPS_Monitor.cpp: * orbsvcs/examples/Log/Basic/TLS_Client.cpp: * orbsvcs/examples/Log/Event/Event_Supplier.cpp: * orbsvcs/examples/Log/Notify/Notify_Supplier.cpp: * orbsvcs/examples/Log/RTEvent/RTEvent_Supplier.cpp: Fixed vc71 conversion warnings Sun Aug 1 08:16:27 2004 J.T. Conklin * orbsvcs/orbsvcs/FtRtEvent.mpc: Changed ftrtec_export.h to FtRtEvent/EventChannel/ftrtec_export.h in Header_Files. * tao/tao.mpc: * orbsvcs/performance-tests/RTEvent/lib/RTEC_Perf.mpc: Removed Auto_Functor.cpp from Template_Files. * TAO_IDL/tao_idl.1: Update to reflect current file extensions. * orbsvcs/orbsvcs/DsEventLogAdmin.mpc: Changed group name from EventLog to DsEventLogAdmin. * orbsvcs/orbsvcs/DsLogAdmin.mpc: Changed group name from Log to DsLogAdmin. * orbsvcs/orbsvcs/DsNotifyLogAdmin.mpc: Changed group name from Log to DsNotifyLogAdmin. Sun Aug 1 09:10:39 2004 Balachandran Natarajan * ChangeLogs/ChangeLog-04a: Moved the contents to the new directory. Sat Jul 31 11:14:00 2004 Ossama Othman * TAO version 1.4.2 released. Local Variables: add-log-time-format: current-time-string End: