summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWilliam R. Otte <wotte@dre.vanderbilt.edu>2011-11-03 21:47:16 +0000
committerWilliam R. Otte <wotte@dre.vanderbilt.edu>2011-11-03 21:47:16 +0000
commit32311f2f3506cfbda509b24f030ade9dcb552715 (patch)
treeec101b1532cba682eb7cb41e40b31f4571f2a4ab
parenta7fbb9aea227749e1a7a1d1b230b15b546b3763f (diff)
downloadATCD-32311f2f3506cfbda509b24f030ade9dcb552715.tar.gz
update
-rw-r--r--ACE/Makefile.am35
-rw-r--r--ACE/configure.ac7499
-rwxr-xr-xACE/debian/cmp-autoconf-regular.sh37
-rw-r--r--ACE/debian/libace-6.0.4.docs8
-rw-r--r--ACE/debian/libace-flreactor-6.0.4.install1
-rw-r--r--ACE/debian/libace-inet-6.0.4.install1
-rw-r--r--ACE/debian/libace-ssl-6.0.4.install1
-rw-r--r--ACE/debian/libace-tkreactor-6.0.4.install1
-rw-r--r--ACE/debian/libacexml-6.0.4.install3
-rw-r--r--ACE/debian/libkokyu-6.0.4.docs1
-rw-r--r--ACE/debian/libkokyu-6.0.4.install1
-rw-r--r--ACE/debian/libtao-foxresource-2.0.4.install1
-rw-r--r--ACE/m4/ace.m41772
-rw-r--r--ACE/m4/ace_defines.m448
-rw-r--r--ACE/m4/ace_func.m4297
-rw-r--r--ACE/m4/ace_functions.m427
-rw-r--r--ACE/m4/ace_headers.m435
-rw-r--r--ACE/m4/acinclude.m4525
-rw-r--r--ACE/m4/aio.m4625
-rw-r--r--ACE/m4/compiler.m4429
-rw-r--r--ACE/m4/config_h.m4889
-rw-r--r--ACE/m4/pkg.m4156
-rw-r--r--ACE/m4/platform.m4545
-rw-r--r--ACE/m4/subsets.m4770
-rw-r--r--ACE/m4/threads.m4334
-rw-r--r--ACE/m4/tls.m4220
-rw-r--r--TAO/ChangeLog1211
-rw-r--r--TAO/DevGuideExamples/AMH/README14
-rw-r--r--TAO/DevGuideExamples/AMH_AMI/README2
-rw-r--r--TAO/DevGuideExamples/BiDirectionalGIOP/README4
-rw-r--r--TAO/DevGuideExamples/GettingStarted/README14
-rw-r--r--TAO/DevGuideExamples/Messaging/AMIcallback/README12
-rw-r--r--TAO/DevGuideExamples/Messaging/RelativeRoundtripTimeout/README6
-rw-r--r--TAO/DevGuideExamples/Multithreading/GracefulShutdown/README18
-rw-r--r--TAO/DevGuideExamples/Multithreading/README5
-rw-r--r--TAO/DevGuideExamples/Multithreading/Reactive/README14
-rw-r--r--TAO/DevGuideExamples/Multithreading/ThreadPerConnection/README12
-rw-r--r--TAO/DevGuideExamples/Multithreading/ThreadPool/README12
-rw-r--r--TAO/DevGuideExamples/PortableInterceptors/Auth/README14
-rw-r--r--TAO/DevGuideExamples/PortableInterceptors/IOR/README12
-rw-r--r--TAO/DevGuideExamples/PortableInterceptors/PICurrent/README12
-rw-r--r--TAO/DevGuideExamples/PortableInterceptors/SimpleCodec/README16
-rw-r--r--TAO/DevGuideExamples/RTCORBA/README2
-rw-r--r--TAO/DevGuideExamples/SmartProxies/README6
-rw-r--r--TAO/DevGuideExamples/ValueTypes/Bank/README12
-rw-r--r--TAO/DevGuideExamples/ValueTypes/Messenger/README14
-rw-r--r--TAO/DevGuideExamples/readme.txt2
-rw-r--r--TAO/MPC/modules/IDLHelper.pm2
-rw-r--r--TAO/NEWS12
-rw-r--r--TAO/PROBLEM-REPORT-FORM4
-rw-r--r--TAO/README2
-rw-r--r--TAO/TAO_IDL/be/be_array.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_codegen.cpp24
-rw-r--r--TAO/TAO_IDL/be/be_component.cpp15
-rw-r--r--TAO/TAO_IDL/be/be_home.cpp30
-rw-r--r--TAO/TAO_IDL/be/be_interface.cpp352
-rw-r--r--TAO/TAO_IDL/be/be_type.cpp10
-rw-r--r--TAO/TAO_IDL/be/be_valuetype.cpp89
-rw-r--r--TAO/TAO_IDL/be/be_visitor_array/any_op_cs.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_array/array_ch.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_array/array_cs.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_component/component_ex_idl.cpp10
-rw-r--r--TAO/TAO_IDL/be/be_visitor_component/component_exh.cpp5
-rw-r--r--TAO/TAO_IDL/be/be_visitor_component/component_exs.cpp6
-rw-r--r--TAO/TAO_IDL/be/be_visitor_component/context_svs.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_component/executor_ex_idl.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_component/executor_exh.cpp20
-rw-r--r--TAO/TAO_IDL/be/be_visitor_component/executor_exs.cpp8
-rw-r--r--TAO/TAO_IDL/be/be_visitor_component/executor_exs_attr_init.cpp9
-rw-r--r--TAO/TAO_IDL/be/be_visitor_component/servant_svh.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_component/servant_svs.cpp154
-rw-r--r--TAO/TAO_IDL/be/be_visitor_connector/facet_ami_exs.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_exception/any_op_cs.cpp54
-rw-r--r--TAO/TAO_IDL/be/be_visitor_exception/exception_ch.cpp9
-rw-r--r--TAO/TAO_IDL/be/be_visitor_exception/exception_cs.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_interface.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_interface/amh_rh_ss.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_interface/amh_si.cpp37
-rw-r--r--TAO/TAO_IDL/be/be_visitor_interface/amh_ss.cpp29
-rw-r--r--TAO/TAO_IDL/be/be_visitor_interface/any_op_cs.cpp8
-rw-r--r--TAO/TAO_IDL/be/be_visitor_interface/cdr_op_cs.cpp22
-rw-r--r--TAO/TAO_IDL/be/be_visitor_interface/direct_proxy_impl_sh.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_interface/interface_ch.cpp43
-rw-r--r--TAO/TAO_IDL/be/be_visitor_interface/interface_ci.cpp7
-rw-r--r--TAO/TAO_IDL/be/be_visitor_interface/interface_cs.cpp133
-rw-r--r--TAO/TAO_IDL/be/be_visitor_interface/interface_ih.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_interface/interface_sh.cpp20
-rw-r--r--TAO/TAO_IDL/be/be_visitor_interface/interface_si.cpp3
-rw-r--r--TAO/TAO_IDL/be/be_visitor_interface/interface_ss.cpp165
-rw-r--r--TAO/TAO_IDL/be/be_visitor_interface/smart_proxy_cs.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_interface/strategized_proxy_broker_sh.cpp89
-rw-r--r--TAO/TAO_IDL/be/be_visitor_interface/strategized_proxy_broker_ss.cpp121
-rw-r--r--TAO/TAO_IDL/be/be_visitor_interface/tie_ss.cpp34
-rw-r--r--TAO/TAO_IDL/be/be_visitor_operation/amh_rh_ss.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_operation/amh_sh.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_operation/amh_ss.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_operation/ami_cs.cpp22
-rw-r--r--TAO/TAO_IDL/be/be_visitor_operation/ami_handler_reply_stub_operation_cs.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_operation/base_proxy_impl_ch.cpp68
-rw-r--r--TAO/TAO_IDL/be/be_visitor_operation/direct_proxy_impl_ss.cpp21
-rw-r--r--TAO/TAO_IDL/be/be_visitor_operation/operation.cpp22
-rw-r--r--TAO/TAO_IDL/be/be_visitor_operation/operation_ch.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_operation/operation_ss.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_operation/proxy_impl_xh.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_operation/remote_proxy_impl_cs.cpp140
-rw-r--r--TAO/TAO_IDL/be/be_visitor_operation/tie_ss.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_root/root_ch.cpp48
-rw-r--r--TAO/TAO_IDL/be/be_visitor_root/root_sth.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_sequence/any_op_cs.cpp34
-rw-r--r--TAO/TAO_IDL/be/be_visitor_sequence/sequence_ch.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_sequence/sequence_cs.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_structure/any_op_cs.cpp92
-rw-r--r--TAO/TAO_IDL/be/be_visitor_structure/structure_cs.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_template_export.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_typedef/typedef_ci.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_union/any_op_cs.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_union/discriminant_ci.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_union_branch/public_ci.cpp6
-rw-r--r--TAO/TAO_IDL/be/be_visitor_valuebox/cdr_op_cs.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_valuebox/valuebox_ci.cpp22
-rw-r--r--TAO/TAO_IDL/be/be_visitor_valuebox/valuebox_cs.cpp30
-rw-r--r--TAO/TAO_IDL/be/be_visitor_valuetype/cdr_op_cs.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_valuetype/field_cdr_cs.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_valuetype/field_cs.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_valuetype/valuetype.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ci.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_cs.cpp10
-rw-r--r--TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_init_cs.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_sh.cpp6
-rw-r--r--TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ss.cpp2
-rw-r--r--TAO/TAO_IDL/be_include/be_component.h3
-rw-r--r--TAO/TAO_IDL/be_include/be_global.h4
-rw-r--r--TAO/TAO_IDL/be_include/be_interface.h60
-rw-r--r--TAO/TAO_IDL/be_include/be_valuetype.h6
-rw-r--r--TAO/TAO_IDL/be_include/be_visitor_interface.h4
-rw-r--r--TAO/TAO_IDL/be_include/be_visitor_interface/amh_si.h4
-rw-r--r--TAO/TAO_IDL/be_include/be_visitor_interface/strategized_proxy_broker_sh.h47
-rw-r--r--TAO/TAO_IDL/be_include/be_visitor_interface/strategized_proxy_broker_ss.h49
-rw-r--r--TAO/TAO_IDL/be_include/be_visitor_operation/base_proxy_impl_ch.h40
-rw-r--r--TAO/TAO_IDL/be_include/be_visitor_operation/remote_proxy_impl_cs.h54
-rw-r--r--TAO/TAO_IDL/be_include/be_visitor_root/root_ch.h1
-rw-r--r--TAO/TAO_IDL/docs/README6
-rw-r--r--TAO/VERSION2
-rw-r--r--TAO/bin/tao_orb_tests.lst13
-rw-r--r--TAO/docs/Options.html11
-rw-r--r--TAO/docs/PP_Memory_Management.txt2
-rw-r--r--TAO/docs/tutorials/Quoter/Event_Service/stock_list.txt1
-rw-r--r--TAO/docs/tutorials/Quoter/Event_Service/stock_list1.txt1
-rw-r--r--TAO/docs/tutorials/Quoter/Event_Service/stock_list2.txt1
-rw-r--r--TAO/docs/tutorials/Quoter/RTCORBA/Broker.cpp2
-rw-r--r--TAO/docs/tutorials/Quoter/RTCORBA/docs/distributor.html52
-rw-r--r--TAO/docs/tutorials/Quoter/Simple/ImprovedServer/stock_list.txt2
-rw-r--r--TAO/examples/AMH/Sink_Server/README6
-rw-r--r--TAO/examples/AMI/FL_Callback/README2
-rw-r--r--TAO/examples/Advanced/README2
-rw-r--r--TAO/examples/Advanced/ch_12/README30
-rw-r--r--TAO/examples/Advanced/ch_18/README26
-rw-r--r--TAO/examples/Advanced/ch_21/README22
-rw-r--r--TAO/examples/Advanced/ch_3/README22
-rw-r--r--TAO/examples/Advanced/ch_8_and_10/README18
-rw-r--r--TAO/examples/Buffered_AMI/README2
-rw-r--r--TAO/examples/Buffered_Oneways/README2
-rw-r--r--TAO/examples/CSD_Strategy/README14
-rw-r--r--TAO/examples/CSD_Strategy/ThreadPool/README2
-rw-r--r--TAO/examples/CSD_Strategy/ThreadPool2/README2
-rw-r--r--TAO/examples/CSD_Strategy/ThreadPool3/README2
-rw-r--r--TAO/examples/CSD_Strategy/ThreadPool4/README2
-rw-r--r--TAO/examples/CSD_Strategy/ThreadPool5/README16
-rw-r--r--TAO/examples/CSD_Strategy/ThreadPool6/README2
-rw-r--r--TAO/examples/Callback_Quoter/README16
-rw-r--r--TAO/examples/Content_Server/AMI_Iterator/README12
-rw-r--r--TAO/examples/Content_Server/AMI_Observer/README16
-rw-r--r--TAO/examples/Content_Server/README2
-rw-r--r--TAO/examples/Content_Server/SMI_Iterator/README8
-rw-r--r--TAO/examples/Event_Comm/README2
-rw-r--r--TAO/examples/Kokyu_dsrt_schedulers/README58
-rw-r--r--TAO/examples/Kokyu_dsrt_schedulers/fp_example/README18
-rw-r--r--TAO/examples/Kokyu_dsrt_schedulers/mif_example/README18
-rw-r--r--TAO/examples/Load_Balancing/README2
-rw-r--r--TAO/examples/Load_Balancing_persistent/README2
-rw-r--r--TAO/examples/Logging/README10
-rw-r--r--TAO/examples/OBV/Typed_Events/README2
-rw-r--r--TAO/examples/Persistent_Grid/README4
-rw-r--r--TAO/examples/PluggableUDP/DIOP/README4
-rw-r--r--TAO/examples/PluggableUDP/README2
-rw-r--r--TAO/examples/PluggableUDP/tests/Performance/README7
-rw-r--r--TAO/examples/PluggableUDP/tests/Performance/svc.conf.xml3
-rw-r--r--TAO/examples/PluggableUDP/tests/SimplePerformance/README5
-rw-r--r--TAO/examples/PluggableUDP/tests/SimplePerformance/svc.conf.xml3
-rw-r--r--TAO/examples/Quoter/README38
-rw-r--r--TAO/examples/README28
-rw-r--r--TAO/examples/RTCORBA/Activity/README2
-rw-r--r--TAO/examples/RTScheduling/Fixed_Priority_Scheduler/README2
-rw-r--r--TAO/examples/RTScheduling/MIF_Scheduler/README4
-rw-r--r--TAO/examples/RTScheduling/README2
-rw-r--r--TAO/examples/Simple/README10
-rw-r--r--TAO/examples/Simple/time-date/client.conf.xml3
-rw-r--r--TAO/examples/Simple/time-date/svc.conf.xml2
-rw-r--r--TAO/examples/Simulator/README42
-rw-r--r--TAO/examples/TypeCode_Creation/README14
-rw-r--r--TAO/examples/ior_corbaloc/README12
-rw-r--r--TAO/examples/mfc/README30
-rw-r--r--TAO/interop-tests/wchar/README2
-rw-r--r--TAO/interop-tests/wchar/build.xml4
-rw-r--r--TAO/orbsvcs/Concurrency_Service/svc.conf.xml3
-rw-r--r--TAO/orbsvcs/CosEvent_Service/README8
-rw-r--r--TAO/orbsvcs/DevGuideExamples/EventServices/OMG_Basic/README4
-rw-r--r--TAO/orbsvcs/DevGuideExamples/EventServices/OMG_SupplierSideEC/README6
-rw-r--r--TAO/orbsvcs/DevGuideExamples/EventServices/OMG_TypedEC/README2
-rw-r--r--TAO/orbsvcs/DevGuideExamples/EventServices/RTEC_Basic/README4
-rw-r--r--TAO/orbsvcs/DevGuideExamples/EventServices/RTEC_Federated/README4
-rw-r--r--TAO/orbsvcs/DevGuideExamples/EventServices/RTEC_Filter/README4
-rw-r--r--TAO/orbsvcs/DevGuideExamples/EventServices/RTEC_MCast_Federated/README2
-rw-r--r--TAO/orbsvcs/DevGuideExamples/ImplRepo/README6
-rw-r--r--TAO/orbsvcs/DevGuideExamples/NamingService/Messenger/README8
-rw-r--r--TAO/orbsvcs/DevGuideExamples/NamingService/Naming_Client/README6
-rw-r--r--TAO/orbsvcs/DevGuideExamples/NamingService/Naming_Context_Ext/README14
-rw-r--r--TAO/orbsvcs/DevGuideExamples/NamingService/Naming_Server/README12
-rw-r--r--TAO/orbsvcs/DevGuideExamples/NamingService/corbaloc_Messenger/README17
-rw-r--r--TAO/orbsvcs/DevGuideExamples/NamingService/corbaname_Messenger/README12
-rw-r--r--TAO/orbsvcs/DevGuideExamples/NotifyService/EventSequence/README8
-rw-r--r--TAO/orbsvcs/DevGuideExamples/NotifyService/Filtering/README12
-rw-r--r--TAO/orbsvcs/DevGuideExamples/NotifyService/Messenger/README6
-rw-r--r--TAO/orbsvcs/DevGuideExamples/NotifyService/OfferSubscriptions/README2
-rw-r--r--TAO/orbsvcs/DevGuideExamples/NotifyService/QoSProperties/README4
-rw-r--r--TAO/orbsvcs/DevGuideExamples/NotifyService/RTNotify/README6
-rw-r--r--TAO/orbsvcs/DevGuideExamples/NotifyService/SupplierSideNC/README12
-rw-r--r--TAO/orbsvcs/DevGuideExamples/PortableInterceptors/PICurrent_NameService/README10
-rw-r--r--TAO/orbsvcs/DevGuideExamples/Security/ParticipatingApp/README2
-rw-r--r--TAO/orbsvcs/DevGuideExamples/Security/PolicyControllingApp/README2
-rw-r--r--TAO/orbsvcs/DevGuideExamples/Security/SecurityUnawareApp/README2
-rw-r--r--TAO/orbsvcs/DevGuideExamples/ValueTypes/Notify/readme.txt2
-rw-r--r--TAO/orbsvcs/DevGuideExamples/readme.txt2
-rw-r--r--TAO/orbsvcs/FT_ReplicationManager/README5
-rw-r--r--TAO/orbsvcs/IFR_Service/README27
-rw-r--r--TAO/orbsvcs/ImplRepo_Service/ImplRepo_Service.mpc2
-rw-r--r--TAO/orbsvcs/ImplRepo_Service/README.txt2
-rw-r--r--TAO/orbsvcs/ImplRepo_Service/repository.xml13
-rw-r--r--TAO/orbsvcs/LoadBalancer/README10
-rw-r--r--TAO/orbsvcs/Logging_Service/Basic_Logging_Service/README4
-rw-r--r--TAO/orbsvcs/Logging_Service/Event_Logging_Service/README4
-rw-r--r--TAO/orbsvcs/Logging_Service/Notify_Logging_Service/README4
-rw-r--r--TAO/orbsvcs/Logging_Service/README4
-rw-r--r--TAO/orbsvcs/Logging_Service/RTEvent_Logging_Service/README4
-rw-r--r--TAO/orbsvcs/Naming_Service/README16
-rw-r--r--TAO/orbsvcs/Notify_Service/README2
-rw-r--r--TAO/orbsvcs/Notify_Service/svc.conf.xml3
-rw-r--r--TAO/orbsvcs/TAO_Service/README22
-rw-r--r--TAO/orbsvcs/TAO_Service/svc.conf.xml3
-rw-r--r--TAO/orbsvcs/Time_Service/README14
-rw-r--r--TAO/orbsvcs/examples/CosEC/Factory/README2
-rw-r--r--TAO/orbsvcs/examples/CosEC/RtEC_Based/README2
-rw-r--r--TAO/orbsvcs/examples/CosEC/RtEC_Based/bin/README2
-rw-r--r--TAO/orbsvcs/examples/CosEC/RtEC_Based/tests/Multiple/README2
-rw-r--r--TAO/orbsvcs/examples/CosEC/Simple/README2
-rw-r--r--TAO/orbsvcs/examples/CosEC/TypedSimple/README8
-rw-r--r--TAO/orbsvcs/examples/FaultTolerance/RolyPoly/README48
-rw-r--r--TAO/orbsvcs/examples/ImR/Advanced/README6
-rw-r--r--TAO/orbsvcs/examples/ImR/Combined_Service/readme38
-rw-r--r--TAO/orbsvcs/examples/Log/Basic/README2
-rw-r--r--TAO/orbsvcs/examples/Log/Event/README2
-rw-r--r--TAO/orbsvcs/examples/Log/Notify/README2
-rw-r--r--TAO/orbsvcs/examples/Log/README2
-rw-r--r--TAO/orbsvcs/examples/Log/RTEvent/README2
-rw-r--r--TAO/orbsvcs/examples/Notify/Federation/Agent/README2
-rw-r--r--TAO/orbsvcs/examples/Notify/Federation/SpaceCraft/README2
-rw-r--r--TAO/orbsvcs/examples/Notify/Filter/README2
-rw-r--r--TAO/orbsvcs/examples/Notify/Lanes/README1
-rw-r--r--TAO/orbsvcs/examples/Notify/MC/TkMonitor/README2
-rw-r--r--TAO/orbsvcs/examples/Notify/MC/TkMonitor/modules/GeometryStore.pm1
-rw-r--r--TAO/orbsvcs/examples/Notify/MC/TkMonitor/modules/MonitorControl.pm1
-rw-r--r--TAO/orbsvcs/examples/Notify/README1
-rw-r--r--TAO/orbsvcs/examples/Notify/Subscribe/README2
-rw-r--r--TAO/orbsvcs/examples/Notify/ThreadPool/README1
-rw-r--r--TAO/orbsvcs/examples/RtEC/IIOPGateway/README2
-rw-r--r--TAO/orbsvcs/examples/RtEC/IIOPGateway/RtEC_IIOPGateway.mpc16
-rw-r--r--TAO/orbsvcs/examples/RtEC/Kokyu/README26
-rw-r--r--TAO/orbsvcs/examples/RtEC/MCast/README6
-rw-r--r--TAO/orbsvcs/examples/RtEC/Schedule/README6
-rw-r--r--TAO/orbsvcs/examples/RtEC/Simple/README2
-rw-r--r--TAO/orbsvcs/examples/Security/README2
-rw-r--r--TAO/orbsvcs/examples/Security/SecurityLevel1/README10
-rw-r--r--TAO/orbsvcs/examples/Security/Send_File/README4
-rw-r--r--TAO/orbsvcs/orbsvcs/AV/README4
-rw-r--r--TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedProxyPushConsumer.cpp2
-rw-r--r--TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedProxyPushConsumer.h2
-rw-r--r--TAO/orbsvcs/orbsvcs/HTIOP/README.txt4
-rw-r--r--TAO/orbsvcs/orbsvcs/LoadBalancing/README2
-rw-r--r--TAO/orbsvcs/orbsvcs/Naming/README2
-rw-r--r--TAO/orbsvcs/orbsvcs/Notify/README4
-rw-r--r--TAO/orbsvcs/orbsvcs/PortableGroup/README6
-rw-r--r--TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_acc.sh1
-rwxr-xr-xTAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_cmp.sh1
-rw-r--r--TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_compared_histo.sh3
-rwxr-xr-xTAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_histo.sh1
-rwxr-xr-xTAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_percentiles.sh1
-rwxr-xr-xTAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_stat.sh1
-rwxr-xr-xTAO/orbsvcs/performance-tests/RTEvent/RTCORBA_Baseline/generate_cmp.sh1
-rwxr-xr-xTAO/orbsvcs/performance-tests/RTEvent/RTCORBA_Baseline/generate_histo.sh1
-rwxr-xr-xTAO/orbsvcs/performance-tests/RTEvent/RTCORBA_Baseline/generate_percentiles.sh1
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Asynch_Three_Stage/README4
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Bidirectional_Flows/README6
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Component_Switching/README2
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Full_Profile/README14
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Latency/README2
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Modify_QoS/README10
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Multicast/README2
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/README1
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Multiple_Flows/README10
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Pluggable/README6
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Pluggable_Flow_Protocol/README12
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Pluggable_Flow_Protocol/svc.conf.xml3
-rw-r--r--TAO/orbsvcs/tests/AVStreams/README2
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Simple_Three_Stage/README2
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Simple_Two_Stage/README10
-rw-r--r--TAO/orbsvcs/tests/AVStreams/Simple_Two_Stage_With_QoS/README8
-rw-r--r--TAO/orbsvcs/tests/AVStreams/mpeg/README.uav2
-rw-r--r--TAO/orbsvcs/tests/BiDir_CORBALOC/README9
-rw-r--r--TAO/orbsvcs/tests/Bug_1334_Regression/README2
-rw-r--r--TAO/orbsvcs/tests/Bug_1393_Regression/README2
-rw-r--r--TAO/orbsvcs/tests/Bug_1395_Regression/README2
-rw-r--r--TAO/orbsvcs/tests/Bug_1436_Regression/README2
-rw-r--r--TAO/orbsvcs/tests/Bug_1437_Regression/README2
-rw-r--r--TAO/orbsvcs/tests/Bug_2137_Regression/README2
-rw-r--r--TAO/orbsvcs/tests/Bug_2247_Regression/README2
-rw-r--r--TAO/orbsvcs/tests/Bug_2248_Regression/README2
-rw-r--r--TAO/orbsvcs/tests/Bug_2285_Regression/README2
-rw-r--r--TAO/orbsvcs/tests/Bug_2287_Regression/README2
-rw-r--r--TAO/orbsvcs/tests/Bug_2316_Regression/README4
-rw-r--r--TAO/orbsvcs/tests/Bug_2615_Regression/README2
-rw-r--r--TAO/orbsvcs/tests/Bug_2709_Regression/README2
-rwxr-xr-xTAO/orbsvcs/tests/Bug_2777_Regression/README2
-rw-r--r--TAO/orbsvcs/tests/Bug_2925_Regression/README4
-rw-r--r--TAO/orbsvcs/tests/Bug_3215_Regression/README2
-rw-r--r--TAO/orbsvcs/tests/Bug_3216_Regression/README2
-rw-r--r--TAO/orbsvcs/tests/Bug_3387_Regression/README7
-rw-r--r--TAO/orbsvcs/tests/Bug_3444_Regression/README2
-rw-r--r--TAO/orbsvcs/tests/Bug_3598b_Regression/README2
-rw-r--r--TAO/orbsvcs/tests/CosEvent/Basic/svc.pull.conf.xml2
-rw-r--r--TAO/orbsvcs/tests/CosEvent/Timeout/README2
-rw-r--r--TAO/orbsvcs/tests/EC_Custom_Marshal/README2
-rw-r--r--TAO/orbsvcs/tests/EC_MT_Mcast/README2
-rw-r--r--TAO/orbsvcs/tests/EC_Mcast/README2
-rw-r--r--TAO/orbsvcs/tests/EC_Multiple/README2
-rw-r--r--TAO/orbsvcs/tests/EC_Throughput/README2
-rw-r--r--TAO/orbsvcs/tests/Event/Basic/README4
-rw-r--r--TAO/orbsvcs/tests/Event/Basic/control.conf.xml2
-rw-r--r--TAO/orbsvcs/tests/Event/Mcast/AddrServer/README2
-rw-r--r--TAO/orbsvcs/tests/Event/Mcast/Complex/README16
-rw-r--r--TAO/orbsvcs/tests/Event/Mcast/RTEC_MCast_Federated/README2
-rw-r--r--TAO/orbsvcs/tests/Event/Mcast/Simple/README24
-rw-r--r--TAO/orbsvcs/tests/Event/Mcast/Two_Way/README2
-rw-r--r--TAO/orbsvcs/tests/Event/Performance/README2
-rw-r--r--TAO/orbsvcs/tests/Event/UDP/README4
-rw-r--r--TAO/orbsvcs/tests/Event/UDP/svc.conf.xml2
-rw-r--r--TAO/orbsvcs/tests/Event/lib/README2
-rwxr-xr-xTAO/orbsvcs/tests/FT_App/replica.cmd2
-rw-r--r--TAO/orbsvcs/tests/FaultTolerance/GroupRef_Manipulation/README8
-rw-r--r--TAO/orbsvcs/tests/FaultTolerance/IOGR/README2
-rw-r--r--TAO/orbsvcs/tests/FaultTolerance/IOGR/svc.conf.xml3
-rw-r--r--TAO/orbsvcs/tests/HTIOP/AMI/README4
-rw-r--r--TAO/orbsvcs/tests/HTIOP/Hello/README2
-rw-r--r--TAO/orbsvcs/tests/IOR_MCast/README4
-rw-r--r--TAO/orbsvcs/tests/ImplRepo/Bug_2604_Regression/README2
-rw-r--r--TAO/orbsvcs/tests/ImplRepo/NameService/README4
-rw-r--r--TAO/orbsvcs/tests/ImplRepo/README8
-rw-r--r--TAO/orbsvcs/tests/InterfaceRepo/Application_Test/README14
-rw-r--r--TAO/orbsvcs/tests/InterfaceRepo/Bug_2962_Regression/ReadMe.txt2
-rw-r--r--TAO/orbsvcs/tests/InterfaceRepo/Bug_3155_Regression/ReadMe.txt2
-rw-r--r--TAO/orbsvcs/tests/InterfaceRepo/Bug_3174_Regression/ReadMe.txt2
-rw-r--r--TAO/orbsvcs/tests/InterfaceRepo/IDL3_Test/README4
-rw-r--r--TAO/orbsvcs/tests/InterfaceRepo/IDL_Test/README4
-rw-r--r--TAO/orbsvcs/tests/InterfaceRepo/IFR_Inheritance_Test/README12
-rw-r--r--TAO/orbsvcs/tests/InterfaceRepo/IFR_Self_Recursive_IDL_Test/README10
-rw-r--r--TAO/orbsvcs/tests/InterfaceRepo/IFR_Test/README14
-rw-r--r--TAO/orbsvcs/tests/InterfaceRepo/Persistence_Test/README10
-rw-r--r--TAO/orbsvcs/tests/InterfaceRepo/Union_Forward_Test/README.txt2
-rw-r--r--TAO/orbsvcs/tests/Interoperable_Naming/README16
-rw-r--r--TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/README2
-rw-r--r--TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/windows.conf.xml4
-rwxr-xr-xTAO/orbsvcs/tests/LoadBalancing/GenericFactory/DeadMemberDetection_App_Ctrl/README56
-rwxr-xr-xTAO/orbsvcs/tests/LoadBalancing/GenericFactory/DeadMemberDetection_Inf_Ctrl/README56
-rwxr-xr-xTAO/orbsvcs/tests/LoadBalancing/GenericFactory/DeadMemberDetection_Inf_Ctrl/windows.conf.xml2
-rw-r--r--TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Infrastructure_Controlled/README2
-rw-r--r--TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Infrastructure_Controlled/windows.conf.xml4
-rw-r--r--TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Manage_Object_Group/windows.conf.xml4
-rw-r--r--TAO/orbsvcs/tests/LoadBalancing/LoadMonitor/CPU/README4
-rw-r--r--TAO/orbsvcs/tests/Log/Basic_Log_Test/README2
-rw-r--r--TAO/orbsvcs/tests/Log/README2
-rw-r--r--TAO/orbsvcs/tests/Miop/McastHello/README4
-rw-r--r--TAO/orbsvcs/tests/Miop/McastHello/client.conf.xml3
-rw-r--r--TAO/orbsvcs/tests/Miop/McastHello/client.cpp4
-rw-r--r--TAO/orbsvcs/tests/Miop/McastHello/server.conf.xml3
-rw-r--r--TAO/orbsvcs/tests/Miop/README2
-rw-r--r--TAO/orbsvcs/tests/Notify/Basic/ConnectDisconnect.cpp14
-rw-r--r--TAO/orbsvcs/tests/Notify/Basic/Events.cpp14
-rw-r--r--TAO/orbsvcs/tests/Notify/Basic/MultiTypes.cpp14
-rw-r--r--TAO/orbsvcs/tests/Notify/Basic/README31
-rw-r--r--TAO/orbsvcs/tests/Notify/Basic/Sequence.cpp14
-rw-r--r--TAO/orbsvcs/tests/Notify/Basic/Simple.cpp14
-rw-r--r--TAO/orbsvcs/tests/Notify/Blocking/README2
-rw-r--r--TAO/orbsvcs/tests/Notify/Bug_2415_Regression/README11
-rw-r--r--TAO/orbsvcs/tests/Notify/Discarding/README2
-rw-r--r--TAO/orbsvcs/tests/Notify/Lanes/README2
-rw-r--r--TAO/orbsvcs/tests/Notify/MT_Dispatching/README2
-rw-r--r--TAO/orbsvcs/tests/Notify/Ordering/README2
-rw-r--r--TAO/orbsvcs/tests/Notify/Persistent_Filter/README4
-rw-r--r--TAO/orbsvcs/tests/Notify/Persistent_POA/README2
-rw-r--r--TAO/orbsvcs/tests/Notify/Reconnecting/README42
-rw-r--r--TAO/orbsvcs/tests/Notify/Sequence_Multi_ETCL_Filter/README10
-rw-r--r--TAO/orbsvcs/tests/Notify/Sequence_Multi_Filter/README11
-rw-r--r--TAO/orbsvcs/tests/Notify/Structured_Filter/README15
-rw-r--r--TAO/orbsvcs/tests/Notify/Structured_Multi_Filter/README17
-rw-r--r--TAO/orbsvcs/tests/Notify/ThreadPool/README10
-rw-r--r--TAO/orbsvcs/tests/Notify/Validate_Client/README10
-rw-r--r--TAO/orbsvcs/tests/Notify/lib/README2
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/Filter/README2
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/README2
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/listener.conf.xml3
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/lookup.conf.xml3
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/reactive.conf.xml3
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/svc.conf.xml3
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/Throughput/README5
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/scripts/1_Path_Period_0_Lanes/README2
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/scripts/3_Path_Period_10ms_Lanes/README2
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/scripts/Max_Throughput/README2
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/scripts/README1
-rw-r--r--TAO/orbsvcs/tests/Property/README8
-rw-r--r--TAO/orbsvcs/tests/Redundant_Naming/README2
-rw-r--r--TAO/orbsvcs/tests/Sched_Conf/README24
-rw-r--r--TAO/orbsvcs/tests/Security/BiDirectional/README8
-rw-r--r--TAO/orbsvcs/tests/Security/Big_Request/README4
-rw-r--r--TAO/orbsvcs/tests/Security/Bug_1107_Regression/README2
-rw-r--r--TAO/orbsvcs/tests/Security/Bug_2908_Regression/README4
-rw-r--r--TAO/orbsvcs/tests/Security/Callback/README4
-rw-r--r--TAO/orbsvcs/tests/Security/Crash_Test/README6
-rw-r--r--TAO/orbsvcs/tests/Security/EndpointPolicy/README2
-rw-r--r--TAO/orbsvcs/tests/Security/InsecureReferences/README2
-rw-r--r--TAO/orbsvcs/tests/Security/MT_IIOP_SSL/README6
-rw-r--r--TAO/orbsvcs/tests/Security/MT_IIOP_SSL/client.conf.xml3
-rw-r--r--TAO/orbsvcs/tests/Security/MT_IIOP_SSL/server.conf.xml3
-rw-r--r--TAO/orbsvcs/tests/Security/MT_SSLIOP/README12
-rw-r--r--TAO/orbsvcs/tests/Security/MT_SSLIOP/client.conf.xml3
-rw-r--r--TAO/orbsvcs/tests/Security/MT_SSLIOP/server.conf.xml3
-rw-r--r--TAO/orbsvcs/tests/Security/Null_Cipher/README8
-rw-r--r--TAO/orbsvcs/tests/Security/Secure_Invocation/README4
-rw-r--r--TAO/orbsvcs/tests/Security/cert/DOCCA/index.txt2
-rw-r--r--TAO/orbsvcs/tests/Security/cert/README2
-rw-r--r--TAO/orbsvcs/tests/Security/mixed_security_test/README10
-rw-r--r--TAO/orbsvcs/tests/Security/ssliop_CSD/README1
-rw-r--r--TAO/orbsvcs/tests/Security/ssliop_corbaloc/README16
-rw-r--r--TAO/orbsvcs/tests/Security/ssliop_corbaloc/client.conf.xml11
-rw-r--r--TAO/orbsvcs/tests/Security/ssliop_corbaloc/server.conf.xml3
-rw-r--r--TAO/orbsvcs/tests/Simple_Naming/README2
-rw-r--r--TAO/orbsvcs/tests/Time/README2
-rw-r--r--TAO/orbsvcs/tests/Trading/README418
-rw-r--r--TAO/orbsvcs/tests/ior_corbaname/README24
-rw-r--r--TAO/orbsvcs/tests/tests_svc_loader/README6
-rw-r--r--TAO/orbsvcs/tests/unit/Notify/MC/MonitorControlExt/README1
-rw-r--r--TAO/orbsvcs/tests/unit/Notify/MC/MonitorManager/svc.conf.xml3
-rw-r--r--TAO/performance-tests/Anyop/anyop.cpp3
-rw-r--r--TAO/performance-tests/CSD_Strategy/TestApps/README22
-rw-r--r--TAO/performance-tests/CSD_Strategy/TestInf/README8
-rw-r--r--TAO/performance-tests/CSD_Strategy/TestServant/README8
-rw-r--r--TAO/performance-tests/Cubit/README2
-rw-r--r--TAO/performance-tests/Cubit/TAO/DII_Cubit/README18
-rw-r--r--TAO/performance-tests/Cubit/TAO/IDL_Cubit/README2
-rw-r--r--TAO/performance-tests/Cubit/TAO/MT_Cubit/README12
-rw-r--r--TAO/performance-tests/Cubit/TAO/README6
-rw-r--r--TAO/performance-tests/Latency/AMI/README2
-rw-r--r--TAO/performance-tests/Latency/Collocation/README8
-rw-r--r--TAO/performance-tests/Latency/DII/README2
-rw-r--r--TAO/performance-tests/Latency/DSI/README2
-rw-r--r--TAO/performance-tests/Latency/Deferred/README2
-rw-r--r--TAO/performance-tests/Latency/README4
-rw-r--r--TAO/performance-tests/Latency/Single_Threaded/README2
-rw-r--r--TAO/performance-tests/Latency/Thread_Per_Connection/README2
-rw-r--r--TAO/performance-tests/Latency/Thread_Pool/README2
-rw-r--r--TAO/performance-tests/Memory/Single_Threaded/README10
-rw-r--r--TAO/performance-tests/POA/Create_Reference/README2
-rw-r--r--TAO/performance-tests/POA/Demux/README24
-rw-r--r--TAO/performance-tests/POA/Implicit_Activation/README2
-rw-r--r--TAO/performance-tests/POA/README4
-rw-r--r--TAO/performance-tests/Pluggable/README4
-rwxr-xr-xTAO/performance-tests/Protocols/set_lksctp_params.sh3
-rwxr-xr-xTAO/performance-tests/Protocols/set_sctp_params.sh3
-rwxr-xr-xTAO/performance-tests/Protocols/show_lksctp_params.sh3
-rwxr-xr-xTAO/performance-tests/Protocols/show_sctp_params.sh3
-rw-r--r--TAO/performance-tests/README8
-rw-r--r--TAO/performance-tests/RTCorba/Multiple_Endpoints/Orb_Per_Priority/README2
-rw-r--r--TAO/performance-tests/RTCorba/Multiple_Endpoints/Single_Endpoint/README2
-rw-r--r--TAO/performance-tests/RTCorba/Oneways/Reliable/README20
-rw-r--r--TAO/performance-tests/RTCorba/Thread_Pool/native-svc.conf.xml3
-rw-r--r--TAO/performance-tests/RTCorba/Thread_Pool/svc.conf.xml3
-rw-r--r--TAO/performance-tests/Sequence_Latency/AMH_Single_Threaded/README2
-rw-r--r--TAO/performance-tests/Sequence_Latency/AMI/README2
-rw-r--r--TAO/performance-tests/Sequence_Latency/DII/README2
-rw-r--r--TAO/performance-tests/Sequence_Latency/DSI/README2
-rw-r--r--TAO/performance-tests/Sequence_Latency/Deferred/README2
-rw-r--r--TAO/performance-tests/Sequence_Latency/Sequence_Operations_Time/README.txt2
-rw-r--r--TAO/performance-tests/Sequence_Latency/Thread_Per_Connection/README2
-rw-r--r--TAO/performance-tests/Sequence_Latency/Thread_Pool/README4
-rw-r--r--TAO/performance-tests/Throughput/README2
-rw-r--r--TAO/performance-tests/Throughput/Receiver_Factory.h9
-rw-r--r--TAO/performance-tests/Throughput/svc.conf.xml1
-rw-r--r--TAO/tao/Abstract_Servant_Base.h13
-rw-r--r--TAO/tao/AnyTypeCode/Any_Impl.cpp3
-rw-r--r--TAO/tao/CDR.cpp3
-rw-r--r--TAO/tao/CORBANAME_Parser.cpp2
-rw-r--r--TAO/tao/Collocated_Invocation.cpp8
-rw-r--r--TAO/tao/Collocated_Invocation.h3
-rw-r--r--TAO/tao/Collocation_Proxy_Broker.cpp12
-rw-r--r--TAO/tao/Collocation_Proxy_Broker.h73
-rw-r--r--TAO/tao/Collocation_Strategy.h25
-rw-r--r--TAO/tao/Connection_Handler.cpp29
-rw-r--r--TAO/tao/DynamicInterface/DII_Invocation_Adapter.cpp8
-rw-r--r--TAO/tao/DynamicInterface/DII_Invocation_Adapter.h2
-rw-r--r--TAO/tao/IIOP_Connector.cpp42
-rw-r--r--TAO/tao/IORManipulation/IORManipulation.mpc7
-rw-r--r--TAO/tao/IORManipulation/ior_manip_export.h40
-rw-r--r--TAO/tao/IORTable/IORTable.mpc6
-rw-r--r--TAO/tao/IORTable/iortable_export.h40
-rw-r--r--TAO/tao/Invocation_Adapter.cpp140
-rw-r--r--TAO/tao/Invocation_Adapter.h22
-rw-r--r--TAO/tao/Invocation_Adapter.inl4
-rw-r--r--TAO/tao/Leader_Follower.cpp422
-rw-r--r--TAO/tao/Leader_Follower.h26
-rw-r--r--TAO/tao/Leader_Follower.inl23
-rw-r--r--TAO/tao/LocalObject.cpp48
-rw-r--r--TAO/tao/Messaging/Asynch_Invocation_Adapter.cpp4
-rw-r--r--TAO/tao/Messaging/Asynch_Invocation_Adapter.h2
-rw-r--r--TAO/tao/ORB_Core.cpp52
-rw-r--r--TAO/tao/ORB_Core.h22
-rw-r--r--TAO/tao/Object.cpp71
-rw-r--r--TAO/tao/Object.h12
-rw-r--r--TAO/tao/Object_T.cpp79
-rw-r--r--TAO/tao/Object_T.h15
-rw-r--r--TAO/tao/PI_Server/PI_Server_include.pidl6
-rw-r--r--TAO/tao/PolicyC.cpp65
-rw-r--r--TAO/tao/PolicyC.h19
-rw-r--r--TAO/tao/PolicyC.inl13
-rw-r--r--TAO/tao/PortableServer/Collocated_Object_Proxy_Broker.cpp28
-rw-r--r--TAO/tao/PortableServer/Direct_Collocation_Upcall_Wrapper.cpp4
-rw-r--r--TAO/tao/PortableServer/Direct_Collocation_Upcall_Wrapper.h1
-rw-r--r--TAO/tao/PortableServer/Object_Adapter.cpp2
-rw-r--r--TAO/tao/PortableServer/Operation_Table.h7
-rw-r--r--TAO/tao/PortableServer/PolicyS.cpp123
-rw-r--r--TAO/tao/PortableServer/PolicyS.h61
-rw-r--r--TAO/tao/PortableServer/Servant_Base.cpp23
-rw-r--r--TAO/tao/PortableServer/Servant_Base.h9
-rw-r--r--TAO/tao/PortableServer/Servant_Upcall.cpp2
-rw-r--r--TAO/tao/Remote_Object_Proxy_Broker.cpp8
-rw-r--r--TAO/tao/Resume_Handle_Deferred.cpp46
-rw-r--r--TAO/tao/Resume_Handle_Deferred.h61
-rw-r--r--TAO/tao/TAO_Server_Request.cpp6
-rw-r--r--TAO/tao/TypeCodeFactory/README6
-rw-r--r--TAO/tao/Valuetype/AbstractBase_Invocation_Adapter.cpp4
-rw-r--r--TAO/tao/Valuetype/AbstractBase_Invocation_Adapter.h2
-rw-r--r--TAO/tao/Valuetype/AbstractBase_T.cpp73
-rw-r--r--TAO/tao/Valuetype/AbstractBase_T.h10
-rw-r--r--TAO/tao/Valuetype/ValueBase.cpp6
-rw-r--r--TAO/tao/Version.h4
-rw-r--r--TAO/tao/Wait_On_LF_No_Upcall.cpp14
-rw-r--r--TAO/tao/Wait_On_LF_No_Upcall.h4
-rw-r--r--TAO/tao/Wait_On_Leader_Follower.h1
-rw-r--r--TAO/tao/Wait_Strategy.cpp6
-rw-r--r--TAO/tao/Wait_Strategy.h9
-rw-r--r--TAO/tao/ZIOP/ZIOP.h2
-rw-r--r--TAO/tao/ZIOP/ZIOP.mpc4
-rw-r--r--TAO/tao/ZIOP/ziop_export.h40
-rw-r--r--TAO/tao/orbconf.h4
-rw-r--r--TAO/tao/tao.mpc4
-rw-r--r--TAO/tests/AMH_Oneway/server.cpp6
-rw-r--r--TAO/tests/AMI/README4
-rw-r--r--TAO/tests/AMI/exclusive.conf.xml3
-rw-r--r--TAO/tests/AMI/muxed.conf.xml3
-rw-r--r--TAO/tests/AMI/server.conf.xml1
-rw-r--r--TAO/tests/AMI/simple_client.cpp4
-rw-r--r--TAO/tests/AMI_Buffering/README2
-rw-r--r--TAO/tests/AMI_Timeouts/README4
-rw-r--r--TAO/tests/AMI_Timeouts/svc.conf.xml3
-rw-r--r--TAO/tests/Abstract_Interface/README6
-rw-r--r--TAO/tests/Alt_Mapping/README10
-rw-r--r--TAO/tests/AlternateIIOP/README2
-rw-r--r--TAO/tests/Any/Recursive/README2
-rw-r--r--TAO/tests/BiDirectional/README6
-rw-r--r--TAO/tests/BiDirectional_DelayedUpcall/README2
-rw-r--r--TAO/tests/BiDirectional_MultipleORB/README8
-rw-r--r--TAO/tests/BiDirectional_NestedUpcall/README4
-rw-r--r--TAO/tests/Big_AMI/README2
-rw-r--r--TAO/tests/Big_Oneways/README2
-rw-r--r--TAO/tests/Big_Reply/README2
-rw-r--r--TAO/tests/Big_Request_Muxing/README2
-rw-r--r--TAO/tests/Big_Twoways/README2
-rw-r--r--TAO/tests/Blocking_Sync_None/README2
-rw-r--r--TAO/tests/Bug_1020_Basic_Regression/README8
-rw-r--r--TAO/tests/Bug_1330_Regression/README2
-rw-r--r--TAO/tests/Bug_1330_Regression/Test.idl4
-rw-r--r--TAO/tests/Bug_1330_Regression/Test_i.cpp12
-rw-r--r--TAO/tests/Bug_1330_Regression/Test_i.h18
-rw-r--r--TAO/tests/Bug_1330_Regression/client.cpp12
-rwxr-xr-xTAO/tests/Bug_1330_Regression/run_test.pl6
-rw-r--r--TAO/tests/Bug_1330_Regression/server.cpp19
-rw-r--r--TAO/tests/Bug_1476_Regression/README2
-rw-r--r--TAO/tests/Bug_1476_Test/README2
-rw-r--r--TAO/tests/Bug_1551_Regression/README2
-rw-r--r--TAO/tests/Bug_1627_Regression/README2
-rw-r--r--TAO/tests/Bug_1635_Regression/README2
-rw-r--r--TAO/tests/Bug_1636_Regression/README2
-rw-r--r--TAO/tests/Bug_2119_Regression/README2
-rw-r--r--TAO/tests/Bug_2122_Regression/README2
-rw-r--r--TAO/tests/Bug_2124_Regression/README2
-rw-r--r--TAO/tests/Bug_2126_Regression/README2
-rw-r--r--TAO/tests/Bug_2134_Regression/README2
-rw-r--r--TAO/tests/Bug_2144_Regression/README4
-rw-r--r--TAO/tests/Bug_2174_Regression/README2
-rw-r--r--TAO/tests/Bug_2183_Regression/README2
-rw-r--r--TAO/tests/Bug_2186_Regression/README2
-rw-r--r--TAO/tests/Bug_2241_Regression/Client_Task.cpp27
-rw-r--r--TAO/tests/Bug_2241_Regression/Hello.cpp38
-rw-r--r--TAO/tests/Bug_2241_Regression/README6
-rwxr-xr-xTAO/tests/Bug_2241_Regression/run_test.pl30
-rw-r--r--TAO/tests/Bug_2243_Regression/README4
-rw-r--r--TAO/tests/Bug_2289_Regression/Bug_2289_Regression.mpc2
-rw-r--r--TAO/tests/Bug_2289_Regression/README2
-rw-r--r--TAO/tests/Bug_2328_Regression/README2
-rw-r--r--TAO/tests/Bug_2375_Regression/README2
-rw-r--r--TAO/tests/Bug_2399_Regression/README2
-rw-r--r--TAO/tests/Bug_2419_Regression/README2
-rw-r--r--TAO/tests/Bug_2424_Regression/README2
-rw-r--r--TAO/tests/Bug_2429_Regression/README2
-rw-r--r--TAO/tests/Bug_2494_Regression/README18
-rw-r--r--TAO/tests/Bug_2549_Regression/README2
-rw-r--r--TAO/tests/Bug_2593_Regression/README4
-rw-r--r--TAO/tests/Bug_2654_Regression/README2
-rw-r--r--TAO/tests/Bug_2669_Regression/README2
-rw-r--r--TAO/tests/Bug_2677_Regression/README2
-rw-r--r--TAO/tests/Bug_2702_Regression/README2
-rw-r--r--TAO/tests/Bug_2702_Regression/fakeserver.pm2
-rw-r--r--TAO/tests/Bug_2734_Regression/README2
-rwxr-xr-xTAO/tests/Bug_2791_Regression/README2
-rw-r--r--TAO/tests/Bug_2805_Regression/README.txt2
-rw-r--r--TAO/tests/Bug_2935_Regression/README.txt2
-rw-r--r--TAO/tests/Bug_2966_Regression/README4
-rw-r--r--TAO/tests/Bug_3000_Regression/README2
-rw-r--r--TAO/tests/Bug_3068_Regression/README2
-rw-r--r--TAO/tests/Bug_3154_Regression/README2
-rw-r--r--TAO/tests/Bug_3251_Regression/Bug_3251.conf.xml39
-rw-r--r--TAO/tests/Bug_3276_Regression/README2
-rw-r--r--TAO/tests/Bug_3299_Regression/README2
-rw-r--r--TAO/tests/Bug_3311_Regression/README2
-rw-r--r--TAO/tests/Bug_3333_Regression/README2
-rw-r--r--TAO/tests/Bug_3471_Regression/README2
-rw-r--r--TAO/tests/Bug_3499_Regression/README2
-rw-r--r--TAO/tests/Bug_3513_Regression/README2
-rw-r--r--TAO/tests/Bug_3514_Regression/README4
-rw-r--r--TAO/tests/Bug_3524_Regression/README2
-rw-r--r--TAO/tests/Bug_3531b_Regression/Bug_3531b_Regression.mpc1
-rw-r--r--TAO/tests/Bug_3531b_Regression/server.cpp61
-rw-r--r--TAO/tests/Bug_3558_Regression/README14
-rw-r--r--TAO/tests/Bug_3567_Regression/README4
-rw-r--r--TAO/tests/Bug_3574_Regression/README2
-rw-r--r--TAO/tests/Bug_3575_Regression/README2
-rw-r--r--TAO/tests/Bug_3598a_Regression/README2
-rw-r--r--TAO/tests/Bug_3632_Regression/README2
-rw-r--r--TAO/tests/Bug_3647_Regression/README6
-rw-r--r--TAO/tests/Bug_3676_Regression/README2
-rw-r--r--TAO/tests/Bug_3743_Regression/README2
-rw-r--r--TAO/tests/Bug_3748_Regression/README2
-rw-r--r--TAO/tests/Bug_3755_Ext_Regression/README2
-rw-r--r--TAO/tests/Bug_3768_Regression/Bug_3768_Test.mpc41
-rw-r--r--TAO/tests/Bug_3768_Regression/Test.idl28
-rw-r--r--TAO/tests/Bug_3768_Regression/TestCallback.cpp31
-rw-r--r--TAO/tests/Bug_3768_Regression/TestCallback.h47
-rw-r--r--TAO/tests/Bug_3768_Regression/TestServer.cpp32
-rw-r--r--TAO/tests/Bug_3768_Regression/TestServer.h28
-rw-r--r--TAO/tests/Bug_3768_Regression/client.cpp101
-rwxr-xr-xTAO/tests/Bug_3768_Regression/run_test.pl73
-rw-r--r--TAO/tests/Bug_3768_Regression/server.cpp137
-rw-r--r--TAO/tests/Bug_3790_Regression/README2
-rw-r--r--TAO/tests/Bug_3801_Regression/exclusive.conf.xml3
-rw-r--r--TAO/tests/Bug_3801_Regression/muxed.conf.xml3
-rw-r--r--TAO/tests/Bug_3821_Regression/README2
-rw-r--r--TAO/tests/Bug_3826_Regression/README4
-rw-r--r--TAO/tests/Bug_3827_Regression/README2
-rw-r--r--TAO/tests/Bug_3837_Regression/README2
-rw-r--r--TAO/tests/Bug_3845_Regression/README8
-rw-r--r--TAO/tests/Bug_3926_Regression/README2
-rw-r--r--TAO/tests/Bug_3941_Regression/README2
-rw-r--r--TAO/tests/Bug_3953_Regression/README4
-rw-r--r--TAO/tests/Bug_3954_Regression/README2
-rw-r--r--TAO/tests/CDR/README8
-rw-r--r--TAO/tests/CSD_Collocation/README2
-rw-r--r--TAO/tests/CSD_Collocation/svc.conf.csd4
-rw-r--r--TAO/tests/CSD_Strategy_Tests/README4
-rw-r--r--TAO/tests/CSD_Strategy_Tests/TP_Test_4/README2
-rw-r--r--TAO/tests/CSD_Strategy_Tests/TP_Test_Dynamic/README15
-rw-r--r--TAO/tests/CSD_Strategy_Tests/TP_Test_Static/README19
-rw-r--r--TAO/tests/Cache_Growth_Test/README2
-rw-r--r--TAO/tests/CallbackTest/README2
-rw-r--r--TAO/tests/Client_Leaks/README2
-rw-r--r--TAO/tests/CodeSets/README4
-rw-r--r--TAO/tests/CodeSets/simple/README2
-rw-r--r--TAO/tests/Codec/README4
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_Direct/Client_Task.cpp63
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_Direct/Client_Task.h37
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_Direct/Collocated_Best_Direct.mpc9
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_Direct/Collocated_Test.cpp106
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_Direct/Hello.cpp70
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_Direct/Hello.h34
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_Direct/Server_Task.cpp87
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_Direct/Server_Task.h48
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_Direct/Test.idl20
-rwxr-xr-xTAO/tests/Collocated_Best/Collocated_Best_Direct/run_test.pl45
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_NoColl/Client_Task.cpp62
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_NoColl/Client_Task.h37
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_NoColl/Collocated_Best_NoColl.mpc8
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_NoColl/Collocated_Test.cpp106
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_NoColl/Hello.cpp76
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_NoColl/Hello.h34
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_NoColl/Server_Task.cpp87
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_NoColl/Server_Task.h48
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_NoColl/Test.idl20
-rwxr-xr-xTAO/tests/Collocated_Best/Collocated_Best_NoColl/run_test.pl33
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_ThuP/Client_Task.cpp63
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_ThuP/Client_Task.h37
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_ThuP/Collocated_Best_ThruP.mpc7
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_ThuP/Collocated_Test.cpp106
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_ThuP/Hello.cpp68
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_ThuP/Hello.h34
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_ThuP/Server_Task.cpp87
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_ThuP/Server_Task.h48
-rw-r--r--TAO/tests/Collocated_Best/Collocated_Best_ThuP/Test.idl20
-rwxr-xr-xTAO/tests/Collocated_Best/Collocated_Best_ThuP/run_test.pl44
-rw-r--r--TAO/tests/Collocated_Best/README23
-rw-r--r--TAO/tests/Collocated_DerivedIF/Client_Task.cpp69
-rw-r--r--TAO/tests/Collocated_DerivedIF/Client_Task.h37
-rw-r--r--TAO/tests/Collocated_DerivedIF/Collocated_DerivedIF.mpc8
-rw-r--r--TAO/tests/Collocated_DerivedIF/Collocated_Test.cpp106
-rw-r--r--TAO/tests/Collocated_DerivedIF/Hello.cpp82
-rw-r--r--TAO/tests/Collocated_DerivedIF/Hello.h36
-rw-r--r--TAO/tests/Collocated_DerivedIF/README6
-rw-r--r--TAO/tests/Collocated_DerivedIF/Server_Task.cpp91
-rw-r--r--TAO/tests/Collocated_DerivedIF/Server_Task.h48
-rw-r--r--TAO/tests/Collocated_DerivedIF/Test.idl21
-rwxr-xr-xTAO/tests/Collocated_DerivedIF/run_test.pl33
-rw-r--r--TAO/tests/Collocated_NoColl/Client_Task.cpp62
-rw-r--r--TAO/tests/Collocated_NoColl/Client_Task.h37
-rw-r--r--TAO/tests/Collocated_NoColl/Collocated_NoColl.mpc8
-rw-r--r--TAO/tests/Collocated_NoColl/Collocated_Test.cpp106
-rw-r--r--TAO/tests/Collocated_NoColl/Hello.cpp76
-rw-r--r--TAO/tests/Collocated_NoColl/Hello.h34
-rw-r--r--TAO/tests/Collocated_NoColl/Server_Task.cpp87
-rw-r--r--TAO/tests/Collocated_NoColl/Server_Task.h48
-rw-r--r--TAO/tests/Collocated_NoColl/Test.idl20
-rwxr-xr-xTAO/tests/Collocated_NoColl/run_test.pl33
-rw-r--r--TAO/tests/Collocated_ThruP_Sp/Client_Task.cpp65
-rw-r--r--TAO/tests/Collocated_ThruP_Sp/Client_Task.h37
-rw-r--r--TAO/tests/Collocated_ThruP_Sp/Collocated_Test.cpp105
-rw-r--r--TAO/tests/Collocated_ThruP_Sp/Collocated_ThruP_Sp.mpc9
-rw-r--r--TAO/tests/Collocated_ThruP_Sp/Hello.cpp32
-rw-r--r--TAO/tests/Collocated_ThruP_Sp/Hello.h34
-rw-r--r--TAO/tests/Collocated_ThruP_Sp/README6
-rw-r--r--TAO/tests/Collocated_ThruP_Sp/Server_Task.cpp87
-rw-r--r--TAO/tests/Collocated_ThruP_Sp/Server_Task.h48
-rw-r--r--TAO/tests/Collocated_ThruP_Sp/Test.idl20
-rwxr-xr-xTAO/tests/Collocated_ThruP_Sp/run_test.pl60
-rw-r--r--TAO/tests/Collocated_ThruP_Sp_Gd/Client_Task.cpp65
-rw-r--r--TAO/tests/Collocated_ThruP_Sp_Gd/Client_Task.h37
-rw-r--r--TAO/tests/Collocated_ThruP_Sp_Gd/Collocated_Test.cpp106
-rw-r--r--TAO/tests/Collocated_ThruP_Sp_Gd/Collocated_ThruP_Sp_Gd.mpc9
-rw-r--r--TAO/tests/Collocated_ThruP_Sp_Gd/Hello.cpp32
-rw-r--r--TAO/tests/Collocated_ThruP_Sp_Gd/Hello.h34
-rw-r--r--TAO/tests/Collocated_ThruP_Sp_Gd/README7
-rw-r--r--TAO/tests/Collocated_ThruP_Sp_Gd/Server_Task.cpp87
-rw-r--r--TAO/tests/Collocated_ThruP_Sp_Gd/Server_Task.h48
-rw-r--r--TAO/tests/Collocated_ThruP_Sp_Gd/Test.idl20
-rwxr-xr-xTAO/tests/Collocated_ThruP_Sp_Gd/run_test.pl60
-rw-r--r--TAO/tests/Collocation/README2
-rw-r--r--TAO/tests/Collocation_Opportunities/README2
-rwxr-xr-xTAO/tests/Collocation_Opportunities/run_test.pl10
-rw-r--r--TAO/tests/Connect_Strategy_Test/README4
-rw-r--r--TAO/tests/Connection_Failure/README2
-rw-r--r--TAO/tests/Connection_Purging/README4
-rw-r--r--TAO/tests/Connection_Timeout/README4
-rw-r--r--TAO/tests/Crash_On_Write/README2
-rw-r--r--TAO/tests/Crashed_Callback/README2
-rw-r--r--TAO/tests/DII_AMI_Forward/README9
-rw-r--r--TAO/tests/DII_Collocation_Tests/oneway/README14
-rw-r--r--TAO/tests/DII_Collocation_Tests/twoway/README16
-rw-r--r--TAO/tests/DIOP/README2
-rw-r--r--TAO/tests/DSI_AMH/README2
-rw-r--r--TAO/tests/DSI_AMI_Gateway/README4
-rw-r--r--TAO/tests/DSI_Gateway/README14
-rw-r--r--TAO/tests/DiffServ/README2
-rw-r--r--TAO/tests/Explicit_Event_Loop/README28
-rw-r--r--TAO/tests/FL_Cube/README2
-rw-r--r--TAO/tests/Faults/README4
-rw-r--r--TAO/tests/File_IO/README4
-rwxr-xr-xTAO/tests/ForwardOnceUponException/README40
-rwxr-xr-xTAO/tests/ForwardOnceUponException/run_test.pl2
-rwxr-xr-xTAO/tests/ForwardUponObjectNotExist/README12
-rwxr-xr-xTAO/tests/ForwardUponObjectNotExist/client.cpp1
-rwxr-xr-xTAO/tests/ForwardUponObjectNotExist/server.cpp4
-rw-r--r--TAO/tests/Forwarding/README2
-rw-r--r--TAO/tests/GIOP_Fragments/PMB_With_Fragments/README2
-rw-r--r--TAO/tests/HandleExhaustion/README2
-rw-r--r--TAO/tests/Hello/README14
-rwxr-xr-xTAO/tests/Hello/run_test.pl7
-rw-r--r--TAO/tests/ICMG_Any_Bug/README12
-rw-r--r--TAO/tests/IDL_Inherited_Operation/README16
-rw-r--r--TAO/tests/IDL_Test/README21
-rw-r--r--TAO/tests/IORManipulation/README4
-rw-r--r--TAO/tests/IPV6/README6
-rw-r--r--TAO/tests/InterOp-Naming/README12
-rw-r--r--TAO/tests/Leader_Followers/README2
-rw-r--r--TAO/tests/LongUpcalls/README16
-rw-r--r--TAO/tests/MProfile/README2
-rw-r--r--TAO/tests/MProfile_Connection_Timeout/README16
-rw-r--r--TAO/tests/MProfile_Forwarding/README20
-rw-r--r--TAO/tests/MT_BiDir/README8
-rw-r--r--TAO/tests/MT_Client/README11
-rw-r--r--TAO/tests/MT_NoUpcall_Client_Leader/README8
-rw-r--r--TAO/tests/MT_Server/README10
-rw-r--r--TAO/tests/MT_Timeout/README8
-rw-r--r--TAO/tests/Multiple/README2
-rw-r--r--TAO/tests/Multiple_Inheritance/README2
-rw-r--r--TAO/tests/Muxed_GIOP_Versions/README6
-rw-r--r--TAO/tests/Muxing/README8
-rw-r--r--TAO/tests/Native_Exceptions/README8
-rw-r--r--TAO/tests/NestedUpcall/MT_Client_Test/README5
-rw-r--r--TAO/tests/NestedUpcall/Simple/README2
-rw-r--r--TAO/tests/NestedUpcall/Triangle_Test/README9
-rw-r--r--TAO/tests/Nested_Event_Loop/README2
-rw-r--r--TAO/tests/No_Server_MT_Connect_Test/README16
-rw-r--r--TAO/tests/OBV/Any/README10
-rw-r--r--TAO/tests/OBV/Factory/README6
-rw-r--r--TAO/tests/OBV/Forward/README6
-rwxr-xr-xTAO/tests/OBV/Indirection/README14
-rw-r--r--TAO/tests/OBV/README4
-rw-r--r--TAO/tests/OBV/Supports/README2
-rw-r--r--TAO/tests/OBV/TC_Alignment/README4
-rw-r--r--TAO/tests/OBV/Truncatable/README2
-rw-r--r--TAO/tests/ORB_Local_Config/Bug_1459/README2
-rw-r--r--TAO/tests/ORB_Local_Config/Bug_3049/README2
-rw-r--r--TAO/tests/ORB_Local_Config/README2
-rw-r--r--TAO/tests/ORB_Local_Config/Service_Dependency/Service_Config_Test.conf.xml3
-rw-r--r--TAO/tests/ORB_Local_Config/Two_DLL_ORB/README2
-rw-r--r--TAO/tests/ORB_destroy/README2
-rw-r--r--TAO/tests/ORB_init/Portspan/README6
-rw-r--r--TAO/tests/ORB_shutdown/README4
-rw-r--r--TAO/tests/ORT/README14
-rw-r--r--TAO/tests/Object_Loader/README8
-rw-r--r--TAO/tests/Objref_Sequence_Test/README8
-rw-r--r--TAO/tests/OctetSeq/README2
-rw-r--r--TAO/tests/Ondemand_Write/README4
-rw-r--r--TAO/tests/Oneway_Buffering/Oneway_Buffering.mpc1
-rw-r--r--TAO/tests/Oneway_Buffering/README2
-rw-r--r--TAO/tests/Oneways_Invoking_Twoways/README2
-rw-r--r--TAO/tests/Optimized_Connection/README2
-rw-r--r--TAO/tests/POA/Adapter_Activator/README2
-rw-r--r--TAO/tests/POA/Bug_1592_Regression/README2
-rw-r--r--TAO/tests/POA/DSI/README1
-rw-r--r--TAO/tests/POA/Default_Servant2/README20
-rw-r--r--TAO/tests/POA/EndpointPolicy/README6
-rwxr-xr-xTAO/tests/POA/Etherealization/run_test.pl10
-rw-r--r--TAO/tests/POA/Explicit_Activation/Alt_Resources/README2
-rw-r--r--TAO/tests/POA/Explicit_Activation/README2
-rw-r--r--TAO/tests/POA/Explicit_Activation/alternate.conf.xml3
-rw-r--r--TAO/tests/POA/FindPOA/README1
-rw-r--r--TAO/tests/POA/Generic_Servant/README4
-rw-r--r--TAO/tests/POA/Loader/README4
-rwxr-xr-xTAO/tests/POA/Nested_Non_Servant_Upcalls/run_test.pl10
-rw-r--r--TAO/tests/POA/NewPOA/README6
-rw-r--r--TAO/tests/POA/On_Demand_Act_Direct_Coll/Client_Task.cpp85
-rw-r--r--TAO/tests/POA/On_Demand_Act_Direct_Coll/Client_Task.h39
-rw-r--r--TAO/tests/POA/On_Demand_Act_Direct_Coll/Collocated_Test.cpp111
-rw-r--r--TAO/tests/POA/On_Demand_Act_Direct_Coll/On_Demand_Act_D_Coll.mpc15
-rw-r--r--TAO/tests/POA/On_Demand_Act_Direct_Coll/Servant_Activator.cpp64
-rw-r--r--TAO/tests/POA/On_Demand_Act_Direct_Coll/Servant_Activator.h49
-rw-r--r--TAO/tests/POA/On_Demand_Act_Direct_Coll/Server_Task.cpp148
-rw-r--r--TAO/tests/POA/On_Demand_Act_Direct_Coll/Server_Task.h48
-rwxr-xr-xTAO/tests/POA/On_Demand_Act_Direct_Coll/run_test.pl44
-rw-r--r--TAO/tests/POA/On_Demand_Act_Direct_Coll/test.idl11
-rw-r--r--TAO/tests/POA/On_Demand_Act_Direct_Coll/test_i.cpp49
-rw-r--r--TAO/tests/POA/On_Demand_Act_Direct_Coll/test_i.h40
-rw-r--r--TAO/tests/POA/On_Demand_Activation/README4
-rw-r--r--TAO/tests/POA/On_Demand_Loading/README2
-rw-r--r--TAO/tests/POA/POA_BiDir/README6
-rw-r--r--TAO/tests/POA/Persistent_ID/README2
-rw-r--r--TAO/tests/POA/README2
-rw-r--r--TAO/tests/POA/Reference_Counted_Servant/README2
-rw-r--r--TAO/tests/POA/RootPOA/README2
-rw-r--r--TAO/tests/Parallel_Connect_Strategy/README2
-rw-r--r--TAO/tests/Param_Test/README25
-rw-r--r--TAO/tests/Param_Test/anyop.cpp5
-rw-r--r--TAO/tests/Permanent_Forward/README2
-rw-r--r--TAO/tests/Policies/Manipulation.cpp4
-rw-r--r--TAO/tests/Policies/Policies.mpc1
-rw-r--r--TAO/tests/Policies/README2
-rw-r--r--TAO/tests/Portable_Interceptors/AdvSlotDblCpy/README2
-rw-r--r--TAO/tests/Portable_Interceptors/Benchmark/README2
-rw-r--r--TAO/tests/Portable_Interceptors/Bug_2133/README2
-rw-r--r--TAO/tests/Portable_Interceptors/Dynamic/README2
-rw-r--r--TAO/tests/Portable_Interceptors/ForwardRequest/README2
-rw-r--r--TAO/tests/Portable_Interceptors/IORInterceptor/README2
-rw-r--r--TAO/tests/Portable_Interceptors/ORB_Shutdown/README2
-rw-r--r--TAO/tests/Portable_Interceptors/PICurrent/README4
-rw-r--r--TAO/tests/Portable_Interceptors/PolicyFactory/README4
-rw-r--r--TAO/tests/Portable_Interceptors/Request_Interceptor_Flow/README2
-rw-r--r--TAO/tests/QtTests/README4
-rw-r--r--TAO/tests/README52
-rw-r--r--TAO/tests/RTCORBA/Banded_Connections/svc.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Client_Propagated/svc.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Client_Protocol/svc.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Collocation/README2
-rw-r--r--TAO/tests/RTCORBA/Collocation/continuous.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Collocation/svc.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Destroy_Thread_Pool/continuous.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Diffserv/README2
-rw-r--r--TAO/tests/RTCORBA/Dynamic_Thread_Pool/continuous.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Dynamic_Thread_Pool/server.cpp4
-rw-r--r--TAO/tests/RTCORBA/Dynamic_Thread_Pool/svc.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Explicit_Binding/README4
-rw-r--r--TAO/tests/RTCORBA/Explicit_Binding/svc.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Linear_Priority/README2
-rw-r--r--TAO/tests/RTCORBA/Linear_Priority/svc.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/MT_Client_Protocol_Priority/svc.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Persistent_IOR/continuous.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Policy_Combinations/svc.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Priority_Inversion_With_Bands/README3
-rw-r--r--TAO/tests/RTCORBA/Priority_Inversion_With_Bands/continuous.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Priority_Inversion_With_Bands/svc.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Private_Connection/README4
-rw-r--r--TAO/tests/RTCORBA/Profile_And_Endpoint_Selection/README14
-rw-r--r--TAO/tests/RTCORBA/README8
-rw-r--r--TAO/tests/RTCORBA/Server_Declared/README2
-rw-r--r--TAO/tests/RTCORBA/Server_Declared/continuous.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Server_Declared/svc.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Server_Protocol/server_iiop.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Server_Protocol/server_reverse.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Server_Protocol/server_reverse_nt.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Server_Protocol/server_shmiop.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Server_Protocol/server_uiop.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Thread_Pool/continuous.conf.xml3
-rw-r--r--TAO/tests/RTCORBA/Thread_Pool/svc.conf.xml3
-rw-r--r--TAO/tests/RTScheduling/Current/README2
-rw-r--r--TAO/tests/RTScheduling/DT_Spawn/README2
-rw-r--r--TAO/tests/RTScheduling/Scheduling_Interceptor/README6
-rw-r--r--TAO/tests/RTScheduling/Thread_Cancel/README2
-rw-r--r--TAO/tests/RTScheduling/VoidData/README2
-rw-r--r--TAO/tests/Reliable_Oneways/README2
-rw-r--r--TAO/tests/Sequence_Unit_Tests/README2
-rw-r--r--TAO/tests/Server_Leaks/README2
-rw-r--r--TAO/tests/Server_Port_Zero/README2
-rw-r--r--TAO/tests/Single_Read/README2
-rw-r--r--TAO/tests/Smart_Proxies/Collocation/README2
-rw-r--r--TAO/tests/Smart_Proxies/Policy/README6
-rw-r--r--TAO/tests/Smart_Proxies/dtor/README6
-rw-r--r--TAO/tests/Stack_Recursion/README19
-rw-r--r--TAO/tests/Strategies/README8
-rw-r--r--TAO/tests/Timed_Buffered_Oneways/README2
-rw-r--r--TAO/tests/Timeout/README2
-rw-r--r--TAO/tests/TransportCurrent/Framework/README1
-rw-r--r--TAO/tests/TransportCurrent/IIOP/README4
-rw-r--r--TAO/tests/Two_Objects/README16
-rw-r--r--TAO/tests/UNKNOWN_Exception/README4
-rw-r--r--TAO/tests/Xt_Stopwatch/README2
-rw-r--r--TAO/tests/ZIOP/README.txt2
-rw-r--r--TAO/utils/NamingViewer/README14
-rw-r--r--TAO/utils/README6
-rw-r--r--TAO/utils/logWalker/HostProcess.cpp50
-rw-r--r--TAO/utils/logWalker/HostProcess.h10
-rw-r--r--TAO/utils/logWalker/Log.cpp26
-rw-r--r--TAO/utils/logWalker/README30
-rw-r--r--TAO/utils/wxNamingViewer/README12
976 files changed, 10155 insertions, 19348 deletions
diff --git a/ACE/Makefile.am b/ACE/Makefile.am
deleted file mode 100644
index d1b17b995c3..00000000000
--- a/ACE/Makefile.am
+++ /dev/null
@@ -1,35 +0,0 @@
-## Process this file with automake to create Makefile.in
-##
-## $Id$
-##
-## This file was generated by MPC. Any changes made directly to
-## this file will be lost the next time it is generated.
-##
-## MPC Command:
-## /acebuilds/ACE_wrappers-repository/bin/mwc.pl -include /acebuilds/MPC/config -include /acebuilds/MPC/templates -feature_file /acebuilds/ACE_wrappers-repository/local.features -noreldefs -type automake -exclude build,Kokyu
-
-SUBDIRS = \
- ace \
- @ACEXML@ \
- @ASNMP@ \
- apps \
- bin \
- netsvcs
-
-if BUILD_EXAMPLES
-SUBDIRS += examples
-endif
-
-if BUILD_TESTS
-SUBDIRS += performance-tests
-SUBDIRS += tests
-endif
-
-SUBDIRS += \
- @protocols@ \
- websvcs \
- @KOKYU@
-
-ACLOCAL = @ACLOCAL@
-ACLOCAL_AMFLAGS = -I m4
-AUTOMAKE_OPTIONS = foreign
diff --git a/ACE/configure.ac b/ACE/configure.ac
deleted file mode 100644
index dd6b532221c..00000000000
--- a/ACE/configure.ac
+++ /dev/null
@@ -1,7499 +0,0 @@
-dnl $Id$
-
-dnl An autoconf script to automatically configure ACE.
-dnl Process this file with autoconf to produce a configure script.
-
-dnl Statically (i.e. at autoconf-time) determine the version of ACE.
-dnl This is necessary since the version argument to AC_INIT is
-dnl supposed to be a static value, not a dynamic one (e.g. a shell
-dnl variable).
-dnl
-dnl Note that this macro removes the newline output by the M4
-dnl "esyscmd" built-in. Unless you understand what you're doing,
-dnl particularly with M4, do not modify this macro definition.
-define([ACE_VERSION], patsubst(esyscmd(grep ACE_VERSION ace/Version.h | sed 's/.*\" *\(.*\)\".*/\1/'), [
-]))dnl remove newline ending every `esyscmd' answer
-
-AC_INIT([ACE],[ACE_VERSION],[ace-bugs@list.isis.vanderbilt.edu],[ace])
-
-AC_REVISION([$Id$])
-
-AC_COPYRIGHT([ACE(TM), TAO(TM), CIAO(TM), and CoSMIC(TM) (henceforth
-referred to as "DOC software") are copyrighted by Douglas C.
-Schmidt and his research group at Washington University,
-University of California, Irvine, and Vanderbilt University,
-Copyright (c) 1993-2005, all rights reserved. Since DOC software is
-open-source, free software, you are free to use, modify, copy, and
-distribute--perpetually and irrevocably--the DOC software source code
-and object code produced from the source, as well as copy and
-distribute modified versions of this software. You must, however,
-include this copyright statement along with code built using DOC
-software.
-
-Please see the file `COPYING' in the top level ACE directory for
-additional details.])
-
-
-dnl Require GNU Autoconf 2.58 or better. Previous versions did not
-dnl correctly support HP-UX.
-AC_PREREQ(2.61)
-
-dnl Autoconf explicitly forbids patterns containing "_AC_". This causes
-dnl a problem when using MPC to generate the Automake ".am" files since
-dnl the "AC_CLD" project in ACE_wrappers/examples/C++NPv2 ends up having
-dnl a Makefile containing "NPv2_AC_CLD" in it, triggering the forbidden
-dnl "_AC_" pattern. Explicitly allow our pattern.
-m4_pattern_allow([NPv2_AC_CLD])
-
-AC_CONFIG_SRCDIR([ace/ACE.cpp])
-
-AC_CONFIG_AUX_DIR([aux_config])
-AC_CONFIG_MACRO_DIR([m4])
-
-dnl Check what platform we are running on.
-AC_CANONICAL_TARGET([])
-
-dnl Initialize GNU Automake, and require Automake 1.9.6 or better.
-AM_INIT_AUTOMAKE([1.9.6 foreign no-define nostdinc])
-
-dnl Add maintainer mode option to the option list.
-dnl AM_MAINTAINER_MODE
-
-dnl The maintainer of this configure script.
-ACE_CONFIGURE_MAINTAINER='ace-users@list.isis.vanderbilt.edu'
-
-
-dnl Until autoconf support in ACE is complete, prevent this script
-dnl from running unless the user explictly forces the configure script
-dnl to run using the "--enable-maintainer-mode" configure script
-dnl option.
-dnl if test $USE_MAINTAINER_MODE != yes; then
-dnl AC_MSG_ERROR([
-dnl ACE autoconf support is currently disabled by default since it is
-dnl still under development. Please use the stock ACE build procedure
-dnl detailed in the file \`ACE-INSTALL.html'.
-dnl
-dnl If you wish to experiment with ACE's autoconf support then use the
-dnl \"--enable-maintainer-mode\" configure script option to enable
-dnl autoconf support. For more details see the file
-dnl \`ACE-configuration.txt'.])
-dnl fi dnl test $USE_MAINTAINER_MODE != yes
-
-dnl Should we use "egrep" or "grep -E"? This sets the "$EGREP" shell
-dnl variable.
-AC_PROG_EGREP
-
-dnl If we are configuring in a CVS controlled directory then don't
-dnl continue any further. The idea is to prevent automatically
-dnl generated files from being checked into the repository. This
-dnl will prevent accidental overwrites of ACE's current Makefiles by
-dnl the automatically generated ones, for example.
-dnl ACE_CHECK_FOR_CVS_DIR
-
-dnl Prevent the configure script from continuing any further if
-dnl configuration is being performed in the top-level directory. The
-dnl idea is to prevent files generated during configuration and build
-dnl from overwriting the stock files of the same name.
-ACE_CHECK_TOP_SRCDIR
-
-dnl Prepare the `ace/config.h.in' header template.
-ACE_PREP_CONFIG_HEADER
-
-dnl Allow the standard program name transformations.
-dnl We probably don't need AC_ARG_PROGRAM any longer since AM_INIT_AUTOMAKE
-dnl handles this functionality. -- Ossama
-dnl AC_ARG_PROGRAM
-
-dnl Generate a header file with all settings.
-AC_CONFIG_HEADERS([ace/config.h])
-
-dnl Move before the AC_ARG_ENABLE stuff to prevent autoconf complaints.
-dnl This is a bit messy but it makes life easier for me.
-dnl -Ossama
-dnl
-dnl SECTION: checks for programs
-dnl
-
-dnl Check if system supports "#! /bin/sh" line in scripts
-AC_SYS_INTERPRETER
-
-dnl Check the C compiler and preprocessor.
-dnl AC_PROG_CC
-dnl AC_PROG_CPP
-dnl AC_PROG_CC_C_O
-
-dnl Check the C++ compiler and preprocessor.
-AC_PROG_CXX
-AC_PROG_CXXCPP
-
-dnl Set the test language as C++
-AC_LANG([C++])
-
-dnl If we are cross compiling disable certain things in the Makefiles.
-AM_CONDITIONAL([ACE_CROSS_COMPILED], [test X$cross_compiling = Xyes])
-
-dnl If we are cross compiling disable certain things in the Makefiles.
-AM_CONDITIONAL([BUILD_CROSS_COMPILE], [test X$cross_compiling = Xyes])
-
-dnl Look for the best awk-style program available.
-AC_PROG_AWK
-
-dnl Parse the version information argument.
-dnl Note that "ACE_VERSION" is an m4 macro.
-ace_version_temp=ACE_VERSION
-ace_save_ifs="$IFS"; IFS='.'
-set dummy $ace_version_temp 0 0 0
-IFS="$ace_save_ifs"
-
-ACE_MAJOR=$2
-ACE_MINOR=$3
-ACE_BETA=$4
-ACE_VERSION_NAME=ACE_VERSION
-
-AC_SUBST([ACE_MAJOR])
-AC_SUBST([ACE_MINOR])
-AC_SUBST([ACE_BETA])
-AC_SUBST([ACE_VERSION_NAME])
-
-dnl Do the usual install settings; don't forget to include a
-dnl `install-sh' script, in case there is no BSD compatible `install'
-dnl installed (no pun intended) in your machine.
-
-dnl We don't need this anymore since AM_INIT_AUTOMAKE calls AC_PROG_INSTALL.
-dnl -- Ossama
-dnl AC_PROG_INSTALL
-
-dnl Special handling for some UNIX variants and Cygwin32
-dnl AC_AIX
-
-dnl AC_MINIX
-
-case $host_os in
- *cygwin* ) CYGWIN=yes;;
- * ) CYGWIN=no;;
-esac
-
-
-dnl Check if we support symbolic links
-AC_PROG_LN_S
-
-dnl Check if a lexical analyzer exists (lex, flex, etc.)
-AM_PROG_LEX
-
-dnl Check if some implementation of YACC exists (yacc, byacc, bison, etc.)
-AC_PROG_YACC
-dnl if test -z "$YACC"; then
-dnl ./missing yacc
-dnl fi
-
-dnl Check for perfect hash function generator
-AC_CHECK_PROG([GPERF],[gperf],[gperf])
-
-dnl Check for profiling progam
-AC_CHECK_PROGS([PROF],[gprof prof],)
-
-dnl The user's/default C++ flags are stored in "CXXFLAGS." We use
-dnl the variable "ACE_CXXFLAGS" to set the C++ flags we want. At the end
-dnl of the configuration process we combine ACE_CXXFLAGS and CXXFLAGS
-dnl into CXXFLAGS (e.g., CXXFLAGS="$ACE_CXXFLAGS $CXXFLAGS"). CXXFLAGS
-dnl goes after ACE_CXXFLAGS so that the user's C++ flag command line
-dnl choices always override the configure script's choices.
-ACE_CXXFLAGS=""
-ACE_CFLAGS=""
-
-
-
-dnl SECTION 2: Configure script command line options
-
-
-dnl Determine which subsets to build
-dnl This is done using the autoconf "--enable-foobar" mechanism.
-ACE_CHECK_SUBSETS
-
-dnl Some of the third party libraries (X11, openssl, etc.) depend on
-dnl other libraries. Check for those before the processing --enable
-dnl options.
-
-dnl Check if the socket library is available
-AC_SEARCH_LIBS([socket],[socket],,,[-lnsl])
-
-dnl Check for gethostbyname in -lnsl since some platforms (e.g. Solaris)
-dnl put it there.
-AC_SEARCH_LIBS([gethostbyname],[nsl],,)
-
-ACE_CHECK_HAS_FUNCS(gethostbyname2)
-
-dnl Add --{enable,disable,with,without}-feature options.
-ACE_CONFIGURATION_OPTIONS
-ACE_COMPILATION_OPTIONS
-
-# Autoconf's AC_OBJEXT and AC_EXEEXT macros only works for C compilers!
-# Libtool's setup macro calls AC_OBJEXT and AC_EXEEXT without setting
-# the test language to C. We do it before any libtool setup macros are
-# called so that the proper values are cached beforehand. We also do
-# it before any linker flags (LDFLAGS) are set so that C++ specific
-# ones don't break the tests.
-dnl AC_LANG_PUSH([C])
-dnl AC_OBJEXT
-dnl AC_EXEEXT
-dnl AC_LANG_POP([C])
-
-dnl Call ACE_SET_COMPILER_FLAGS before AC_PROG_LIBTOOL and after the
-dnl AC_ARG_ENABLE and AC_ARG_WITH calls.
-ACE_SET_COMPILER_FLAGS
-
-
-dnl SECTION 3: check for programs <--- moved before section 2 (Ossama)
-
-
-dnl Platform specific libraries needed for ACE's autoconf tests
-dnl that currently do not have tests themselves.
-dnl Platform specific flags
-case "$host" in
- *osf3.2*)
- LIBS="$LIBS -lmach -lsys5 -lcxx -lc"
- ;;
- *osf4.0* | *osf5.0*)
- LIBS="$LIBS -lmach"
- ;;
- *psos*)
- LIBS="$LIBS -lm"
- ;;
-esac
-
-
-dnl SECTION 4: checks for libraries
-
-
-dnl Additional X library checks
-dnl We only check for these libraries if the user has
-dnl enabled XtReactor support.
-
-xt_reactor_go=no
-
-if test "$ace_user_enable_xt_reactor" = yes; then
-XTREACTOR_TEST_XLIBS=""
-dnl Check for Motif if we have X
- T_LDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS $X_LIBS"
-
-dnl Note that ACE currently only needs -lX11 and -lXt for the XtReactor
-dnl so we define another library variable that contains additional
-dnl libraries for the XtReactor test since it needs either Motif or the
-dnl Athena widget set.
-
- AC_CHECK_LIB([Xm],[XmCreateRowColumn],
- [
- AC_DEFINE([ACE_HAS_XT])
- XTREACTOR_TEST_XLIBS="-lXm"
- xt_reactor_go=yes
- ],
- [
- AC_DEFINE([ACE_LACKS_MOTIF])
- AC_CHECK_LIB([Xaw],[XawInitializeWidgetSet],
- [
- AC_DEFINE([ACE_HAS_XT])
- XTREACTOR_TEST_XLIBS="-lXaw -lXmu"
- xt_reactor_go=yes
- ],
- [
- xt_reactor_go=no
- AC_MSG_WARN([No usable X widget libraries were found.])
- AC_MSG_WARN([XtReactor support will be disabled.])
- ],[-lXmu])
- ],[-lXt])
-
- AC_SUBST([XTREACTOR_TEST_XLIBS])
-
-dnl Restore pre-test linker flags
- LDFLAGS="$T_LDFLAGS"
-
-fi dnl test "$ace_user_enable_xt_reactor"= yes
-
- AM_CONDITIONAL([COMPILE_XTREACTOR_TEST],[test X$xt_reactor_go = Xyes])
-
-dnl End additional X library checks
-
-dnl Some platforms do not have a dynamic linking library, however the
-dnl dlopen, dlclose, etc., functions may exist in the C library.
-dnl (e.g. Digital UNIX)
-dnl Check for dynamic linking library
-AC_SEARCH_LIBS([dlopen],[dl svld],[ace_has_svr4_dynamic_linking=yes],
- [
- ace_has_svr4_dynamic_linking=no
- AC_CHECK_LIB([dld],[shl_get],,)
- ])
-
-dnl Check for getservbyname in -lxnet since some platforms (e.g. Solaris)
-dnl may put it there.
-AC_SEARCH_LIBS([getservbyname],[socket xnet],,[AC_DEFINE([ACE_LACKS_GETSERVBYNAME])],[-lnsl])
-
-dnl Check for compile() regex function in -lgen. Solaris, for example,
-dnl may put it there.
-AC_SEARCH_LIBS([compile],[gen],,)
-
-dnl Check for exception handling library (e.g. for Digital UNIX)
-AC_SEARCH_LIBS([exc_continue],[exc],,)
-
-dnl Check for ctime_r in -lc_r. Some platforms, such as Digital UNIX,
-dnl put reentrant functions such as asctime_r, ctime_r, gmtime_r, and
-dnl localtime_r in -lc_r.
-AC_SEARCH_LIBS([ctime_r],[c_r],,)
-
-dnl XTI/TLI check. Check for XTI first, since it's preferred. If there's
-dnl no XTI, try for TLI. t_getprotaddr() is only in XTI.
-AC_SEARCH_LIBS([t_getprotaddr],[xti nsl],
- [ace_has_xti_funcs=yes],[ace_has_xti_funcs=no])
-AS_IF([test "$ace_has_xti_funcs" = no],
- [
- AC_SEARCH_LIBS([t_accept],[tli_r tli nsl],
- [ace_has_tli_funcs=yes],[ace_has_tli_funcs=no])
- ],[])
-
-dnl Check for all of the things we need to compile and link threads
-dnl properly.
-AS_IF([test "$ace_user_enable_threads" = yes],
- [
- ACE_CHECK_THREADS
- ],[])
-
-dnl Setup Libtool
-
-dnl This should be done in the "programs" section of this file but
-dnl libtool may then be unaware of compiler flags set during the
-dnl thread checks.
-
-dnl Disable building of static libraries by default
-AC_DISABLE_STATIC
-
-dnl Enable Libtool module support
-AC_LIBTOOL_DLOPEN
-
-dnl
-dnl ###### Relies on the as of yet unreleased Libtool 1.6 distribuion ###
-dnl
-dnl Only enable C++ libtool support. Support for other languages is
-dnl unnecessary.
-dnl AC_LIBTOOL_TAGS([CXX])
-
-dnl FIXME: Temporary hack to make libtool work with g++.
-dnl Shared library support will only work with GNU g++ and GNU ld
-dnl right now.
-dnl save_CC="$CC"
-dnl CC="$CXX"
-
-dnl Check for libtool and turn on Automake processing for Libtool
-AC_PROG_LIBTOOL
-
-dnl Enable C++ support in libtool
-dnl AC_LIBTOOL_CXX
-
-dnl Temporary hack until I get integrate libtool's new tag support
-dnl into automake.
-dnl This hack forces libtool to always use the C++ tag.
-dnl LIBTOOL="$LIBTOOL --tag=CXX"
-
-dnl Check for sched_yield() in posix4 library.
-dnl Some platforms, such as Solaris, may define sched_yield() there.
-dnl Later we run AC_CHECK_FUNC(sched_yield), which is redundant in this case
-dnl but is needed if sched_yield() is defined in one of the other libraries
-dnl we check for.
-AC_SEARCH_LIBS([sched_yield],[rt posix4],[ace_has_sched_yield=yes],)
-
-dnl Check for asynchronous IO calls (perform check *after* thread check!)
-ACE_CHECK_ASYNCH_IO
-
-dnl Additional `-lposix4' library check since it may not be added by the
-dnl above checks on some platforms that may need it
-dnl AC_SEARCH_LIBS([clock_gettime],
-dnl [rt posix4],[AC_DEFINE(ACE_HAS_CLOCK_GETTIME)],)
-
-dnl This check was added to work around a system-supplied header
-dnl (/usr/include/netinet/ip.h) that won't compile with Visual Age C++
-dnl unless the _NO_BITFIELDS preprocessor macro is defined. The comments
-dnl there recommend use of _NO_BITFIELDS (and recode where needed to allow
-dnl that), but we won't just turn it on. Check to see if it's needed. Note
-dnl that this check is related to headers but done before we really know if
-dnl the header is present. Thus, if the bare compile fails, but succeeds
-dnl with _NO_BITFIELDS, set the flag, else leave things alone.
-
-AC_CACHE_CHECK([to see if _NO_BITFIELDS needed to compile netinet/ip.h],
-[ac_cv_needs_no_bitfields],
-[
- ace_save_CXXFLAGS="$CXXFLAGS"
-
- dnl Try compiling without any flags first.
-
- AC_COMPILE_IFELSE([
- AC_LANG_PROGRAM([
-#include <netinet/tcp.h>
- ],
- [
- return 0;
- ])
- ],
- [
- ac_cv_needs_no_bitfields=no
- ],
- [
- CXXFLAGS="$CXXFLAGS -D_NO_BITFIELDS"
-
- AC_COMPILE_IFELSE([
- AC_LANG_PROGRAM([
-#include <netinet/tcp.h>
- ],
- [
- return 0;
- ])
- ],
- [
- ac_cv_needs_no_bitfields=yes
- ],
- [
- ac_cv_needs_no_bitfields=no
- CXXFLAGS="$ace_save_CXXFLAGS"
- ])
- ])
-])
-
-
-dnl SECTION 5: checks for header files
-
-dnl Set known platform specific flags
-ACE_SET_PLATFORM_MACROS
-
-dnl Check for dirent headers
-AC_HEADER_DIRENT
-
-AS_IF([test "$ac_cv_header_dirent_dirent_h" = yes ||
- test "$ac_cv_header_dirent_sys_ndir_h" = yes ||
- test "$ac_cv_header_dirent_sys_dir_h" = yes ||
- test "$ac_cv_header_dirent_ndir_h" = yes],
- [
- AC_DEFINE([ACE_HAS_DIRENT])
- ],[])
-
-dnl Check for sys/wait.h Posix.1 compliance
-AC_HEADER_SYS_WAIT
-
-AC_CHECK_HEADER([dlfcn.h],
- [
- dnl We already checked for dlopen in the previous library checks however,
- dnl it is possible that ac_cv_func_dlopen=yes if dlopen wasn't found before
- dnl the library test. Hence we cannot use AC_CHECK_FUNC(dlopen) here
- dnl the previously cached value may prevent ACE_HAS_SVR4_DYNAMIC_LINKING
- dnl from being defined.
- dnl -Ossama
- AS_IF([test "$ace_has_svr4_dynamic_linking" = yes],
- [
- AC_DEFINE([ACE_HAS_SVR4_DYNAMIC_LINKING])
-
- case "$host_os" in
- darwin*)
- AC_DEFINE([ACE_LD_SEARCH_PATH],
- [ACE_TEXT ("DYLD_LIBRARY_PATH")],
- [Define to environment variable used for DLL search path])
- AC_DEFINE([ACE_DLL_SUFFIX],
- [ACE_TEXT (".dylib")],
- [Define to DLL file suffix])
- ;;
- esac
- ],[])
- ],)
-
-ACE_CHECK_LACKS_HEADERS(inttypes.h malloc.h memory.h stdint.h)
-
-AC_CHECK_HEADER([sys/msg.h],
- [
- ACE_CACHE_CHECK([if _KERNEL is needed for msg prototypes],
- [ace_cv_lib_broken_msg_h],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifdef UNIXWARE_7_1
-# define _KMEMUSER
-#endif
-
-#include <sys/msg.h>
- ]],[[
- struct msg ace_msg;
- ]])],[
- ace_cv_lib_broken_msg_h=no
- ],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef _KERNEL
-# define _KERNEL
-# ifdef UNIXWARE_7_1
-# define _KMEMUSER
-# endif
-#endif
-#include <sys/msg.h>
- ]],
- [[
- struct msg ace_msg;
- ]])],
- [
- ace_cv_lib_broken_msg_h=yes
- ],
- [
- dnl If we get here, then we have no idea if it is broken or not.
- ace_cv_lib_broken_msg_h=no
- ])
- ])
- ],
- [
- AC_DEFINE([ACE_HAS_BROKEN_MSG_H])
- ],)
- ],
- [AC_DEFINE([ACE_LACKS_SYS_MSG_H])])
-
-AC_CHECK_HEADER([sys/sem.h],,)
-AC_CHECK_HEADER([sys/shm.h],,)
-
-ACE_CHECK_LACKS_HEADERS(sys/param.h)
-
-AC_CHECK_HEADER([sys/priocntl.h],[],[])
-
-dnl Check for <ucontext.h> _before_ <sys/procfs.h>
-ACE_CHECK_LACKS_HEADERS(ucontext.h)
-
-AC_CHECK_HEADER([sys/procfs.h],
- [
- dnl Check if <sys/procfs.h> conflicts with <ucontext.h>
- dnl Some (early?) versions of glibc2.1 define the same variables
- dnl in <sys/procfs.h> and <ucontext.h>.
- ACE_CACHE_CHECK([if sys/procfs.h conflicts with ucontext.h],
- [ace_cv_has_procfs_conflict],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_UCONTEXT_H
-# include <ucontext.h>
-#endif
-
-#include <sys/procfs.h>
- ]],[[
- int a = 0;
- ]])],[
- ace_cv_has_procfs_conflict=no
- ],[
- ace_cv_has_procfs_conflict=yes
- ])
- ],
- [
- ],
- [
- dnl If ace_cv_has_procfs_conflict = no then define ACE_HAS_PROC_FS.
- AC_DEFINE([ACE_HAS_PROC_FS])
- ])
- ],)
-
-ACE_CHECK_LACKS_HEADERS(arpa/inet.h)
-
-ACE_CHECK_HAS_HEADERS(bytesex.h)
-
-ACE_CHECK_HAS_HEADERS(byteswap.h)
-
-ACE_CHECK_LACKS_HEADERS(dirent.h)
-
-ACE_CHECK_LACKS_HEADERS(dlfcn.h)
-
-ACE_CHECK_LACKS_HEADERS(errno.h)
-
-ACE_CHECK_LACKS_HEADERS(execinfo.h)
-
-ACE_CHECK_LACKS_HEADERS(fcntl.h)
-
-ACE_CHECK_HAS_HEADERS(pdh.h)
-
-ACE_CHECK_HAS_HEADERS(pthread_np.h)
-
-ACE_CHECK_LACKS_HEADERS(sched.h)
-
-ACE_CHECK_LACKS_HEADERS(search.h)
-
-ACE_CHECK_HAS_HEADERS(select.h)
-
-ACE_CHECK_LACKS_HEADERS(semaphore.h)
-
-ACE_CHECK_LACKS_HEADERS(signal.h)
-
-ACE_CHECK_LACKS_HEADERS(stdlib.h)
-
-ACE_CHECK_LACKS_HEADERS(string.h)
-
-ACE_CHECK_LACKS_HEADERS(strings.h)
-
-ACE_CHECK_LACKS_HEADERS(netdb.h)
-
-ACE_CHECK_LACKS_HEADERS(netinet/in.h)
-
-ACE_CHECK_LACKS_HEADERS(netinet/tcp.h)
-
-ACE_CHECK_LACKS_HEADERS(sys/socket.h)
-
-ACE_CHECK_LACKS_HEADERS(net/if.h, [], [],
-[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifndef ACE_LACKS_SYS_SOCKET_H
-# include <sys/socket.h>
-# endif
-])
-
-ACE_CHECK_HAS_HEADERS(sys/filio.h)
-
-ACE_CHECK_HAS_HEADERS(intrin.h)
-
-ACE_CHECK_HAS_HEADERS(ia64intrin.h)
-
-ACE_CHECK_HAS_HEADERS(ia32intrin.h)
-
-ACE_CHECK_LACKS_HEADERS(sys/ioctl.h)
-
-ACE_CHECK_LACKS_HEADERS(sys/ipc.h)
-
-ACE_CHECK_HAS_HEADERS(sys/loadavg.h)
-
-ACE_CHECK_LACKS_HEADERS(sys/mman.h)
-
-ACE_CHECK_HAS_HEADERS(sys/pstat.h)
-
-ACE_CHECK_LACKS_HEADERS(sys/resource.h)
-
-ACE_CHECK_LACKS_HEADERS(sys/sem.h)
-
-ACE_CHECK_LACKS_HEADERS(sys/shm.h)
-
-ACE_CHECK_LACKS_HEADERS(sys/select.h)
-
-ACE_CHECK_HAS_HEADERS(sys/sockio.h)
-
-ACE_CHECK_LACKS_HEADERS(sys/stat.h)
-
-dnl Test for <sys/types.h> out of alphabetical order, since it must
-dnl be (conditionally) #included in other feature tests.
-ACE_CHECK_LACKS_HEADERS(sys/types.h)
-
-ACE_CHECK_LACKS_HEADERS(sys/sysctl.h, [], [],
-[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifndef ACE_LACKS_SYS_PARAM_H
-# include <sys/param.h>
-#endif
-])
-
-ACE_CHECK_LACKS_HEADERS(sys/time.h)
-
-ACE_CHECK_LACKS_HEADERS(sys/uio.h)
-
-ACE_CHECK_LACKS_HEADERS(sys/un.h)
-
-ACE_CHECK_LACKS_HEADERS(sys/wait.h)
-
-ACE_CHECK_HAS_HEADERS(sysent.h)
-
-ACE_CHECK_LACKS_HEADERS(time.h)
-
-ACE_CHECK_LACKS_HEADERS(termio.h termios.h)
-
-ACE_CHECK_LACKS_HEADERS(wctype.h)
-
-AC_CHECK_TYPE([struct termio],
- [AC_DEFINE([ACE_HAS_TERMIO], 1,
- [Define to 1 if system supports SysV tty API.])],
- [],
- [
-#ifndef ACE_LACKS_TERMIO_H
-#include <termio.h>
-#endif
- ])
-
-AC_CHECK_TYPE([struct termios],
- [AC_DEFINE([ACE_HAS_TERMIOS], 1,
- [Define to 1 if system supports POSIX tty API.])],
- [],
- [
-#ifndef ACE_LACKS_TERMIOS_H
-#include <termios.h>
-#endif
- ])
-
-dnl If the platform has XTI, don't bother with the TLI checks as XTI is
-dnl preferred.
-AS_IF([test "$ace_has_xti_funcs" = yes],
- [
- AC_CHECK_HEADER([xti.h],
- [
- ace_has_xti=yes
- AC_DEFINE([ACE_HAS_XTI])
- ],)
-
- AC_CHECK_HEADER([sys/xti.h],
- [
- ace_has_xti=yes
- AC_DEFINE([ACE_HAS_SYS_XTI_H])
- AC_DEFINE([ACE_HAS_XTI])
- ],)
-
- AC_CHECK_HEADER([sys/timod.h],
- [
- AC_DEFINE([ACE_HAS_TIMOD_H])
- ],)
-
-dnl Check if XTI headers define TCP macros that conflict with netinet/tcp.h's
- ACE_CACHE_CHECK([if TCP macros in sys/xti.h conflict with netinet/tcp.h],
- [ace_cv_lib_has_conflicting_xti_macros],
- [
- ACE_CONVERT_WARNINGS_TO_ERRORS([
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-# if defined (ACE_HAS_XTI)
-# include <sys/types.h>
-# if defined (ACE_HAS_SYS_XTI_H)
-# include /**/ <sys/xti.h>
-# else
-# include /**/ <xti.h>
-# endif /* ACE_HAS_SYS_XTI_H */
-# else
-# if defined (ACE_HAS_TIUSER_H)
-# include /**/ <tiuser.h>
-# endif
-# endif /* ACE_HAS_XTI */
-# if !defined (ACE_LACKS_NETINET_TCP_H)
-# include /**/ <netinet/tcp.h>
-# endif /* !ACE_LACKS_NETINET_TCP_H */
- ]],[[
- int a = 0;
- ]])],[
- ace_cv_lib_has_conflicting_xti_macros=no
- ],[
- ace_cv_lib_has_conflicting_xti_macros=yes
- ])
- ])
- ],
- [
- AC_DEFINE([ACE_HAS_CONFLICTING_XTI_MACROS])
- ],)
-
- ],[])
-
-AS_IF([test "$ace_has_tli_funcs" = yes],
- [
- AC_CHECK_HEADER([tiuser.h],
- [
- ace_has_tli=yes
- AC_DEFINE([ACE_HAS_TIUSER_H])
- AC_DEFINE([ACE_HAS_TLI])
- ],)
-
- AC_CHECK_HEADER([sys/timod.h],
- [
- AC_DEFINE([ACE_HAS_TIMOD_H])
- ],
- [
- AC_CHECK_HEADER([tli/timod.h],
- [
- AC_DEFINE([ACE_HAS_OSF_TIMOD_H])
- ],)
- ])
-
- AC_CHECK_FUNC([t_getname],
- [AC_DEFINE([ACE_HAS_SVR4_TLI])],)
-
-
-if test "$ac_cv_header_tiuser_h" = yes; then
- ACE_CACHE_CHECK([if tiuser.h is protected by extern "C"],
- [ace_cv_lib_tiuser_with_extern_c],[
- AC_EGREP_HEADER([extern \"C\"],[tiuser.h],
- [
- ace_cv_lib_tiuser_with_extern_c=yes
- ],
- [
- ace_cv_lib_tiuser_with_extern_c=no
- ])
- ],,[AC_DEFINE([ACE_HAS_TIUSER_H_BROKEN_EXTERN_C])])
-fi dnl test "$ac_cv_header_tiuser_h" = yes
-
-AC_CHECK_HEADER([xliuser.h],
- [
- ace_has_tli=yes
- AC_DEFINE([ACE_HAS_XLI])
- AC_DEFINE([ACE_HAS_TLI])
- ],)
-
-
-dnl Check for TLI prototypes.
-if test "$ace_has_tli" = yes; then
- ACE_CACHE_CHECK([for TLI prototypes],
- [ace_cv_lib_tli_prototypes],
- [
-dnl We only check for t_accept. This should hopefully be enough.
- AC_EGREP_CPP([t_accept],
- [
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-
-#if defined (ACE_HAS_TIMOD_H)
-# include <sys/timod.h>
-#endif
-
-#if defined (ACE_HAS_OSF_TIMOD_H)
-# include <tli/timod.h>
-#endif
-
-#if defined (ACE_HAS_TIUSER_H)
-# include /**/ <tiuser.h>
-#endif /* ACE_HAS_TIUSER_H */
-
-#if defined (ACE_HAS_XLI)
-# include <xliuser.h>
-#endif
- ],
- [
- ace_cv_lib_tli_prototypes=yes
- ],
- [
- ace_cv_lib_tli_prototypes=no
- ])
- ],[AC_DEFINE([ACE_HAS_TLI_PROTOTYPES])],)
-
-dnl Check for t_errno type in TLI headers
- ACE_CACHE_CHECK([for t_errno in TLI headers],
- [ace_cv_lib_has_t_errno],
- [
- dnl Check if t_errno is declared in the TLI headers
- AC_EGREP_CPP([t_errno],
- [
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-
-#if defined (ACE_HAS_TIMOD_H)
-# include <sys/timod.h>
-#endif
-
-#if defined (ACE_HAS_OSF_TIMOD_H)
-# include <tli/timod.h>
-#endif
-
-#if defined (ACE_HAS_TIUSER_H)
-# include /**/ <tiuser.h>
-#endif /* ACE_HAS_TIUSER_H */
-
-#if defined (ACE_HAS_XLI)
-# include <xliuser.h>
-#endif
- ],
- [
- ace_cv_lib_has_t_errno=yes
- ],
- [
- ace_cv_lib_has_t_errno=no
- ])
- ],,[AC_DEFINE([ACE_LACKS_T_ERRNO])])
-
-fi dnl test "$ace_has_tli_funcs" = yes
-],[])
-
-dnl These checks are needed for both XTI and TLI.
-AS_IF([test "$ace_has_xti" = yes || test "$ace_has_tli" = yes],
- [
- dnl Check if t_error incorrectly accepts char *
- ACE_CONVERT_WARNINGS_TO_ERRORS([
- ACE_CACHE_CHECK([if t_error incorrectly accepts char *],
- [ace_cv_lib_has_broken_t_error],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-
-#if defined (ACE_HAS_XTI)
-# if defined (ACE_HAS_SYS_XTI_H)
-# include <sys/xti.h>
-# else
-# include <xti.h>
-# endif /* ACE_HAS_SYS_XTI_H */
-#elif defined (ACE_HAS_TIUSER_H)
-# include /**/ <tiuser.h>
-#endif /* ACE_HAS_TIUSER_H */
-
-#if defined (ACE_HAS_XLI)
-# include <xliuser.h>
-#endif
- ]],[[
- const char *ace_errmsg = "FOO";
- t_error (ace_errmsg);
- ]])],[
- ace_cv_lib_has_broken_t_error=no
- ],[
- ace_cv_lib_has_broken_t_error=yes
- ])
- ],
- [
- AC_DEFINE([ACE_HAS_BROKEN_T_ERROR])
- ],)
- ]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-
- ],[])
-
-dnl See the notes about ACE_LACKS_MMAP in the functions section of this
-dnl configure script.
-dnl -Ossama
-AC_CHECK_HEADER([sys/mman.h],
- [
- AC_EGREP_HEADER([extern \"C\"],[sys/mman.h],
- ,
- [
- AC_DEFINE([ACE_HAS_BROKEN_MMAP_H])
- ])
- ],
- [
- AC_DEFINE([ACE_LACKS_MMAP])
- ])
-
-dnl Check for bzero() prototype if bstring.h exists.
-AC_CHECK_HEADER([bstring.h],
- [
- AC_EGREP_HEADER([bzero],[bstring.h],
- [
- AC_DEFINE([ACE_HAS_BSTRING])
- ],)
- ],)
-
-AC_CHECK_HEADER([strings.h],
- [
- AC_EGREP_HEADER([bzero],[strings.h],
- [
- AC_DEFINE([ACE_HAS_STRINGS])
- ],)
- ],)
-
-ACE_CHECK_HAS_HEADERS(sys/syscall.h)
-
-AC_CHECK_HEADER([poll.h],
- [AC_DEFINE([ACE_HAS_POLL])],)
-
-ACE_CHECK_LACKS_HEADERS(pwd.h)
-
-AC_CHECK_HEADER([regexpr.h],
- [AC_DEFINE([ACE_HAS_REGEX])],)
-
-AC_CHECK_HEADER([stropts.h],
- [AC_DEFINE([ACE_HAS_STREAMS])],
- [AC_DEFINE([ACE_LACKS_STROPTS_H])])
-
-ACE_CHECK_LACKS_HEADERS(siginfo.h)
-
-ACE_CHECK_LACKS_HEADERS(unistd.h)
-
-ACE_CHECK_LACKS_HEADERS(utime.h)
-
-ACE_CHECK_LACKS_HEADERS(wchar.h)
-
-AC_CHECK_HEADER([wchar.h],
- [AC_DEFINE([ACE_HAS_WCHAR])],)
-
-AC_CHECK_HEADER([new],
- [AC_DEFINE([ACE_HAS_NEW_NO_H])],
- [
- ACE_CHECK_HAS_HEADERS([new.h])
- ])
-
-AC_CHECK_HEADER([memory],,)
-
-dnl Check for availablity of "new style" C++ stream headers
-AC_CHECK_HEADERS([iomanip ios iostream istream ostream fstream streambuf],
- ,
- [AC_CHECK_HEADERS([iostream.h fstream.h],
- [AC_DEFINE([ACE_USES_OLD_IOSTREAMS])],
- [AC_DEFINE([ACE_LACKS_IOSTREAM_TOTALLY])])])
-
-dnl Check for old malloc() prototype.
-ACE_CONVERT_WARNINGS_TO_ERRORS([
-ACE_CACHE_CHECK([for old malloc() prototype],
- [ace_cv_lib_old_malloc_proto],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <stdlib.h>
-#ifndef ACE_LACKS_MALLOC_H
-# include <malloc.h>
-#endif
- ]],[[
- char *s = 0;
- s = malloc(sizeof(int));
- ]])],[
- ace_cv_lib_old_malloc_proto=yes
- ],[
- ace_cv_lib_old_malloc_proto=no
- ])
- ],[AC_DEFINE([ACE_HAS_OLD_MALLOC])],)
-]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-
-
-dnl Check for *_timedwait() prototypes
-dnl TODO: We only check for one of the *_timedwait() prototypes.
-dnl Is this enough?
-AC_CHECK_DECL([recv_timedwait],
- [],
- [AC_DEFINE([ACE_LACKS_TIMEDWAIT_PROTOTYPES], 1,
- [Define to 1 if platform lacks the declarations
- of recv_timedwait, send_timedwait, etc.])],
- [#include <pthread.h>
- #include <fcntl.h>])
-
-dnl Check for {get,set}rlimit prototypes
-AC_CHECK_DECL([getrlimit],[],[],[#include <sys/resource.h>])
-AC_CHECK_DECL([setrlimit],[],[],[#include <sys/resource.h>])
-if test "$ac_cv_have_decl_getrlimit" != yes ||
- test "$ac_cv_have_decl_setrlimit" != yes; then
- AC_DEFINE([ACE_LACKS_RLIMIT_PROTOTYPE], 1,
- [Define to 1 if platform lacks the declaration of
- {get,set}rlimit().])
-fi
-
-
-dnl SECTION 6: Checks for typedefs
-
-dnl dnl Standard typedef checks (All of them may not be needed)
-dnl AC_TYPE_UID_T
-dnl AC_TYPE_MODE_T
-dnl AC_TYPE_OFF_T
-dnl AC_TYPE_PID_T
-dnl AC_TYPE_SIZE_T
-
-dnl AC_CHECK_TYPE([off64_t],[long long])
-
-dnl Specific typedef checks
-dnl TODO: Check whether these typedefs can be defined somewhere else.
-AC_CHECK_TYPE([cpu_set_t],
- [AC_DEFINE([ACE_HAS_CPU_SET_T], 1,
- [Define to 1 if the system has the type `cpu_set_t'.])],
- [],
- [
-#if !defined(ACE_LACKS_SCHED_H)
-#include <sched.h>
-#endif
- ])
-
-AC_CHECK_TYPE([idtype_t],
- [AC_DEFINE([ACE_HAS_IDTYPE_T], 1,
- [Define to 1 if the system has the type `idtype_t'.])],
- [],
- [#include <signal.h>])
-
-AC_CHECK_TYPE([key_t],
- [],
- [AC_DEFINE([ACE_LACKS_KEY_T], 1,
- [Define to 1 if the system lacks the type `key_t'.])],
- [#include <sys/types.h>])
-
-AC_CHECK_TYPE([sem_t],
- [],
- [],
- [#include <semaphore.h>])
-
-AC_CHECK_TYPE([pri_t],
- [],
- [AC_DEFINE([ACE_LACKS_PRI_T], 1,
- [Define to 1 if the system lacks the type 'pri_t'.])],
- [#include <sys/types.h>])
-
-AC_CHECK_TYPE([sig_atomic_t],
- [AC_DEFINE([ACE_HAS_SIG_ATOMIC_T], 1,
- [Define to 1 if the system has the type 'sig_atomic_t'.])],
- [],
- [#include <signal.h>])
-
-AC_CHECK_TYPE([union sigval],
- [],
- [],
- [#include <signal.h>])
-
-if test "$ac_cv_type_union_sigval" = yes; then
- dnl Depending on the system, the field names of union sigval have
- dnl either a sival_ (POSIX) or sigval_ (older versions of FreeBSD)
- dnl prefix. Define ACE_HAS_SIGVAL_SIGVAL_INT accordingly.
- AC_CHECK_MEMBER([union sigval.sigval_int],
- [AC_DEFINE([ACE_HAS_SIGVAL_SIGVAL_INT], 1,
- [Define to 1 if `sigval_int' is a member of `union sigval'.])],
- [],
- [#include <signal.h>])
-
- dnl Depending on the system, the field names of union sigval have
- dnl either a sival_ (POSIX) or sigval_ (older versions of FreeBSD)
- dnl prefix. Define ACE_HAS_SIGVAL_SIGVAL_PTR accordingly.
- AC_CHECK_MEMBER([union sigval.sigval_ptr],
- [AC_DEFINE([ACE_HAS_SIGVAL_SIGVAL_PTR], 1,
- [Define to 1 if `sigval_ptr' is a member of `union sigval'.])],
- [],
- [#include <signal.h>])
-fi
-
-AC_CHECK_TYPE([ssize_t],
- [AC_DEFINE([ACE_HAS_SSIZE_T], 1,
- [Define to 1 if the system has the type `ssize_t'.])],
- [],
- [#include <sys/types.h>])
-
-AC_CHECK_TYPE([suseconds_t],
- [],
- [AC_DEFINE([ACE_LACKS_SUSECONDS_T], 1,
- [Define to 1 if the system lacks the type 'suseconds_t'.])],
- [#include <sys/types.h>])
-
-AC_CHECK_TYPE([useconds_t],
- [],
- [AC_DEFINE([ACE_LACKS_USECONDS_T], 1,
- [Define to 1 if the system lacks the type 'useconds_t'.])],
- [#include <sys/types.h>])
-
-
-dnl Some platforms define ucontext_t in <sys/ucontext.h>, but ACE
-dnl doesn't explicitly include that header. However, it is very
-dnl likely that <signal.h> does, either directly or indirectly.
-AC_CHECK_TYPE([ucontext_t],
- [AC_DEFINE([ACE_HAS_UCONTEXT_T], 1,
- [Define to 1 if the system has the type `ucontext_t'.])],
- [],
-[#include <signal.h>
-#ifndef ACE_LACKS_UCONTEXT_H
-# include <ucontext.h>
-#endif
-])
-
-AC_CHECK_TYPE([u_longlong_t],
- [],
- [AC_DEFINE([ACE_LACKS_U_LONGLONG_T], 1,
- [Define to 1 if the system lacks the type `u_long_long_t'.])],
- [#include <sys/types.h>])
-
-AC_CHECK_TYPE([wchar_t],
- [],
- [AC_DEFINE([ACE_LACKS_WCHAR_T], 1,
- [Define to 1 if the system lacks the type `wchar_t'.])],
-[#include <sys/types.h>
-#include <wchar.h>
-])
-
-AC_CHECK_TYPE([socklen_t],
- [AC_DEFINE([ACE_HAS_SOCKLEN_T], 1,
- [Define to 1 if the system has the type `socklen_t'.])],
- [],
-[
-#ifndef ACE_LACKS_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifndef ACE_LACKS_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-])
-
-if test $ac_cv_type_socklen_t = no; then
- dnl The compiler in linux just issues a warning, and the test
- dnl passes!!!
-
- dnl FIXED by adding "-Werror" to compiler flags when using GNU C++
- dnl -Ossama
- ACE_CONVERT_WARNINGS_TO_ERRORS(
- [
- dnl Check if socket size is denoted by size_t
- ACE_CACHE_CHECK([if socket size is denoted by size_t],
- [ace_cv_lib_posix_socket_len_size_t],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifndef ACE_LACKS_SYS_SOCKET_H
-# include <sys/socket.h>
-#endif
- ]],[[
- int s = 0;
- struct sockaddr* addr = 0;
- int* addrlen = 0;
- accept(s, addr, addrlen);
- ]])],[
- ace_cv_lib_posix_socket_len_size_t=no
- ],[
- dnl Now see if it really does take a size_t socket size
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
- [[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifndef ACE_LACKS_SYS_SOCKET_H
-# include <sys/socket.h>
-#endif
- ]],
- [[
- int s = 0;
- struct sockaddr* addr = 0;
- size_t* addrlen = 0;
- accept(s, addr, addrlen);
- ]])],
- [
- ace_cv_lib_posix_socket_len_size_t=yes
- ],
- [
- ace_cv_lib_posix_socket_len_size_t=no
- ])
- ])
- ],[AC_DEFINE([ACE_HAS_SIZET_SOCKET_LEN])],)
- ])
-fi
-
-
-dnl SECTION 7: checks for structures
-
-
-dnl TODO: Check whether these structures can be defined somewhere else.
-AC_CHECK_TYPE([struct dirent],
- [],
- [AC_DEFINE([ACE_LACKS_STRUCT_DIR], 1,
- [Define to 1 if the system lacks the type `struct dirent'.])],
- [#include <dirent.h>])
-AC_CHECK_TYPE([struct flock],
- [],
- [AC_DEFINE([ACE_LACKS_FILELOCKS], 1,
- [Define to 1 if the system lacks the type `struct flock'.])],
- [#include <fcntl.h>])
-AC_CHECK_TYPE([rwlock_t],
- [],
- [AC_DEFINE([ACE_LACKS_RWLOCK_T], 1,
- [Define to 1 if the system lacks the type `rwlock_t'.])],
- [#include <synch.h>])
-AC_CHECK_TYPE([struct strbuf],
- [AC_DEFINE([ACE_HAS_STRBUF_T], 1,
- [Define to 1 if the system has the type `struct strbuf'.])],
- [],
- [#include <stropts.h>])
-case "$host" in
-*irix*)
- dnl IRIX prusage fields don't match what ACE currently supports.
- ;;
-*)
- AC_CHECK_TYPE([prusage_t],
- [AC_DEFINE([ACE_HAS_PRUSAGE_T], 1,
- [Define to 1 if the system has the type `prusage_t'.])],
- [],
- [#include <sys/procfs.h>])
- ;;
-esac
-AC_CHECK_TYPE([struct strrecvfd],
- [],
- [AC_DEFINE([ACE_LACKS_STRRECVFD], 1,
- [Define to 1 if the system lacks the type `struct strrecvfd'.])],
- [#include <stropts.h>])
-AC_CHECK_TYPE([struct sigaction],
- [],
- [AC_DEFINE([ACE_LACKS_SIGACTION], 1,
- [Define to 1 if the system lacks the type `struct sigaction'.])],
- [#include <signal.h>])
-AC_CHECK_TYPE([sigset_t],
- [],
- [AC_DEFINE([ACE_LACKS_SIGSET], 1,
- [Define to 1 if the system lacks the type `sigset_t'.])],
- [#include <signal.h>])
-AC_CHECK_TYPE([struct lifnum],
- [],
- [AC_DEFINE([ACE_LACKS_STRUCT_LIFNUM], 1,
- [Define to 1 if the system uses int instead of `struct lifnum' for SIOCGIFNUM ioctl.])],
- [#include <net/if.h>])
-AC_CHECK_TYPE([struct utsname],
- [],
- [AC_DEFINE([ACE_LACKS_UTSNAME_T], 1,
- [Define to 1 if the system lacks the type `struct utsname'.])],
- [#include <sys/utsname.h>])
-AC_CHECK_TYPE([struct sembuf],
- [],
- [AC_DEFINE([ACE_LACKS_SEMBUF_T], 1,
- [Define to 1 if the system lacks the type `struct sembuf'.])],
- [
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <sys/ipc.h>
-#include <sys/sem.h>])
-
-dnl Thanks to Konstantinos Margaritis <kmargar@cc.uoa.gr> for pointing out
-dnl that struct siginfo_t may also be defined in signal.h
-AC_CHECK_TYPE([siginfo_t],
- [AC_DEFINE([ACE_HAS_SIGINFO_T], 1,
- [Define to 1 if the system has the type `siginfo_t'.])],
- [],
- [#include <signal.h>
-#ifndef ACE_LACKS_SIGINFO_H
-#include <siginfo.h>
-#endif])
-
-if test "$ac_cv_type_siginfo_t" = yes; then
- AC_CHECK_MEMBER([siginfo_t.si_addr],
- [],
- [AC_DEFINE([ACE_LACKS_SI_ADDR], 1,
- [Define to 1 if `si_addr' is not a member of `siginfo_t'.])],
- [#include <signal.h>
-#ifndef ACE_LACKS_SIGINFO_H
-#include <siginfo.h>
-#endif])
-fi
-
-
-dnl Some platforms need to include sys/types.h before sys/socket.h
-dnl in order for struct msghdr to work.
-dnl Check for msghdr structure.
-ACE_CACHE_CHECK([for struct msghdr],[ace_cv_struct_msghdr],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <sys/socket.h>
- ]],[[
- struct msghdr ace_msghdr;
- ]])],[
- ace_cv_struct_msghdr=yes
- ],[
- ace_cv_struct_msghdr=no
- ])
- ], [AC_DEFINE([ACE_HAS_MSG])],)
-
-ACE_CACHE_CHECK([for condition variable support],[ace_cv_struct_cond_t],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <pthread.h>
- ]],[[
- pthread_cond_t ace_pthread_cond_t;
- ]])],[
- ace_cv_struct_cond_t=yes
- ],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
- [[
-#include <synch.h>
- ]],
- [[
- cond_t ace_cond_t;
- ]])],
- [
- ace_cv_struct_cond_t=yes
- ],
- [
- ace_cv_struct_cond_t=no
- ])
- ])
- ],,[AC_DEFINE([ACE_LACKS_COND_T])])
-
-dnl Check for struct timespec
-ACE_CACHE_CHECK([for POSIX timer structure],
- [ace_cv_lib_posix_timer_struct],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#if !defined(ACE_LACKS_SYS_TIME_H)
-# include <sys/time.h>
-#endif
-#include <time.h>
- ]],[[
- timespec sr;
- ]])],[
- ace_cv_lib_posix_timer_struct=yes
- ],[
- dnl Check if platform uses struct timestruc_t for POSIX timers
- dnl instead of struct timespec.
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
- [[
-#include <time.h>
- ]],
- [[
- timestruc_t sr;
- ]])],
- [
- ace_cv_lib_posix_timer_struct=yes
- dnl Check for struct timespec in <sys/timers.h>
- ACE_CACHE_CHECK([for struct timespec in sys/timers.h],
- [ace_cv_lib_posix_struct_timespec_broken],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
- [[
-#include <sys/timers.h>
- ]],
- [[
- timespec sr;
- ]])],
- [
- ace_cv_lib_posix_struct_timespec_broken=yes
- ],
- [
- ace_cv_lib_posix_struct_timespec_broken=no
- ])
- ],,)
- ],
- [
- ace_cv_lib_posix_timer_struct=no
- ])
- ])
- ],
- [
- AC_DEFINE([ACE_HAS_POSIX_TIME])
- if test "$ace_cv_lib_posix_struct_timespec_broken" = yes; then
- AC_DEFINE([ACE_HAS_BROKEN_POSIX_TIME])
- fi
- ],
- [
- dnl Check for struct timespec in <sys/timers.h>
- ACE_CACHE_CHECK([for struct timespec in sys/timers.h],
- [ace_cv_lib_posix_struct_timespec_broken],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <sys/timers.h>
- ]],[[
- timespec sr;
- ]])],[
- ace_cv_lib_posix_struct_timespec_broken=yes
- ],[
- ace_cv_lib_posix_struct_timespec_broken=no
- ])
- ],[AC_DEFINE([ACE_HAS_BROKEN_POSIX_TIME])],)
- ])
-
-dnl Check for typedef timespec_t
-dnl TODO: Check whether this typedef can be defined somewhere else.
-ACE_CACHE_CHECK([for timespec_t],
- [ace_cv_lib_posix_timespec_t],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <time.h>
- ]],[[
- timespec_t tt;
- ]])],[
- ace_cv_lib_posix_timespec_t=yes
- ],[
- ace_cv_lib_posix_timespec_t=no
- ])
-],,[AC_DEFINE([ACE_LACKS_TIMESPEC_T])])
-
-dnl Check for union semun
-ACE_CACHE_CHECK([for union semun],
- [ace_cv_lib_posix_defines_union_semun],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <sys/sem.h>
- ]],[[
-/* We could also check if the macro _SEM_SEMUN_UNDEFINED is defined.
- No big deal. */
-
-semun us;
- ]])],[
- ace_cv_lib_posix_defines_union_semun=yes
- ],[
- ace_cv_lib_posix_defines_union_semun=no
- ])
-],[AC_DEFINE([ACE_HAS_SEMUN])],)
-
-
-
-dnl SECTION 8: checks for variables
-
-dnl Check for more than two fields in struct rusage
-ACE_CACHE_CHECK([for limited struct rusage],
- [ace_cv_lib_limited_rusage],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <sys/time.h>
-#include <sys/resource.h>
- ]],[[
- rusage ace_rusage;
- /*
- We just pick three (i.e. > 2) of the fields that
- ACE uses to see if we have a struct rusage that
- has more than two fields.
- */
- ace_rusage.ru_ixrss = 0;
- ace_rusage.ru_idrss = 0;
- ace_rusage.ru_isrss = 0;
- ]])],[
- ace_cv_lib_limited_rusage=no
- ],[
- ace_cv_lib_limited_rusage=yes
- ])
-],[AC_DEFINE([ACE_HAS_LIMITED_RUSAGE_T])],)
-
-dnl Check for sin_len member in struct sockaddr_in
-AC_CHECK_MEMBER([struct sockaddr_in.sin_len],
- [AC_DEFINE([ACE_HAS_SOCKADDR_IN_SIN_LEN], 1,
- [Define to 1 if `sin_len' is a member of `sockaddr_in'.])],
- [],
- [
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <sys/socket.h>
-#include <netinet/in.h>
- ])
-
-dnl Check for sin6_len member in struct sockaddr_in6
-AC_CHECK_MEMBER([struct sockaddr_in6.sin6_len],
- [AC_DEFINE([ACE_HAS_SOCKADDR_IN6_SIN6_LEN], 1,
- [Define to 1 if `sin6_len' is a member of `sockaddr_in6'.])],
- [],
- [
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <sys/socket.h>
-#include <netinet/in.h>
- ])
-
-dnl Check for sys_siglist
-dnl TODO: Check whether this variable can be defined somewhere else.
-dnl [OSSAMA: Should we use autoconf's AC_CHECK_DECLS([sys_siglist])
-dnl test instead?]
-ACE_CACHE_CHECK([for sys_siglist],
- [ace_cv_lib_posix_sys_siglist],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_UNISTD_H
-# include <unistd.h>
-#endif
-#include <signal.h>
-#if !defined (_sys_siglist)
-# define _sys_siglist sys_siglist
-#endif
- ]],[[
- void* vp = (void*) &_sys_siglist;
- ]])],[
- ace_cv_lib_posix_sys_siglist=yes
- ],[
- ace_cv_lib_posix_sys_siglist=no
- ])
-],[AC_DEFINE([ACE_HAS_SYS_SIGLIST])],)
-
-
-dnl SECTION 9: checks for compiler characteristics
-
-
-dnl Check if compiler accepts "#pragma once" directive
-ACE_CONVERT_WARNINGS_TO_ERRORS([
- ACE_CACHE_CHECK([if compiler accepts "pragma once" directive],
- [ace_cv_has_pragma_once],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#pragma once
- ]],[[
- int a = 0; /* Put this here so we don't have an empty main(). */
- ]])],[
- ace_cv_has_pragma_once=yes
- ],[
- ace_cv_has_pragma_once=no
- ])
- ],,[AC_DEFINE([ACE_LACKS_PRAGMA_ONCE])])
-]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-
-dnl If we are using GNU C++, see if it accepts the -pipe compiler flag.
-dnl "-pipe" on cygwin32 doesn't seem to work, for example.
-if test "$GXX" = yes; then
- PREPIPECXXFLAGS="$CXXFLAGS"
- CXXFLAGS="$CXXFLAGS -pipe"
- PREPIPECFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -pipe"
- ACE_CACHE_CHECK([if "-pipe" compiler flag is supported],
- [ace_cv_feature_gxx_has_pipe],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]],[[int a = 0;]])],[
- ace_cv_feature_gxx_has_pipe=yes
- ],[
- ace_cv_feature_gxx_has_pipe=no
- ])
- ],
- [
- dnl We don't need to add "-pipe" here since it was already added
- dnl for the test.
- dnl CXXFLAGS="$PREPIPECXXFLAGS -pipe"
- dnl CFLAGS="$PREPIPECFLAGS -pipe"
- ],
- [
- CXXFLAGS="$PREPIPECXXFLAGS"
- CFLAGS="$PREPIPECFLAGS"
- ])
-fi
-
-dnl Check to see if we are running on a big endian platform
-dnl "ace/Basic_Types.h" should perhaps be modified to take advantage
-dnl of the results of this test.
-dnl Do not run this test if we are using a cross-compiler.
-AS_IF([test "$cross_compiling" != yes],
- [
- AC_C_BIGENDIAN
- ],[])
-
-dnl Check type sizes
-dnl If we get a size of zero, then the type is unknown to the compiler.
-
-dnl We don't need to check for sizeof(char) right now. Also conflicts with
-dnl ACE definition in Basic_Types.h, so we leave the test out.
-if test "$cross_compiling" != yes; then
- AC_CHECK_SIZEOF([wchar_t])
- if test "$ac_cv_sizeof_wchar_t" != 0; then
- AC_DEFINE_UNQUOTED([ACE_SIZEOF_WCHAR],[$ac_cv_sizeof_wchar_t],
- [Size of the native "wchar_t" type])
- fi
- AC_CHECK_SIZEOF([short])
- if test "$ac_cv_sizeof_short" != 0; then
- AC_DEFINE_UNQUOTED([ACE_SIZEOF_SHORT],[$ac_cv_sizeof_short],
- [Size of the native "short" type])
- fi
- AC_CHECK_SIZEOF([int])
- if test $ac_cv_sizeof_int != 0; then
- AC_DEFINE_UNQUOTED([ACE_SIZEOF_INT],[$ac_cv_sizeof_int],
- [Size of the native "int" type])
- fi
- AC_CHECK_SIZEOF([long])
- if test $ac_cv_sizeof_long != 0; then
- AC_DEFINE_UNQUOTED([ACE_SIZEOF_LONG],[$ac_cv_sizeof_long],
- [Size of the native "long" type])
- fi
- AC_CHECK_SIZEOF([long long])
- if test $ac_cv_sizeof_long_long != 0; then
- AC_DEFINE_UNQUOTED([ACE_SIZEOF_LONG_LONG],[$ac_cv_sizeof_long_long],
- [Size of the native "long long" type])
- else
- AC_DEFINE([ACE_LACKS_LONGLONG_T])
- fi
- AC_CHECK_SIZEOF([void *])
- if test $ac_cv_sizeof_void_p != 0; then
- AC_DEFINE_UNQUOTED([ACE_SIZEOF_VOID_P],[$ac_cv_sizeof_void_p],
- [Size of the native "pointer to void" type])
- fi
- AC_CHECK_SIZEOF([float])
- if test $ac_cv_sizeof_float != 0; then
- AC_DEFINE_UNQUOTED([ACE_SIZEOF_FLOAT],[$ac_cv_sizeof_float],
- [Size of the native "float" type])
- fi
- AC_CHECK_SIZEOF([double])
- if test $ac_cv_sizeof_double != 0; then
- AC_DEFINE_UNQUOTED([ACE_SIZEOF_DOUBLE],[$ac_cv_sizeof_double],
- [Size of the native "double" type])
- fi
- AC_CHECK_SIZEOF([long double])
- if test $ac_cv_sizeof_long_double != 0; then
- AC_DEFINE_UNQUOTED([ACE_SIZEOF_LONG_DOUBLE],[$ac_cv_sizeof_long_double],
- [Size of the native "long double" type])
- fi
-
- dnl Set the 64 bit typedefs
- ACE_INT64=""
- ACE_UINT64=""
- dnl if test "$ace_cv_type_u_longlong_t" = yes; then
- dnl This doesn't work: AC_CHECK_SIZEOF([u_longlong_t],[8])
- dnl if test $ac_cv_sizeof_u_longlong_t = 8; then
- dnl ACE_UINT64="u_longlong_t"
- dnl ace_u_long_long_typedef_set=yes
- dnl fi
- dnl elif test $ac_cv_sizeof_long = 8; then
- if test $ac_cv_sizeof_long = 8; then
- ACE_INT64="signed long"
- ACE_UINT64="unsigned long"
- ace_u_long_long_typedef_set=yes
- elif test $ac_cv_sizeof_long_long = 8; then
- ACE_INT64="signed long long"
- ACE_UINT64="unsigned long long"
- ace_u_long_long_typedef_set=yes
- else
- ace_u_long_long_typedef_set=no
- fi
-
- dnl Check for broken "signed char"
- dnl If AC_CHECK_SIZEOF(signed char) returns zero then "signed char"
- dnl is broken.
- AC_CHECK_SIZEOF([signed char],[1])
- if test $ac_cv_sizeof_signed_char = 0; then
- AC_DEFINE([ACE_LACKS_SIGNED_CHAR])
- fi
-else
- ace_u_long_long_typedef_set=no
-fi dnl test "$cross_compiling" != yes
-
-AC_CHECK_TYPE([intmax_t],
- [],
- [AC_DEFINE([ACE_LACKS_INTMAX_T], 1,
- [Define to 1 if the system lacks the type `intmax_t'.])],
- [
-#ifndef ACE_LACKS_STDINT_H
-#include <stdint.h>
-#endif
-#ifndef ACE_LACKS_INTTYPES_H
-#include <inttypes.h>
-#endif])
-
-AC_CHECK_TYPE([uintmax_t],
- [],
- [AC_DEFINE([ACE_LACKS_UINTMAX_T], 1,
- [Define to 1 if the system lacks the type `uintmax_t'.])],
- [
-#ifndef ACE_LACKS_STDINT_H
-#include <stdint.h>
-#endif
-#ifndef ACE_LACKS_INTTYPES_H
-#include <inttypes.h>
-#endif])
-
-AC_CHECK_TYPE([intptr_t],
- [],
- [AC_DEFINE([ACE_LACKS_INTPTR_T], 1,
- [Define to 1 if the system lacks the type `intptr_t'.])],
- [
-#ifndef ACE_LACKS_STDINT_H
-#include <stdint.h>
-#endif
-#ifndef ACE_LACKS_INTTYPES_H
-#include <inttypes.h>
-#endif])
-
-AC_CHECK_TYPE([uintptr_t],
- [],
- [AC_DEFINE([ACE_LACKS_UINTPTR_T], 1,
- [Define to 1 if the system lacks the type `uintptr_t'.])],
- [
-#ifndef ACE_LACKS_STDINT_H
-#include <stdint.h>
-#endif
-#ifndef ACE_LACKS_INTTYPES_H
-#include <inttypes.h>
-#endif])
-
-AC_CHECK_TYPE([int8_t],
- [AC_DEFINE([ACE_HAS_INT8_T], 1,
- [Define to 1 if the system has the type `int8_t'.])],
- [],
- [
-#ifndef ACE_LACKS_STDINT_H
-#include <stdint.h>
-#endif
-#ifndef ACE_LACKS_INTTYPES_H
-#include <inttypes.h>
-#endif])
-
-AC_CHECK_TYPE([uint8_t],
- [AC_DEFINE([ACE_HAS_UINT8_T], 1,
- [Define to 1 if the system has the type `uint8_t'.])],
- [],
- [
-#ifndef ACE_LACKS_STDINT_H
-#include <stdint.h>
-#endif
-#ifndef ACE_LACKS_INTTYPES_H
-#include <inttypes.h>
-#endif])
-
-AC_CHECK_TYPE([int16_t],
- [AC_DEFINE([ACE_HAS_INT16_T], 1,
- [Define to 1 if the system has the type `int16_t'.])],
- [],
- [
-#ifndef ACE_LACKS_STDINT_H
-#include <stdint.h>
-#endif
-#ifndef ACE_LACKS_INTTYPES_H
-#include <inttypes.h>
-#endif])
-
-AC_CHECK_TYPE([uint16_t],
- [AC_DEFINE([ACE_HAS_UINT16_T], 1,
- [Define to 1 if the system has the type `uint16_t'.])],
- [],
- [
-#ifndef ACE_LACKS_STDINT_H
-#include <stdint.h>
-#endif
-#ifndef ACE_LACKS_INTTYPES_H
-#include <inttypes.h>
-#endif])
-
-AC_CHECK_TYPE([int32_t],
- [AC_DEFINE([ACE_HAS_INT32_T], 1,
- [Define to 1 if the system has the type `int32_t'.])],
- [],
- [
-#ifndef ACE_LACKS_STDINT_H
-#include <stdint.h>
-#endif
-#ifndef ACE_LACKS_INTTYPES_H
-#include <inttypes.h>
-#endif])
-
-AC_CHECK_TYPE([uint32_t],
- [AC_DEFINE([ACE_HAS_UINT32_T], 1,
- [Define to 1 if the system has the type `uint32_t'.])],
- [],
- [
-#ifndef ACE_LACKS_STDINT_H
-#include <stdint.h>
-#endif
-#ifndef ACE_LACKS_INTTYPES_H
-#include <inttypes.h>
-#endif])
-
-AC_CHECK_TYPE([int64_t],
- [AC_DEFINE([ACE_HAS_INT64_T], 1,
- [Define to 1 if the system has the type `int64_t'.])],
- [],
- [
-#ifndef ACE_LACKS_STDINT_H
-#include <stdint.h>
-#endif
-#ifndef ACE_LACKS_INTTYPES_H
-#include <inttypes.h>
-#endif])
-
-AC_CHECK_TYPE([uint64_t],
- [AC_DEFINE([ACE_HAS_UINT64_T], 1,
- [Define to 1 if the system has the type `uint64_t'.])],
- [],
- [
-#ifndef ACE_LACKS_STDINT_H
-#include <stdint.h>
-#endif
-#ifndef ACE_LACKS_INTTYPES_H
-#include <inttypes.h>
-#endif])
-
-ACE_CACHE_CHECK([for std::numeric_limits<>],
-[ace_cv_func_numeric_limits],
-[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <limits>],
- [return std::numeric_limits<int>::max();])],
- [ace_cv_func_numeric_limits=yes],
- [ace_cv_func_numeric_limits=no])
-],,[AC_DEFINE([ACE_LACKS_NUMERIC_LIMITS])])
-
-dnl Other checks
-
-ACE_VAR_TIMEZONE
-
-
-dnl Check for istream operator>> for char, unsigned char and signed char
-ACE_CACHE_CHECK([for istream operator>> for char types],
- [ace_cv_feature_char_right_shifts],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <iostream.h>
- ]],[[
-unsigned char a = 0;
-cin >> a;
-
-#ifndef ACE_LACKS_SIGNED_CHAR
-signed char b = 0;
-cin >> b;
-#endif
- ]])],[
- ace_cv_feature_char_right_shifts=yes
- ],[
- ace_cv_feature_char_right_shifts=no
- ])
- ],,[AC_DEFINE([ACE_LACKS_CHAR_RIGHT_SHIFTS])])
-
-
-dnl Check for istream operator>> for char *, unsigned char * and signed char *
-ACE_CACHE_CHECK([for istream operator>> for char * types],
- [ace_cv_feature_char_ptr_right_shifts],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <iostream.h>
- ]],[[
-unsigned char * a = 0;
-cin >> a;
-
-#ifndef ACE_LACKS_SIGNED_CHAR
-signed char * b = 0;
-cin >> b;
-#endif
- ]])],[
- ace_cv_feature_char_ptr_right_shifts=yes
- ],[
- ace_cv_feature_char_ptr_right_shifts=no
- ])
- ],,[AC_DEFINE([ACE_LACKS_CHAR_STAR_RIGHT_SHIFTS])])
-
-dnl Check to see how to call the explicit destructor on a template.
-dnl There are a few different possibilities:
-dnl ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR (two cases):
-dnl ACE_EXPLICIT_TEMPLATE_DESTRUCTOR_TAKES_ARGS: ~CLASS<PARAM>()
-dnl (no other settings): ~CLASS()
-dnl w/o ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR:
-dnl CLASS<PARAM>::~CLASS()
-dnl
-dnl The first seems to be the most widely used form, although very few
-dnl hand-made configs have it set. Many compilers take all three forms.
-dnl The only one that seems to be less-used is #2 above, ~CLASS().
-dnl So, we check for the first two cases, and if neither of them work,
-dnl we assume the third (no config macros).
-
-ACE_CACHE_CHECK([to see if template destructor call takes template args],
- [ace_cv_feature_explicit_template_des_takes_args],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-
-class dyn
-{
- public:
- dyn () { }
- ~dyn () { }
-};
-
-template <class T>
-class Base
-{
- public:
- Base () { }
- virtual void f (void) { }
- ~Base () { }
-};
-
-template <class T>
-class Derived
-{
- public:
- Derived ()
- {
- x_ = new Base<T> ();
- }
- virtual void f (void) { }
- ~Derived () { x_->~Base<T> (); }
- private:
- Base<T> *x_;
- T t_;
-};
- ]],[[
- Derived<dyn> *x = new Derived<dyn> ();
-
- x->f ();
-
- delete x;
- return 0;
- ]])],[
- ace_cv_feature_explicit_template_des_takes_args=yes
- ],[
- ace_cv_feature_explicit_template_des_takes_args=no
- ])
- ],[
- AC_DEFINE([ACE_EXPLICIT_TEMPLATE_DESTRUCTOR_TAKES_ARGS])
- AC_DEFINE([ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR])
- ],
-)
-
-dnl Check for the second form of C++ explicit template destructors
-dnl Thanks to Nanbor Wang <nanbor@cs.wustl.edu> for providing this test.
-if test "$ace_cv_feature_explicit_template_des_takes_args" = no; then
-ACE_CACHE_CHECK([for working C++ explicit template destructors],
- [ace_cv_feature_working_explicit_des],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-
-class dyn
-{
- public:
- dyn () { }
- ~dyn () { }
-};
-
-template <class T>
-class Base
-{
- public:
- Base () { }
- virtual void f (void) { }
- ~Base () { }
-};
-
-template <class T>
-class Derived
-{
- public:
- Derived ()
- {
- x_ = new Base<T> ();
- }
- virtual void f (void) { }
- ~Derived () { x_->~Base (); }
- private:
- Base<T> *x_;
- T t_;
-};
- ]],[[
- Derived<dyn> *x = new Derived<dyn> ();
-
- x->f ();
-
- delete x;
- return 0;
- ]])],[
- ace_cv_feature_working_explicit_des=yes
- ],[
- ace_cv_feature_working_explicit_des=no
- ])
- ],[AC_DEFINE([ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR])],)
-fi
-
-dnl Check for C++ "std" namespace
-ACE_CACHE_CHECK([for C++ "std" namespace],
- [ace_cv_feature_posix_uses_std_namespace],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#if defined (ACE_USES_OLD_IOSTREAMS)
-# include <iostream.h>
-#else
-# include <iostream>
-#endif
- ]],[[
- std::cout << "FOO" << std::endl;
- ]])],[
- ace_cv_feature_posix_uses_std_namespace=yes
- ],[
- ace_cv_feature_posix_uses_std_namespace=no
- ])
- ],[AC_DEFINE([ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB])],)
-
-dnl Check for new style C++ include file support
-ACE_CACHE_CHECK([for new style C++ include file support],
- [ace_cv_lib_posix_standard_includes],[
- ace_cv_lib_posix_standard_includes=no
- if test "$ace_cv_feature_posix_uses_std_namespace" = yes; then
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <string>
- ]],[[
-#ifdef ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB
- std::string str;
-#else
- string str;
-#endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
- ]])],[ace_cv_lib_posix_standard_includes=yes],[])
- fi
- ],
- [
- AC_DEFINE([ACE_HAS_STDCPP_STL_INCLUDES])
- AC_DEFINE([ACE_HAS_STRING_CLASS])
- ],)
-
-dnl Check whether platform supports the standard C++ library
-dnl TODO: For now, check whether headers <new>, <iomanip>
-dnl and <memory> exist; is there a better way?
-if test "$ac_cv_header_new" = yes &&
- test "$ac_cv_header_iomanip" = yes &&
- test "$ac_cv_header_memory" = yes; then
-
- dnl Check for auto_ptr class
- ACE_CACHE_CHECK([for C++ auto_ptr class],
- [ace_cv_lib_auto_ptr_class],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <memory>
- ]],[[
- int *foo = new int;
-
-#ifdef ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB
- std::auto_ptr<int> safe (foo);
-#else
- auto_ptr<int> safe (foo);
-#endif
- foo = safe.release ();
-
- delete foo;
- ]])],[
- ace_cv_lib_auto_ptr_class=yes
- ],[
- ace_cv_lib_auto_ptr_class=no
- ])
- ],
- [
- AC_DEFINE([ACE_HAS_STANDARD_CPP_LIBRARY])
- ],
- [
- AC_DEFINE([ACE_LACKS_AUTO_PTR])
- ])
-fi
-
-if test "$ace_cv_lib_auto_ptr_class" = yes; then
- dnl Check for auto_ptr reset method
- ACE_CACHE_CHECK([for C++ auto_ptr reset method],
- [ace_cv_lib_auto_ptr_reset],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <memory>
- ]],[[
- int *foo = new int;
-
-#ifdef ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB
- std::auto_ptr<int> safe (foo);
-#else
- auto_ptr<int> safe (foo);
-#endif
- int *bar = new int;
-
- safe.reset (bar);
-
- foo = safe.release ();
- ]])],[
- ace_cv_lib_auto_ptr_reset=yes
- ],[
- ace_cv_lib_auto_ptr_reset=no
- ])
- ],,[AC_DEFINE([ACE_AUTO_PTR_LACKS_RESET])])
-fi dnl test $ace_cv_lib_auto_ptr_class=yes
-
-dnl Check if platform supports placement delete operator
-ACE_CACHE_CHECK([for C++ placement delete operator],
- [ace_cv_feature_placement_delete],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#if defined (ACE_HAS_NEW_NO_H)
-# include <new>
-#elif defined (ACE_HAS_NEW_H)
-# include <new.h>
-#endif
-
-class foo
-{
-public:
- void *operator new (size_t, void *p) { return p; }
- void operator delete (void *p, void *) {}
-};
- ]],[[
-int *x = 0;
-foo *f = new (x) foo;
-
-// delete f; // Don't call delete for this test!
- ]])],[
- ace_cv_feature_placement_delete=yes
- ],[
- ace_cv_feature_placement_delete=no
- ])
- ],,[AC_DEFINE([ACE_LACKS_PLACEMENT_OPERATOR_DELETE])])
-
-
-dnl Check if templates require source on platform
-dnl
-dnl FIXME: This test may be broken.
-dnl
-dnl FIXME: This test contains vestigial bits of tests for explicit
-dnl template instantiation feature macros, even though support for
-dnl the same has been removed.
-dnl
-dnl A rewrite to test only whether ACE_TEMPLATES_REQUIRE_SOURCE or
-dnl ACE_TEMPLATES_REQUIRE_PRAGMA is clearly needed.
-dnl
-ACE_CACHE_CHECK([if templates require source],
- [ace_cv_feature_templates_require_source],
- [
- dnl Create the common header file
- cat > ace_test.h <<EOF
-#ifndef FOO_H
-#define FOO_H
-template <class T>
-class Foo
-{
- public:
- Foo (T val);
- private:
- T value_;
-};
-
-template <class T>
-class Bar
-{
- public:
- Bar (Foo<T> *);
- private:
- Foo<T> *foo_ptr;
-};
-#endif /* FOO_H */
-EOF
-
- dnl Create template source test file
- cat > ace_test.$ac_ext <<EOF
-#include "ace_test.h"
-#ifndef FOO_CXX
-#define FOO_CXX
-template <class T>
-Foo<T>::Foo (T val)
- : value_ (val)
-{
- // Nothing else to do.
-}
-
-template <class T>
-Bar<T>::Bar (Foo<T> *val)
- : foo_ptr (val)
-{
- // Nothing else to do.
-}
-#endif /* FOO_CXX */
-EOF
-
- dnl Add the ACE-specific compiler flags to the compiler flags for
- dnl the duration of this test.
- ace_cxx_template_save_CXXFLAGS="$CXXFLAGS"
- ace_cxx_template_save_CPPFLAGS="$CPPFLAGS"
- ace_cxx_template_save_LDFLAGS="$LDFLAGS"
- CXXFLAGS="$ACE_CXXFLAGS $CXXFLAGS"
- CPPFLAGS="$ACE_CPPFLAGS $CPPFLAGS"
- LDFLAGS="$ACE_LDFLAGS $LDFLAGS"
-
- dnl Remove any template repositories.
- rm -rf Templates.DB SunWS_cache ptrepository *.rpo
-
- dnl First try without explicit template instantiation.
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[
-#include "ace_test.h"
- ]],[[
-Foo<int> foo (15);
-Bar<char> bar (0);
- ]])],[
- dnl Template source is not required.
- ace_cv_feature_templates_require_source=no
-
- dnl Template source does not require pragma.
- AC_CACHE_VAL([ace_cv_feature_templates_require_pragma],
- [ace_cv_feature_templates_require_pragma=no])
-
- dnl Explicit template instantiation is not required.
- AC_CACHE_VAL([ace_cv_feature_explicit_template_instantiation],
- [ace_cv_feature_explicit_template_instantiation=no])
-
- dnl Pragma template instantiation is not required.
- AC_CACHE_VAL([ace_cv_feature_pragma_template_instantiation],
- [ace_cv_feature_pragma_template_instantiation=no])
- ],[
- dnl Remove any template repositories.
- rm -rf Templates.DB SunWS_cache ptrepository *.rpo
-
- dnl Now try including the template source.
- AC_LINK_IFELSE([AC_LANG_PROGRAM(
- [[
-#include "ace_test.h"
-#include "ace_test.$ac_ext"
- ]],
- [[
-Foo<int> foo (15);
-
-Bar<char> bar (0);
- ]])],
- [
- dnl Template source is required!
- ace_cv_feature_templates_require_source=yes
-
- dnl Template source does not require pragma.
- AC_CACHE_VAL([ace_cv_feature_templates_require_pragma],
- [ace_cv_feature_templates_require_pragma=no])
-
- dnl Explicit template instantiation is not required.
- AC_CACHE_VAL([ace_cv_feature_explicit_template_instantiation],
- [ace_cv_feature_explicit_template_instantiation=no])
-
- dnl Pragma template instantiation is not required.
- AC_CACHE_VAL([ace_cv_feature_pragma_template_instantiation],
- [ace_cv_feature_pragma_template_instantiation=no])
- ],
- [
-dnl BEGIN OUTER REQUIRE SOURCE #########################################
- dnl Remove any generated template repositories.
- rm -rf Templates.DB SunWS_cache ptrepository *.rpo
-
- dnl Now try with explicit template instantiation.
- AC_LINK_IFELSE([AC_LANG_PROGRAM(
- [[
-#include "ace_test.h"
-
-template class Foo<int>;
-template class Bar<char>;
- ]],
- [[
-Foo<int> foo (15);
-Bar<char> bar (0);
- ]])],
- [
- dnl Template source is not required.
- ace_cv_feature_templates_require_source=no
-
- dnl Template source does not require pragma.
- AC_CACHE_VAL([ace_cv_feature_templates_require_pragma],
- [ace_cv_feature_templates_require_pragma=no])
-
- dnl Explicit template instantiation is required.
- AC_CACHE_VAL([ace_cv_feature_explicit_template_instantiation],
- [ace_cv_feature_explicit_template_instantiation=yes])
-
- dnl Pragma template instantiation is not required.
- AC_CACHE_VAL([ace_cv_feature_pragma_template_instantiation],
- [ace_cv_feature_pragma_template_instantiation=no])
- ],
- [
- dnl Remove any generated template repositories.
- rm -rf Templates.DB SunWS_cache ptrepository *.rpo
-
- dnl Don't set
- dnl ace_cv_feature_pragma_template_instantiation
- dnl to "no" here. It should only be set to "no" if
- dnl explicit template instantiation works.
-
- dnl Now try including the template source.
- AC_LINK_IFELSE([AC_LANG_PROGRAM(
- [[
-#include "ace_test.h"
-#include "ace_test.$ac_ext"
-
-template class Foo<int>;
-template class Bar<char>;
- ]],
- [[
-Foo<int> foo (15);
-Bar<char> bar (0);
- ]])],
- [
- dnl Template source is required!
- ace_cv_feature_templates_require_source=yes
-
- dnl Template source does not require pragma.
- AC_CACHE_VAL([ace_cv_feature_templates_require_pragma],
- [ace_cv_feature_templates_require_pragma=no])
-
- dnl Explicit template instantiation is required.
- AC_CACHE_VAL(
- [ace_cv_feature_explicit_template_instantiation],
- [ace_cv_feature_explicit_template_instantiation=yes])
-
- dnl Pragma template instantiation is not required.
- AC_CACHE_VAL(
- [ace_cv_feature_pragma_template_instantiation],
- [ace_cv_feature_pragma_template_instantiation=no])
- ],
- [
-dnl BEGIN INNER REQUIRE SOURCE #########################################
- dnl Remove any generated template repositories.
- rm -rf Templates.DB SunWS_cache ptrepository *.rpo
-
- dnl Don't set
- dnl ace_cv_feature_explicit_template_instantiation
- dnl to "no" here. It should only be set to "no" if
- dnl pragma template instantiation works.
-
- dnl Now try with pragma template instantiation.
- AC_LINK_IFELSE([AC_LANG_PROGRAM(
- [[
-#include "ace_test.h"
-
-#pragma instantiate Foo<int>
-#pragma instantiate Bar<char>
- ]],
- [[
-Foo<int> foo (15);
-Bar<char> bar (0);
- ]])],
- [
- dnl Template source is not required.
- ace_cv_feature_templates_require_source=no
-
- dnl Template source does not require pragma.
- AC_CACHE_VAL(
- [ace_cv_feature_templates_require_pragma],
- [ace_cv_feature_templates_require_pragma=no])
-
- dnl Explicit template instantiation is not required.
- AC_CACHE_VAL(
- [ace_cv_feature_explicit_template_instantiation],
- [ace_cv_feature_explicit_template_instantiation=no])
-
- dnl Pragma template instantiation is required.
- AC_CACHE_VAL(
- [ace_cv_feature_pragma_template_instantiation],
- [ace_cv_feature_pragma_template_instantiation=yes])
- ],
- [
- dnl Remove any generated template repositories.
- rm -rf Templates.DB SunWS_cache ptrepository *.rpo
-
- dnl Don't set
- dnl ace_cv_feature_explicit_template_instantiation
- dnl to "no" here. It should only be set to "no" if
- dnl pragma template instantiation works.
-
- dnl Now try including the template source.
- AC_LINK_IFELSE([AC_LANG_PROGRAM(
- [[
-#include "ace_test.h"
-#include "ace_test.$ac_ext"
-
-#pragma instantiate Foo<int>
-#pragma instantiate Bar<char>
- ]],
- [[
-Foo<int> foo (15);
-Bar<char> bar (0);
- ]])],
- [
- dnl Template source is required!
- ace_cv_feature_templates_require_source=yes
-
- dnl Template source does not require pragma.
- AC_CACHE_VAL(
- [ace_cv_feature_templates_require_pragma],
- [ace_cv_feature_templates_require_pragma=no])
-
- dnl Explicit template instantiation is not required.
- AC_CACHE_VAL(
- [ace_cv_feature_explicit_template_instantiation],
- [ace_cv_feature_explicit_template_instantiation=no])
-
- dnl Pragma template instantiation is required.
- AC_CACHE_VAL(
- [ace_cv_feature_pragma_template_instantiation],
- [ace_cv_feature_pragma_template_instantiation=yes])
- ],
- [
- dnl If we get here, then we have no idea what is needed!
- ace_cv_feature_templates_require_source=no
- ])
- ])
-dnl END INNER REQUIRE SOURCE #########################################
- ])
- ])
-dnl END OUTER REQUIRE SOURCE #########################################
- ])
- ])
-
- dnl Remove any generated template repositories.
- rm -rf Templates.DB SunWS_cache ptrepository *.rpo
-
- dnl Remove the test additional test files.
- rm -f ace_test*
-
- dnl Restore the compiler flags
- CXXFLAGS="$ace_cxx_template_save_CXXFLAGS"
- CPPFLAGS="$ace_cxx_template_save_CPPFLAGS"
- LDFLAGS="$ace_cxx_template_save_LDFLAGS"
- ],
- [
- AC_DEFINE([ACE_TEMPLATES_REQUIRE_SOURCE])
- ],
- [
- dnl Check if templates require pragma.
- ACE_CACHE_CHECK([if templates require pragma],
- [ace_cv_feature_templates_require_pragma],
- [
- dnl Create the common header file
- cat > ace_test.h <<EOF
-#ifndef FOO_H
-#define FOO_H
-template <class T>
-class Foo
-{
- public:
- Foo (T val);
- private:
- T value_;
-};
-
-template <class T>
-class Bar
-{
- public:
- Bar (Foo<T> *);
- private:
- Foo<T> *foo_ptr;
-};
-#endif /* FOO_H */
-EOF
-
- dnl Create template source test file
- cat > ace_test.$ac_ext <<EOF
-#include "ace_test.h"
-#ifndef FOO_CXX
-#define FOO_CXX
-template <class T>
-Foo<T>::Foo (T val)
- : value_ (val)
-{
- // Nothing else to do.
-}
-
-template <class T>
-Bar<T>::Bar (Foo<T> *val)
- : foo_ptr (val)
-{
- // Nothing else to do.
-}
-#endif /* FOO_CXX */
-EOF
-
- dnl Add the ACE-specific compiler flags to the compiler flags for
- dnl the duration of this test.
- ace_cxx_template_save_CXXFLAGS="$CXXFLAGS"
- ace_cxx_template_save_CPPFLAGS="$CPPFLAGS"
- ace_cxx_template_save_LDFLAGS="$LDFLAGS"
- CXXFLAGS="$ACE_CXXFLAGS $CXXFLAGS"
- CPPFLAGS="$ACE_CPPFLAGS $CPPFLAGS"
- LDFLAGS="$ACE_LDFLAGS $LDFLAGS"
-
- dnl Remove any template repositories.
- rm -rf Templates.DB SunWS_cache ptrepository *.rpo
-
- dnl We already know that the simplest case doesn't work so go
- dnl straight to the "require pragma" test.
-
- dnl Now try including the template pragma.
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[
-#include "ace_test.h"
-
-#pragma implementation ("ace_test.$ac_ext")
- ]],[[
-Foo<int> foo (15);
-Bar<char> bar (0);
- ]])],[
- dnl Template source is required!
- ace_cv_feature_templates_require_pragma=yes
- ],[
-dnl BEGIN OUTER REQUIRE PRAGMA #########################################
- dnl Remove any generated template repositories.
- rm -rf Templates.DB SunWS_cache ptrepository *.rpo
-
- dnl Now try with explicit template instantiation.
- AC_LINK_IFELSE([AC_LANG_PROGRAM(
- [[
-#include "ace_test.h"
-
-#pragma implementation ("ace_test.$ac_ext")
-
-template class Foo<int>;
-template class Bar<char>;
- ]],
- [[
-Foo<int> foo (15);
-Bar<char> bar (0);
- ]])],
- [
- dnl Template pragma is required!
- ace_cv_feature_templates_require_pragma=yes
-
- dnl Explicit template instantiation is required.
- AC_CACHE_VAL(
- [ace_cv_feature_explicit_template_instantiation],
- [ace_cv_feature_explicit_template_instantiation=yes])
-
- dnl Pragma template instantiation is not required.
- AC_CACHE_VAL(
- [ace_cv_feature_pragma_template_instantiation],
- [ace_cv_feature_pragma_template_instantiation=no])
- ],
- [
-dnl BEGIN INNER REQUIRE PRAGMA #########################################
- dnl Remove any generated template repositories.
- rm -rf Templates.DB SunWS_cache ptrepository *.rpo
-
- dnl Now try with pragma template instantiation.
- AC_LINK_IFELSE([AC_LANG_PROGRAM(
- [[
-#include "ace_test.h"
-
-#pragma implementation ("ace_test.$ac_ext")
-
-#pragma instantiate Foo<int>
-#pragma instantiate Bar<char>
- ]],
- [[
-Foo<int> foo (15);
-Bar<char> bar (0);
- ]])],
- [
- dnl Template pragma is required!
- ace_cv_feature_templates_require_pragma=yes
-
- dnl Explicit template instantiation is not required.
- AC_CACHE_VAL(
- [ace_cv_feature_explicit_template_instantiation],
- [ace_cv_feature_explicit_template_instantiation=no])
-
- dnl Pragma template instantiation is required.
- AC_CACHE_VAL(
- [ace_cv_feature_pragma_template_instantiation],
- [ace_cv_feature_pragma_template_instantiation=yes])
- ],
- [
- dnl If we get here, then we have no idea what is needed!
- ace_cv_feature_templates_require_pragma=no
- ])
-dnl END INNER REQUIRE PRAGMA #########################################
- ])
-dnl END OUTER REQUIRE PRAGMA #########################################
- ])
-
- dnl Remove any generated template repositories.
- rm -rf Templates.DB SunWS_cache ptrepository *.rpo
-
- dnl Remove the additional test files.
- rm -f ace_test*
-
- dnl Restore the compiler flags
- CXXFLAGS="$ace_cxx_template_save_CXXFLAGS"
- CPPFLAGS="$ace_cxx_template_save_CPPFLAGS"
- LDFLAGS="$ace_cxx_template_save_LDFLAGS"
- ],
- [
- AC_DEFINE([ACE_TEMPLATES_REQUIRE_PRAGMA])
- ],
- [
- dnl Do nothing.
- ])
- ])
-
-
-dnl Check if platform supports template typedefs
-ACE_CACHE_CHECK([for template typedefs],
- [ace_cv_feature_posix_template_typedefs],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-
-class Bar
-{
-public:
- typedef int Y;
- Bar(int bar) : bar_(bar) {}
- int value() const { return bar_; }
-private:
- int bar_;
-};
-
-template <class T>
-class Foo
-{
-public:
- typedef typename T::Y Y;
- Foo(T* foo) : foo_(foo) {}
- void print(Y);
-private:
- T* foo_;
-};
-
-template <class T>
-void Foo<T>::print(typename T::Y)
-{
-}
- ]],[[
-Bar bar(15);
-Foo<Bar> foo(&bar);
-foo.print(11);
- ]])],[
- ace_cv_feature_posix_template_typedefs=yes
- ],[
- ace_cv_feature_posix_template_typedefs=no
- ])
- ],[AC_DEFINE([ACE_HAS_TEMPLATE_TYPEDEFS])],)
-
-dnl Check if platform supports static data member templates
-ACE_CACHE_CHECK([for static data member templates],
- [ace_cv_feature_posix_static_data_member_templates],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-template <class T>
-class Foo
-{
-public:
- static T* sdm;
-};
-
-template <class T> T* Foo<T>::sdm = 0;
- ]],[[
- /* No body */
- ]])],[
- ace_cv_feature_posix_static_data_member_templates=yes
- ],[
- ace_cv_feature_posix_static_data_member_templates=no
- ])
- ],,[AC_DEFINE([ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES])])
-
-dnl Check if compiler needs definitions for hidden functions
-ACE_CACHE_CHECK([if definition is needed for hidden functions],
- [ace_cv_feature_need_func_def],
- [
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[
- class Foo
- {
- public:
- Foo (void) { a_ = 0; }
- private:
- Foo (const Foo &);
- void operator= (const Foo &);
-
- int a_;
- };
- ]],[[
- Foo Bar;
- ]])],[
- ace_cv_feature_need_func_def=no
- ],[
- AC_LINK_IFELSE([AC_LANG_PROGRAM(
- [[
- class Foo
- {
- public:
- Foo (void) { a_ = 0; }
- private:
- Foo (const Foo &);
- const Foo & operator= (const Foo &);
-
- int a_;
- };
-
- Foo::Foo (const Foo &)
- {
- a_ = 0;
- }
-
- const Foo &
- Foo::operator= (const Foo &)
- {
- a_ = 0;
-
- return *this;
- }
- ]],
- [[
- Foo Bar;
- ]])],
- [
- ace_cv_feature_need_func_def=yes
- ],
- [
- dnl If we get here then we don't know what is needed!
- ace_cv_feature_need_func_def=no
- ])
- ])
- ],
- [
- AC_DEFINE([ACE_NEEDS_FUNC_DEFINITIONS])
- ],)
-
-dnl Check if platform supports C++ exceptions
-if test "$ace_user_enable_exceptions" = yes; then
- ACE_CACHE_CHECK([for C++ exceptions],
- [ace_cv_feature_posix_exceptions],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]],[[
- int ret = 0;
- class ACE {};
- try
- {
- throw ACE();
- }
- catch (ACE)
- {
- ret = 1;
- }
- ]])],[
- ace_cv_feature_posix_exceptions=yes
- ],[
- ace_cv_feature_posix_exceptions=no
- ])
- ],[AC_DEFINE([ACE_HAS_EXCEPTIONS])],[ace_user_enable_exceptions=no])
-
-fi dnl test "$ace_user_enable_exceptions" = yes
-
-dnl Check if we need a non-static object manager
-dnl TODO / FIXME
-dnl ACE_CACHE_CHECK([if we need a non-static object manager],
-dnl [ace_cv_feature_nonstatic_object_manager],[
-dnl ace_cv_feature_nonstatic_object_manager=yes
- dnl TODO: Should we check for this thing (and HOW), or
- dnl should it be the user's choice?
-
- dnl For now, we will leave it as a user's choice.
- dnl -Ossama
-dnl ],
-dnl [
- dnl Don't define anything until we have a test for this.
- dnl AC_DEFINE([ACE_HAS_NONSTATIC_OBJECT_MANAGER])
-dnl ],)
-
-dnl Save the cache for debugging purposes
-AC_CACHE_SAVE
-
-
-dnl SECTION 10: checks for library functions
-
-ACE_FUNC_STRCASECMP
-ACE_FUNC_STRNCASECMP
-ACE_FUNC_STRDUP
-ACE_FUNC_WCSCASECMP
-ACE_FUNC_WCSNCASECMP
-ACE_FUNC_WCSDUP
-
-if test "$ace_user_enable_alloca" = yes; then
- AC_FUNC_ALLOCA
- if test "$ac_cv_header_alloca_h" = yes; then
- AC_DEFINE([ACE_HAS_ALLOCA_H])
- fi
- if test "$ac_cv_func_alloca_works" = yes; then
- AC_DEFINE([ACE_HAS_ALLOCA])
- fi
-fi
-
-dnl ACE should really have something for both the sys/mman.h header
-dnl and the mmap function since we need sys/mman.h for functions like
-dnl mprotect and msync, but don't want to use mmap if it doesn't work.
-dnl For now, we just check for the sys/mman.h header earlier in this
-dnl configure script.
-
-dnl AC_FUNC_MMAP
-dnl if test "$ac_cv_func_mmap_fixed_mapped" = no; then
-dnl Even if we have mmap, do not use if broken!
-dnl AC_DEFINE(ACE_LACKS_MMAP)
-dnl fi
-
-dnl Check if closedir() returns a meaningful value
-AC_FUNC_CLOSEDIR_VOID
-
-dnl Check for PWD functions
-AC_CHECK_FUNC([getpwnam],,)
-AC_CHECK_FUNC([setpwent],,)
-AC_CHECK_FUNC([endpwent],,)
-AC_CHECK_FUNC([getpwent],,)
-AC_CHECK_FUNC([getpwuid],,)
-
-if test "$ac_cv_func_getpwnam" != yes ||
- test "$ac_cv_func_setpwent" != yes ||
- test "$ac_cv_func_endpwent" != yes ||
- test "$ac_cv_func_getpwent" != yes ||
- test "$ac_cv_func_getpwuid" != yes; then
- AC_DEFINE([ACE_LACKS_PWD_FUNCTIONS])
-else
- dnl The password file related functions above are required for ACE's
- dnl alternate implementation.
-
- ACE_CONVERT_WARNINGS_TO_ERRORS([
- dnl Check for functions necessary for ACE's alternate implementation
- dnl of the now obsolete cuserid() function.
- ACE_CACHE_CHECK([checking if ACE cuserid() implementation should be used],
- [ace_cv_lib_use_alt_cuserid],
- [
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[
-/* Undefine _XOPEN_SOURCE since it may make the cuserid() prototype
- visible. ACE should not rely on such feature test macros. */
-#undef _XOPEN_SOURCE
-#ifndef ACE_LACKS_UNISTD_H
-# include <unistd.h>
-#else
-# error No unistd.h header. Need header where cuserid() is located.
-#endif /* ACE_LACKS_UNISTD_H */
- ]],[[
- char * foo = cuserid ((char *)0);
- ]])],[
- dnl If successful then use the system cuserid() implementation,
- dnl despite the fact that ACE's implementation may be safer.
- ace_cv_lib_use_alt_cuserid=no
- ],[
- AC_LINK_IFELSE([AC_LANG_PROGRAM(
- [[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#undef _XOPEN_SOURCE
-#ifndef ACE_LACKS_UNISTD_H
-# include <unistd.h>
-#else
-# error No unistd.h header. Need header where geteuid() is located.
-#endif
- ]],
- [[
- uid_t foo = geteuid ();
- ]])],
- [
- dnl All of the functions necessary for ACE's cuserid()
- dnl implementation exist.
- ace_cv_lib_use_alt_cuserid=yes
- ],
- [
- dnl If we get here, we're hosed!
- ace_cv_lib_use_alt_cuserid=no
- ])
- ])
- ],
- [
- AC_DEFINE([ACE_HAS_ALT_CUSERID])
- ],)
- ])
-fi
-
-
-
-dnl Check for `strftime' in the `intl' library, for SCO UNIX
-AC_FUNC_STRFTIME
-
-case "$host_os" in
- *win32*)
- AC_CHECK_FUNC([CancelIO],
- [AC_DEFINE([ACE_HAS_CANCEL_IO])],)
-
- AC_CHECK_FUNC([SignalObjectAndWait],
- [AC_DEFINE([ACE_HAS_SIGNAL_OBJECT_AND_WAIT])],)
-
- AC_CHECK_FUNC([TryEnterCriticalSection],
- [AC_DEFINE([ACE_HAS_WIN32_TRYLOCK])],)
- ;;
- *)
- ;;
-esac
-
-ACE_CHECK_HAS_FUNCS(_InterlockedIncrement _InterlockedDecrement _InterlockedExchangeAdd)
-if test "$ac_cv_func__InterlockedIncrement" = yes &&
- test "$ac_cv_func__InterlockedDecrement" = yes &&
- test "$ac_cv_func__InterlockedExchangeAdd" = yes; then
- AC_DEFINE([ACE_HAS_INTRINSIC_INTERLOCKED])
-fi
-
-dnl Check for GCC atomic builtin
-AC_MSG_CHECKING([for GCC atomic builtin])
-AC_LINK_IFELSE([AC_LANG_PROGRAM(
- [[
- ]],
- [[
- volatile unsigned long val = 10;
- unsigned long retval = __sync_sub_and_fetch(&val, 1);
- retval = __sync_add_and_fetch(&val, 1);
- retval = __sync_fetch_and_sub(&val, 1);
- retval = __sync_fetch_and_add(&val, 1);
- ]])],
- [
- AC_MSG_RESULT([yes])
- AC_DEFINE([ACE_HAS_GCC_ATOMIC_BUILTINS], 1,
- [Define to 1 if compiler has builtin atomic support])
- ],
- [
- AC_MSG_RESULT([no])
- ])
-
-ACE_CHECK_LACKS_FUNCS(access)
-
-ACE_CHECK_LACKS_FUNCS(alphasort)
-
-ACE_CHECK_LACKS_FUNCS(asctime)
-
-ACE_CHECK_LACKS_FUNCS(asctime_r)
-
-ACE_CHECK_LACKS_FUNCS(alarm)
-
-ACE_CHECK_LACKS_FUNCS(bsearch)
-
-ACE_CHECK_HAS_DEFINES([bswap16])
-if test "$ace_cv_defined_bswap16" = no; then
- ACE_CHECK_HAS_DEFINES([bswap_16],[],[],[
-#if ACE_HAS_BYTESWAP_H
-#include <byteswap.h>
-#endif])
-fi
-ACE_CHECK_HAS_DEFINES([bswap32])
-if test "$ace_cv_defined_bswap32" = no; then
- ACE_CHECK_HAS_DEFINES([bswap_32],[],[],[
-#if ACE_HAS_BYTESWAP_H
-#include <byteswap.h>
-#endif])
-fi
-ACE_CHECK_HAS_DEFINES([bswap64])
-if test "$ace_cv_defined_bswap64" = no; then
- ACE_CHECK_HAS_DEFINES([bswap_64],[],[],[
-#if ACE_HAS_BYTESWAP_H
-#include <byteswap.h>
-#endif])
-fi
-
-ACE_CHECK_LACKS_FUNCS(chdir)
-
-ACE_CHECK_HAS_FUNCS(clock_gettime clock_settime nanosleep)
-
-ACE_CHECK_LACKS_FUNCS(difftime)
-
-ACE_CHECK_LACKS_FUNCS(dup)
-
-ACE_CHECK_LACKS_FUNCS(dup2)
-
-dnl ACE uses execv, execvp and execve, so we don't bother to check
-dnl for the others (e.g. execl, execlp, execle)
-AC_CHECK_FUNC(execv)
-AC_CHECK_FUNC(execvp)
-AC_CHECK_FUNC(execve)
-if test "$ac_cv_func_execv" != yes &&
- test "$ac_cv_func_execvp" != yes &&
- test "$ac_cv_func_execve" != yes; then
- AC_DEFINE([ACE_LACKS_EXEC])
-fi
-
-ACE_CHECK_LACKS_FUNCS(fgetwc fcntl fork fsync)
-
-ACE_CHECK_LACKS_FUNCS(getcwd)
-
-ACE_CHECK_LACKS_FUNCS(gethostent)
-
-ACE_CHECK_LACKS_FUNCS(getipnodebyaddr)
-
-ACE_CHECK_LACKS_FUNCS(getipnodebyname)
-
-ACE_CHECK_HAS_FUNCS(getifaddrs)
-
-ACE_CHECK_LACKS_FUNCS(getegid geteuid getgid)
-
-ACE_CHECK_LACKS_FUNCS(setenv unsetenv)
-
-ACE_CHECK_LACKS_FUNCS(getopt)
-if test $ac_cv_func_getopt = yes; then
- AC_CHECK_DECL([getopt],
- [],
- [AC_DEFINE([ACE_LACKS_GETOPT_PROTOTYPE], 1,
- [Define to 1 if platform lacks the declaration
- of getopt().])],
- [#include <stdlib.h>
- #ifndef ACE_LACKS_UNISTD_H
- # include <unistd.h>
- #endif])
-fi
-
-AC_CHECK_FUNC([getpagesize],
- [AC_DEFINE([ACE_HAS_GETPAGESIZE])],
- [AC_DEFINE([ACE_PAGE_SIZE], [4096])])
-
-ACE_CHECK_LACKS_FUNCS(getpid)
-
-ACE_CHECK_LACKS_FUNCS([getpgid])
-if test "$ac_cv_func_getpgid" = yes; then
- dnl Check if _XOPEN_SOURCE and _XOPEN_SOURCE_EXTENDED macros are
- dnl needed to make the getpgid() prototype visible.
- ACE_CACHE_CHECK([for getpgid prototype],
- [ace_cv_lib_has_getpgid_prototype],
- [
- ace_save_CPPFLAGS="$CPPFLAGS"
- ace_no_xopen="-U_XOPEN_SOURCE -U_XOPEN_SOURCE_EXTENDED"
- CPPFLAGS="$CPPFLAGS $ace_no_xopen"
- AC_EGREP_HEADER([[^_]+getpgid], [unistd.h],
- [
- ace_cv_lib_has_getpgid_prototype=yes
- ],
- [
- ace_cv_lib_has_getpgid_prototype=no
- ])
- dnl Reset the compiler flags
- CPPFLAGS="$ace_save_CPPFLAGS"
- ],, [AC_DEFINE([ACE_LACKS_GETPGID_PROTOTYPE])])
- AH_TEMPLATE([ACE_LACKS_GETPGID_PROTOTYPE],
- [Define to 1 if platform lacks getpgid() declaration in <unistd.h>.])
-fi
-
-ACE_CHECK_LACKS_FUNCS(getppid)
-
-ACE_CHECK_HAS_FUNCS(getprogname)
-
-ACE_CHECK_HAS_FUNCS(getrusage)
-if test $ac_cv_func_getrusage = yes; then
- AC_CHECK_DECL([getrusage],
- [AC_DEFINE([ACE_HAS_GETRUSAGE_PROTOTYPE], 1,
- [Define to 1 if platform has the declaration
- of getrusage().])],
- [],
- [#include <sys/resource.h>])
-fi
-
-ACE_CHECK_LACKS_FUNCS(getuid)
-
-ACE_CHECK_LACKS_FUNCS(gmtime)
-
-ACE_CHECK_LACKS_FUNCS(gmtime_r)
-
-ACE_CHECK_LACKS_FUNCS(inet_aton)
-
-ACE_CHECK_LACKS_FUNCS(isatty)
-
-AC_CHECK_FUNC(isastream)
-if test $ac_cv_func_isastream = yes; then
- AC_CHECK_DECL([isastream],
- [AC_DEFINE([ACE_HAS_ISASTREAM_PROTOTYPE], 1,
- [Define to 1 if platform has the declaration
- of isastream().])],
- [],
- [#include <stropts.h>])
-fi
-
-ACE_CHECK_HAS_FUNCS(itoa)
-
-dnl Check for 64 bit llseek() or lseek64()
-case "$host" in
- *UnixWare7*)
- dnl Skip the check
- ;;
- *)
- ACE_CHECK_LSEEK64
- ;;
-esac
-
-ACE_CHECK_LACKS_FUNCS(kill)
-
-ACE_CHECK_LACKS_FUNCS(localtime)
-
-ACE_CHECK_LACKS_FUNCS(log2)
-
-ACE_CHECK_LACKS_FUNCS(lstat)
-
-ACE_CHECK_LACKS_FUNCS(madvise)
-if test $ac_cv_func_madvise = yes; then
- AC_CHECK_DECL([madvise],
- [],
- [AC_DEFINE([ACE_LACKS_MADVISE_PROTOTYPE], 1,
- [Define to 1 if platform lacks the declaration
- of madvise().])],
- [
-#if !defined(ACE_LACKS_SYS_TYPES_H)
-# include <sys/types.h>
-#endif
-#include <sys/mman.h>
- ])
-fi
-
-ACE_CHECK_HAS_FUNCS(mkdir)
-
-if test "$ac_cv_func_mkdir" = yes; then
-dnl The mkdir() function has only one argument on Windows and VxWorks
-AC_MSG_CHECKING([for 1- or 2-param mkdir])
-AC_LINK_IFELSE([AC_LANG_PROGRAM(
- [[
-#include <sys/stat.h>
- ]],
- [[
- const char path[] = "mypath";
- int result = mkdir (path);
- ]])],
- [
- AC_DEFINE([ACE_MKDIR_LACKS_MODE], 1,
- [Define to 1 if platform has 1 parameter mkdir()])
- AC_MSG_RESULT([1])
- ],
- [
- AC_MSG_RESULT([2])
- ])
-fi dnl test "$ac_cv_func_mkdir" = yes
-
-ACE_CHECK_HAS_FUNCS(memchr)
-
-ACE_CHECK_LACKS_FUNCS(mkfifo)
-
-ACE_CHECK_LACKS_FUNCS(mkstemp)
-if test $ac_cv_func_mkstemp = yes; then
- AC_CHECK_DECL([mkstemp],
- [],
- [AC_DEFINE([ACE_LACKS_MKSTEMP_PROTOTYPE], 1,
- [Define to 1 if platform lacks the declaration
- of mkstemp().])],
- [#include <stdlib.h>])
-fi
-
-ACE_CHECK_LACKS_FUNCS(mktemp)
-if test $ac_cv_func_mktemp = yes; then
- AC_CHECK_DECL([mktemp],
- [],
- [AC_DEFINE([ACE_LACKS_MKTEMP_PROTOTYPE], 1,
- [Define to 1 if platform lacks the declaration
- of mktemp().])],
- [#include <stdlib.h>])
-fi
-
-ACE_CHECK_LACKS_FUNCS(msync mprotect)
-
-ACE_CHECK_LACKS_FUNCS(pipe)
-
-ACE_CHECK_LACKS_FUNCS(qsort)
-
-ACE_CHECK_LACKS_FUNCS(realpath)
-
-ACE_CHECK_LACKS_FUNCS(setegid seteuid setgid)
-
-ACE_CHECK_LACKS_FUNCS([setpgid])
-if test "$ac_cv_func_setpgid" = yes; then
- dnl Check if _XOPEN_SOURCE and _XOPEN_SOURCE_EXTENDED macros are
- dnl needed to make the setpgid() prototype visible.
- ACE_CACHE_CHECK([for setpgid prototype],
- [ace_cv_lib_has_setpgid_prototype],
- [
- ace_save_CPPFLAGS="$CPPFLAGS"
- ace_no_xopen="-U_XOPEN_SOURCE -U_XOPEN_SOURCE_EXTENDED"
- CPPFLAGS="$CPPFLAGS $ace_no_xopen"
- AC_EGREP_HEADER([[^_]+setpgid], [unistd.h],
- [
- ace_cv_lib_has_setpgid_prototype=yes
- ],
- [
- ace_cv_lib_has_setpgid_prototype=no
- ])
- dnl Reset the compiler flags
- CPPFLAGS="$ace_save_CPPFLAGS"
- ],, [AC_DEFINE([ACE_LACKS_SETPGID_PROTOTYPE])])
- AH_TEMPLATE([ACE_LACKS_SETPGID_PROTOTYPE],
- [Define to 1 if platform lacks setpgid() declaration in <unistd.h>.])
-fi
-
-ACE_CHECK_HAS_FUNCS([setprogname])
-
-ACE_CHECK_LACKS_FUNCS([setregid])
-if test "$ac_cv_func_setregid" = yes; then
- dnl Check if _XOPEN_SOURCE and _XOPEN_SOURCE_EXTENDED macros are
- dnl needed to make the setregid() prototype visible.
- ACE_CACHE_CHECK([for setregid prototype],
- [ace_cv_lib_has_setregid_prototype],
- [
- ace_save_CPPFLAGS="$CPPFLAGS"
- ace_no_xopen="-U_BSD_SOURCE -U_XOPEN_SOURCE -U_XOPEN_SOURCE_EXTENDED"
- CPPFLAGS="$CPPFLAGS $ace_no_xopen"
- AC_EGREP_HEADER([[^_]+setregid], [unistd.h],
- [
- ace_cv_lib_has_setregid_prototype=yes
- ],
- [
- ace_cv_lib_has_setregid_prototype=no
- ])
- dnl Reset the compiler flags
- CPPFLAGS="$ace_save_CPPFLAGS"
- ],, [AC_DEFINE([ACE_LACKS_SETREGID_PROTOTYPE])])
- AH_TEMPLATE([ACE_LACKS_SETREGID_PROTOTYPE],
- [Define to 1 if platform lacks setregid() declaration in <unistd.h>.])
-fi
-
-ACE_CHECK_LACKS_FUNCS([setreuid])
-if test "$ac_cv_func_setreuid" = yes; then
- dnl Check if _XOPEN_SOURCE and _XOPEN_SOURCE_EXTENDED macros are
- dnl needed to make the setreuid() prototype visible.
- ACE_CACHE_CHECK([for setreuid prototype],
- [ace_cv_lib_has_setreuid_prototype],
- [
- ace_save_CPPFLAGS="$CPPFLAGS"
- ace_no_xopen="-U_BSD_SOURCE -U_XOPEN_SOURCE -U_XOPEN_SOURCE_EXTENDED"
- CPPFLAGS="$CPPFLAGS $ace_no_xopen"
- AC_EGREP_HEADER([[^_]+setreuid], [unistd.h],
- [
- ace_cv_lib_has_setreuid_prototype=yes
- ],
- [
- ace_cv_lib_has_setreuid_prototype=no
- ])
- dnl Reset the compiler flags
- CPPFLAGS="$ace_save_CPPFLAGS"
- ],, [AC_DEFINE([ACE_LACKS_SETREUID_PROTOTYPE])])
- AH_TEMPLATE([ACE_LACKS_SETREUID_PROTOTYPE],
- [Define to 1 if platform lacks setreuid() declaration in <unistd.h>.])
-fi
-
-ACE_CHECK_LACKS_FUNCS(setsid setuid)
-
-ACE_CHECK_LACKS_FUNCS(sigaction)
-
-ACE_CHECK_HAS_FUNCS(strnlen)
-if test "$ac_cv_func_strnlen" = yes; then
- AC_CHECK_DECL([strnlen],
- [],
- [AC_DEFINE([ACE_LACKS_STRNLEN_PROTOTYPE], 1,
- [Define to 1 if platform lacks the declaration
- of strnlen().])],
- [#include <string.h>])
-fi
-
-ACE_CHECK_HAS_FUNCS(strsignal)
-
-ACE_CHECK_LACKS_FUNCS(strchr)
-
-ACE_CHECK_LACKS_FUNCS(strerror)
-
-ACE_CHECK_LACKS_FUNCS(strftime)
-
-ACE_CHECK_LACKS_FUNCS(strpbrk)
-
-ACE_CHECK_LACKS_FUNCS(strrchr)
-
-ACE_CHECK_LACKS_FUNCS(strspn)
-
-ACE_CHECK_LACKS_FUNCS(strtod)
-
-ACE_CHECK_LACKS_FUNCS(strtol)
-
-ACE_FUNC_STRTOLL
-
-ACE_CHECK_LACKS_FUNCS(strtoul)
-
-ACE_FUNC_STRTOULL
-
-# swab() comes in a number of forms:
-# swab (const void*, void*, size_t) is POSIX, XPG4, SUS, SUSv2 standard.
-# swab (const char*, char*, size_t) is SVID third edition.
-# swab (char*, char*, size_t) is on some odd platforms like Windows.
-# So, if swab() is available, figure out which of the three variants it is.
-# The second and third have ACE config settings.
-ACE_CHECK_LACKS_FUNCS([swab],
- [
- AC_LINK_IFELSE([
- AC_LANG_PROGRAM([
-#include <stdlib.h>
-#include <unistd.h>
- ],
- [
-// If this compiles, we have the POSIX, XPG4, etc. standard.
-const char src[2] = {'a', 'b'};
-char dst[2];
-const void *vsrc = src;
-void *vdst = dst;
-swab (vsrc, vdst, 2);
- ])
- ],
- [
- ace_cv_std_swab=yes
- ],
- [
- AC_LINK_IFELSE([
- AC_LANG_PROGRAM([
-#include <stdlib.h>
-#include <unistd.h>
- ],
- [
-// If this compiles, we have the SVID3 version, else it's the odd,
-// non-const one.
-const char src[2] = {'a', 'b'};
-char dst[2];
-swab (src, dst, 2);
- ])
- ],
- [
- AC_DEFINE([ACE_HAS_CONST_CHAR_SWAB])
- ],
- [
- AC_DEFINE([ACE_HAS_NONCONST_SWAB])
- ])
- ])
- ],
-)
-
-ACE_CHECK_LACKS_FUNCS(sysconf)
-
-ACE_CHECK_HAS_FUNCS(sysctl)
-
-ACE_CHECK_FUNC_SYSINFO
-
-ACE_CHECK_LACKS_FUNCS(system)
-
-AC_CHECK_FUNC([getmsg],
- [
- AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#ifndef ACE_LACKS_UNISTD_H
-# include <unistd.h>
-#endif /* !ACE_LACKS_UNISTD_H */
-
-#ifndef ACE_LACKS_SYS_IOCTL_H
-# include <sys/ioctl.h>
-#endif /* ACE_LACKS_SYS_IOCTL_H */
-
-#ifdef ACE_HAS_STREAMS
-# include <stropts.h>
-#endif /* ACE_HAS_STREAMS */
-
-int
-main ()
-{
- int fds[2];
-
- if (pipe (fds) != 0)
- return -1;
-
-/*
- * Verify that we can actually set a STREAM option that ACE uses.
- * This is particularly necessary for platforms where compiling and
- * linking succeed but fail at run-time due to a missing actual
- * STREAMS implementation. For example, Linux/glibc requires a
- * STREAMS patch/add-on.
- */
-
- int arg = RMSGN;
-
- if (ioctl (fds[0], I_SRDOPT, (void *) arg) != 0)
- return -1;
-
- return 0;
-}
- ]])],[
- AC_DEFINE([ACE_HAS_STREAM_PIPES])
- ],[],[
- dnl action if cross-compiling
- AC_DEFINE([ACE_HAS_STREAM_PIPES])
- ])
- ],)
-
-AC_CHECK_FUNC([gethostbyaddr],,)
-
-if test "$cross_compiling" != yes; then
-case "$host" in
- *linux*)
- dnl Linux Event Poll
- ACE_CACHE_CHECK([for epoll_create],
- [ace_cv_linux_event_poll],
- [
- AC_RUN_IFELSE([
- AC_LANG_PROGRAM([
-#include <sys/epoll.h>
- ],
- [
-int const ACE_NUM_DESCRIPTORS = 10;
-return epoll_create (ACE_NUM_DESCRIPTORS) == -1 ? -1 : 0;
- ])
- ],
- [
- ace_cv_linux_event_poll=yes
- ],
- [
- ace_cv_linux_event_poll=no
- ])
- ],
- [
- AC_DEFINE([ACE_HAS_EVENT_POLL])
- ],
- [])
- ;;
- *)
- dnl Check if /dev/poll character device file exists and is
- dnl useable. Just because /dev/poll is present doesn't mean its
- dnl useable - this is the case on HP-UX 11. /dev/poll is there, but
- dnl getting it to work requires a set of patches.
- AC_RUN_IFELSE([
- AC_LANG_SOURCE([[
-#include <sys/devpoll.h>
-#include <fcntl.h>
-
-int
-main ()
-{
- int fd = open ("/dev/poll", O_RDWR);
- close (fd);
- return fd == -1 ? -1 : 0;
-}
- ]])],
- [
- AC_DEFINE([ACE_HAS_DEV_POLL])
- ],
- [],
- [])
- ;;
-esac
-fi
-
-AC_CHECK_FUNC([gethrtime])
-if test $ac_cv_func_gethrtime = "yes"; then
- AC_CHECK_TYPE([hrtime_t],
- [AC_DEFINE([ACE_HAS_HI_RES_TIMER], 1,
- [Define to 1 if system has SunOS high resolution timer.])],
- [],
- [#include <sys/time.h>])
-fi
-
-ACE_CHECK_LACKS_FUNCS(readv writev)
-
-ACE_CHECK_HAS_FUNCS(set_t_errno)
-
-ACE_CHECK_HAS_FUNCS(sigsuspend sigtimedwait)
-
-ACE_CHECK_LACKS_FUNCS(socketpair)
-
-AC_CHECK_FUNC(strptime)
-if test "$ac_cv_func_strptime" = yes; then
- dnl strptime() is available, but its prototype is not always visible to
- dnl the compiler. Check if _XOPEN_SOURCE macro is needed to make the
- dnl strptime() prototype visible.
- ace_save_CPPFLAGS="$CPPFLAGS"
- ace_no_xopen="-U_XOPEN_SOURCE"
- CPPFLAGS="$CPPFLAGS $ace_no_xopen"
- AC_CHECK_DECL([strptime],
- [],
- [AC_DEFINE([ACE_LACKS_STRPTIME_PROTOTYPE], 1,
- [Define to 1 if platform lacks the declaration
- of strptime().])],
- [#include <time.h>])
- dnl Reset the compiler flags
- CPPFLAGS="$ace_save_CPPFLAGS"
-else
- AC_DEFINE([ACE_LACKS_STRPTIME], 1,
- [Define to 1 if platform lacks strptime().])
-fi
-
-if test "$ac_cv_type_wchar_t" = yes; then
- AC_CHECK_FUNC([wcslen],
- [AC_DEFINE([ACE_HAS_XPG4_MULTIBYTE_CHAR])],)
-fi
-
-ACE_CHECK_LACKS_FUNCS(syscall)
-
-AC_CHECK_FUNC([alarm],,)
-AC_CHECK_FUNC([signal],,)
-
-if test "$ac_cv_func_alarm" != yes &&
- test "$ac_cv_func_signal" != yes; then
- AC_DEFINE([ACE_LACKS_UNIX_SIGNALS])
-fi
-
-AC_CHECK_FUNC([getrlimit])
-AC_CHECK_FUNC([setrlimit])
-if test "$ac_cv_func_getrlimit" != yes ||
- test "$ac_cv_func_setrlimit" != yes; then
- AC_DEFINE([ACE_LACKS_RLIMIT])
-fi
-
-ACE_CHECK_LACKS_FUNCS(readlink rename recvmsg sendmsg)
-
-if test "$ac_cv_header_sys_priocntl_h" = yes; then
- AC_CHECK_FUNC([priocntl],
- [AC_DEFINE([ACE_HAS_PRIOCNTL])],)
-
-dnl Some platforms define priocntl as a macro!
- if test "$ac_cv_func_priocntl" = no; then
- ACE_CACHE_CHECK([for priocntl macro],
- [ace_cv_lib_has_priocntl_macro],
- [
- AC_EGREP_CPP([ACE_PRIOCNTL_MACRO],
- [
-#include <sys/priocntl.h>
-
-#if defined (priocntl)
- ACE_PRIOCNTL_MACRO
-#endif
- ],
- [
- ace_cv_lib_has_priocntl_macro=yes
- ],
- [
- ace_cv_lib_has_priocntl_macro=no
- ])
- ], [AC_DEFINE([ACE_HAS_PRIOCNTL])],)
- fi dnl test "$ac_cv_func_priocntl" = no
-fi dnl test "$ac_cv_header_sys_priocntl_h" = yes
-
-dnl FIXME: How do we check for a working sbrk()? Do we need to?
-ACE_CHECK_LACKS_FUNCS(sbrk)
-
-ACE_CHECK_HAS_FUNCS(ualarm)
-if test $ac_cv_func_ualarm = yes; then
- AC_CHECK_DECL([ualarm],
- [],
- [AC_DEFINE([ACE_LACKS_UALARM_PROTOTYPE], 1,
- [Define to 1 if platform lacks the declaration
- of ualarm().])],
- [#include <unistd.h>])
-fi
-
-ACE_CHECK_LACKS_FUNCS(umask)
-
-ACE_CHECK_LACKS_FUNCS(uname)
-
-ACE_CHECK_LACKS_FUNCS(unlink)
-
-ACE_CHECK_HAS_FUNCS(vasprintf vaswprintf vfwprintf vswprintf)
-
-ACE_CHECK_HAS_FUNCS(wcsnlen)
-
-ACE_CHECK_LACKS_FUNCS(fgetws fputws isblank iswblank isctype iswctype itow towlower towupper wcscat wcschr wcscmp wcscpy wcscspn wcslen wcsncat wcsncmp wcsncpy wcsnicmp wcspbrk wcsrchr wcsspn wcsstr wcstod)
-
-ACE_CHECK_LACKS_FUNCS(wcstok)
-if test "$ac_cv_func_wcstok" = yes; then
-dnl The wcstok() function varies with standards. Check which one we have.
-AC_MSG_CHECKING([for 2- or 3-param wcstok])
-AC_LINK_IFELSE([AC_LANG_PROGRAM(
- [[
-#include <wchar.h>
- ]],
- [[
- wchar_t str[] = L"junk";
- const wchar_t delim[] = L"\t\n";
- wchar_t *ptr;
- wchar_t *p = wcstok (str, delim, &ptr);
- ]])],
- [
- AC_DEFINE([ACE_HAS_3_PARAM_WCSTOK], 1,
- [Define to 1 if platform has 3 parameter wcstok()])
- AC_MSG_RESULT([3])
- ],
- [
- AC_MSG_RESULT([2])
- ])
-fi dnl test "$ac_cv_func_wcstok" = yes
-
-ACE_CHECK_LACKS_FUNCS(wcstol)
-
-ACE_FUNC_WCSTOLL
-
-ACE_CHECK_LACKS_FUNCS(wcstoul)
-
-ACE_FUNC_WCSTOULL
-
-dnl Check for SYSV IPC functions
-dnl
-dnl Although Darwin/OS X does not implement any of the SysV IPC API,
-dnl its C library contains stubs for all the system calls (probably
-dnl left over from the BSD libc). This causes false positives from
-dnl AC_CHECK_FUNC which results in configure reporting that SysV IPC
-dnl is supported. We avoid this problem by avoiding the function
-dnl checks if the cooresponding headers were not detected earlier.
-dnl
-if test "$ac_cv_header_sys_msg_h" = yes; then
- AC_CHECK_FUNC([msgctl],,)
-
- AC_CHECK_FUNC([msgget],,)
-
- AC_CHECK_FUNC([msgrcv],,)
-fi dnl test "$ac_cv_header_sys_msg_h" = yes
-
-if test "$ac_cv_header_sys_sem_h" = yes; then
- AC_CHECK_FUNC([semctl],,)
-
- AC_CHECK_FUNC([semget],,)
-
- AC_CHECK_FUNC([semop],,)
-fi dnl test "$ac_cv_header_sys_sem_h" = yes
-
-if test "$ac_cv_header_sys_shm_h" = yes; then
- AC_CHECK_FUNC([shmat],,)
-
- AC_CHECK_FUNC([shmctl],,)
-
- AC_CHECK_FUNC([shmdt],,)
-
- AC_CHECK_FUNC([shmget],,)
-fi dnl test "$ac_cv_header_sys_shm_h" = yes
-
-dnl End check for SYSV IPC functions
-
-AC_CHECK_FUNC([read_real_time],
- [AC_DEFINE([ACE_HAS_AIX_HI_RES_TIMER])],)
-
-dnl See shm_open() test after this one ...
-dnl AC_CHECK_FUNC([shm_open], [AC_DEFINE([ACE_HAS_SHM_OPEN])],)
-
-dnl Use a more comprehensive test for shm_open() since the prototype
-dnl may not be visible on all platforms without enabling POSIX.1b
-dnl support (e.g. when the user defines _POSIX_C_SOURCE > 2).
-AC_MSG_CHECKING([for shm_open])
-AC_LINK_IFELSE([AC_LANG_PROGRAM(
- [[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <fcntl.h>
-#include <sys/stat.h>
-#include <sys/mman.h>
- ]],
- [[
- const char name[] = "Foo";
- const int oflag = O_RDONLY;
- const mode_t mode = 0400; /* Whatever */
- const int fd = shm_open (name, oflag, mode);
- ]])],
- [
- AC_DEFINE([ACE_HAS_SHM_OPEN])
- AC_MSG_RESULT([yes])
-
- dnl Now see if running it requires a leading slash.
- ACE_CACHE_CHECK([if shm_open requires one slash],
- [ace_cv_shm_open_requires_one_slash],
- [
- AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <fcntl.h>
-#include <unistd.h>
-#include <sys/stat.h>
-#include <sys/mman.h>
-
-int main (int argc, char *argv[])
-{
- const char name[] = "ACE_Foo";
- const char name2[] = "/ACE_Foo";
- const int oflag = O_RDWR | O_CREAT;
- const mode_t mode = 0400; /* Whatever */
- int fd = shm_open (name, oflag, mode);
- if (fd != -1)
- {
- close (fd);
- shm_unlink (name);
- return 1; /* Don't need the slash */
- }
- fd = shm_open (name2, oflag, mode);
- if (fd != -1)
- {
- close (fd);
- shm_unlink (name2);
- return 0;
- }
- return 1; /* Nothing worked, so say 'no' */
-}
- ]])],[
- ace_cv_shm_open_requires_one_slash=yes
- ],[
- ace_cv_shm_open_requires_one_slash=no
- ],[
- dnl action if cross-compiling
- ace_cv_shm_open_requires_one_slash=no
- ])
- ],AC_DEFINE([ACE_SHM_OPEN_REQUIRES_ONE_SLASH]),)
- ],
- [
- AC_MSG_RESULT([no])
- ])
-
-dnl if test "$ace_cv_shm_open_requires_one_slash" = yes; then
-dnl AC_DEFINE([ACE_SHM_OPEN_REQUIRES_ONE_SLASH])
-dnl fi
-
-ACE_CHECK_LACKS_FUNCS(vsnprintf)
-
-ACE_CHECK_LACKS_FUNCS(tempnam truncate)
-
-dnl Save the cache for debugging purposes
-AC_CACHE_SAVE
-
-dnl Check for POSIX Semaphore functions
-dnl We only check for a few of them since some platforms don't have these.
-dnl On some platforms, a separate library is required, so use AC_SEARCH_LIBS
-dnl instead of AC_CHECK_FUNC. This will add any needed library to LIBS.
-AC_SEARCH_LIBS([sem_init],rt,[ace_cv_func_sem_init=yes],,)
-AC_SEARCH_LIBS([sem_destroy],rt,[ace_cv_func_sem_destroy=yes],,)
-
-if test "$ace_cv_func_sem_init" = yes &&
- test "$ace_cv_func_sem_destroy" = yes &&
- test "$ac_cv_type_sem_t" = yes; then
-
-dnl Only enable POSIX semaphore support if process shared semaphores
-dnl are supported. Presumably process shared semaphores are only
-dnl available if the _POSIX_THREAD_PROCESS_SHARED macro is defined by
-dnl the platform.
- AC_EGREP_CPP([WE_HAVE_SHARED_POSIX_SEMAPHORES],
- [
-#ifndef _REENTRANT
-#define _REENTRANT
-#endif
-
-#ifndef _THREAD_SAFE
-#define _THREAD_SAFE
-#endif
-
-#ifndef ACE_LACKS_UNISTD_H
-# include <unistd.h> /* needed for _POSIX_THREAD_PROCESS_SHARED */
-#endif
-
-#include <pthread.h>
-#include <semaphore.h>
-
-#if defined (_POSIX_THREAD_PROCESS_SHARED)
-WE_HAVE_SHARED_POSIX_SEMAPHORES
-#endif
- ],
- [
- AC_DEFINE([ACE_HAS_POSIX_SEM])
-
- AC_CHECK_FUNC([sem_open])
- AC_CHECK_FUNC([sem_close])
- AC_CHECK_FUNC([sem_unlink])
- if test "$ac_cv_func_sem_open" = no ||
- test "$ac_cv_func_sem_close" = no ||
- test "$ac_cv_func_sem_unlink" = no; then
-
- AC_DEFINE([ACE_LACKS_NAMED_POSIX_SEM])
- else
- dnl Check if it works! For example, in glibc 2.x sem_open exists
- dnl but it appears to be a stub. However, it isn't listed as a
- dnl stub in <gnu/stubs.h> so the configure script thinks it is
- dnl implemented!
- ACE_CACHE_CHECK([if sem_open works],
- [ace_cv_sem_open_works],
- [
- AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-
-#include <sys/stat.h>
-#include <fcntl.h>
-
-#include <stddef.h> /* for definition of "NULL" */
-
-#include <semaphore.h>
-
-#ifndef SEM_FAILED
-# define SEM_FAILED ((sem_t *) -1)
-#endif
-
-int
-main ()
-{
- sem_t *s = 0;
-
- s = sem_open ("ace_semaphore_foo", O_CREAT | O_EXCL, 0600, 1);
- if (s == SEM_FAILED)
- return -1; /* FAILURE */
-
- sem_unlink ("ace_semaphore_foo");
- if (sem_close (s) != 0)
- return -1; /* Something went wrong! */
-
- return 0;
-}
- ]])],[
- ace_cv_sem_open_works=yes
- ],[
- ace_cv_sem_open_works=no
- ],[
- dnl action if cross-compiling
- ace_cv_sem_open_works=yes
- ])
- ],, [AC_DEFINE([ACE_LACKS_NAMED_POSIX_SEM])])
- fi
- ],)
-
-fi dnl check for POSIX Semaphore functions
-
-dnl If we have POSIX semaphores available, check to see if we also have
-dnl the timed wait capability.
-if test "$ac_cv_func_sem_open" = yes &&
- test "$ac_cv_func_sem_close" = yes &&
- test "$ac_cv_func_sem_unlink" = yes; then
- dnl Check if sem_timedwait() works - often it compiles and will run
- dnl but if called return ENOTSUP. In that case, we don't want it.
- ACE_CACHE_CHECK([if sem_timedwait works],
- [ace_cv_sem_timedwait_works],
- [
- AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-
-#include <sys/stat.h>
-#include <fcntl.h>
-#include <time.h>
-#include <stddef.h> /* for definition of "NULL" */
-#if !defined (ACE_LACKS_ERRNO_H)
-# include <errno.h>
-#endif
-#include <semaphore.h>
-
-#ifndef SEM_FAILED
-# define SEM_FAILED ((sem_t *) -1)
-#endif
-
-int
-main ()
-{
- sem_t *s = 0;
- struct timespec tmo;
- int status = 0;
- s = sem_open ("ace_semaphore_foo", O_CREAT, 0600, 1);
- if (s == SEM_FAILED)
- return -1; /* FAILURE */
-
- /* Don't care about the time, only whether the call works */
- tmo.tv_sec = 0;
- tmo.tv_nsec = 0;
- if (sem_timedwait (s, &tmo) == -1)
- {
- if (errno == ENOTSUP)
- status = -1;
- }
- else
- sem_post (s);
-
- sem_unlink ("ace_semaphore_foo");
- sem_close (s);
-
- return status;
-}
- ]])],[
- ace_cv_sem_timedwait_works=yes
- ],[
- ace_cv_sem_timedwait_works=no
- ],[
- dnl action if cross-compiling
- ace_cv_sem_timedwait_works=yes
- ])
- ],
- [AC_DEFINE([ACE_HAS_POSIX_SEM_TIMEOUT])],)
-fi
-
-
-dnl The following tests are performed only when the user has enabled
-dnl support for threads.
-
-dnl NOTE: Make sure the thread library is in "LIBS"
-dnl (e.g.: LIBS="$LIBS -lpthread")
-dnl otherwise the below thread "CHECK_FUNCs"
-dnl will not work correctly.
-if test "$ace_user_enable_threads" = yes; then
-
- if test "$ace_has_pthreads" = yes; then
-dnl Digital UNIX 4.0 "mangles" the following pthread functions:
-dnl pthread_attr_getguardsize_np
-dnl pthread_attr_getinheritsched
-dnl pthread_attr_getstacksize
-dnl pthread_attr_setguardsize_np
-dnl pthread_attr_setinheritsched
-dnl pthread_attr_setstacksize
-dnl pthread_cancel
-dnl pthread_cond_broadcast
-dnl pthread_cond_destroy
-dnl pthread_cond_init
-dnl pthread_cond_sig_preempt_int_np
-dnl pthread_cond_signal
-dnl pthread_cond_signal_int_np
-dnl pthread_cond_timedwait
-dnl pthread_cond_wait
-dnl pthread_create
-dnl pthread_delay_np
-dnl pthread_detach
-dnl pthread_equal
-dnl pthread_exit
-dnl pthread_get_expiration_np
-dnl pthread_getspecific
-dnl pthread_join
-dnl pthread_lock_global_np
-dnl pthread_mutex_destroy
-dnl pthread_mutex_init
-dnl pthread_mutex_lock
-dnl pthread_mutex_trylock
-dnl pthread_mutex_unlock
-dnl pthread_once
-dnl pthread_self
-dnl pthread_setspecific
-dnl pthread_testcancel
-dnl pthread_unlock_global_np
-dnl These functions have a double underscore "__" prepended to maintain
-dnl backwards compatibility with Pthread Draft 4 functions of the same
-dnl name.
-
- ACE_CHECK_LACKS_FUNCS(pthread_sigmask)
- if test $ac_cv_func_pthread_sigmask = yes; then
- AC_CHECK_DECL([pthread_sigmask],
- [AC_DEFINE([ACE_HAS_PTHREAD_SIGMASK_PROTOTYPE], 1,
- [Define to 1 if platform has the declaration
- of pthread_sigmask().])],
- [],
- [#include <pthread.h>
- #include <signal.h>])
- fi
-
- AC_CHECK_FUNC([pthread_key_create],
- [AC_DEFINE([ACE_HAS_THREAD_SPECIFIC_STORAGE])],
- [
- AC_CHECK_FUNC([pthread_keycreate],
- [AC_DEFINE(ACE_HAS_THREAD_SPECIFIC_STORAGE)],
- [AC_DEFINE(ACE_HAS_TSS_EMULATION)])
- ])
-
- ACE_CHECK_HAS_FUNCS(pthread_condattr_setkind_np)
- ACE_CHECK_HAS_FUNCS(pthread_mutexattr_setkind_np)
-
- dnl Can't use ACE_CHECK_LACKS_FUNCS because the macro doesn't match the
- dnl tested function name.
- AC_CHECK_FUNC([pthread_condattr_setpshared],
- [],
- [AC_DEFINE([ACE_LACKS_CONDATTR_PSHARED], 1,
- [Define to 1 if system lacks pthread_condattr_setpshared()])])
-
- dnl ACE_CHECK_LACKS_FUNCS(pthread_attr_setstack)
- dnl Can't use ACE_CHECK_LACKS_FUNCS because the lower-down AC macros build
- dnl a program with a stubbed-out pthread_attr_setstack(), avoiding the need
- dnl to see pthread_attr_setstack() in pthreads.h. This is usually not a
- dnl problem since the link will fail. However, on HP-UX 11iv2 there is a
- dnl pthread_attr_setstack() in libpthread, but not in the header. Thus,
- dnl the test passes, but ACE build fails. Don't hack in use of this until
- dnl HP sees fit to include it in pthread.h (which it does at 11iv3).
- AC_MSG_CHECKING([for pthread_attr_setstack])
- AH_TEMPLATE([ACE_LACKS_PTHREAD_ATTR_SETSTACK],
- [Define to 1 if platform lacks pthread_attr_setstack()])
- AC_LINK_IFELSE([AC_LANG_PROGRAM(
- [[
-#include <pthread.h>
- ]],
- [[
- pthread_attr_t attr;
- void *stack;
- size_t size;
- pthread_attr_setstack (&attr, stack, size);
- ]])],
- [
- AC_MSG_RESULT([yes])
- ],
- [
- AC_MSG_RESULT([no])
- AC_DEFINE([ACE_LACKS_PTHREAD_ATTR_SETSTACK])
- ])
-
- ACE_CHECK_LACKS_FUNCS(pthread_attr_setstackaddr)
- ACE_CHECK_LACKS_FUNCS(pthread_attr_setstacksize)
-
- ACE_CHECK_FUNC([pthread_cancel], [pthread.h],
- [
- dnl Make sure the prototype actually exists. Some platforms,
- dnl such as FreeBSD 4, appear to have a missing prototype. If
- dnl the prototype is missing, then don't use pthread_cancel.
- dnl Creating a prototype for it in ACE is probably a bad idea.
-
- ace_save_CPPFLAGS="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS $ACE_THR_CPPFLAGS"
-
- AC_EGREP_HEADER([pthread_cancel], [pthread.h],,
- [
- AC_DEFINE([ACE_LACKS_PTHREAD_CANCEL])
- ])
-
- dnl Reset the preprocessor flags
- CPPFLAGS="$ace_save_CPPFLAGS"
- ],
- [
- AC_DEFINE([ACE_LACKS_PTHREAD_CANCEL])
- ])
-
- ACE_CHECK_LACKS_FUNCS(pthread_yield)
- ACE_CHECK_LACKS_FUNCS(pthread_thr_sigsetmask)
-
- AC_CHECK_FUNC([pthread_attr_setdetachstate],
- ,
- [AC_DEFINE([ACE_LACKS_SETDETACH])])
-
- dnl ACE currently doesn't provide enough fine grained control over
- dnl these functions so both must be present in order to prevent
- dnl ACE_LACKS_SETSCHED from being defined.
- AC_CHECK_FUNC([sched_setscheduler],
- [
- AC_CHECK_FUNC([pthread_attr_setschedpolicy],,
- [AC_CHECK_FUNC([pthread_attr_setsched],,
- [AC_DEFINE([ACE_LACKS_SETSCHED])])])
- ],
- [
- AC_DEFINE([ACE_LACKS_SETSCHED])
- ])
-
- AC_CHECK_FUNC([pthread_attr_setscope],
- [],
- [AC_DEFINE([ACE_LACKS_THREAD_PROCESS_SCOPING])])
-
- AC_CHECK_FUNC([pthread_mutexattr_setpshared],
- [],
- [AC_DEFINE([ACE_LACKS_MUTEXATTR_PSHARED], 1,
- [Define to 1 if system lacks pthread_mutexattr_setpshared().])])
-
-dnl Check for POSIX Threads Draft 4 functions
- AC_CHECK_FUNC([pthread_mutexattr_create],,)
- AC_CHECK_FUNC([pthread_mutexattr_delete],,)
- AC_CHECK_FUNC([pthread_condattr_delete],,)
- AC_CHECK_FUNC([pthread_condattr_create],,)
- AC_CHECK_FUNC([pthread_setprio],,)
- AC_CHECK_FUNC([pthread_getprio],,)
- AC_CHECK_FUNC([pthread_setcancel],,)
- AC_CHECK_FUNC([pthread_setasynccancel],,)
- AC_CHECK_FUNC([pthread_kill],,)
-dnl Check for POSIX Threads Draft 6 functions
- AC_CHECK_FUNC([pthread_attr_setprio],,)
- AC_CHECK_FUNC([pthread_attr_getprio],,)
- AC_CHECK_FUNC([pthread_setintr],,)
- AC_CHECK_FUNC([pthread_setintrtype],,)
-dnl Check for POSIX threads Draft 6, 7 and Standard common functions
- AC_CHECK_FUNC([pthread_mutexattr_init],,)
- AC_CHECK_FUNC([pthread_mutexattr_destroy],,)
- AC_CHECK_FUNC([pthread_condattr_init],,)
- AC_CHECK_FUNC([pthread_condattr_destroy],,)
-dnl Check for POSIX Threads Draft 7 and Draft Standard common functions
- AC_CHECK_FUNC([pthread_setschedparam],,)
- AC_CHECK_FUNC([pthread_getschedparam],,)
- AC_CHECK_FUNC([pthread_setcancelstate],,)
- AC_CHECK_FUNC([pthread_setcanceltype],,)
-dnl Check for POSIX Threads Draft Standard functions
-dnl sched_yield() is in the C library or perhaps in "-lposix4."
-dnl We need to add other library checks in this script's "check libraries"
-dnl section if it is in another library.
-dnl AC_CHECK_FUNC(sched_yield,,)
-dnl We already check for this during the library checks.
-
-dnl Check for Unix98 pthreads extensions
- AC_CHECK_TYPE([pthread_rwlock_t],
- [],
- [],
- [
-#ifndef ACE_LACKS_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#include <pthread.h>])
-
- AC_CHECK_TYPE([pthread_rwlockattr_t],
- [],
- [],
- [
-#ifndef ACE_LACKS_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#include <pthread.h>])
-
- ACE_CHECK_HAS_FUNCS(pthread_continue pthread_continue_np pthread_resume_np pthread_suspend pthread_suspend_np)
- ACE_CHECK_HAS_FUNCS(pthread_getconcurrency pthread_setconcurrency)
- ACE_CHECK_HAS_FUNCS(pthread_attr_setcreatesuspend_np)
-
-dnl Don't test for pthread_getaffinity_np() or pthread_setaffinity_np()
-dnl if the system doesn't also have cpu_set_t. The functions are almost
-dnl certainly incompatible with our wrapper facade, as we use a "dummy"
-dnl cpu_set_t defined in ace/os_include/os_sched.h.
-if test "$ac_cv_type_cpu_set_t" = yes; then
- ACE_CHECK_HAS_FUNCS(pthread_getaffinity_np pthread_setaffinity_np)
-fi
-
-dnl Linux's sched_{set,get}affinity interface has changed three times:
-dnl
-dnl In glibc 2.3.2, it was:
-dnl
-dnl int sched_setaffinity(pid_t __pid,
-dnl unsigned int __len, unsigned long * __mask);
-dnl
-dnl In glibc 2.3.3, it was changed to:
-dnl
-dnl int sched_setaffinity(pid_t __pid, const cpu_set_t* __mask);
-dnl
-dnl And in glibc ?.?.?, it was changed again to:
-dnl
-dnl int sched_setaffinity(pid_t __pid, size_t __cpusetsize,
-dnl const cpu_set_t* __cpuset);
-dnl
-dnl The following feature tests attempt to determine which (if any)
-dnl version is supported by the system. A further complication is
-dnl that the C library may support one version, the kernel may not,
-dnl and vice versa.
-dnl
-dnl As of this writing, ACE's ACE_OS::sched_setaffinity() wrapper
-dnl facade implementation only supports the latter two varients. So
-dnl if the system doesn't define cpu_set_t, we simply avoid checking
-dnl for sched_setaffinity(). No attempt is made to verify C library /
-dnl kernel consistency.
-dnl
-dnl The "right" thing to do is to implement something similar to the
-dnl PLPA (Portable Linux Processor Affinity) Library, converting the
-dnl arguments and invoking the syscall directly (instead of calling
-dnl the C library wrapper).
-dnl
-
-if test "$ac_cv_type_cpu_set_t" = yes; then
-
- ACE_CHECK_HAS_FUNCS(sched_getaffinity)
-if test "$ac_cv_func_sched_getaffinity" = yes; then
-dnl The sched_getaffinity() function varies between linux versions
-dnl Check which one we have.
-AC_MSG_CHECKING([for 2- or 3-param sched_getaffinity])
-AC_LINK_IFELSE([AC_LANG_PROGRAM(
- [[
-#if !defined(ACE_LACKS_SYS_TYPES_H)
-#include <sys/types.h>
-#endif
-#if !defined(ACE_LACKS_SCHED_H)
-#include <sched.h>
-#endif
- ]],
- [[
- pid_t pid;
- cpu_set_t cpuset;
- sched_getaffinity(pid, sizeof(cpuset), &cpuset);
- ]])],
- [
- AC_MSG_RESULT([3])
- ],
- [
- AC_MSG_RESULT([2])
- AC_DEFINE([ACE_HAS_2_PARAM_SCHED_GETAFFINITY], 1,
- [Define to 1 if platform has 2 parameter sched_getaffinity()])
- ])
-fi dnl test "$ac_cv_func_sched_getaffinity" = yes
-
- ACE_CHECK_HAS_FUNCS(sched_setaffinity)
-if test "$ac_cv_func_sched_setaffinity" = yes; then
-dnl The sched_setaffinity() function varies between linux versions
-dnl Check which one we have.
-AC_MSG_CHECKING([for 2- or 3-param sched_setaffinity])
-AC_LINK_IFELSE([AC_LANG_PROGRAM(
- [[
-#if !defined(ACE_LACKS_SYS_TYPES_H)
-#include <sys/types.h>
-#endif
-#if !defined(ACE_LACKS_SCHED_H)
-#include <sched.h>
-#endif
- ]],
- [[
- pid_t pid;
- cpu_set_t cpuset;
- sched_setaffinity(pid, sizeof(cpuset), &cpuset);
- ]])],
- [
- AC_MSG_RESULT([3])
- ],
- [
- AC_MSG_RESULT([2])
- AC_DEFINE([ACE_HAS_2_PARAM_SCHED_SETAFFINITY], 1,
- [Define to 1 if platform has 2 parameter sched_setaffinity()])
- ])
-fi dnl test "$ac_cv_func_sched_setaffinity" = yes
-
-fi dnl test "$ac_cv_type_cpu_set_t" = yes
-
- AC_CHECK_FUNC([pthread_rwlock_init],,)
- AC_CHECK_FUNC([pthread_rwlock_destroy],,)
- AC_CHECK_FUNC([pthread_rwlock_rdlock],,)
- AC_CHECK_FUNC([pthread_rwlock_wrlock],,)
- AC_CHECK_FUNC([pthread_rwlock_unlock],,)
- AC_CHECK_FUNC([pthread_rwlock_tryrdlock],,)
- AC_CHECK_FUNC([pthread_rwlock_trywrlock],,)
- AC_CHECK_FUNC([pthread_rwlockattr_init],,)
- AC_CHECK_FUNC([pthread_rwlockattr_destroy],,)
- AC_CHECK_FUNC([pthread_rwlockattr_setpshared],
- [],
- [AC_DEFINE([ACE_LACKS_RWLOCKATTR_PSHARED], 1,
- [Define to 1 if system lacks pthread_rwlockattr_setpshared().])])
-
- if test "$ac_cv_type_pthread_rwlock_t" = yes &&
- test "$ac_cv_type_pthread_rwlockattr_t" = yes &&
- test "$ac_cv_func_pthread_rwlock_init" = yes &&
- test "$ac_cv_func_pthread_rwlock_destroy" = yes &&
- test "$ac_cv_func_pthread_rwlock_rdlock" = yes &&
- test "$ac_cv_func_pthread_rwlock_wrlock" = yes &&
- test "$ac_cv_func_pthread_rwlock_unlock" = yes &&
- test "$ac_cv_func_pthread_rwlock_tryrdlock" = yes &&
- test "$ac_cv_func_pthread_rwlock_trywrlock" = yes &&
- test "$ac_cv_func_pthread_rwlockattr_init" = yes &&
- test "$ac_cv_func_pthread_rwlockattr_destroy" = yes; then
- AC_DEFINE([ACE_HAS_PTHREADS_UNIX98_EXT])
- fi dnl Unix98 pthreads extensions
-
-dnl Check if platform has thread_self() rather than pthread_self()
- ACE_CHECK_FUNC([pthread_self], [pthread.h],
- ,
- [
- AC_CHECK_FUNC([thread_self],
- [
- AC_DEFINE([ACE_HAS_THREAD_SELF])
- ],)
- ])
-
-dnl Check if pthread.h declares an enum with PTHREAD_PROCESS_PRIVATE and
-dnl PTHREAD_PROCESS_SHARED values.
- ACE_CACHE_CHECK([for PTHREAD_PROCESS_* enumeration in pthread.h],
- [ace_cv_lib_pthread_process_enum],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <pthread.h>
- ]], [[
-/* Undefine PTHREAD_PROCESS_SHARED in case some platforms #define it */
-#undef PTHREAD_PROCESS_SHARED
-int foo = PTHREAD_PROCESS_SHARED;
- ]])],[
- ace_cv_lib_pthread_process_enum=yes
- ],[
- ace_cv_lib_pthread_process_enum=no
- ])
- ],
- [
- AC_DEFINE([ACE_HAS_PTHREAD_PROCESS_ENUM])
- ],)
-
-dnl Check if pthread_create requires an extern "C" start routine
-ACE_CONVERT_WARNINGS_TO_ERRORS(
-[
-ACE_CACHE_CHECK([if pthread_create requires an extern "C" start routine],
- [ace_cv_lib_pthread_c_func],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <pthread.h>
-
-void *ace_start_routine(void *);
- ]], [[
-pthread_create(0, 0, ace_start_routine, 0);
- ]])],[
- ace_cv_lib_pthread_c_func=no
- ],[
- dnl Check if extern "C" start routine is required.
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
- [[
-#include <pthread.h>
-
-extern "C" void *ace_start_routine(void *);
- ]],
- [[
-pthread_create(0, 0, ace_start_routine, 0);
- ]])],
- [
- ace_cv_lib_pthread_c_func=yes
- ],
- [
- ace_cv_lib_pthread_c_func=no
- ])
- ])
- ],
- [
- AC_DEFINE([ACE_HAS_THR_C_FUNC])
- ],)
-]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-
-dnl Check if pthread_key_create has a standard arg thread destructor
-ACE_CACHE_CHECK([if pthread_key_create has std arg thread destructor],
- [ace_cv_lib_pthread_stdarg_dest],[
- if test "$ac_cv_func_pthread_key_create" = yes; then
- ace_pthread_key_create=pthread_key_create
- else
- ace_pthread_key_create=pthread_keycreate
- fi
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <pthread.h>
-
-void ace_destructor(void *);
- ]], [[
-${ace_pthread_key_create}(0, ace_destructor);
- ]])],[
- ace_cv_lib_pthread_stdarg_dest=no
- ],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
- [[
-#include <pthread.h>
-
-void ace_destructor(...);
- ]],
- [[
-${ace_pthread_key_create}(0, ace_destructor);
- ]])],
- [
- ace_cv_lib_pthread_stdarg_dest=yes
- ],
- [
- ace_cv_lib_pthread_stdarg_dest=no
- ])
- ])
- ],
- [
- AC_DEFINE([ACE_HAS_STDARG_THR_DEST])
- ],)
-
-dnl Check if pthread_key_create requires an extern "C" start routine
-ACE_CONVERT_WARNINGS_TO_ERRORS([
-ACE_CACHE_CHECK([if pthread_key_create requires an extern "C" start routine],
- [ace_cv_lib_pthread_c_dest],[
- if test "$ac_cv_func_pthread_key_create" = yes; then
- ace_pthread_key_create=pthread_key_create
- else
- ace_pthread_key_create=pthread_keycreate
- fi
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <pthread.h>
-
-void ace_destructor(void *);
- ]], [[
-${ace_pthread_key_create}(0, ace_destructor);
- ]])],[
- ace_cv_lib_pthread_c_dest=no
- ],[
- dnl Check if extern "C" start routine is required.
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
- [[
-#include <pthread.h>
-
-extern "C" void ace_destructor(void *);
- ]],
- [[
-${ace_pthread_key_create}(0, ace_destructor);
- ]])],
- [
- ace_cv_lib_pthread_c_dest=yes
- ],
- [
- ace_cv_lib_pthread_c_dest=no
- ])
- ])
- ],
- [
- AC_DEFINE([ACE_HAS_THR_C_DEST])
- ],)
-]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-
-
-AC_CHECK_FUNC([sched_get_priority_min],,
- [
-dnl Check if the PTHREAD_MIN_PRIORITY constant exists.
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <pthread.h>
- ]], [[
- int p = (int) PTHREAD_MIN_PRIORITY;
- ]])
- ],
- [
- dnl Since we have PTHREAD_MIN_PRIORITY, denote that PX_PRIO_MIN
- dnl should not be used.
- ace_has_px_prio_min=no
- ],
- [
- dnl PTHREAD_MIN_PRIORITY doesn't appear to be defined, so
- dnl check if the platform defines PX_PRIO_MIN, instead.
-
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <pthread.h>
- ]], [[
- int p = (int) PX_PRIO_MIN;
- ]])],
- [
- ace_has_px_prio_min=yes
- ],
- [
- ace_has_px_prio_min=no
- ])
- ])
- ])
-
- if test "$ace_has_px_prio_min" = yes; then
- AC_DEFINE([PTHREAD_MIN_PRIORITY],
- [PX_PRIO_MIN],
- [Minimum thread priority])
- fi
-
-AC_CHECK_FUNC([sched_get_priority_max],,
- [
-dnl Check if the PTHREAD_MAX_PRIORITY constant exists.
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <pthread.h>
- ]], [[
- int p = (int) PTHREAD_MAX_PRIORITY;
- ]])
- ],
- [
- dnl Since we have PTHREAD_MAX_PRIORITY, denote that PX_PRIO_MAX
- dnl should not be used.
- ace_has_px_prio_max=no
- ],
- [
- dnl PTHREAD_MAX_PRIORITY doesn't appear to be defined, so
- dnl check if the platform defines PX_PRIO_MAX, instead.
-
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <pthread.h>
- ]], [[
- int p = (int) PX_PRIO_MAX;
- ]])],
- [
- ace_has_px_prio_max=yes
- ],
- [
- ace_has_px_prio_max=no
- ])
- ])
- ])
-
- if test "$ace_has_px_prio_max" = yes; then
- AC_DEFINE([PTHREAD_MAX_PRIORITY],
- [PX_PRIO_MAX],
- [Maximum thread priority])
- fi
-
- fi dnl test "$ace_has_pthreads" = yes
-
- if test "$ace_has_sthreads" = yes; then
-dnl Only check for these functions if we have the UNIX International
-dnl Threads library "thread."
- AC_CHECK_FUNC([thr_keycreate],
- [AC_DEFINE([ACE_HAS_THREAD_SPECIFIC_STORAGE])],
- [AC_DEFINE([ACE_HAS_TSS_EMULATION])])
-
- AC_CHECK_FUNC([thr_yield],
- [AC_DEFINE([ACE_HAS_THR_YIELD])],)
-
- AC_CHECK_FUNC([thr_keydelete],
- [AC_DEFINE([ACE_HAS_THR_KEYDELETE])],)
-
- AC_CHECK_FUNC([thr_min_stack],[],
- [
- AC_CHECK_FUNC([thr_minstack],
- [AC_DEFINE([ACE_HAS_THR_MINSTACK])],)
- ])
-
- fi dnl test "$ace_has_sthreads" = yes
-
-fi dnl test "$ace_user_enable_threads" = yes
-
-dnl
-dnl By Eric:
-dnl ACE will define a sigwait function if we lie and say we don't have
-dnl one. Unfortunately, the ACE function may conflict with our
-dnl function, so we'll go ahead and turn this on, even if we are
-dnl ignoring threads.
-ACE_CHECK_HAS_FUNCS(sigwait)
-
-
-dnl Check for reentrant functions
-if test "$ace_user_enable_reentrant_funcs" = yes; then
- AC_CHECK_FUNC([rand_r])
-
- AC_CHECK_FUNC([strtok_r],
- [
- dnl Check if _POSIX_SOURCE macro is needed to make the strtok_r()
- dnl prototype visible.
- ACE_CACHE_CHECK([for strtok_r prototype],
- [ace_cv_lib_has_strtok_r_prototype],
- [
- ace_save_CPPFLAGS="$CPPFLAGS"
- ace_no_posix="-U_POSIX_SOURCE $ACE_THR_CPPFLAGS"
- CPPFLAGS="$CPPFLAGS $ace_no_posix"
- AC_EGREP_HEADER([[^_]+strtok_r], [string.h],
- [
- ace_cv_lib_has_strtok_r_prototype=yes
- ],
- [
- ace_cv_lib_has_strtok_r_prototype=no
- ])
- dnl Reset the preprocessor flags
- CPPFLAGS="$ace_save_CPPFLAGS"
- ],, [AC_DEFINE([ACE_LACKS_STRTOK_R_PROTOTYPE])])
- ],)
-
- AC_CHECK_FUNC([getpwnam_r],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef _REENTRANT
-# define _REENTRANT
-#endif
-#ifndef ACE_LACKS_PWD_H
-# include <pwd.h>
-#endif
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
- ]],
- [[
- const char * name = 0;
- struct passwd * pwent;
- char * buffer = 0;
- int buflen;
- struct passwd * result = 0;
-
- int status = getpwnam_r (name, pwent, buffer, buflen, &result);
- ]])],
- [
- if test "$ace_user_enable_reentrant_funcs" = yes; then
- AC_DEFINE([ACE_HAS_POSIX_GETPWNAM_R])
- fi
- ],
- [
- dnl Nothing to do!
- echo
- ]),
- ],,
- [AC_DEFINE([ACE_LACKS_PWD_REENTRANT_FUNCTIONS])])
-
- AC_CHECK_FUNC([ctime_r],,)
-
- AC_CHECK_FUNC([localtime_r],,)
-
- AC_CHECK_FUNC([gmtime_r],,)
-
- AC_CHECK_FUNC([asctime_r],,)
-
- AC_CHECK_FUNC([getprotobyname_r],,)
-
- AC_CHECK_FUNC([getprotobynumber_r],,)
-
- AC_CHECK_FUNC([gethostbyaddr_r],,)
-
- AC_CHECK_FUNC([gethostbyname_r],,)
-
- AC_CHECK_FUNC([getservbyname_r],,)
-fi dnl End checks for reentrant functions
-
-
-ACE_CHECK_LACKS_FUNCS(readdir_r)
-if test "$ac_cv_func_readdir_r" = yes; then
-dnl The readdir_r() function varies with standards. Check which one we have.
-AC_MSG_CHECKING([for 2- or 3-param readdir_r])
-AC_LINK_IFELSE([AC_LANG_PROGRAM(
- [[
-#include <dirent.h>
- ]],
- [[
-readdir_r(0, 0, 0);
- ]])],
- [
- AC_DEFINE([ACE_HAS_3_PARAM_READDIR_R], 1,
- [Define to 1 if platform has 3 parameter readdir_r()])
- AC_MSG_RESULT([3])
- ],
- [
- AC_MSG_RESULT([2])
- ])
-fi dnl test "$ac_cv_func_readdir" = yes
-
-
-dnl Disabled until we figure out what to do with the comparator
-dnl function argument inconsistencies between different platforms.
-dnl For example:
-dnl int comparator (const void * d1, const void * d2)
-dnl instead of:
-dnl int comparator (const dirent ** d1, const dirent ** d2)
-dnl
-dnl ACE_CHECK_HAS_FUNCS([scandir])
-
-ACE_CHECK_LACKS_FUNCS(seekdir telldir)
-
-
-dnl
-dnl SECTION 11: checks for function characteristics
-dnl
-
-ACE_CONVERT_WARNINGS_TO_ERRORS([
-dnl Check if dlopen takes a char * arg instead of const char *
- if test "$ace_has_svr4_dynamic_linking" = yes; then
- ACE_CACHE_CHECK([if dlopen takes a char *],
- [ace_cv_lib_charptr_dl],
- [
- dnl Check if it takes a const char *, first.
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <dlfcn.h>
- ]], [[
- const char *filename = 0;
- int flag = 0;
- void *ptr = dlopen(filename, flag);
- ]])],[
- ace_cv_lib_charptr_dl=no
- ],[
- dnl Now check if it takes a non-const char *.
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
- [[
-#include <dlfcn.h>
- ]],
- [[
- char *filename = 0;
- int flag = 0;
- void *ptr = dlopen(filename, flag);
- ]])],
- [
- ace_cv_lib_charptr_dl=yes
- ],
- [
- ace_cv_lib_charptr_dl=no
- ])
- ])
- ], [AC_DEFINE([ACE_HAS_CHARPTR_DL])],)
- fi dnl test "$ace_has_svr4_dynamic_linking" = yes
-]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-
-ACE_CONVERT_WARNINGS_TO_ERRORS([
-dnl Check if "getby" functions use a non-const char * argument
- if test "$ac_cv_func_gethostbyaddr" = yes; then
- ACE_CACHE_CHECK(["getby" functions take a non-const char *],
- [ace_cv_lib_nonconst_getby],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <sys/socket.h>
- ]], [[
- char *addr = 0;
- int len = 0;
- int type = 0;
- struct hostent *mystruct = 0;
-
- mystruct = gethostbyaddr(name, len, type);
- ]])],[
- ace_cv_lib_nonconst_getby=yes
- ],[
- ace_cv_lib_nonconst_getby=no
- ])
- ], [AC_DEFINE([ACE_HAS_NONCONST_GETBY])],)
- fi dnl test "$ac_cv_func_gethostbyaddr" = yes
-]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-
-dnl Check if new throws exception upon failure
-if test "$ace_user_enable_exceptions" = yes; then
- ACE_CACHE_CHECK([if new throws std::bad_alloc exception on failure],
- [ace_cv_new_throws_bad_alloc_exception],
- [
- AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#if defined (ACE_HAS_NEW_NO_H)
-# include <new>
-#elif defined (ACE_HAS_NEW_H)
-# include <new.h>
-#endif
-
-#if defined (ACE_HAS_STDEXCEPT_NO_H)
-# include <stdexcept>
-#elif defined (ACE_HAS_EXCEPTION_H)
-# include <exception.h>
-#endif
-
-/* We already checked for ACE_LACKS_NUMERIC_LIMITS */
-#if !defined ACE_LACKS_NUMERIC_LIMITS
-#include <limits>
-#endif
-
-/* We already checked for ACE_LACKS_SYS_RESOURCE_H */
-#if !defined ACE_LACKS_SYS_RESOURCE_H
-#include <sys/resource.h>
-#endif
-
- int main(int, char *[]) {
-#if defined ACE_LACKS_NUMERIC_LIMITS
- const size_t ALLOC_SIZE = 2 * 1024 * 1024 * 1024;
-#else
- const size_t ALLOC_SIZE = std::numeric_limits<size_t>::max () / 2;
-#endif
-
-#if !defined (ACE_LACKS_RLIMIT)
- /* set memory limit to the allocation size, so this test
- should terminate on the first iteration. */
- struct rlimit rlimit;
- if (getrlimit(RLIMIT_DATA, &rlimit) == 0) {
- rlimit.rlim_cur = ALLOC_SIZE;
- setrlimit(RLIMIT_DATA, &rlimit);
- }
-#endif
-
- while (1) {
- try {
- char *a = new char[ALLOC_SIZE];
- if (a == 0) {
- return 1; /* new() does NOT throw exceptions */
- }
- }
-
-#ifdef ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB
- catch (std::bad_alloc)
-#else
- catch (bad_alloc)
-#endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
- {
- return 0; /* new() does throw exceptions */
- }
- };
-
- return 1; /* ERROR: We shouldn't get this far! */
- }
- ]])],[
- ace_cv_new_throws_bad_alloc_exception=yes
- ],[
- ace_cv_new_throws_bad_alloc_exception=no
- ],[
- ace_cv_new_throws_bad_alloc_exception=no
- ])
- ], [AC_DEFINE([ACE_NEW_THROWS_EXCEPTIONS])],)
-
- if test "$ace_cv_new_throws_bad_alloc_exception" != yes; then
- ACE_CACHE_CHECK([if new throws xalloc exception on failure],
- [ace_cv_new_throws_xalloc_exception],
- [
- AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#if defined (ACE_HAS_NEW_NO_H)
-# include <new>
-#elif defined (ACE_HAS_NEW_H)
-# include <new.h>
-#endif
-
-#if defined (ACE_HAS_STDEXCEPT_NO_H)
-# include <stdexcept>
-#elif defined (ACE_HAS_EXCEPTION_H)
-# include <exception.h>
-#endif
-
-/* We already checked for ACE_LACKS_NUMERIC_LIMITS */
-#if !defined ACE_LACKS_NUMERIC_LIMITS
-#include <limits>
-#endif
-
-/* We already checked for ACE_LACKS_SYS_RESOURCE_H */
-#if !defined ACE_LACKS_SYS_RESOURCE_H
-#include <sys/resource.h>
-#endif
-
-
- int main(int, char *[]) {
-#if defined ACE_LACKS_NUMERIC_LIMITS
- const size_t ALLOC_SIZE = 2 * 1024 * 1024 * 1024;
-#else
- const size_t ALLOC_SIZE = std::numeric_limits<size_t>::max () / 2;
-#endif
-
-#if !defined (ACE_LACKS_RLIMIT)
- /* set memory limit to the allocation size, so this test
- should terminate on the first iteration. */
- struct rlimit rlimit;
- if (getrlimit(RLIMIT_DATA, &rlimit) == 0) {
- rlimit.rlim_cur = ALLOC_SIZE;
- setrlimit(RLIMIT_DATA, &rlimit);
- }
-#endif
-
- while (1) {
- try {
- char *a = new char[ALLOC_SIZE];
- if (a == 0) {
- return 1; /* new() does NOT throw exceptions */
- }
- }
-
- catch (xalloc)
- {
- return 0; /* new() does throw exceptions */
- }
- };
-
- return 1; /* ERROR: We shouldn't get this far! */
- }
- ]])],[
- ace_cv_new_throws_xalloc_exception=yes
- ],[
- ace_cv_new_throws_xalloc_exception=no
- ],[
- ace_cv_new_throws_xalloc_exception=no
- ])
- ], [AC_DEFINE([ACE_NEW_THROWS_EXCEPTIONS])],)
- fi dnl ace_cv_new_throws_bad_alloc_exceptions = no
-fi dnl $ace_user_enable_exceptions = yes
-
-AC_CACHE_CHECK([if compiler supports new(std::nothrow)],
- [ace_cv_has_new_nothrow],
- [AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
-#if defined (ACE_HAS_NEW_NO_H)
-# include <new>
-#elif defined (ACE_HAS_NEW_H)
-# include <new.h>
-#endif
-
-int main(int, char*[]) {
- int *foo;
-
-#ifdef ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB
- foo = new (std::nothrow) int;
-#else
- foo = new (nothrow) int;
-#endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
-}]])], [
- ace_cv_has_new_nothrow=yes
- ],[
- ace_cv_has_new_nothrow=no
- ])])
-if test $ace_cv_has_new_nothrow = yes; then
- AC_DEFINE([ACE_HAS_NEW_NOTHROW])
-fi
-
-ACE_CONVERT_WARNINGS_TO_ERRORS([
-dnl Check if putmsg takes a const struct strbuf *
-dnl If we have getmsg() we can be pretty sure that we have putmsg()
- if test "$ac_cv_func_getmsg" = yes ||
- test "$ac_cv_header_stropts_h" = yes; then
- ACE_CACHE_CHECK([if putmsg takes a const struct strbuf*],
- [ace_cv_lib_const_strbufptr],
- [
- dnl Check if it takes a const struct strbuf *, first.
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <stropts.h>
- ]], [[
- int result = 0;
- int fd = 0;
- const struct strbuf * ace_str = 0;
- int flags = 0;
-
- result = putmsg(fd, ace_str, ace_str, flags);
- ]])],[
- ace_cv_lib_const_strbufptr=yes
- ],[
- ace_cv_lib_const_strbufptr=no
- ])
- ],, [AC_DEFINE([ACE_LACKS_CONST_STRBUF_PTR])])
- fi dnl "$ac_cv_func_getmsg" = yes || "$ac_cv_header_stropts_h" = yes
-]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-
-dnl Check if setrlimit() takes an enum as 1st argument
-ACE_CHECK_SETRLIMIT_ENUM
-
-dnl This test fails (i.e. passes when it shouldn't) when compiling with
-dnl GCC/G++ since the compiler treats passing a const to a non-const
-dnl argument as a warning and not as an error since the const is
-dnl simply discarded. To correct this problem, we use "-Werror" which
-dnl converts all warnings to errors, whenever we are compiling with
-dnl G++.
-dnl -Ossama
-
-dnl Check if getrusage() takes an enum as 1st argument
-ACE_CHECK_GETRUSAGE_ENUM
-
-dnl TODO: This doesn't work.
-dnl The compiler in linux just issues a warning, and the test passes!!!
-dnl
-dnl FIXED by adding "-Werror" to compiler flags when using GNU C++
-dnl -Ossama
-ACE_CONVERT_WARNINGS_TO_ERRORS(
-[
-dnl Check if select takes a const fifth argument (timeval)
-ACE_CACHE_CHECK([if select takes a const struct timeval],
- [ace_cv_lib_posix_select_const_timeval],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <sys/time.h>
-#ifndef ACE_LACKS_UNISTD_H
-# include <unistd.h>
-#endif
-#ifndef ACE_LACKS_SYS_SELECT_H
-# include <sys/select.h>
-#endif
- ]], [[
- int n = 0;
- fd_set *readfds = 0;
- fd_set *writefds = 0;
- fd_set *exceptfds = 0;
- const struct timeval* timeout = 0;
- select(n, readfds, writefds, exceptfds, timeout);
- ]])],[
- ace_cv_lib_posix_select_const_timeval=yes
- ],[
- ace_cv_lib_posix_select_const_timeval=no
- ])
- ], , [AC_DEFINE([ACE_HAS_NONCONST_SELECT_TIMEVAL])])
-]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-
-
-dnl Only run the following tests if the msghdr structure exists.
-if test "$ace_cv_struct_msghdr" = yes &&
- test "$ac_cv_func_sendmsg" = yes; then
- ACE_CONVERT_WARNINGS_TO_ERRORS(
- [
-dnl Check if sendmsg takes a const 2nd argument
- ACE_CACHE_CHECK([if sendmsg omits const qualifier from the msghdr argument],
- [ace_cv_lib_nonconst_sendmsg],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <sys/socket.h>
- ]], [[
- int s = 0;
- const struct msghdr *msg = 0;
- unsigned int flags = 0;
-
- int result = 0;
-
- result = (int) sendmsg(s, msg, flags);
- ]])],[
- ace_cv_lib_nonconst_sendmsg=no
- ],[
- ace_cv_lib_nonconst_sendmsg=yes
- ])
- ], [AC_DEFINE([ACE_HAS_NONCONST_SENDMSG])],)
- ]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-fi dnl "$ace_cv_struct_msghdr" = yes && $ac_cv_func_sendmsg = yes
-
-
-dnl Only run the following tests if the setrlimit function exists
-if test "$ac_cv_func_setrlimit" = yes; then
- ACE_CONVERT_WARNINGS_TO_ERRORS(
- [
-dnl Check if setrlimit() takes a const pointer as 2nd argument
- ACE_CACHE_CHECK([if setrlimit omits const qualifier from the rlimit argument],
- [ace_cv_lib_nonconst_setrlimit],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <sys/time.h>
-#include <sys/resource.h>
- ]], [[
- const struct rlimit* rlp = 0;
- setrlimit(RLIMIT_CPU, rlp);
- ]])],[
- ace_cv_lib_nonconst_setrlimit=no
- ],[
- ace_cv_lib_nonconst_setrlimit=yes
- ])
- ], [AC_DEFINE([ACE_HAS_NONCONST_SETRLIMIT])])
- ]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-fi dnl "$ac_cv_func_setrlimit" = yes; then
-
-
-dnl Only run the following tests if the readv function exists
-if test "$ac_cv_header_sys_uio_h" = yes &&
- test "$ac_cv_func_readv" = yes; then
- ACE_CONVERT_WARNINGS_TO_ERRORS(
- [
-dnl Check if readv omits the const from the iovec argument
- ACE_CACHE_CHECK([if readv omits const qualifier from the iovec argument],
- [ace_cv_lib_nonconst_readv],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_UNISTD_H
-# include <unistd.h>
-#endif
-
-#include <sys/uio.h>
- ]], [[
- int filedes = 0;
- const struct iovec *vector = 0;
- size_t count = 0;
-
- int result = 0;
-
- result = (int) readv(filedes, vector, count);
- ]])],[
- ace_cv_lib_nonconst_readv=no
- ],[
- ace_cv_lib_nonconst_readv=yes
- ])
- ], [AC_DEFINE([ACE_HAS_NONCONST_READV])],)
- ]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-fi dnl $ac_cv_header_sys_uio_h = yes && $ac_cv_func_writev = yes
-
-
-dnl Only run the following tests if the writev function exists
-if test "$ac_cv_header_sys_uio_h" = yes &&
- test "$ac_cv_func_writev" = yes; then
- ACE_CONVERT_WARNINGS_TO_ERRORS(
- [
-dnl Check if writev omits the const from the iovec argument
- ACE_CACHE_CHECK([if writev omits const qualifier from the iovec argument],
- [ace_cv_lib_nonconst_writev],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_UNISTD_H
-# include <unistd.h>
-#endif
-
-#include <sys/uio.h>
- ]], [[
- int filedes = 0;
- const struct iovec *vector = 0;
- size_t count = 0;
-
- int result = 0;
-
- result = (int) writev(filedes, vector, count);
- ]])],[
- ace_cv_lib_nonconst_writev=no
- ],[
- ace_cv_lib_nonconst_writev=yes
- ])
- ], [AC_DEFINE([ACE_HAS_NONCONST_WRITEV])],)
- ]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-fi dnl $ac_cv_header_sys_uio_h = yes && $ac_cv_func_writev = yes
-
-
-ACE_CONVERT_WARNINGS_TO_ERRORS(
-[
-ACE_CACHE_CHECK([for (struct sockaddr *) msg_name field in msghdr],
- [ace_cv_lib_sockaddr_msg_name],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <sys/socket.h>
- ]], [[
- msghdr ace_msghdr;
- struct sockaddr *addr = 0;
-
- /*
- * Note that some platforms declare msg_name to be a void*,
- * in which case this assignment will work.
- * Should we _not_ define ACE_HAS_SOCKADDR_MSG_NAME in that
- * case? I tend to think it is more appropriate to define
- * ACE_HAS_SOCKADDR_MSG_NAME rather than cast addr to a char*,
- * as is done in ACE when the macro is not defined.
- * -Ossama
- */
- ace_msghdr.msg_name = (struct sockaddr *)addr;
- ]])],[
- ace_cv_lib_sockaddr_msg_name=yes
- ],[
- ace_cv_lib_sockaddr_msg_name=no
- ])
- ], [AC_DEFINE([ACE_HAS_SOCKADDR_MSG_NAME])],)
-]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-
-
-ACE_CONVERT_WARNINGS_TO_ERRORS(
-[
-ACE_CACHE_CHECK([if setsockopt() takes a void* fourth argument],
- [ace_cv_lib_posix_setsockopt_voidp_4],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <sys/socket.h>
- ]], [[
- int s = 0;
- int level = 0;
- int optname = 0;
- void* optval = 0;
-
-#if defined (ACE_HAS_SOCKLEN_T)
- socklen_t optlen = 0;
-#elif defined (ACE_HAS_SIZET_SOCKET_LEN)
- size_t optlen = 0;
-#else
- int optlen = 0;
-#endif
-
- setsockopt (s, level, optname, optval, optlen);
- ]])],[
- ace_cv_lib_posix_setsockopt_voidp_4=yes
- ],[
- ace_cv_lib_posix_setsockopt_voidp_4=no
- ])
- ],
- [
- AC_DEFINE([ACE_HAS_VOIDPTR_SOCKOPT])
- ],
- [
- ACE_CACHE_CHECK([if setsockopt() takes a char* fourth argument],
- [ace_cv_lib_posix_setsockopt_charp_4],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <sys/socket.h>
- ]], [[
- int s = 0;
- int level = 0;
- int optname = 0;
- char* optval = 0;
-
-#if defined (ACE_HAS_SOCKLEN_T)
- socklen_t optlen = 0;
-#elif defined (ACE_HAS_SIZET_SOCKET_LEN)
- size_t optlen = 0;
-#else
- int optlen = 0;
-#endif
-
- setsockopt (s, level, optname, optval, optlen);
- ]])],[
- ace_cv_lib_posix_setsockopt_charp_4=yes
- ],[
- ace_cv_lib_posix_setsockopt_charp_4=no
- ])
- ],
- [
- AC_DEFINE([ACE_HAS_CHARPTR_SOCKOPT])
- ],)
- ])
-]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-
-ACE_CONVERT_WARNINGS_TO_ERRORS(
-[
-ACE_CACHE_CHECK([if mmap() takes a void* first argument],
- [ace_cv_lib_posix_voidptr_mmap],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#ifndef ACE_LACKS_UNISTD_H
-# include <unistd.h>
-#endif
-#include <sys/mman.h>
- ]], [[
- void *start = 0;
- size_t length = 0;
- int prot = 0;
- int flags = 0;
- int fd = 0;
- off_t offset = 0;
-
- void *result = 0;
-
- result = (void *)mmap(start, length, prot, flags, fd, offset);
- ]])],[
- ace_cv_lib_posix_voidptr_mmap=yes
- ],[
- ace_cv_lib_posix_voidptr_mmap=no
- ])
- ], [AC_DEFINE([ACE_HAS_VOIDPTR_MMAP])],)
-]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-
-dnl Check if platform has iostream method ipfx()
-ACE_CACHE_CHECK([for iostream method ipfx()],
- [ace_cv_feature_has_iostream_ipfx],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <iostream.h>
- ]], [[
- cin.ipfx();
- ]])],[
- ace_cv_feature_has_iostream_ipfx=yes
- ],[
- ace_cv_feature_has_iostream_ipfx=no
- ])
- ], , [AC_DEFINE([ACE_LACKS_IOSTREAM_FX])])
-
-dnl Check if platform has line-buffered streambufs
-ACE_CACHE_CHECK([for line-buffered streambufs],
- [ace_cv_feature_has_linebuffered_streambuf],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <iostream.h>
- ]], [[
- cin.rdbuf()->linebuffered(1);
- ]])],[
- ace_cv_feature_has_linebuffered_streambuf=yes
- ],[
- ace_cv_feature_has_linebuffered_streambuf=no
- ])
- ], , [AC_DEFINE([ACE_LACKS_LINEBUFFERED_STREAMBUF])])
-
-dnl Check if platform has unbuffered streambufs
-ACE_CACHE_CHECK([for unbuffered streambufs],
- [ace_cv_feature_has_unbuffered_streambuf],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <iostream.h>
- ]], [[
- cin.rdbuf()->unbuffered(1);
- ]])],[
- ace_cv_feature_has_unbuffered_streambuf=yes
- ],[
- ace_cv_feature_has_unbuffered_streambuf=no
- ])
- ], , [AC_DEFINE([ACE_LACKS_UNBUFFERED_STREAMBUF])])
-
-
-dnl Check if signal takes a void (*)(int) as second argument
-ACE_CONVERT_WARNINGS_TO_ERRORS(
-[
-ACE_CACHE_CHECK([if signal takes a void (*)(int) as second argument],
- [ace_cv_lib_signal_vi1_2],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <signal.h>
- typedef void (*SA)(int);
- static void handler(int) { }
- ]], [[
- SA nn = handler;
- signal(SIGINT, nn);
- ]])],[
- ace_cv_lib_signal_vi1_2=yes
- ],[
- dnl Check if extern "C" signal handler is required.
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
- [[
-#include <signal.h>
-extern "C"
- {
- typedef void (*SA)(int);
- void handler(int) { }
- }
- ]],
- [[
- SA nn = handler;
- signal(SIGINT, nn);
- ]])],
- [
- ace_cv_lib_signal_vi1_2=yes
- ],
- [
- ace_cv_lib_signal_vi1_2=no
- ])
- ])
- ],
- [
- AC_DEFINE([ACE_HAS_SIG_C_FUNC])
- ],)
-]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-
-dnl Check if signal takes a void (*)(void) as second argument
-ACE_CONVERT_WARNINGS_TO_ERRORS(
-[
-ACE_CACHE_CHECK([if signal takes a void (*)(void) as second argument],
- [ace_cv_lib_signal_vv1_2],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <signal.h>
- typedef void (*SA)(void);
- void handler(void) { }
- ]], [[
- SA nn = handler;
- signal(SIGINT, nn);
- ]])],[
- ace_cv_lib_signal_vv1_2=yes
- ],[
- dnl Check if extern "C" signal handler is required.
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
- [[
-#include <signal.h>
-extern "C"
- {
- typedef void (*SA)(void);
- void handler(void) { }
- }
- ]],
- [[
- SA nn = handler;
- signal(SIGINT, nn);
- ]])],
- [
- ace_cv_lib_signal_vv1_2=yes
- ],
- [
- ace_cv_lib_signal_vv1_2=no
- ])
- ])
- ],
- [
- AC_DEFINE([ACE_HAS_SIG_C_FUNC])
- ])
-]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-
-dnl Check if signal takes a void (*)(int, ...) as second argument
-ACE_CONVERT_WARNINGS_TO_ERRORS(
-[
-ACE_CACHE_CHECK([if signal takes a void (*)(int, ...) as second argument],
- [ace_cv_lib_signal_vi1a2_2],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <signal.h>
- typedef void (*SA)(int, ...);
- void handler(int, ...) { }
- ]], [[
- SA nn = handler;
- signal(SIGINT, nn);
- ]])],[
- ace_cv_lib_signal_vi1a2_2=yes
- ],[
- dnl Check if extern "C" signal handler is required.
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
- [[
-#include <signal.h>
-extern "C"
- {
- typedef void (*SA)(int, ...);
- void handler(int, ...) { }
- }
- ]],
- [[
- SA nn = handler;
- signal(SIGINT, nn);
- ]])],
- [
- ace_cv_lib_signal_vi1a2_2=yes
- ],
- [
- ace_cv_lib_signal_vi1a2_2=no
- ])
- ])
- ],
- [
- AC_DEFINE([ACE_HAS_SIG_C_FUNC])
- ],)
-]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-
-dnl Check if signal takes a void (*)(...) as second argument
-ACE_CONVERT_WARNINGS_TO_ERRORS(
-[
-ACE_CACHE_CHECK([if signal takes a void (*)(...) as second argument],
- [ace_cv_lib_signal_va1_2],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <signal.h>
- typedef void (*SA)(...);
- void handler(...) { }
- ]], [[
- SA nn = handler;
- signal(SIGINT, nn);
- ]])],[
- ace_cv_lib_signal_va1_2=yes
- ],[
- dnl Check if extern "C" signal handler is required.
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
- [[
-#include <signal.h>
-extern "C"
- {
- typedef void (*SA)(...);
- void handler(...) { }
- }
- ]],
- [[
- SA nn = handler;
- signal(SIGINT, nn);
- ]])],
- [
- ace_cv_lib_signal_va1_2=yes
- ],
- [
- ace_cv_lib_signal_va1_2=no
- ])
- ])
- ],
- [
- AC_DEFINE([ACE_HAS_SIG_C_FUNC])
- ],)
-]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-
-dnl Check if signal returns a void (*)(int)
-AC_CACHE_CHECK([if signal returns a void (*)(int)],
- [ace_cv_lib_signal_vi1_ret],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <signal.h>
-
-typedef void (*SA)(int);
-void foo(SA nn) { }
- ]], [[
-SA nn = SIG_DFL;
-nn = signal(SIGINT, 0);
-foo(nn);
- ]])],[
- ace_cv_lib_signal_vi1_ret=yes
- ],[
- ace_cv_lib_signal_vi1_ret=no
- ])
- ])
-
-dnl Check if signal returns a void (*)(void)
-AC_CACHE_CHECK([if signal returns a void (*)(void)],
- [ace_cv_lib_signal_vv1_ret],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <signal.h>
-
-typedef void (*SA)(void);
-void foo(SA nn) { }
- ]], [[
-SA nn = SIG_DFL;
-nn = signal(SIGINT, 0);
-foo(nn);
- ]])],[
- ace_cv_lib_signal_vv1_ret=yes
- ],[
- ace_cv_lib_signal_vv1_ret=no
- ])
- ])
-
-dnl Check if signal returns a void (*)(int, ...)
-AC_CACHE_CHECK([if signal returns a void (*)(int, ...)],
- [ace_cv_lib_signal_vi1a2_ret],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <signal.h>
-
-typedef void (*SA)(int, ...);
- ]], [[
- SA oo = signal(SIGINT, 0);
- ]])],[
- ace_cv_lib_signal_vi1a2_ret=yes
- ],[
- ace_cv_lib_signal_vi1a2_ret=no
- ])
- ])
-
-dnl Check if signal returns a void (*)(...)
-AC_CACHE_CHECK([if signal returns a void (*)(...)],
- [ace_cv_lib_signal_va1_ret],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <signal.h>
-
-typedef void (*SA)(...);
- ]], [[
- SA oo = signal(SIGINT, 0);
- ]])],[
- ace_cv_lib_signal_va1_ret=yes
- ],[
- ace_cv_lib_signal_va1_ret=no
- ])
- ])
-
-if test "$ac_cv_type_struct_sigaction" = yes; then
-dnl Check if struct sigaction takes a void (*)(int) handler
- AC_CACHE_CHECK([if struct sigaction takes a void (*)(int) handler],
- [ace_cv_lib_struct_sigaction_vi1_handler],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <signal.h>
- typedef void (*SA)(int);
- void foo(struct sigaction* sa, SA nn) { }
- ]], [[
- struct sigaction sa;
- SA nn = SIG_DFL;
- sa.sa_handler = nn;
- foo(&sa, nn);
- ]])],[
- ace_cv_lib_struct_sigaction_vi1_handler=yes
- ],[
- ace_cv_lib_struct_sigaction_vi1_handler=no
- ])
- ])
-
-dnl Check if struct sigaction takes a void (*)(void) handler
- AC_CACHE_CHECK([if struct sigaction takes a void (*)(void) handler],
- [ace_cv_lib_struct_sigaction_vv1_handler],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <signal.h>
- typedef void (*SA)(void);
- void foo(struct sigaction* sa, SA nn) { }
- ]], [[
- struct sigaction sa;
- SA nn = SIG_DFL;
- sa.sa_handler = nn;
- foo(&sa, nn);
- ]])],[
- ace_cv_lib_struct_sigaction_vv1_handler=yes
- ],[
- ace_cv_lib_struct_sigaction_vv1_handler=no
- ])
- ])
-
-dnl Check if struct sigaction takes a void (*)(int, ...) handler
- AC_CACHE_CHECK([if struct sigaction takes a void (*)(int, ...) handler],
- [ace_cv_lib_struct_sigaction_vi1a2_handler],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <signal.h>
- typedef void (*SA)(int, ...);
- void foo(struct sigaction* sa, SA nn) { }
- ]], [[
- struct sigaction sa;
- SA nn = SIG_DFL;
- sa.sa_handler = nn;
- foo(&sa, nn);
- ]])],[
- ace_cv_lib_struct_sigaction_vi1a2_handler=yes
- ],[
- ace_cv_lib_struct_sigaction_vi1a2_handler=no
- ])
- ])
-
-dnl Check if struct sigaction takes a void (*)(...) handler
- AC_CACHE_CHECK([if struct sigaction takes a void (*)(...) handler],
- [ace_cv_lib_struct_sigaction_va1_handler],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <signal.h>
- typedef void (*SA)(...);
- void foo(struct sigaction* sa, SA nn) { }
- ]], [[
- struct sigaction sa;
- SA nn = SIG_DFL;
- sa.sa_handler = nn;
- foo(&sa, nn);
- ]])],[
- ace_cv_lib_struct_sigaction_va1_handler=yes
- ],[
- ace_cv_lib_struct_sigaction_va1_handler=no
- ])
- ])
-fi dnl test "$ac_cv_type_struct_sigaction" = yes
-
-dnl TODO: This doesn't work.
-dnl The linux compiler issues a warning regarding the invalid void*
-dnl conversion.
-dnl
-dnl FIXED by adding "-Werror" to compiler flags when using GNU C++
-dnl -Ossama
-ACE_CONVERT_WARNINGS_TO_ERRORS(
-[
-dnl Check if msgsnd() takes a struct msgbuf* second argument
-ACE_CACHE_CHECK([if msgsnd() takes a struct msgbuf* second argument],
- [ace_cv_lib_posix_msgsnd_msgbufp_2],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-# include <sys/ipc.h>
-#ifndef ACE_LACKS_SYS_MSG_H
-# include <sys/msg.h>
-#endif
- ]], [[
- int msqid = 0;
- struct msgbuf* msgp = 0;
- int msgsz = 0;
- int msgflg = 0;
- msgsnd(msqid, msgp, msgsz, msgflg);
- ]])],[
- ace_cv_lib_posix_msgsnd_msgbufp_2=yes
- ],[
- ace_cv_lib_posix_msgsnd_msgbufp_2=no
- ])
- ],
- [
- dnl "ACTIONS-IF-SUCCESSFUL" handled later in configure.in
- ],
- [
- dnl Check if msgsnd() takes a const void* second argument
- ACE_CACHE_CHECK([if msgsnd() takes a const void* second argument],
- [ace_cv_lib_posix_msgsnd_cvoidp_2],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-# include <sys/ipc.h>
-#ifndef ACE_LACKS_SYS_MSG_H
-# include <sys/msg.h>
-#endif
- ]], [[
- int msqid = 0;
- const void* msgp = 0;
- int msgsz = 0;
- int msgflg = 0;
- msgsnd(msqid, msgp, msgsz, msgflg);
- ]])],[
- ace_cv_lib_posix_msgsnd_cvoidp_2=yes
- ],[
- ace_cv_lib_posix_msgsnd_cvoidp_2=no
- ])
- ],
- [
- dnl Do nothing if msgsnd takes a const void* second argument
- ],
- [
- dnl If we get this far we presumably have a non-const void* second param
- AC_DEFINE([ACE_HAS_NONCONST_MSGSND])
- ])
- ])
-]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-
-dnl TODO: This doesn't work.
-dnl The linux compiler issues a warning regarding the invalid void*
-dnl conversion.
-dnl
-dnl FIXED by adding "-Werror" to compiler flags when using GNU C++
-dnl -Ossama
-ACE_CONVERT_WARNINGS_TO_ERRORS(
-[
-dnl Check if msgrcv() takes a void* second argument
-AC_CACHE_CHECK([if msgrcv() takes a void* second argument],
- [ace_cv_lib_posix_msgrcv_voidp_2],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-# include <sys/ipc.h>
-#ifndef ACE_LACKS_SYS_MSG_H
-# include <sys/msg.h>
-#endif
- ]], [[
- int msqid = 0;
- void* msgp = 0;
- int msgsz = 0;
- long msgtyp = 0;
- int msgflg = 0;
- msgrcv(msqid, msgp, msgsz, msgtyp, msgflg);
- ]])],[
- ace_cv_lib_posix_msgrcv_voidp_2=yes
- ],[
- ace_cv_lib_posix_msgrcv_voidp_2=no
- ])
- ])
-]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-
-
-if test "$ac_cv_func_shmat" = yes; then
- dnl TODO: This doesn't work.
- dnl The linux compiler issues a warning regarding the invalid void*
- dnl conversion.
- dnl
- dnl FIXED by adding "-Werror" to compiler flags when using GNU C++
- dnl -Ossama
- ACE_CONVERT_WARNINGS_TO_ERRORS(
- [
- dnl Check if shmat() takes a void* second argument
- AC_CACHE_CHECK([if shmat() takes a void* second argument],
- [ace_cv_lib_posix_shmat_voidp_2],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
- #ifndef ACE_LACKS_SYS_TYPES_H
- # include <sys/types.h>
- #endif
- # include <sys/ipc.h>
- # include <sys/shm.h>
- ]], [[
- int shmid = 0;
- void* shmaddr = 0;
- int shmflg = 0;
- shmat(shmid, shmaddr, shmflg);
- ]])],[
- ace_cv_lib_posix_shmat_voidp_2=yes
- ],[
- ace_cv_lib_posix_shmat_voidp_2=no
- ])
- ])
- ]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
- if test "$ace_cv_lib_posix_shmat_voidp_2" = no; then
- AC_DEFINE([ACE_HAS_CHARPTR_SHMAT], 1,
- [Define to 1 if arg 2 of 'shmat' is char *'])
- fi
-fi
-
-if test "$ac_cv_func_shmdt" = yes; then
- dnl TODO: This doesn't work.
- dnl The linux compiler issues a warning regarding the invalid void*
- dnl conversion.
- dnl
- dnl FIXED by adding "-Werror" to compiler flags when using GNU C++
- dnl -Ossama
- ACE_CONVERT_WARNINGS_TO_ERRORS(
- [
- dnl Check if shmdt() takes a void* second argument
- AC_CACHE_CHECK([if shmdt() takes a void* argument],
- [ace_cv_lib_posix_shmdt_voidp],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
- #ifndef ACE_LACKS_SYS_TYPES_H
- # include <sys/types.h>
- #endif
- # include <sys/ipc.h>
- # include <sys/shm.h>
- ]], [[
- void* shmaddr = 0;
- shmdt(shmaddr);
- ]])],[
- ace_cv_lib_posix_shmdt_voidp=yes
- ],[
- ace_cv_lib_posix_shmdt_voidp=no
- ])
- ])
- ]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
- if test "$ace_cv_lib_posix_shmdt_voidp" = no; then
- AC_DEFINE([ACE_HAS_CHARPTR_SHMDT], 1,
- [Define to 1 if arg 1 of 'shmdt' is char *'])
- fi
-fi
-
-dnl TODO: This doesn't work.
-dnl The linux compiler issues a warning regarding the invalid void*
-dnl conversion.
-dnl
-dnl FIXED by adding "-Werror" to compiler flags when using GNU C++
-dnl -Ossama
-ACE_CONVERT_WARNINGS_TO_ERRORS(
-[
-dnl Check if sigaction() takes a const* second argument
-AC_CACHE_CHECK([if sigaction() takes a const* second argument],
- [ace_cv_lib_posix_sigaction_constp_2],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <signal.h>
- ]], [[
- int signum = 0;
- const struct sigaction* act = 0;
- struct sigaction* oldact = 0;
- sigaction(signum, act, oldact);
- ]])],[
- ace_cv_lib_posix_sigaction_constp_2=yes
- ],[
- ace_cv_lib_posix_sigaction_constp_2=no
- ])
- ])
-]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-
-if test "$ace_cv_lib_posix_sigaction_constp_2" = yes; then
- AC_DEFINE([ACE_HAS_SIGACTION_CONSTP2])
-fi
-
-dnl We need to use the ACE_CONVERT_WARNINGS_TO_ERRORS() macro since
-dnl passing a void * just caused implicit conversion warnings when
-dnl using GNU C++, for example.
-ACE_CONVERT_WARNINGS_TO_ERRORS(
-[
-dnl Check for SVR4 style gettimeofday()
-AC_CACHE_CHECK([if gettimeofday() takes a void * second argument],
- [ace_cv_lib_voidptr_gettimeofday],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <sys/time.h>
-#ifndef ACE_LACKS_UNISTD_H
-# include <unistd.h>
-#endif
- ]], [[
- struct timeval *tv = 0;
- void *tzp = 0;
-
- gettimeofday(tv, tzp);
- ]])],[
- ace_cv_lib_voidptr_gettimeofday=yes
- ],[
- ace_cv_lib_voidptr_gettimeofday=no
- ])
- ])
-]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-
-if test "$ace_cv_lib_voidptr_gettimeofday" = no; then
-ACE_CONVERT_WARNINGS_TO_ERRORS(
-[
-dnl Check for old OSF1 style gettimeofday()
- AC_CACHE_CHECK([if gettimeofday() takes a struct timezone * second argument],
- [ace_cv_lib_timezone_gettimeofday],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <sys/time.h>
-#ifndef ACE_LACKS_UNISTD_H
-# include <unistd.h>
-#endif
- ]], [[
- struct timeval *tv = 0;
- struct timezone *tzp = 0;
-
- gettimeofday(tv, tzp);
- ]])],[
- ace_cv_lib_timezone_gettimeofday=yes
- ],[
- ace_cv_lib_timezone_gettimeofday=no
- ])
- ])
-]) dnl ACE_CONVERT_WARNINGS_TO_ERRORS
-fi dnl test "$ace_cv_lib_voidptr_gettimeofday" = no
-
-dnl Check for gettimeofday() protoype
-if test "$ace_cv_lib_voidptr_gettimeofday" = yes ||
- test "$ace_cv_lib_timezone_gettimeofday" = yes; then
-
-AC_CHECK_DECL([gettimeofday],
- [
-if test "$ace_cv_lib_voidptr_gettimeofday" = yes; then
- AC_DEFINE([ACE_HAS_VOIDPTR_GETTIMEOFDAY])
-else
- AC_DEFINE([ACE_HAS_TIMEZONE_GETTIMEOFDAY])
-fi
- ],[
-if test "$ace_cv_lib_voidptr_gettimeofday" = yes; then
- AC_DEFINE([ACE_HAS_SVR4_GETTIMEOFDAY])
-else
- AC_DEFINE([ACE_HAS_OSF1_GETTIMEOFDAY])
-fi
- ],
- [
-#include <sys/time.h>
-#ifndef ACE_LACKS_UNISTD_H
-# include <unistd.h>
-#endif
- ])
-
-fi dnl Check for gettimeofday() protoype
-
-
-dnl Check if ctime_r() takes two arguments
-if test "$ac_cv_func_ctime_r" = yes; then
- ACE_CACHE_CHECK([if ctime_r() takes two arguments],
- [ace_cv_lib_posix_ctime_r_2_params],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef _REENTRANT
-# define _REENTRANT
-#endif
-
-#include <time.h>
- ]], [[
- const time_t *t = 0;
- char *buf;
- ctime_r(t, buf);
- ]])],[
- ace_cv_lib_posix_ctime_r_2_params=yes
- ],[
- ace_cv_lib_posix_ctime_r_2_params=no
- ])
- ], [AC_DEFINE([ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R])],)
-fi dnl test "$ac_cv_func_ctime_r" = yes
-
-
-dnl
-dnl SECTION 12: checks for type characteristics
-dnl
-
-dnl struct msghdr stuff
-dnl Only run the following tests if the msghdr structure exists.
-if test "$ace_cv_struct_msghdr" = yes; then
-
- ACE_CACHE_CHECK([if struct msghdr has a msg_accrights member],
- [ace_cv_lib_posix_struct_msghdr_has_msg_accrights],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <sys/socket.h>
- ]], [[
- msghdr mh;
- mh.msg_accrights = 0;
- ]])],[
- ace_cv_lib_posix_struct_msghdr_has_msg_accrights=yes
- ],[
- ace_cv_lib_posix_struct_msghdr_has_msg_accrights=no
- ])
- ])
-
- ACE_CACHE_CHECK([if struct msghdr has a msg_accrightslen member],
- [ace_cv_lib_posix_struct_msghdr_has_msg_accrightslen],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <sys/socket.h>
- ]], [[
- msghdr mh;
- mh.msg_accrightslen = 0;
- ]])],[
- ace_cv_lib_posix_struct_msghdr_has_msg_accrightslen=yes
- ],[
- ace_cv_lib_posix_struct_msghdr_has_msg_accrightslen=no
- ])
- ])
-
-dnl Check for 4.4 BSD style struct msghdr members
-dnl The following test should only be run if the above two testsfail.
- if test "$ace_cv_lib_posix_struct_msghdr_has_msg_accrights" = no &&
- test "$ace_cv_lib_posix_struct_msghdr_has_msg_accrightslen" = no; then
- AC_DEFINE([ACE_LACKS_MSG_ACCRIGHTS])
- ACE_CACHE_CHECK([for 4.4 BSD style struct msghdr],
- [ace_cv_lib_4_4bsd_msghdr],[
- AC_EGREP_HEADER([msg_control], [sys/socket.h],
- [
- ace_cv_lib_4_4bsd_msghdr=yes
- ],
- [
- ace_cv_lib_4_4bsd_msghdr=no
- ])
- ],
- [
- AC_DEFINE([ACE_HAS_4_4BSD_SENDMSG_RECVMSG])
- ],
- [
- AC_MSG_WARN([No supported msghdr structure was found. ACE may not compile or function properly.])
- ])
- fi
-
-fi dnl End struct msghdr_stuff
-
-dnl
-dnl SECTION 13: checks for system services
-dnl
-
-dnl Check for open() mode masks
-ACE_CACHE_CHECK([for open() mode masks],
- [ace_cv_feature_have_open_mode_masks],[
- AC_EGREP_CPP([ACE_OPEN_MODE_MASKS_EXIST],
- [
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <sys/stat.h>
-#include <fcntl.h>
-
-/* These are ORed so that ACE will not redefine any of them if any of
- them exist. */
-#if defined (S_IRWXU) || \
- defined (S_IRUSR) || \
- defined (S_IWUSR) || \
- defined (S_IXUSR) || \
- defined (S_IRWXG) || \
- defined (S_IRGRP) || \
- defined (S_IWGRP) || \
- defined (S_IXGRP) || \
- defined (S_IRWXO) || \
- defined (S_IROTH) || \
- defined (S_IWOTH) || \
- defined (S_IXOTH)
- ACE_OPEN_MODE_MASKS_EXIST
-#endif
- ],
- [
- ace_cv_feature_have_open_mode_masks=yes
- ],
- [
- ace_cv_feature_have_open_mode_masks=no
- ])
- ], , [AC_DEFINE([ACE_LACKS_MODE_MASKS])])
-
-
-dnl Check if platform supports POSIX O_NONBLOCK semantics
-ACE_CACHE_CHECK([for POSIX O_NONBLOCK semantics],
- [ace_cv_feature_posix_o_nonblock],[
- AC_EGREP_CPP([ACE_POSIX_O_NONBLOCK],
- [
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <sys/stat.h>
-#include <fcntl.h>
-
-#if defined (O_NONBLOCK)
- ACE_POSIX_O_NONBLOCK
-#endif
- ],
- [
- ace_cv_feature_posix_o_nonblock=yes
- ],
- [
- ace_cv_feature_posix_o_nonblock=no
- ])
- ], [AC_DEFINE([ACE_HAS_POSIX_NONBLOCK])],)
-
-dnl Check for MAP_FAILED constant
-ACE_CACHE_CHECK([for MAP_FAILED constant],
- [ace_cv_lib_have_map_failed],[
- dnl We need the square brackets around "ACEMAPFAILED.+[0-9]" to
- dnl prevent the character class "[0-9]" from becoming "0-9" due to
- dnl M4 quoting.
- AC_EGREP_CPP([ACEMAPFAILED.+[0-9]],
- [
-#include <sys/mman.h>
- ACEMAPFAILED MAP_FAILED
- ],
- [
- ace_cv_lib_have_map_failed=yes
- ],
- [
- ace_cv_lib_have_map_failed=no
- ])
- ],
- [
- dnl Check if platform defines MAP_FAILED as a long constant
- ACE_CACHE_CHECK([if MAP_FAILED is a long constant],
- [ace_cv_feature_long_map_failed],[
- dnl We need the square brackets around "ACEMAPFAILED.+[0-9]L" to
- dnl prevent the character class "[0-9]" from becoming "0-9" due to
- dnl M4 quoting.
- AC_EGREP_CPP([ACEMAPFAILED.+[0-9]L],
- [
-#include <sys/mman.h>
- ACEMAPFAILED MAP_FAILED
- ],
- [
- ace_cv_feature_long_map_failed=yes
- ],
- [
- ace_cv_feature_long_map_failed=no
- ])
- ], [AC_DEFINE([ACE_HAS_LONG_MAP_FAILED])],
- [
- dnl Check if MAP_FAILED is _not_ cast to void *
- ACE_CACHE_CHECK([if MAP_FAILED is not cast to void *],
- [ace_cv_have_broken_map_failed],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <sys/mman.h>
- ]], [[
- void * foo = MAP_FAILED;
- ]])],[
- ace_cv_have_broken_map_failed=no
- ],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
- [[
-#include <sys/mman.h>
- ]],
- [[
- void * foo = (void *) MAP_FAILED;
- ]])],
- [
- ace_cv_have_broken_map_failed=yes
- ],
- [
- dnl If we get here then we have no idea what is wrong!
- ace_cv_have_broken_map_failed=no
- ])
- ])
- ], [AC_DEFINE([ACE_HAS_BROKEN_MAP_FAILED])],)
- ])
- ],)
-
-dnl Check if platform supports TCP_NODELAY support
-ACE_CACHE_CHECK([for TCP_NODELAY support],
- [ace_cv_feature_tcp_nodelay],[
- AC_EGREP_CPP([ACE_TCPNODELAY],
- [
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <netinet/tcp.h>
-
-#if defined (TCP_NODELAY)
- ACE_TCPNODELAY
-#endif
- ],
- [
- ace_cv_feature_tcp_nodelay=yes
- ],
- [
- ace_cv_feature_tcp_nodelay=no
- ])
- ], , [AC_DEFINE([ACE_LACKS_TCP_NODELAY])])
-
-dnl Check if platform supports SO_SNDBUF/SO_RCVBUF socket options
-ACE_CACHE_CHECK([for SO_SNDBUF/SO_RCVBUF socket options],
- [ace_cv_feature_so_sndbuf_rcvbuf],[
- AC_EGREP_CPP([ACE_SO_BUF],
- [
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <sys/socket.h>
-
-#if defined (SO_SNDBUF) && \
- defined (SO_RCVBUF)
- ACE_SO_BUF
-#endif
- ],
- [
- ace_cv_feature_so_sndbuf_rcvbuf=yes
- ],
- [
- ace_cv_feature_so_sndbuf_rcvbuf=no
- ])
- ], , [AC_DEFINE([ACE_LACKS_SOCKET_BUFSIZ])])
-
-dnl Check if memcpy is faster or loop unrolling is faster on a given
-dnl platform
-ACE_CACHE_CHECK([if ACE memcpy needs loop unrolling], [ace_cv_memcpy_loop_unroll],
-[AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <stdio.h>
-#include <string.h>
-
-void*
-smemcpy (void* dest, const void* src, const size_t n)
-{
- unsigned char* to = static_cast<unsigned char*>( dest) ;
- const unsigned char* from = static_cast<const unsigned char*>( src) ;
- // Unroll the loop...
- switch (n)
- {
- case 16: to[15] = from[15] ;
- case 15: to[14] = from[14] ;
- case 14: to[13] = from[13] ;
- case 13: to[12] = from[12] ;
- case 12: to[11] = from[11] ;
- case 11: to[10] = from[10] ;
- case 10: to[9] = from[9] ;
- case 9: to[8] = from[8] ;
- case 8: to[7] = from[7] ;
- case 7: to[6] = from[6] ;
- case 6: to[5] = from[5] ;
- case 5: to[4] = from[4] ;
- case 4: to[3] = from[3] ;
- case 3: to[2] = from[2] ;
- case 2: to[1] = from[1] ;
- case 1: to[0] = from[0] ;
- case 0: return dest;
- default: return memcpy (dest, src, n);
- }
-}
-
-// Function pointer
-void* (* test_func) (void *dst, const void* src, size_t);
-
-namespace { enum { ITERATIONS = 100000 }; }
-
-#include <sys/time.h>
-#include <time.h>
-
-int
-main(int argc, char* argv[])
-{
- struct timeval start, now;
- double value;
-
- // Test buffer
- char dest [16];
- const void* src = " THIS IS A TEST";
-
- // We want to test if the loop unrolling is faster for sizes
- // from 1..16
- for (size_t counter = 16; counter >=1; counter--)
- {
- test_func = smemcpy;
-
- // Warm up
- for (int i = ITERATIONS ; i > 0 ; --i)
- test_func ((void *)dest, src, counter);
-
- gettimeofday (&start, 0) ;
- for (int j = ITERATIONS ; j > 0 ; --j)
- test_func ((void *)dest, src, counter);
- gettimeofday (&now, 0);
-
- double fast = 1000000 * (now.tv_sec - start.tv_sec) +
- now.tv_usec - start.tv_usec ;
-
- test_func = memcpy;
-
- // Warm up
- for (int k = ITERATIONS ; k > 0 ; --k)
- test_func ((void *)dest, src, counter);
-
- gettimeofday (&start, 0) ;
- for (int l = ITERATIONS ; l > 0 ; --l)
- test_func ((void *)dest, src, counter);
- gettimeofday (&now, 0) ;
-
- double slow = 1000000 * (now.tv_sec-start.tv_sec) +
- now.tv_usec - start.tv_usec ;
- if (fast > slow)
- return 1; // Unrolling was slower than actual memcpy
-
- if (1.10*fast > slow)
- return 1; // Unrolling was not faster by 10%
- }
- return 0; // Unrolling was faster -- success
-}]])], [ace_cv_memcpy_loop_unroll=yes],
- [ace_cv_memcpy_loop_unroll=no],
- dnl Cross compilation case
- [ace_cv_memcpy_loop_unroll=no])],
- dnl only if the test succeeds set the macro
- [AC_DEFINE([ACE_HAS_MEMCPY_LOOP_UNROLL], 1,
- [Define to 1 if unrolled ACE_OS::fast_memcpy() is faster than system memcpy()])],)
-
-dnl TODO: We only check for ACE_HAS_AUTOMATIC_INIT_FINI on platforms that
-dnl have SVR4 dynamic linking since ACE doesn't support it otherwise.
-if test "$ac_cv_header_dlfcn_h" = yes &&
- test "$ace_has_svr4_dynamic_linking" = yes; then
-dnl Check if platform calls init/fini automatically
- ACE_CACHE_CHECK([for automatic init/fini calls],
- [ace_cv_feature_auto_init_fini],[
- ace_cv_feature_auto_init_fini=yes
- # TODO: We know how to check for this, but we need to:
- #
- # 1. Compile one file.
- # 2. Compile and link another file.
- # 3. Run file in point (2); it returns what we need.
- #
- # How do we do all that?
- ], [AC_DEFINE([ACE_HAS_AUTOMATIC_INIT_FINI])],)
-fi dnl test "$ac_cv_header_dlfcn_h" = yes &&
- dnl "$ace_has_svr4_dynamic_linking" = yes
-
-dnl Check for recursive thread exit semantics
-if test "$ace_user_enable_threads" = yes; then
- ACE_CACHE_CHECK([for recursive thread exit semantics],
- [ace_cv_feature_recursive_thr_exit],[
- ace_cv_feature_recursive_thr_exit=yes
- # TODO: How do we check for recursive thread exit semantics
- ], [AC_DEFINE([ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS])],)
-fi
-
-dnl Check for UNIX domain sockets
-ACE_CACHE_CHECK([for UNIX domain sockets],
- [ace_cv_feature_unix_sockets],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <sys/un.h>
- ]], [[
- sockaddr_un su;
- ]])],[
- ace_cv_feature_unix_sockets=yes
- ],[
- ace_cv_feature_unix_sockets=no
- ])
- ], , [AC_DEFINE([ACE_LACKS_UNIX_DOMAIN_SOCKETS])])
-
-dnl Check for raw sockets
-ACE_CACHE_CHECK([for raw sockets],
- [ace_cv_feature_raw_sockets],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <sys/socket.h>
-#include <netinet/in.h>
- ]], [[
-return socket(AF_INET, SOCK_RAW, IPPROTO_RAW);
- ]])],[
- ace_cv_feature_raw_sockets=yes
- ],[
- ace_cv_feature_raw_sockets=no
- ])
- ], [AC_DEFINE([ACE_HAS_ICMP_SUPPORT])])
-
-dnl Check for ACE_Handle_Set optimized for select()
-ACE_CACHE_CHECK([for ACE_Handle_Set optimized for select()],
- [ace_cv_feature_handle_set_optimized_for_select],[
- ace_cv_feature_handle_set_optimized_for_select=yes
- # TODO: We know how to check this. We need to:
- #
- # 1. Compile and link a file.
- # 2. Run nm on that file.
- #
- # How do we do that?
- ], [AC_DEFINE([ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT])],)
-
-dnl Even we if we don't have IP multicasting, we still need to define
-dnl "ACE_HAS_IP_MULTICAST" since struct ip_mreq gets redefined by ACE.
-dnl What do we do about this problem?
-dnl -Ossama
-dnl Check for IP multicast support
-ACE_CACHE_CHECK([for IP multicast support],
- [ace_cv_feature_ip_multicast],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <netinet/in.h>
- ]], [[
- ip_mreq im;
- ]])],[
- ace_cv_feature_ip_multicast=yes
- ],[
-dnl Some platforms define ip_mreq in <sys/netinet/in.h>.
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
- [[
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <sys/netinet/in.h>
- ]],
- [[
- ip_mreq im;
- ]])],
- [
- ace_cv_feature_ip_multicast=yes
- ],
- [
- ace_cv_feature_ip_multicast=no
- ])
- ])
- ], [AC_DEFINE([ACE_HAS_IP_MULTICAST])],)
-
-ACE_CACHE_CHECK([if running on an Alpha],
- [ace_cv_feature_alpha],[
- case "$host" in
- alpha*)
- ace_cv_feature_alpha=yes
- ;;
- *)
- ace_cv_feature_alpha=no
- ;;
- esac
- ],
- [
- case "$host" in
- *linux*)
- dnl We only define ACE_HAS_ALPHA_TIMER if we are running Linux
- dnl on an Alpha and are using GNU C++!
- if test "$GXX" = yes; then
- AC_DEFINE([ACE_HAS_ALPHA_TIMER], 1,
- [Define to 1 if system should use Alpha's cycle counter])
- fi
- ;;
- esac
- ],)
-
-ACE_CACHE_CHECK([if running on a Power PC],
- [ace_cv_feature_powerpc],[
- case "$host" in
- powerpc*)
- ace_cv_feature_powerpc=yes
- ;;
- *)
- ace_cv_feature_powerpc=no
- ;;
- esac
- ],
- [
- case "$host" in
- *aix*)
- dnl We don't do anything for AIX since AIX already has a
- dnl hi-res timer function!
- ;;
- *)
- dnl Only define ACE_HAS_POWERPC_TIMER when using GNU C++!
- if test "$GXX" = yes; then
- AC_DEFINE([ACE_HAS_POWERPC_TIMER], 1,
- [Define to 1 if system should use PowerPC's cycle counter])
- fi
- ;;
- esac
- ],)
-
-ACE_CACHE_CHECK([if running on a Pentium(tm) processor],
- [ace_cv_feature_pentium],[
- case "$host" in
- i386-* | i486-* |i586-* | i686-*)
-dnl If we do have a pentium, than define ACE_HAS_PENTIUM and add
-dnl gethrtime.cpp to the source list, but only if we're using GNU C++
-dnl since gethrtime.cpp uses assembler code specific to that compiler.
- if test "$GXX" = yes; then
- ace_cv_feature_pentium=yes
- else
- ace_cv_feature_pentium=no
- fi
- ;;
- *)
- ace_cv_feature_pentium=no
- ;;
- esac
- ],
- [
- AC_DEFINE([ACE_HAS_PENTIUM], 1,
- [Define to 1 if system is using Intel Pentium(tm) processor])
- ],)
-AM_CONDITIONAL([ACE_ON_PENTIUM], [test X$ace_cv_feature_pentium = Xyes])
-
-case "$host" in
- i386-* | i486-* | i586-* | i686-* | x86_64-*)
- if test "$GXX" = yes; then
- ace_cv_has_intel_assembly=yes
- else
- ace_cv_has_intel_assembly=no
- fi
- ;;
- *)
- ace_cv_has_intel_assembly=no
- ;;
-esac
-if test "$ace_cv_has_intel_assembly" != "no"; then
- AC_DEFINE([ACE_HAS_INTEL_ASSEMBLY], 1,
- [Define to 1 if the system supports x86/x86_64 inline assembly])
-fi
-
-dnl
-dnl SECTION 14: checks for aggregated features
-dnl TODO: Little by little, get rid of these...
-dnl
-
-
-dnl Macro ACE_HAS_REENTRANT_FUNCTIONS means the following functions
-dnl are usable:
-dnl
-dnl rand_r
-dnl strtok_r
-dnl getpwnam_r (if we don't have, define ACE_LACKS_PWD_REENTRANT_FUNCTIONS)
-dnl ctime_r
-dnl localtime_r
-dnl gmtime_r
-dnl asctime_r
-dnl * getprotobyname_r
-dnl * getprotobynumber_r
-dnl * gethostbyaddr_r
-dnl * gethostbyname_r
-dnl * getservbyname_r
-dnl
-dnl Those marked with '*' are NOT usable if
-dnl ACE_LACKS_NETDB_REENTRANT_FUNCTIONS) is defined.
-dnl
-dnl The time has come to create feature macros for each of these...
-dnl With the separate feature macros, we will define (for now)
-dnl ACE_HAS_REENTRANT_FUNCTIONS only when all of those WITHOUHT a '*'
-dnl are defined. Also, if any of those with '*' are missing, we will
-dnl define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS.
-
-dnl Don't bother with reentrant functions if they are disabled by the user.
-if test "$ace_user_enable_reentrant_funcs" = yes &&
- test "$ac_cv_func_rand_r" = yes &&
- test "$ac_cv_func_strtok_r" = yes &&
- test "$ac_cv_func_ctime_r" = yes &&
- test "$ac_cv_func_localtime_r" = yes &&
- test "$ac_cv_func_gmtime_r" = yes &&
- test "$ac_cv_func_asctime_r" = yes; then
- AC_DEFINE([ACE_HAS_REENTRANT_FUNCTIONS])
- # Explicitly enable reentrant functions if thread support is not enabled.
- if test "$ace_user_enable_threads" = no; then
- ACE_CPPFLAGS="$ACE_CPPFLAGS -D_REENTRANT"
- fi
-fi
-
-dnl Don't bother with reentrant functions if they are disabled by the user.
-if test "$ace_user_enable_reentrant_funcs" = no ||
- test "$ac_cv_func_getprotobyname_r" = no ||
- test "$ac_cv_func_getprotobynumber_r" = no ||
- test "$ac_cv_func_gethostbyaddr_r" = no ||
- test "$ac_cv_func_gethostbyname_r" = no ||
- test "$ac_cv_func_getservbyname_r" = no; then
- AC_DEFINE([ACE_LACKS_NETDB_REENTRANT_FUNCTIONS])
-fi
-
-dnl FIXME!!!
-dnl The following is a kludge until the netdb reentrant function
-dnl number of arguments is handled.
-case "$host" in
- *linux*) AC_DEFINE([ACE_LACKS_NETDB_REENTRANT_FUNCTIONS]);;
- *) ;;
-esac
-
-
-dnl Macro ACE_LACKS_SOME_POSIX_PROTOTYPES implies any of the following
-dnl features:
-dnl
-dnl ! ACE_HAS_MSGSND_MSGBUFP_2
-dnl ! ACE_LACKS_MSGRCV_VOIDP_2
-dnl ! ACE_LACKS_SHMAT_VOIDP_2
-dnl
-dnl So, for now, we define it if any of those were autoconf'ed.
-
-dnl @@ THESE NEED TO BE ADDED AS PROPER CONFIG SETTINGS. --Steve
-dnl if test "$ace_cv_lib_posix_msgsnd_msgbufp_2" = yes ||
-dnl test "$ace_cv_lib_posix_msgrcv_voidp_2" != yes ||
-dnl test "$ace_cv_lib_posix_shmat_voidp_2" != yes ; then
-dnl AC_DEFINE([ACE_LACKS_SOME_POSIX_PROTOTYPES])
-dnl fi
-
-if test "$ac_cv_func_msgctl" = yes &&
- test "$ac_cv_func_msgget" = yes &&
- test "$ac_cv_func_msgrcv" = yes &&
- test "$ac_cv_func_semctl" = yes &&
- test "$ac_cv_func_semget" = yes &&
- test "$ac_cv_func_semop" = yes &&
- test "$ac_cv_func_shmat" = yes &&
- test "$ac_cv_func_shmctl" = yes &&
- test "$ac_cv_func_shmdt" = yes &&
- test "$ac_cv_func_shmget" = yes; then
- AC_DEFINE([ACE_HAS_SYSV_IPC])
-fi
-
-if test "$ac_cv_func_shmat" != yes ||
- test "$ac_cv_func_shmctl" != yes ||
- test "$ac_cv_func_shmdt" != yes ||
- test "$ac_cv_func_shmget" != yes; then
- AC_DEFINE([ACE_LACKS_SYSV_SHMEM])
-fi
-
-dnl Check for what POSIX threads draft we have
-AC_MSG_CHECKING([which POSIX thread library was found])
-
-ace_has_pthreads=no
-
-dnl Check if we have Pthreads Draft 4
-dnl if test "$ac_cv_func_pthread_delay_np" = yes &&
-if test "$ac_cv_func_pthread_mutexattr_create" = yes &&
-dnl test "$ac_cv_func_pthread_mutexattr_setkind_np" = yes &&
- test "$ac_cv_func_pthread_mutexattr_delete" = yes &&
- test "$ac_cv_func_pthread_condattr_delete" = yes &&
- test "$ac_cv_func_pthread_condattr_create" = yes &&
- test "$ac_cv_func_pthread_setprio" = yes &&
- test "$ac_cv_func_pthread_getprio" = yes &&
-dnl test "$ac_cv_func_pthread_getspecific" = yes &&
- test "$ac_cv_func_pthread_setcancel" = yes &&
- test "$ac_cv_func_pthread_setasynccancel" = yes &&
- test "$ac_cv_func_pthread_kill" = yes; then
- ace_has_pthreads=yes
- AC_MSG_RESULT([POSIX Threads Draft 4])
- AC_DEFINE([ACE_HAS_PTHREADS_DRAFT4], 1,
- [Platform supports POSIX Threads .4a Draft 4])
-dnl Check if we have Pthreads Draft 6
-elif test "$ac_cv_func_pthread_mutexattr_init" = yes &&
- test "$ac_cv_func_pthread_mutexattr_destroy" = yes &&
- test "$ac_cv_func_pthread_condattr_destroy" = yes &&
- test "$ac_cv_func_pthread_condattr_init" = yes &&
- test "$ac_cv_func_pthread_attr_setprio" = yes &&
- test "$ac_cv_func_pthread_attr_getprio" = yes &&
- test "$ac_cv_func_pthread_setintr" = yes &&
- test "$ac_cv_func_pthread_setintrtype" = yes; then
- ace_has_pthreads=yes
- AC_MSG_RESULT([POSIX Threads Draft 6])
- AC_DEFINE([ACE_HAS_PTHREADS_DRAFT6], 1,
- [Platform supports POSIX Threads .4a Draft 6])
-dnl Check if we have Pthreads Draft 7
-elif test "$ac_cv_func_pthread_mutexattr_init" = yes &&
- test "$ac_cv_func_pthread_mutexattr_destroy" = yes &&
- test "$ac_cv_func_pthread_condattr_destroy" = yes &&
- test "$ac_cv_func_pthread_condattr_init" = yes &&
- test "$ac_cv_func_pthread_setschedparam" = yes &&
- test "$ac_cv_func_pthread_getschedparam" = yes &&
- test "$ac_cv_func_pthread_setcancelstate" = yes &&
- test "$ac_cv_func_pthread_setcanceltype" = yes &&
- test "$ace_has_sched_yield" != yes; then
- ace_has_pthreads=yes
- AC_MSG_RESULT([POSIX Threads Draft 7])
- AC_DEFINE([ACE_HAS_PTHREADS_DRAFT7], 1,
- [Platform supports POSIX Threads .1c Draft 7])
-dnl Check if we have Pthreads Draft Standard
-elif test "$ac_cv_func_pthread_mutexattr_init" = yes &&
- test "$ac_cv_func_pthread_mutexattr_destroy" = yes &&
- test "$ac_cv_func_pthread_condattr_destroy" = yes &&
- test "$ac_cv_func_pthread_condattr_init" = yes &&
- test "$ac_cv_func_pthread_setschedparam" = yes &&
- test "$ac_cv_func_pthread_getschedparam" = yes &&
- test "$ac_cv_func_pthread_setcancelstate" = yes &&
- test "$ac_cv_func_pthread_setcanceltype" = yes &&
- test "$ace_has_sched_yield" = yes; then
- ace_has_pthreads=yes
- AC_MSG_RESULT([POSIX Threads Draft Standard])
- AC_DEFINE([ACE_HAS_PTHREADS_STD], 1,
- [Platform supports POSIX.1c-1995 threads])
-else
- ace_has_pthreads=no
- AC_MSG_RESULT([none])
-fi dnl PTHREAD DRAFT CHECKS
-
-dnl Check if we have UNIX International threads
-AC_MSG_CHECKING([if a UNIX International thread library was found])
-if test "$ace_has_sthreads" = yes; then
- AC_MSG_RESULT([yes])
-else
- AC_MSG_RESULT([no])
-fi
-
-if test "$ace_user_enable_threads" != yes ||
- test "$ace_has_pthreads" != yes &&
- test "$ace_has_sthreads" != yes; then
- dnl We don't have a usable thread library!
- ace_user_enable_threads=no
- dnl Make sure _REENTRANT and _THREAD_SAFE are not in the
- dnl preprocessor flags since thread support is being disabled.
- dnl Removal of these flags is only performed if the configure script
- dnl added them.
- if test -n "$ACE_THR_CPPFLAGS"; then
-dnl changequote(, )dnl
- CPPFLAGS=`eval "echo $CPPFLAGS | sed -e 's/$ACE_THR_CPPFLAGS//' -e 's/-D_THREAD_SAFE\(=[[0-9]]*\)\?//'"`
-dnl changequote([, ])dnl
- fi
-
- AC_MSG_WARN([It appears that you do NOT have any usable thread libraries])
- AC_MSG_WARN([or thread support was explicitly disabled.])
- AC_MSG_WARN([Disabling thread support.])
- dnl ACE uses different versions of readdir_r depending on the thread
- dnl library being used, i.e. on the ACE_HAS_*THREADS* macros. Since
- dnl it doesn't seem like a good idea to define any ACE_HAS_*THREADS*
- dnl macro if ACE won't be supporting threads, define ACE_LACKS_READDIR_R
- dnl regardless if readdir_r() exists.
- if test "$ac_cv_func_readdir_r" = yes; then
- AC_MSG_WARN([Disabling support for readdir_r() since thread support])
- AC_MSG_WARN([is being disabled.])
- AC_DEFINE([ACE_LACKS_READDIR_R])
- fi dnl test "$ac_cv_func_readdir_r" = yes
-fi dnl
-
-if test "$ace_user_enable_threads" = yes; then
-dnl If we get this far then we have threads.
-dnl FIXME: The "_POSIX" macros may need to be defined _before_ the checks for
-dnl reentrant functions! However, we don't want to define them if
-dnl the UNIX International threads library was detected.
- AC_DEFINE([ACE_HAS_THREADS])
- AC_DEFINE([ACE_MT_SAFE])
- ACE_CPPFLAGS="$ACE_CPPFLAGS $ACE_THR_CPPFLAGS"
-
- if test "$ace_has_pthreads" = yes; then
-
- dnl Check if OS requires non-null status pointer for ::pthread_join ()
- dnl
- dnl This test must be performed after the POSIX threads implementation
- dnl that the platform supports has been determined.
- ACE_CACHE_CHECK([for pthread_join null status pointer support],
- [ace_cv_have_null_status_pthread_join],[
- AC_EGREP_CPP([WE_HAVE_PTHREADS_D4],
- [
-#if defined (ACE_HAS_PTHREADS) && defined (ACE_HAS_PTHREADS_DRAFT4)
-/* This test is only valid for Pthreads Draft 4 */
-WE_HAVE_PTHREADS_D4
-#endif
- ],
- [
- AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#ifndef _REENTRANT
-#define _REENTRANT
-#endif
-
-#include <pthread.h>
-
-/* _THREAD_SAFE is defined in <pthread.h> on some platforms. */
-#ifndef _THREAD_SAFE
-#define _THREAD_SAFE
-#endif
-
-#include <stdio.h>
-
-#ifdef __cplusplus
-extern "C"
-#endif
-void *
-nothing (void *unused)
-{
- return (void *) 34;
-};
-
-int
-main ()
-{
- pthread_attr_t attr;
- pthread_t id;
- void *status;
- int retval = 0;
-
- /* ----- */
- /* We return 0 on error for these calls since we only want to
- return an error status if pthread_join fails. If these calls
- fail then we've got other problems! */
- if (pthread_attr_create (&attr) != 0) return 0 /*1*/;
-
- if (pthread_create (&id, attr, nothing, 0) != 0) return 0 /*2*/;
-
- if (pthread_attr_delete (&attr) != 0) return /*3*/;
- /* ----- */
-
- /* With a second (status) arg of 0, LynxOS 3.0.0 pthread_join ()
- will fail with errno 14 (address fault detected). */
- if (pthread_join (id, 0) == -1) {
- fprintf (stderr, "%s: %d; ", __FILE__, __LINE__);
- perror ("pthread_join");
- retval = 1;
- }
-
- if (pthread_join (id, &status) == -1) {
- fprintf (stderr, "%s: %d; ", __FILE__, __LINE__);
- perror ("pthread_join");
- retval = 2;
- }
-
- return retval;
-}
- ]])],[
- ace_cv_have_null_status_pthread_join=yes
- ],[
- ace_cv_have_null_status_pthread_join=no
- ],[
- dnl If we are cross-compiling let's hope that
- dnl that we have a working null status pointer
- dnl for pthread_join.
- ace_cv_have_null_status_pthread_join=yes
- ])
- ],
- [
- ace_cv_have_null_status_pthread_join=yes
- ])
- ], , [AC_DEFINE([ACE_LACKS_NULL_PTHREAD_STATUS])])
-
- dnl Check if OS supports mutex timeouts
- dnl (e.g. pthread_mutex_timedlock()).
- ACE_CACHE_CHECK([for mutex timeouts],
- [ace_cv_have_mutex_timeouts],[
- AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#ifndef _REENTRANT
-#define _REENTRANT
-#endif
-
-#include <pthread.h>
-
-/* _THREAD_SAFE is defined in <pthread.h> on some platforms. */
-#ifndef _THREAD_SAFE
-#define _THREAD_SAFE
-#endif
-
-#include <stdio.h>
-
-#include <errno.h>
-#include <sys/time.h>
-
-#include <stdlib.h>
-#ifndef ACE_LACKS_UNISTD_H
-# include <unistd.h>
-#endif
-
-pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
-
-#ifdef __cplusplus
-extern "C"
-#endif
-void *threadFunc (void *parm)
-{
- int rc;
- int i;
- struct timespec deltatime;
- struct timeval tv;
-
- if (gettimeofday (&tv, 0) != 0)
- {
- return 0;
- }
-
- deltatime.tv_sec = tv.tv_sec + 5;
- deltatime.tv_nsec = 0;
-
- rc = pthread_mutex_timedlock (&mutex, &deltatime);
-
- if (rc != ETIMEDOUT)
- {
- /* printf("Got an incorrect return code from pthread_mutex_timedlock\n"); */
- }
-
- return 0;
-}
-
-int main (void)
-{
- int rc =0;
- pthread_t thread;
-
- rc = pthread_mutex_lock (&mutex);
- if (rc != 0)
- {
- exit (-1);
- }
-
- rc = pthread_create (&thread, NULL, threadFunc, NULL);
- if (rc != 0)
- {
- exit (-1);
- }
-
- rc = pthread_join (thread, NULL);
- if (rc != 0)
- {
- exit (-1);
- }
-
- pthread_mutex_destroy (&mutex);
-
- return 0;
-}
- ]])],[
- ace_cv_have_mutex_timeouts=yes
- ],[
- ace_cv_have_mutex_timeouts=no
- ],[
- dnl Cross-compiled case
- AC_CHECK_FUNC([pthread_mutex_timedlock],
- [ace_cv_have_mutex_timeouts=yes],
- [ace_cv_have_mutex_timeouts=no])
- ])
- ], [AC_DEFINE([ACE_HAS_MUTEX_TIMEOUTS])],)
-
- dnl Check if platform needs to #include <sched.h> to get thread
- dnl scheduling defs.
- ACE_CACHE_CHECK([if sched.h is needed for thread scheduling definitions],
- [ace_cv_needs_sched_h],
- [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifdef ACE_HAS_STHREADS
-#include <thread.h>
-#endif
-
-#ifdef ACE_HAS_PTHREADS
-#include <pthread.h>
-#endif
- ]], [[
-int foo = SCHED_OTHER;
- ]])],[
- ace_cv_needs_sched_h=no
- ],[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
- [[
-#ifdef ACE_HAS_STHREADS
-#include <thread.h>
-#endif
-
-#ifdef ACE_HAS_PTHREADS
-#include <pthread.h>
-#endif
-
-#include <sched.h>
- ]],
- [[
-int foo = SCHED_OTHER;
- ]])],
- [
- ace_cv_needs_sched_h=yes
- ],
- [
- dnl We're hosed if we get here!
- ace_cv_needs_sched_h=no
- ])
- ])
- ],
- [
- AC_DEFINE([ACE_NEEDS_SCHED_H])
- ],)
-
- dnl Check if platform only supports SCHED_OTHER scheduling policy
- dnl
- dnl This test must be performed after the POSIX threads implementation
- dnl that the platform supports has been determined.
- ACE_CACHE_CHECK([if SCHED_OTHER is only scheduling policy],
- [ace_cv_feature_only_have_sched_other],
- [
- AC_EGREP_CPP([WE_ONLY_HAVE_SCHED_OTHER],
- [
-#ifdef ACE_HAS_STHREADS
-# include <thread.h>
-#endif
-
-#ifdef ACE_HAS_PTHREADS
-# include <pthread.h>
-#endif
-
-#if defined (ACE_NEEDS_SCHED_H)
-# include <sched.h>
-#endif
-
- /* These are ORed so that ACE will not redefine
- any of them if any of them exist. */
-#if !defined (SCHED_FIFO) && \
- !defined (SCHED_RR) && \
- defined (SCHED_OTHER)
- WE_ONLY_HAVE_SCHED_OTHER
-#endif
- ],
- [
- ace_cv_feature_only_have_sched_other=yes
- ],
- [
- AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#ifndef _REENTRANT
-#define _REENTRANT
-#endif
-
-#include <pthread.h>
-
-/* _THREAD_SAFE is defined in <pthread.h> on some platforms. */
-#ifndef _THREAD_SAFE
-#define _THREAD_SAFE
-#endif
-
-#include <stdio.h>
-#include <errno.h>
-
-int main ()
-{
- pthread_attr_t ace_attr;
-
-#if defined (ACE_HAS_PTHREADS_DRAFT4)
- if (pthread_attr_create (&ace_attr) != 0)
-#else
- if (pthread_attr_init (&ace_attr) != 0)
-#endif
- {
- perror ("pthread_attr_init");
- return 0; /* Return "successfully" since only the policy call
- will return with an error for this test. */
- }
-
-#if defined (ACE_HAS_PTHREADS_DRAFT4)
- if (pthread_attr_setsched (&ace_attr, SCHED_FIFO) != 0)
-#else
- if (pthread_attr_setschedpolicy (&ace_attr, SCHED_FIFO) != 0)
-#endif
- {
- perror ("pthread_attr_setschedpolicy");
- return -1;
- }
-
-#if defined (ACE_HAS_PTHREADS_DRAFT4)
- if (pthread_attr_delete (&ace_attr) != 0)
-#else
- if (pthread_attr_destroy (&ace_attr) != 0)
-#endif
- {
- perror ("pthread_attr_destroy");
- return 0; /* Return "successfully" since only the policy call
- will return with an error for this test. */
- }
-
- return 0;
-}
- ]])],[
- ace_cv_feature_only_have_sched_other=no
- ],[
- ace_cv_feature_only_have_sched_other=yes
- ],[
- dnl We only get here if polices other than SCHED_OTHER
- dnl were found in the headers and we are cross-compiling.
- dnl
- dnl If we are cross-compiling let's hope that the
- dnl scheduling policies found in the headers
- dnl besides SCHED_OTHER (e.g. SCHED_FIFO, SCHED_RR)
- dnl are supported.
- ace_cv_feature_only_have_sched_other=no
- ])
- ])
- ], [AC_DEFINE([ACE_HAS_ONLY_SCHED_OTHER])],)
- fi dnl test "$ace_has_pthreads" = yes
-fi dnl test "$ace_user_enable_threads" = yes
-
-
-AC_CHECK_HEADER(libc.h)
-AC_CHECK_HEADER(osfcn.h)
-if test "$ac_cv_header_libc_h" != yes ||
- test "$ac_cv_header_osfcn_h" != yes; then
- AC_DEFINE([ACE_HAS_CPLUSPLUS_HEADERS])
-fi
-
-
-
-if test "$ace_cv_lib_signal_vi1_2" = yes &&
- test "$ace_cv_lib_signal_vi1_ret" = yes &&
- test "$ace_cv_lib_struct_sigaction_vi1_handler" = yes; then
- AC_DEFINE([ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES])
-elif test "$ace_cv_lib_signal_vi1_2" != yes &&
- test "$ace_cv_lib_signal_vv1_2" != yes &&
- test "$ace_cv_lib_signal_vi1a2_2" != yes &&
- test "$ace_cv_lib_signal_va1_2" = yes &&
- test "$ace_cv_lib_signal_vi1_ret" != yes &&
- test "$ace_cv_lib_signal_vv1_ret" != yes &&
- test "$ace_cv_lib_signal_vi1a2_ret" != yes &&
- test "$ace_cv_lib_signal_va1_ret" = yes &&
- test "$ace_cv_lib_struct_sigaction_vi1_handler" != yes &&
- test "$ace_cv_lib_struct_sigaction_vv1_handler" != yes &&
- test "$ace_cv_lib_struct_sigaction_vi1a2_handler" != yes &&
- test "$ace_cv_lib_struct_sigaction_va1_handler" = yes; then
- AC_DEFINE([ACE_HAS_LYNXOS4_SIGNALS])
- AC_DEFINE([ACE_HAS_TANDEM_SIGNALS])
-elif test "$ace_cv_lib_signal_vi1_2" = yes &&
- test "$ace_cv_lib_signal_vi1_ret" = yes &&
- test "$ace_cv_lib_struct_sigaction_vi1_handler" != yes; then
- AC_DEFINE([ACE_HAS_SVR4_SIGNAL_T])
-elif test "$ace_cv_lib_signal_vi1_2" = yes &&
- test "$ace_cv_lib_signal_vv1_ret" = yes &&
- test "$ace_cv_lib_struct_sigaction_vv1_handler" = yes; then
- AC_DEFINE([ACE_HAS_SVR4_SIGNAL_T])
-elif test "$ace_cv_lib_signal_vi1_2" = yes &&
- test "$ace_cv_lib_signal_vi1_ret" != yes &&
- test "$ace_cv_lib_signal_vv1_ret" != yes &&
- test "$ace_cv_lib_signal_vi1a2_ret" != yes &&
- test "$ace_cv_lib_signal_va1_ret" = yes &&
- test "$ace_cv_lib_struct_sigaction_vi1_handler" != yes &&
- test "$ace_cv_lib_struct_sigaction_vv1_handler" != yes &&
- test "$ace_cv_lib_struct_sigaction_vi1a2_handler" != yes &&
- test "$ace_cv_lib_struct_sigaction_va1_handler" = yes; then
- AC_DEFINE([ACE_HAS_UNIXWARE_SVR4_SIGNAL_T])
-fi dnl ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
-
-dnl
-dnl SECTION 15: Final checks
-dnl
-
-dnl Make final substitutions and defines
-if test "$ace_u_long_long_typedef_set" = yes; then
- AC_DEFINE_UNQUOTED([ACE_INT64_TYPE], [$ACE_INT64],
- [Define to signed 64 bit integer type])
- AC_DEFINE_UNQUOTED([ACE_UINT64_TYPE], [$ACE_UINT64],
- [Define to unsigned 64 bit integer type])
-fi
-
-dnl Combine package set flags with user's flags.
-dnl User's flags go after package flags to allow user to override
-dnl package defaults.
-dnl X_CFLAGS comes from AC_PATH_XTRA. It may include, for example,
-dnl additional include file paths or macros that need to be defined
-dnl in order for X11 related files to be compiled properly.
-if test "$ace_user_enable_optimize"; then
- dnl We want OCXXFLAGS to be on the end, so we use CXXFLAGS,
- dnl not ACE_CXXFLAGS!
- CXXFLAGS="$CXXFLAGS $OCXXFLAGS"
- CFLAGS="$CFLAGS $OCFLAGS"
-fi
-CXXFLAGS="$ACE_CXXFLAGS $X_CFLAGS $CXXFLAGS"
-CFLAGS="$ACE_CFLAGS $X_CFLAGS $CFLAGS"
-CPPFLAGS="$ACE_CPPFLAGS $CPPFLAGS"
-LDFLAGS="$ACE_LDFLAGS $LDFLAGS"
-
-dnl The following tests should be performed _after_ the bulk of the
-dnl ACE macros have been defined.
-
-dnl Flush the cache so that it is easier to debug the configure script
-dnl if the following integrity check fails.
-AC_CACHE_SAVE
-
-dnl Verify the integrity of the current configuration.
-ACE_CACHE_CHECK([if generated ACE configuration is usable],
- [ace_cv_configuration_is_usable],
- [
- dnl We want an empty ace/config.h to prevent multiple defines
- dnl with Autoconf's confdefs.h
- ACE_USE_TEMP_FILE([ace/config.h],
- [
- dnl Now run the compilation test
- ACE_TRY_COMPILE([-I. -I${srcdir}],
- [
-// Include ".cpp" files instead of headers so that we can get a more
-// thorough test compile.
-#include "ace/Time_Value.cpp"
-#include "ace/Reactor.cpp"
- ],
- [
- ACE_Time_Value t = ACE_OS::gettimeofday ();
- t++;
-
- ACE_Reactor * r = ACE_Reactor::instance ();
-
- (void) r->close ();
- ],
- [
- ace_cv_configuration_is_usable=yes
- ],
- [
- ace_cv_configuration_is_usable=no
- ])
- ])
- ],
- [
- dnl Looks good! Do nothing.
- dnl It appears that ace/OS.cpp compiled. If it didn't compile then
- dnl there would be no chance that the rest of ACE would compile.
- ],
- [
- AC_MSG_WARN(
- [
-The generated configuration appears to be unusable. Please verify
-that your system path and environment variables are correct. If they
-appear to be correct then please send the maintainer of this configure
-script $ACE_CONFIGURE_MAINTAINER the *COMPRESSED* 'config.log' file,
-the generated ace/config.h file and the following information:
-
- ACE 'configure' Script Information
- ==================================
- [RCS] translit([$Id$], [$"])
-
-
- ACE Version: ACE_VERSION
- C++ Compiler: $CXX
- C++ Preprocessor: $CXXCPP
- C++ Flags: $CXXFLAGS
- Preprocessor Flags: $CPPFLAGS
- Linker: $LD
- Linker Flags: $LDFLAGS
- Libraries: $LIBS
- System type information:
- Build: $build Host: $host
-
-In the meantime, please use the stock ACE build procedure detailed in
-the file 'ACE-INSTALL.html'.
- ])
- ])
-
-dnl "
-
-dnl Check for ACE_IOStream support
-ACE_CACHE_CHECK([for ACE_IOStream support],
- [ace_cv_feature_ace_iostream],
- [
- dnl We want an empty ace/config.h to prevent multiple defines
- dnl with Autoconf's confdefs.h
- ACE_USE_TEMP_FILE([ace/config.h],
- [
- dnl Now run the compilation test
- ACE_TRY_COMPILE([-I. -I${srcdir}],
- [
-#include "ace/IOStream.cpp"
- ],
- [
- int a = 0; a += 1;
- ],
- [
- ace_cv_feature_ace_iostream=yes
- ],
- [
- ace_cv_feature_ace_iostream=no
- ])
- ])
- ], , [AC_DEFINE([ACE_LACKS_ACE_IOSTREAM])])
-
-dnl Check if ACE needs conversion to pass ACE_TTY_IO to DEV_Connector
-ACE_CACHE_CHECK([if ACE needs conversion to pass ACE_TTY_IO to DEV_Connector],
- [ace_cv_lib_need_dev_io_conv],
- [
- dnl We want an empty ace/config.h to prevent multiple defines
- dnl with Autoconf's confdefs.h
- ACE_USE_TEMP_FILE([ace/config.h],
- [
- dnl Now run the compilation test
- ACE_TRY_COMPILE([-I. -I${srcdir}],
- [
-#include "ace/OS.cpp"
- ],
- [
- int a=0; a += 1;
- ],
- [
- ace_cv_lib_need_dev_io_conv=no
- ],
- [
- dnl Now check if ACE_NEEDS_DEV_IO_CONVERSION makes
- dnl compilation work!
- ACE_TRY_COMPILE([-I. -I${srcdir}],
- [
-#define ACE_NEEDS_DEV_IO_CONVERSION
-#include "ace/DEV_Connector.cpp"
- ],
- [
- int a=0; a += 1;
- ],
- [
- ace_cv_lib_need_dev_io_conv=yes
- ],
- [
- dnl If we get here, then we have no idea what is wrong!
- ace_cv_lib_need_dev_io_conv=no
- ])
- ])
- ])
- ], [AC_DEFINE([ACE_NEEDS_DEV_IO_CONVERSION])],)
-
-dnl End ACE macro tests!
-
-dnl Substitute whatever X libraries ACE needs, if any.
-AC_SUBST([ACE_XLIBS])
-
-dnl Prepend purify and quantify command lines if purify and quantify are
-dnl enabled. Otherwise, PURELINK and PRELINK will just be "blank."
-LD="$PURELINK $PRELINK $LD"
-dnl LDFLAGS="$ACE_LDFLAGS $LDFLAGS"
-
-dnl AC_SUBST(LDFLAGS)
-dnl AC_SUBST(LIBOBJS)
-
-dnl Force CXXFLAGS to be substituted in Makefiles that don't "need" them.
-AC_SUBST([CXXFLAGS])
-
-dnl Precompute the absolute pathname of the ACE tests directory so
-dnl that we can avoid using GNU Make extensions in the ACE tests
-dnl Makefile.
-ACE_TESTS_DIR=`pwd`/tests
-AC_SUBST([ACE_TESTS_DIR])
-
-dnl
-dnl SECTION 16: AC_CONFIG_FILES([FILE...])
-dnl
-dnl
-dnl We can finally create all the files listed here; Makefile is
-dnl created from Makefile.in, etc. Top-level Makefiles should be
-dnl created first.
-
-dnl Makefile
-dnl ace/Makefile
-dnl apps/Makefile
-dnl apps/gperf/Makefile
-dnl apps/gperf/src/Makefile
-dnl man/Makefile
-dnl man/man3/Makefile
-dnl netsvcs/Makefile
-dnl netsvcs/clients/Makefile
-dnl netsvcs/clients/Logger/Makefile
-dnl netsvcs/clients/Naming/Makefile
-dnl netsvcs/clients/Naming/Client/Makefile
-dnl netsvcs/clients/Naming/Dump_Restore/Makefile
-dnl netsvcs/clients/Tokens/Makefile
-dnl netsvcs/clients/Tokens/collection/Makefile
-dnl netsvcs/clients/Tokens/deadlock/Makefile
-dnl netsvcs/clients/Tokens/invariant/Makefile
-dnl netsvcs/clients/Tokens/manual/Makefile
-dnl netsvcs/clients/Tokens/mutex/Makefile
-dnl netsvcs/clients/Tokens/rw_lock/Makefile
-dnl netsvcs/lib/Makefile
-dnl netsvcs/servers/Makefile
-dnl tests/Makefile
-
-AC_CONFIG_FILES([
- Makefile
- ace/Makefile
- ace/ETCL/Makefile
- ace/Monitor_Control/Makefile
- ace/QoS/Makefile
- ace/SSL/Makefile
- apps/Makefile
- apps/Gateway/Makefile
- apps/Gateway/Gateway/Makefile
- apps/Gateway/Peer/Makefile
- apps/JAWS/Makefile
- apps/JAWS/clients/Makefile
- apps/JAWS/clients/Blobby/Makefile
- apps/JAWS/clients/Caching/Makefile
- apps/JAWS/server/Makefile
- apps/JAWS2/Makefile
- apps/JAWS2/HTTPU/Makefile
- apps/JAWS2/JAWS/Makefile
- apps/JAWS3/Makefile
- apps/JAWS3/jaws3/Makefile
- apps/drwho/Makefile
- apps/gperf/Makefile
- apps/gperf/src/Makefile
- apps/gperf/tests/Makefile
- apps/mkcsregdb/Makefile
- apps/soreduce/Makefile
- bin/Makefile
- bin/PerlACE/Makefile
- netsvcs/Makefile
- netsvcs/lib/Makefile
- netsvcs/clients/Makefile
- netsvcs/clients/Logger/Makefile
- netsvcs/clients/Naming/Makefile
- netsvcs/clients/Naming/Client/Makefile
- netsvcs/clients/Naming/Dump_Restore/Makefile
- netsvcs/servers/Makefile
- websvcs/Makefile
- websvcs/lib/Makefile
- websvcs/tests/Makefile
-])
-
-dnl Configure examples if configured...
-if test "$ace_build_examples" = yes; then
- AC_CONFIG_FILES([
- examples/Makefile
- examples/APG/Makefile
- examples/APG/Active_Objects/Makefile
- examples/APG/Config/Makefile
- examples/APG/Containers/Makefile
- examples/APG/Logging/Makefile
- examples/APG/Misc_IPC/Makefile
- examples/APG/Naming/Makefile
- examples/APG/Proactor/Makefile
- examples/APG/Processes/Makefile
- examples/APG/Reactor/Makefile
- examples/APG/Shared_Memory/Makefile
- examples/APG/Signals/Makefile
- examples/APG/Sockets/Makefile
- examples/APG/Streams/Makefile
- examples/APG/Svc_Config/Makefile
- examples/APG/ThreadManagement/Makefile
- examples/APG/ThreadPools/Makefile
- examples/APG/ThreadSafety/Makefile
- examples/APG/Threads/Makefile
- examples/APG/Timers/Makefile
- examples/ASX/Makefile
- examples/ASX/CCM_App/Makefile
- examples/ASX/Event_Server/Makefile
- examples/ASX/Event_Server/Event_Server/Makefile
- examples/ASX/Event_Server/Transceiver/Makefile
- examples/ASX/Message_Queue/Makefile
- examples/ASX/UPIPE_Event_Server/Makefile
- examples/Bounded_Packet_Relay/Makefile
- examples/C++NPv1/Makefile
- examples/C++NPv2/Makefile
- examples/ConfigViewer/Makefile
- examples/Connection/Makefile
- examples/Connection/blocking/Makefile
- examples/Connection/misc/Makefile
- examples/Connection/non_blocking/Makefile
- examples/DLL/Makefile
- examples/Export/Makefile
- examples/IOStream/Makefile
- examples/IOStream/client/Makefile
- examples/IOStream/server/Makefile
- examples/IPC_SAP/Makefile
- examples/IPC_SAP/ATM_SAP/Makefile
- examples/IPC_SAP/DEV_SAP/Makefile
- examples/IPC_SAP/DEV_SAP/reader/Makefile
- examples/IPC_SAP/DEV_SAP/writer/Makefile
- examples/IPC_SAP/FIFO_SAP/Makefile
- examples/IPC_SAP/FILE_SAP/Makefile
- examples/IPC_SAP/SOCK_SAP/Makefile
- examples/IPC_SAP/SPIPE_SAP/Makefile
- examples/IPC_SAP/SSL_SAP/Makefile
- examples/IPC_SAP/TLI_SAP/Makefile
- examples/IPC_SAP/UPIPE_SAP/Makefile
- examples/Log_Msg/Makefile
- examples/Logger/Makefile
- examples/Logger/Acceptor-server/Makefile
- examples/Logger/client/Makefile
- examples/Logger/simple-server/Makefile
- examples/Map_Manager/Makefile
- examples/Mem_Map/Makefile
- examples/Mem_Map/IO-tests/Makefile
- examples/Mem_Map/file-reverse/Makefile
- examples/Misc/Makefile
- examples/Monitor/Makefile
- examples/Monitor/Bytes_Sent/Makefile
- examples/Monitor/Message_Queue_Size/Makefile
- examples/Monitor/Constraint/Makefile
- examples/Monitor/CPU_Load/Makefile
- examples/Monitor/Num_Threads/Makefile
- examples/Monitor/Group/Makefile
- examples/Monitor/Memory_Usage/Makefile
- examples/NT_Service/Makefile
- examples/Naming/Makefile
- examples/OS/Makefile
- examples/OS/Process/Makefile
- examples/QOS/Makefile
- examples/QOS/Change_Receiver_FlowSpec/Makefile
- examples/QOS/Change_Sender_TSpec/Makefile
- examples/QOS/Diffserv/Makefile
- examples/QOS/Simple/Makefile
- examples/Reactor/Makefile
- examples/Reactor/Dgram/Makefile
- examples/Reactor/FIFO/Makefile
- examples/Reactor/Misc/Makefile
- examples/Reactor/Multicast/Makefile
- examples/Reactor/Ntalker/Makefile
- examples/Reactor/Proactor/Makefile
- examples/Reactor/TP_Reactor/Makefile
- examples/Reactor/WFMO_Reactor/Makefile
- examples/Registry/Makefile
- examples/Semaphores/Makefile
- examples/Service_Configurator/Makefile
- examples/Service_Configurator/IPC-tests/Makefile
- examples/Service_Configurator/IPC-tests/client/Makefile
- examples/Service_Configurator/IPC-tests/server/Makefile
- examples/Service_Configurator/Misc/Makefile
- examples/Shared_Malloc/Makefile
- examples/Shared_Memory/Makefile
- examples/Smart_Pointers/Makefile
- examples/Synch/Makefile
- examples/System_V_IPC/Makefile
- examples/System_V_IPC/SV_Message_Queues/Makefile
- examples/System_V_IPC/SV_Semaphores/Makefile
- examples/Threads/Makefile
- examples/Timer_Queue/Makefile
- examples/Web_Crawler/Makefile
- ])
-fi
-
-dnl Configure tests if configured...
-if test "$ace_build_tests" = yes; then
- AC_CONFIG_FILES([
- performance-tests/Makefile
- performance-tests/Misc/Makefile
- performance-tests/SCTP/Makefile
- performance-tests/Server_Concurrency/Leader_Follower/Makefile
- performance-tests/Server_Concurrency/Makefile
- performance-tests/Server_Concurrency/Queue_Based_Workers/Makefile
- performance-tests/Synch-Benchmarks/Base_Test/Makefile
- performance-tests/Synch-Benchmarks/Makefile
- performance-tests/Synch-Benchmarks/Perf_Test/Makefile
- performance-tests/Synch-Benchmarks/Synch_Lib/Makefile
- performance-tests/TCP/Makefile
- performance-tests/UDP/Makefile
- tests/Makefile
- tests/SSL/Makefile
- ])
-fi
-
-dnl Configure subdirectories if they are present.
-if test -d $srcdir/ACEXML; then
- AC_CONFIG_FILES([
- ACEXML/Makefile
- ACEXML/common/Makefile
- ACEXML/parser/Makefile
- ACEXML/parser/parser/Makefile
- ACEXML/apps/Makefile
- ACEXML/apps/svcconf/Makefile
- ACEXML/examples/Makefile
- ACEXML/examples/SAXPrint/Makefile
- ACEXML/tests/Makefile
- ACEXML/tests/util/Makefile
- ])
- AC_SUBST([ACEXML],[ACEXML])
-fi
-
-if test -d $srcdir/ASNMP; then
- AC_CONFIG_FILES([
- ASNMP/Makefile
- ASNMP/asnmp/Makefile
- ASNMP/agent/Makefile
- ASNMP/examples/Makefile
- ASNMP/examples/get/Makefile
- ASNMP/examples/next/Makefile
- ASNMP/examples/set/Makefile
- ASNMP/examples/trap/Makefile
- ASNMP/examples/walk/Makefile
- ASNMP/tests/Makefile
- ])
- AC_SUBST([ASNMP],[ASNMP])
-fi
-
-if test -d $srcdir/Kokyu; then
- AC_CONFIG_FILES([
- Kokyu/Makefile
- Kokyu/tests/Makefile
- Kokyu/tests/DSRT_MIF/Makefile
- Kokyu/tests/EDF/Makefile
- Kokyu/tests/FIFO/Makefile
- ])
- AC_SUBST([KOKYU],[Kokyu])
-fi
-
-if test -d $srcdir/protocols; then
- AC_CONFIG_FILES([
- protocols/Makefile
- protocols/ace/Makefile
- protocols/ace/HTBP/Makefile
- protocols/ace/RMCast/Makefile
- protocols/ace/TMCast/Makefile
- ])
-
- dnl Configure examples if configured...
- if test "$ace_build_examples" = yes; then
- AC_CONFIG_FILES([
- protocols/examples/Makefile
- protocols/examples/RMCast/Makefile
- protocols/examples/RMCast/Send_Msg/Makefile
- protocols/examples/TMCast/Makefile
- protocols/examples/TMCast/Member/Makefile
- ])
- fi
-
- dnl Configure tests if configured...
- if test "$ace_build_tests" = yes; then
- AC_CONFIG_FILES([
- protocols/tests/HTBP/Makefile
- protocols/tests/HTBP/Reactor_Tests/Makefile
- protocols/tests/HTBP/Send_Large_Msg/Makefile
- protocols/tests/HTBP/Send_Recv_Tests/Makefile
- protocols/tests/HTBP/ping/Makefile
- protocols/tests/Makefile
- protocols/tests/RMCast/Makefile
- ])
- fi
- AC_SUBST([protocols],[protocols])
-fi
-
-dnl Note that the "ACE_VERSION" in the message below is an M4 macro
-dnl that expands to the version of ACE being configured.
-AC_CONFIG_COMMANDS([default],[
- echo ""
- echo "Configuration of ACE ACE_VERSION is now complete."
- echo ""
- ],[])
-AC_OUTPUT
diff --git a/ACE/debian/cmp-autoconf-regular.sh b/ACE/debian/cmp-autoconf-regular.sh
deleted file mode 100755
index a0e5f19b192..00000000000
--- a/ACE/debian/cmp-autoconf-regular.sh
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/bin/sh
-
-usage() {
- cat >&2 << EOF
-usage: $0 <first> <second>
-compares ACE config.h files (using cpp)
-e.g.: $0 ACE_wrappers/ace/config-linux.h objdir/ace/config.h
-EOF
-}
-
-report_to() {
- g++ -E -DACE_HAS_LINUX_NPTL -dM -I"$ACE_ROOT" $1 | \
- grep '^#define ACE' | grep -v '^#define ACE_CONFIG' | \
- sed -e 's/^#define \+\([A-Z0-9_]\+\) *$/#define \1 1/g' | \
- sort >> $2
-}
-
-if test "a$ACE_ROOT" = "a"; then
- echo "$0: please define ACE_ROOT" >&2
- exit 1
-fi
-
-if test "$#" -ne 2; then
- usage
- exit 2
-fi
-
-ONE_TMP=`mktemp -t ace_cmp_one.XXXXXXXXXX` || exit 1
-TWO_TMP=`mktemp -t ace_cmp_two.XXXXXXXXXX` || exit 1
-
-trap "rm $ONE_TMP $TWO_TMP" EXIT
-
-report_to $1 $ONE_TMP
-report_to $2 $TWO_TMP
-
-diff -u $ONE_TMP $TWO_TMP
-
diff --git a/ACE/debian/libace-6.0.4.docs b/ACE/debian/libace-6.0.4.docs
deleted file mode 100644
index 3bdab5b0089..00000000000
--- a/ACE/debian/libace-6.0.4.docs
+++ /dev/null
@@ -1,8 +0,0 @@
-README
-VERSION
-AUTHORS
-docs/FAQ
-PROBLEM-REPORT-FORM
-THANKS
-VERSION
-NEWS
diff --git a/ACE/debian/libace-flreactor-6.0.4.install b/ACE/debian/libace-flreactor-6.0.4.install
deleted file mode 100644
index 528836aacee..00000000000
--- a/ACE/debian/libace-flreactor-6.0.4.install
+++ /dev/null
@@ -1 +0,0 @@
-usr/lib/libACE_FlReactor-*.so
diff --git a/ACE/debian/libace-inet-6.0.4.install b/ACE/debian/libace-inet-6.0.4.install
deleted file mode 100644
index 59a73a509d0..00000000000
--- a/ACE/debian/libace-inet-6.0.4.install
+++ /dev/null
@@ -1 +0,0 @@
-usr/lib/libACE_INet-*.so
diff --git a/ACE/debian/libace-ssl-6.0.4.install b/ACE/debian/libace-ssl-6.0.4.install
deleted file mode 100644
index 8df45a6d55f..00000000000
--- a/ACE/debian/libace-ssl-6.0.4.install
+++ /dev/null
@@ -1 +0,0 @@
-usr/lib/libACE_SSL-*.so
diff --git a/ACE/debian/libace-tkreactor-6.0.4.install b/ACE/debian/libace-tkreactor-6.0.4.install
deleted file mode 100644
index 12ab35062d2..00000000000
--- a/ACE/debian/libace-tkreactor-6.0.4.install
+++ /dev/null
@@ -1 +0,0 @@
-usr/lib/libACE_TkReactor-*.so
diff --git a/ACE/debian/libacexml-6.0.4.install b/ACE/debian/libacexml-6.0.4.install
deleted file mode 100644
index d3e912ffa51..00000000000
--- a/ACE/debian/libacexml-6.0.4.install
+++ /dev/null
@@ -1,3 +0,0 @@
-usr/lib/libACEXML_XML_Svc_Conf_Parser-*.so
-usr/lib/libACEXML-*.so
-usr/lib/libACEXML_Parser-*.so
diff --git a/ACE/debian/libkokyu-6.0.4.docs b/ACE/debian/libkokyu-6.0.4.docs
deleted file mode 100644
index e8869c513b2..00000000000
--- a/ACE/debian/libkokyu-6.0.4.docs
+++ /dev/null
@@ -1 +0,0 @@
-Kokyu/README
diff --git a/ACE/debian/libkokyu-6.0.4.install b/ACE/debian/libkokyu-6.0.4.install
deleted file mode 100644
index 62854308f96..00000000000
--- a/ACE/debian/libkokyu-6.0.4.install
+++ /dev/null
@@ -1 +0,0 @@
-usr/lib/libKokyu-*.so
diff --git a/ACE/debian/libtao-foxresource-2.0.4.install b/ACE/debian/libtao-foxresource-2.0.4.install
deleted file mode 100644
index 6ceb47601aa..00000000000
--- a/ACE/debian/libtao-foxresource-2.0.4.install
+++ /dev/null
@@ -1 +0,0 @@
-usr/lib/libTAO_FoxResource-*.so
diff --git a/ACE/m4/ace.m4 b/ACE/m4/ace.m4
deleted file mode 100644
index c4ef3353ae7..00000000000
--- a/ACE/m4/ace.m4
+++ /dev/null
@@ -1,1772 +0,0 @@
-dnl -------------------------------------------------------------------------
-dnl $Id$
-dnl
-dnl ace.m4
-dnl
-dnl ACE M4 include file which contains ACE specific M4 macros
-dnl for enabling/disabling certain ACE features.
-dnl
-dnl -------------------------------------------------------------------------
-
-dnl Copyright (C) 1998, 1999, 2000, 2002 Ossama Othman
-dnl
-dnl All Rights Reserved
-dnl
-dnl This library is free software; you can redistribute it and/or
-dnl modify it under the current ACE distribution terms.
-dnl
-dnl This library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
-
-dnl Macros that add ACE configuration options to a `configure' script.
-dnl ACE_CONFIGURATION_OPTIONS
-AC_DEFUN([ACE_CONFIGURATION_OPTIONS],
-[
- dnl There's no TAO support anywhere here, but these conditionals need
- dnl to be here to satisfy MPC's generated conditionals.
- AM_CONDITIONAL([BUILD_ACE_FOR_TAO], false)
- AM_CONDITIONAL([BUILD_CORBA_E_COMPACT], false)
-
- dnl This one is just wrong... this is a feature test and should not be
- dnl an MPC 'avoids' but I don't have time to go fix all that, so just
- dnl squash it here.
- AM_CONDITIONAL([BUILD_OLD_STDSTREAM], false)
-
- AC_ARG_ENABLE([ace-codecs],
- AS_HELP_STRING(--enable-ace-codecs,build ACE with codecs support [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_ace_codecs=yes
- ;;
- no)
- ace_user_enable_ace_codecs=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-ace-codecs])
- ;;
- esac
- ],
- [
- ace_user_enable_ace_codecs=yes
- ])
- AM_CONDITIONAL([BUILD_ACE_CODECS], [test X$ace_user_enable_ace_codecs = Xyes])
-
- AC_ARG_ENABLE([ace-filecache],
- AS_HELP_STRING(--enable-ace-filecache,build ACE_Filecache support [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_ace_filecache=yes
- ;;
- no)
- ace_user_enable_ace_filecache=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-ace-filecache])
- ;;
- esac
- ],
- [
- dnl Enable ACE_Filecache support by default since it's never turned off
- dnl in the ACE lib itself. Just required for some things like JAWS.
- ace_user_enable_ace_filecache=yes
- ])
- AM_CONDITIONAL([BUILD_ACE_FILECACHE], [test X$ace_user_enable_ace_filecache = Xyes])
-
- dnl This is odd, yes, but the MPC switch is backwards from what's
- dnl usually intended.
- AC_ARG_ENABLE([ace-inet],
- AS_HELP_STRING(--enable-ace-inet,build ACE with protocols/INet component [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_disable_ace_inet=no
- ;;
- no)
- ace_user_disable_ace_inet=yes
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-ace-inet])
- ;;
- esac
- ],
- [
- ace_user_disable_ace_inet=no
- ])
- AM_CONDITIONAL([BUILD_EXCLUDE_INET], [test X$ace_user_disable_ace_inet = Xyes])
-
- AC_ARG_ENABLE([ace-other],
- AS_HELP_STRING(--enable-ace-other,build ACE with all misc pieces [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_ace_other=yes
- ;;
- no)
- ace_user_enable_ace_other=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-ace-other])
- ;;
- esac
- ],
- [
- ace_user_enable_ace_other=yes
- ])
- AM_CONDITIONAL([BUILD_ACE_OTHER], [test X$ace_user_enable_ace_other = Xyes])
-
- AC_ARG_ENABLE([ace-token],
- AS_HELP_STRING(--enable-ace-token,build ACE with tokens support [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_ace_token=yes
- ;;
- no)
- ace_user_enable_ace_token=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-ace-token])
- ;;
- esac
- ],
- [
- ace_user_enable_ace_token=yes
- ])
- AM_CONDITIONAL([BUILD_ACE_TOKEN], [test X$ace_user_enable_ace_token = Xyes])
-
- AC_ARG_ENABLE([ace-uuid],
- AS_HELP_STRING(--enable-ace-uuid,build ACE with UUID support [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_ace_uuid=yes
- ;;
- no)
- ace_user_enable_ace_uuid=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-ace-uuid])
- ;;
- esac
- ],
- [
- ace_user_enable_ace_uuid=yes
- ])
- AM_CONDITIONAL([BUILD_ACE_UUID], [test X$ace_user_enable_ace_uuid = Xyes])
-
- AC_ARG_ENABLE([alloca],
- AS_HELP_STRING(--enable-alloca,compile with alloca() support [[[no]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_alloca=yes
- ;;
- no)
- ace_user_enable_alloca=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-alloca])
- ;;
- esac
- ],
- [
- dnl Disable alloca() support by default since its use is generally
- dnl not recommended.
- ace_user_enable_alloca=no
- ])
-
- AC_ARG_ENABLE([rwho],
- AS_HELP_STRING(--enable-rwho,build the distributed rwho program [[[no]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_rwho=yes
- ;;
- no)
- ace_user_enable_rwho=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-rwho])
- ;;
- esac
- ],)
- AM_CONDITIONAL([BUILD_RWHO], [test X$ace_user_enable_rwho = Xyes])
-
- AC_ARG_ENABLE([ipv4-ipv6],
- AS_HELP_STRING(--enable-ipv4-ipv6,compile with IPv4/IPv6 migration support [[[no]]]),
- [
- case "${enableval}" in
- yes)
- AC_DEFINE(ACE_HAS_IPV6)
- AC_DEFINE(ACE_USES_IPV4_IPV6_MIGRATION)
- ;;
- no)
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-ipv4-ipv6])
- ;;
- esac
- ],)
-
- AC_ARG_ENABLE([ipv6],
- AS_HELP_STRING(--enable-ipv6,compile with IPv6 support [[[no]]]),
- [
- case "${enableval}" in
- yes)
- AC_DEFINE(ACE_HAS_IPV6)
- ace_user_enable_ipv6=yes
- ;;
- no)
- ace_user_enable_ipv6=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-ipv6])
- ;;
- esac
- ],)
- AM_CONDITIONAL([BUILD_IPV6], [test X$ace_user_enable_ipv6 = Xyes])
-
- AC_ARG_ENABLE([log-msg-prop],
- AS_HELP_STRING(--enable-log-msg-prop,enable threads inheriting ACE_Log_Msg properties from parent thread [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- dnl nothing to do
- ;;
- no)
- AC_DEFINE(ACE_THREADS_DONT_INHERIT_LOG_MSG)
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-log-msg-prop])
- ;;
- esac
- ],)
-
- AC_ARG_ENABLE([logging],
- AS_HELP_STRING(--enable-logging,enable ACE logging macros [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- dnl nothing to do
- ;;
- no)
- AC_DEFINE([ACE_NLOGGING])
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-logging])
- ;;
- esac
- ],)
-
- AC_ARG_ENABLE([malloc-stats],
- AS_HELP_STRING(--enable-malloc-stats,enable malloc statistics collection [[[no]]]),
- [
- case "${enableval}" in
- yes)
- AC_DEFINE([ACE_HAS_MALLOC_STATS])
- ;;
- no)
- dnl nothing to do
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-malloc-stats])
- ;;
- esac
- ],)
-
- AC_ARG_ENABLE([pi-pointers],
- AS_HELP_STRING(--enable-pi-pointers,enable pos. indep. pointers [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- AC_DEFINE([ACE_HAS_POSITION_INDEPENDENT_POINTERS])
- ;;
- no)
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-pi-pointers])
- ;;
- esac
- ],
- [
- AC_DEFINE([ACE_HAS_POSITION_INDEPENDENT_POINTERS])
- ])
-
- AC_ARG_ENABLE([posix-sem-timeout-emulation],
- AS_HELP_STRING(--enable-posix-sem-timeout-emulation,enable POSIX semaphore timeout emulation [[[no]]]),
- [
- case "${enableval}" in
- yes)
- AC_DEFINE([ACE_DISABLE_POSIX_SEM_TIMEOUT_EMULATION])
- ;;
- no)
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-posix-sem-timeout-emulation])
- ;;
- esac
- ],)
-
- AC_ARG_ENABLE([probe],
- AS_HELP_STRING(--enable-probe,enable ACE_Timeprobes [[[no]]]),
- [
- case "${enableval}" in
- yes)
- AC_DEFINE([ACE_COMPILE_TIMEPROBES])
- ;;
- no)
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-probe])
- ;;
- esac
- ],)
-
- AC_ARG_ENABLE([static-obj-mgr],
- AS_HELP_STRING(--enable-static-obj-mgr,enable static Object_Manager [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- dnl nothing to do
- ;;
- no)
- AC_DEFINE([ACE_HAS_NONSTATIC_OBJECT_MANAGER])
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-static-obj-mgr])
- ;;
- esac
- ],)
-
-
- AC_ARG_ENABLE([threads],
- AS_HELP_STRING(--enable-threads,enable thread support [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_threads=yes
- ;;
- no)
- ace_user_enable_threads=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-threads])
- ;;
- esac
- ],
- [
- ace_user_enable_threads=yes
- ])
- AM_CONDITIONAL([BUILD_THREADS], [test X$ace_user_enable_threads = Xyes])
-
- AC_ARG_ENABLE([pthreads],
- AS_HELP_STRING(--enable-pthreads,enable POSIX thread (Pthreads) support [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_pthreads=yes
- ;;
- no)
- ace_user_enable_pthreads=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-pthreads])
- ;;
- esac
- ],
- [
- ace_user_enable_pthreads=yes
- ])
-
- AC_ARG_ENABLE([aio],
- AS_HELP_STRING(--enable-aio,enable aio support [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_aio=yes
- ;;
- no)
- ace_user_enable_aio=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-aio])
- ;;
- esac
- ],
- [
- ace_user_enable_aio=yes
- ])
-
- AC_ARG_ENABLE([uithreads],
- AS_HELP_STRING(--enable-uithreads,enable UNIX International thread support [[[no]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_uithreads=yes
- ;;
- no)
- ace_user_enable_uithreads=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-uithreads])
- ;;
- esac
- ],
- [
- dnl The default is to disable UI threads. However, on Solaris, we
- dnl enable it by default since it's functionality is very useful and
- dnl has traditionally been enabled in ACE.
- case "$host" in
- *solaris2*)
- ace_user_enable_uithreads=yes
- AC_MSG_NOTICE([[--enable-uithreads enabled by default for Solaris; use --enable-uithreads=no to disable it.]])
- ;;
- *)
- ace_user_enable_uithreads=no
- ;;
- esac
- ])
-
- AC_ARG_ENABLE([verb-not-sup],
- AS_HELP_STRING(--enable-verb-not-sup,enable verbose ENOTSUP reports [[[no]]]),
- [
- case "${enableval}" in
- yes)
- AC_DEFINE([ACE_HAS_VERBOSE_NOTSUP])
- ;;
- no)
- dnl Do nothing
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-verb-not-sup])
- ;;
- esac
- ],)
-
- AC_ARG_ENABLE([rcsid],
- AS_HELP_STRING(--enable-rcsid,compile RCS id strings into object files [[[no]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_rcsid=yes
- ;;
- no)
- ace_user_enable_rcsid=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-rcsid])
- ;;
- esac
- ])
- if test X$ace_user_enable_rcsid = Xyes; then
- AC_DEFINE(ACE_USE_RCSID, 1,
- [Define to 1 to embed RCS ID strings into compiled object files.])
- fi
-
- dnl The ace/config-all.h file defaults ACE_NTRACE properly, so only emit
- dnl something if the user specifies this option.
- AC_ARG_ENABLE([trace],
- AS_HELP_STRING(--enable-trace,enable ACE tracing [[[no]]]),
- [
- case "${enableval}" in
- yes)
- AC_DEFINE([ACE_NTRACE],0)
- ;;
- no)
- AC_DEFINE([ACE_NTRACE],1)
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-trace])
- ;;
- esac
- ],)
-
- AC_ARG_ENABLE([wfmo],
- AS_HELP_STRING(--enable-wfmo,build WFMO-using examples [[[no]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_wfmo=yes
- ;;
- no)
- ace_user_enable_wfmo=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-wfmo])
- ;;
- esac
- ],
- [
- case "$host" in
- *win32*)
- ace_user_enable_wfmo=yes
- ;;
- *)
- ace_user_enable_wfmo=no
- ;;
- esac
- ])
- AM_CONDITIONAL([BUILD_WFMO], [test X$ace_user_enable_wfmo = Xyes])
-
- AC_ARG_ENABLE([wince],
- AS_HELP_STRING(--enable-wince,build Windows CE/Mobile-using examples [[[no]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_wince=no
- ;;
- no)
- ace_user_enable_wince=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-wince])
- ;;
- esac
- ],
- [
- case "$host" in
- *win32*)
- ace_user_enable_wince=yes
- ;;
- *)
- ace_user_enable_wince=no
- ;;
- esac
- ])
- AM_CONDITIONAL([BUILD_WINCE], [test X$ace_user_enable_wince = Xyes])
-
- AC_ARG_ENABLE([winregistry],
- AS_HELP_STRING(--enable-winregistry,build Windows registry-using examples [[[no]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_winregistry=no
- ;;
- no)
- ace_user_enable_winregistry=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-winregistry])
- ;;
- esac
- ],
- [
- case "$host" in
- *win32*)
- ace_user_enable_winregistry=yes
- ;;
- *)
- ace_user_enable_winregistry=no
- ;;
- esac
- ])
- AM_CONDITIONAL([BUILD_WINREGISTRY], [test X$ace_user_enable_winregistry = Xyes])
-
- ACE_ENABLE_FL_REACTOR
- ACE_ENABLE_QT_REACTOR
- ACE_ENABLE_TK_REACTOR
- ACE_ENABLE_XT_REACTOR
- ACE_ENABLE_FOX_REACTOR
-
- # placeholder for WxWindows/wxWidgets support
- AM_CONDITIONAL([BUILD_WXWINDOWS], false)
-
- ACE_PATH_BZIP2
- ACE_PATH_ZLIB
- ACE_PATH_ZZIP
-
- AC_ARG_ENABLE([gperf],
- AS_HELP_STRING(--enable-gperf,compile the gperf program [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_gperf=yes
- ;;
- no)
- ace_user_enable_gperf=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${withval} for --with-gperf])
- ;;
- esac
- ],
- [
- ace_user_enable_gperf=yes
- ])
- if test "$ace_user_enable_gperf" = yes; then
- AC_DEFINE([ACE_HAS_GPERF])
- AS_IF([test -n "$GPERF"],
- [
- AC_MSG_WARN([gperf program already exists])
- AC_MSG_WARN([existing gperf may be overwritten during installation])
- ],[])
- fi
- AM_CONDITIONAL([BUILD_GPERF], [test X$ace_user_enable_gperf = Xyes])
-
- ACE_ENABLE_QOS
- ACE_ENABLE_SSL
- ACE_ENABLE_ACEXML
-
- AC_ARG_WITH([tli-device],
- AS_HELP_STRING(--with-tli-device(=DEV),device for TCP on TLI [[/dev/tcp]]),
- [
- case "${withval}" in
- yes)
- AC_MSG_ERROR([Specify the TLI/TCP device if you use this option.])
- ;;
- no)
- ;;
- *)
- if test -e "${withval}"; then
- AC_DEFINE_UNQUOTED([ACE_TLI_TCP_DEVICE], ["${withval}"])
- else
- AC_MSG_ERROR([TLI/TCP device ${withval} does not exist.])
- fi
- ;;
- esac
- ],)
-
- AC_ARG_ENABLE([reentrant],
- AS_HELP_STRING(--enable-reentrant,enable reentrant functions [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_reentrant_funcs=yes
- ;;
- no)
- ace_user_enable_reentrant_funcs=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-reentrant])
- ;;
- esac
- ],
- [
- ace_user_enable_reentrant_funcs=yes
- ])
-
- AC_ARG_ENABLE([ace-examples],
- AS_HELP_STRING(--enable-ace-examples,build ACE examples [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- ace_build_examples=yes
- ;;
- no)
- ace_build_examples=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-ace-examples])
- ;;
- esac
- ],
- [
- ace_build_examples=yes
- ])
- AM_CONDITIONAL([BUILD_EXAMPLES], [test X$ace_build_examples = Xyes])
-
- AC_ARG_ENABLE([ace-tests],
- AS_HELP_STRING(--enable-ace-tests,build ACE tests [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- ace_build_tests=yes
- ;;
- no)
- ace_build_tests=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-ace-tests])
- ;;
- esac
- ],
- [
- ace_build_tests=yes
- ])
- AM_CONDITIONAL([BUILD_TESTS], [test X$ace_build_tests = Xyes])
-
- ACE_ENABLE_CDR_SWAP_ON_READ
- ACE_ENABLE_CDR_SWAP_ON_WRITE
- ACE_ENABLE_CDR_ALIGNMENT
- ACE_ENABLE_REACTOR_NOTIFICATION_QUEUE
- ACE_ENABLE_STRDUP_EMULATION
- ACE_ENABLE_WCSDUP_EMULATION
-])
-
-AC_DEFUN([ACE_CHECK_LIB64],
-[
- AC_ARG_ENABLE(libsuffix,
- AC_HELP_STRING([--enable-libsuffix],
- [/lib directory suffix (64,32,none,auto[=default])]),
- acelibsuff=$enableval, acelibsuff="auto")
-
- if test "$acelibsuff" = "auto"; then
-
-cat > conftest.cpp << _ACEOF
-#include <iostream>
-int main(int, char **) {
- return 0;
-}
-_ACEOF
- acelibsuff=`$CXX conftest.cpp -o conftest.out; ldd conftest.out |sed -ne '/libc.so/{
- s,.*/lib\([[^\/]]*\)/.*,\1,
- p
-}'`
- rm -rf conftest.*
- fi
-
- if test "$acelibsuff" = "no" || test "$acelibsuff" = "none"; then
- acelibsuff=
- fi
- if test -z "$acelibsuff"; then
- AC_MSG_RESULT([not using lib directory suffix])
- else
- AC_MSG_RESULT([using lib directory suffix $acelibsuff])
- fi
-])
-
-dnl Macros that add ACE compilation options to a `configure' script.
-dnl ACE_COMPILATION_OPTIONS
-AC_DEFUN([ACE_COMPILATION_OPTIONS],
-[
- AC_ARG_ENABLE([debug],
- AS_HELP_STRING(--enable-debug,enable debugging [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- ACE_CXXFLAGS="$ACE_CXXFLAGS $DCXXFLAGS"
- ;;
- no)
- AC_DEFINE([ACE_NDEBUG])
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-debug])
- ;;
- esac
- ],)
-
- AC_ARG_ENABLE([exceptions],
- AS_HELP_STRING(--enable-exceptions,enable C++ exception handling [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_exceptions=yes
- ;;
- no)
- ace_user_enable_exceptions=no
- if test "$GXX" = yes; then
- if $CXX --version | $EGREP -v '^2\.[[0-7]]' > /dev/null; then
- ACE_CXXFLAGS="$ACE_CXXFLAGS -fno-exceptions"
- fi
- fi
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-exceptions])
- ;;
- esac
- ],
- [
- ace_user_enable_exceptions=yes
-
-dnl THE FOLLOWING WAS ONLY USED WHEN DISABLING EXCEPTION SUPPORT BY
-dnl DEFAULT.
-dnl
-dnl if test "$GXX" = yes; then
-dnl if $CXX --version | $EGREP -v '^2\.[[0-7]]' > /dev/null; then
-dnl ACE_CXXFLAGS="$ACE_CXXFLAGS -fno-exceptions"
-dnl fi
-dnl fi
- ])
- AM_CONDITIONAL([BUILD_EXCEPTIONS], [test X$ace_user_enable_exceptions = Xyes])
-
- AC_ARG_ENABLE([fast],
- AS_HELP_STRING(--enable-fast,enable -fast flag (e.g. Sun C++) [[[no]]]),
- [
- case "${enableval}" in
- yes)
- ACE_CXXFLAGS="$ACE_CXXFLAGS -fast"
- ACE_CFLAGS="$ACE_CFLAGS -fast"
- ;;
- no)
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-fast])
- ;;
- esac
- ],)
-
- AC_ARG_ENABLE([ipo],
- AS_HELP_STRING(--enable-ipo,enable -ipo flag (e.g. Intel C++) [[[no]]]),
- [
- case "${enableval}" in
- yes)
- ACE_CXXFLAGS="$ACE_CXXFLAGS -ipo"
- ACE_CFLAGS="$ACE_CFLAGS -ipo"
- ;;
- no)
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-ipo])
- ;;
- esac
- ],)
-
- AC_ARG_ENABLE([inline],
- AS_HELP_STRING(--enable-inline,enable code inlining [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- AC_DEFINE([__ACE_INLINE__])
- ;;
- no)
- AC_DEFINE([ACE_NO_INLINE])
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-inline])
- ;;
- esac
- ],
- [
- AC_DEFINE([__ACE_INLINE__])
- ])
-
- AC_ARG_ENABLE([optimize],
- AS_HELP_STRING(--enable-optimize,enable additional optimizations [[[yes]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_optimize=yes
- ;;
- no)
- AC_MSG_WARN([Optimization configure support not fully implemented yet.])
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-optimize])
- ;;
- esac
- ],
- [
- ace_user_enable_optimize=yes
- ])
-
-
- AC_ARG_ENABLE([profile],
- AS_HELP_STRING(--enable-profile,enable profiling [[[no]]]),
- [
- case "${enableval}" in
- yes)
- if test -z "$PROF"; then
- AC_MSG_WARN([No profiling program found. Assuming 'prof' exists.])
- ACE_CXXFLAGS="$ACE_CXXFLAGS -p"
- ACE_CFLAGS="$ACE_CFLAGS -p"
- else
- case "$PROF" in
- gprof)
- echo "Building with 'gprof' support"
- ACE_CXXFLAGS="$ACE_CXXFLAGS -pg"
- ACE_CFLAGS="$ACE_CFLAGS -pg"
- ;;
- prof)
- echo "Building with 'prof' support"
- ACE_CXXFLAGS="$ACE_CXXFLAGS -p"
- ACE_CFLAGS="$ACE_CFLAGS -p"
- ;;
- *)
- dnl We shouldn't get here.
- AC_MSG_WARN([Assuming 'prof' exists.])
- ACE_CXXFLAGS="$ACE_CXXFLAGS -p"
- ACE_CFLAGS="$ACE_CFLAGS -p"
- ;;
- esac
- fi
- ;;
- no)
- dnl Do nothing
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-profile])
- ;;
- esac
- ],)
-
- AC_ARG_ENABLE([purify],
- AS_HELP_STRING(--enable-purify,Purify all executables [[[no]]]),
- [
- case "${enableval}" in
- yes)
- AC_CHECK_PROG([PURIFY], [purify], [purify],[])
- if test -n "$PURIFY"; then
- PURE_CACHE_BASE_DIR=/tmp/purifycache
- PURE_CACHE_DIR="${PURE_CACHE_BASE_DIR}-${LOGNAME}"
- PURE_CACHE_DIR="${PURE_CACHE_DIR}-"`basename $CXX`
- PURELINK="$PURIFY -best-effort -chain-length=20 -cache-dir=$PURE_CACHE_DIR -fds-inuse-at-exit=no -inuse-at-exit -max_threads=100"
- dnl Pick up Quantify directory from the users PATH.
- ACE_PURIFY_DIR=`type purify | sed -e 's/.* is //' -e 's%/purify'`
- ACE_CPPFLAGS="-DACE_HAS_PURIFY -I$ACE_PURIFY_DIR"
- else
- AC_MSG_WARN([Purify program was not found.])
- AC_MSG_WARN([Disabling purify support.])
- fi
- ;;
- no)
- PURELINK=""
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-purify])
- ;;
- esac
- ], PURELINK="")
-
- AC_ARG_ENABLE([quantify],
- AS_HELP_STRING(--enable-quantify,Quantify all executables [[[no]]]),
- [
- case "${enableval}" in
- yes)
- AC_CHECK_PROG([QUANTIFY], [quantify], [quantify],[])
- if test -n "$QUANTIFY"; then
- PURE_CACHE_BASE_DIR=/tmp/purifycache
- PURE_CACHE_DIR="${PURE_CACHE_BASE_DIR}-${LOGNAME}"
- PURE_CACHE_DIR="${PURE_CACHE_DIR}-"`basename $CXX`
-
- PRELINK="$QUANTIFY -best-effort -max_threads=100 -cache-dir=$PURE_CACHE_DIR"
- dnl Pick up Quantify directory from the users PATH.
- ACE_QUANTIFY_DIR=`type quantify | sed -e 's/.* is //' -e 's%/quantify$$%%'`
- ACE_CPPFLAGS="-DACE_HAS_QUANTIFY -I$ACE_QUANTIFY_DIR"
- else
- AC_MSG_WARN([Quantify program was not found.])
- AC_MSG_WARN([Disabling quantify support.])
- fi
- ;;
- no)
- PRELINK=""
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-quantify])
- ;;
- esac
- ], PRELINK="")
-
- AC_ARG_ENABLE([repo],
- AS_HELP_STRING(--enable-repo,use GNU template repository GNU C++ with repo patches and EGCS only [[[no]]]),
- [
- case "${enableval}" in
- yes)
- if test "$GXX" = yes; then
- ace_user_enable_repo=yes
- ACE_CXXFLAGS="$ACE_CXXFLAGS -frepo"
- AC_DEFINE(ACE_HAS_GNU_REPO)
- else
- ace_user_enable_repo=no
- AC_MSG_WARN([Not using GNU C++! GNU template respository disabled.])
- fi
- ;;
- no)
- ace_user_enable_repo=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-repo])
- ;;
- esac
- ],
- [
- ace_user_enable_repo=no
- ])
-
- AC_ARG_ENABLE([stdcpplib],
- AS_HELP_STRING([--enable-stdcpplib],[enable standard C++ library [[yes]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_stdcpplib=yes
- ;;
- no)
- ace_user_enable_stdcpplib=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-stdcpplib])
- ;;
- esac
- ],
- [
- ace_user_enable_stdcpplib=yes
- ])
-
- AC_ARG_ENABLE([uses-wchar],
- AS_HELP_STRING([--enable-uses-wchar],
- [enable use of wide characters [[no]]]),
- [case "${enableval}" in
- yes)
- AC_DEFINE([ACE_USES_WCHAR])
- ace_cv_user_enable_wide_char=yes
- ;;
- no)
- ace_cv_user_enable_wide_char=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-uses-wchar])
- ;;
- esac])
- AC_CACHE_CHECK([whether to use wide characters internally],
- [ace_cv_user_enable_wide_char], [ace_cv_user_enable_wide_char=no])
- AM_CONDITIONAL([BUILD_USES_WCHAR], [test X$ace_cv_user_enable_wide_char = Xyes])
-
-])
-
-# ACE_ENABLE_CDR_SWAP_ON_READ
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_ENABLE_CDR_SWAP_ON_READ],
-[AC_ARG_ENABLE([ace-cdr-swap-on-read],
- AS_HELP_STRING([--enable-ace-cdr-swap-on-read],
- [configure CDR to support swap on read [[yes]]]),
- [case "${enableval}" in
- yes)
- ace_user_cdr_swap_on_read=yes
- ;;
- no)
- ace_user_cdr_swap_on_read=no
- ;;
- *)
- AC_MSG_ERROR(bad value ${enableval} for --enable-ace-cdr-swap-on-read)
- ;;
- esac],[
- ace_user_cdr_swap_on_read=yes
- ])
-if test X$ace_user_cdr_swap_on_read = Xno; then
- AC_DEFINE(ACE_DISABLE_SWAP_ON_READ, 1,
- [Define to 1 to disable swapping swapping CDR on read])
-fi
-])
-
-# ACE_ENABLE_CDR_SWAP_ON_WRITE
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_ENABLE_CDR_SWAP_ON_WRITE],
-[AC_ARG_ENABLE([ace-cdr-swap-on-write],
- AS_HELP_STRING([--enable-ace-cdr-swap-on-write],
- [configure CDR to support swap on write [[no]]]),
- [case "${enableval}" in
- yes)
- ace_user_cdr_swap_on_write=yes
- ;;
- no)
- ace_user_cdr_swap_on_write=no
- ;;
- *)
- AC_MSG_ERROR(bad value ${enableval} for --enable-ace-cdr-swap-on-write)
- ;;
- esac],[
- ace_user_cdr_swap_on_write=no
- ])
-if test X$ace_user_cdr_swap_on_write = Xyes; then
- AC_DEFINE(ACE_ENABLE_SWAP_ON_WRITE, 1,
- [Define to 1 to enable swapping swapping CDR on write])
-fi
-])
-
-# ACE_ENABLE_CDR_ALIGNMENT
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_ENABLE_CDR_ALIGNMENT],
-[AC_ARG_ENABLE([ace-cdr-alignment],
- AS_HELP_STRING([--enable-ace-cdr-alignment],
- [configure CDR to require aligned access [[yes]]]),
- [case "${enableval}" in
- yes)
- ace_user_cdr_alignment=yes
- ;;
- no)
- ace_user_cdr_alignment=no
- ;;
- *)
- AC_MSG_ERROR(bad value ${enableval} for --enable-ace-cdr-alignment)
- ;;
- esac],[
- ace_user_cdr_alignment=yes
- ])
-if test X$ace_user_cdr_alignment = Xno; then
- AC_DEFINE(ACE_LACKS_CDR_ALIGNMENT, 1,
- [Define to 1 to support unaligned CDR])
-fi
-])
-
-# ACE_ENABLE_REACTOR_NOTIFICATION_QUEUE
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_ENABLE_REACTOR_NOTIFICATION_QUEUE],
-[AC_ARG_ENABLE([ace-reactor-notification-queue],
- AS_HELP_STRING([--enable-ace-reactor-notification-queue],
- [configure Reactor to use a user-space queue for notifications [[no]]]),
- [case "${enableval}" in
- yes)
- ace_user_reactor_notification_queue=yes
- ;;
- no)
- ace_user_reactor_notification_queue=no
- ;;
- *)
- AC_MSG_ERROR(bad value ${enableval} for --enable-ace-reactor-notification-queue)
- ;;
- esac],[
- ace_user_reactor_notification_queue=no
- ])
-if test X$ace_user_reactor_notification_queue = Xyes; then
- AC_DEFINE([ACE_HAS_REACTOR_NOTIFICATION_QUEUE], 1,
- [Define to 1 to configure Reactor to use a user-space queue for notifications])
-fi
-])
-
-
-# ACE_ENABLE_STRDUP_EMULATION
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_ENABLE_STRDUP_EMULATION],
-[AC_ARG_ENABLE([ace-strdup-emulation],
- AS_HELP_STRING([--enable-ace-strdup-emulation],
- [use ACE's strdup emulation [[no]]]),
- [case "${enableval}" in
- yes)
- ace_user_strdup_emulation=yes
- ;;
- no)
- ace_user_strdup_emulation=no
- ;;
- *)
- AC_MSG_ERROR(bad value ${enableval} for --enable-ace-strdup-emulation)
- ;;
- esac],[
- ace_user_strdup_emulation=no
- ])
-if test X$ace_user_strdup_emulation = Xyes; then
- AC_DEFINE(ACE_HAS_STRDUP_EMULATION, 1,
- [Define to 1 use ACE's strdup() emulation])
-fi
-])
-
-# ACE_ENABLE_WCSDUP_EMULATION
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_ENABLE_WCSDUP_EMULATION],
-[AC_ARG_ENABLE([ace-wcsdup-emulation],
- AS_HELP_STRING([--enable-ace-wcsdup-emulation],
- [use ACE's wcsdup emulation [[no]]]),
- [case "${enableval}" in
- yes)
- ace_user_wcsdup_emulation=yes
- ;;
- no)
- ace_user_wcsdup_emulation=no
- ;;
- *)
- AC_MSG_ERROR(bad value ${enableval} for --enable-ace-wcsdup-emulation)
- ;;
- esac],[
- ace_user_wcsdup_emulation=no
- ])
-if test X$ace_user_wcsdup_emulation = Xyes; then
- AC_DEFINE(ACE_HAS_WCSDUP_EMULATION, 1,
- [Define to 1 use ACE's wcsdup() emulation])
-fi
-])
-
-AC_DEFUN([ACE_ENABLE_QOS],
-[AC_ARG_ENABLE([qos],
- AS_HELP_STRING([--enable-qos],
- [compile/use the ACE_QoS library [[no]]]),
- [case "${enableval}" in
- yes)
- ace_cv_user_enable_qos=yes
- ;;
- no)
- ace_cv_user_enable_qos=no
- ;;
- *)
- AC_MSG_ERROR(bad value ${enableval} for --enable-qos)
- ;;
- esac])
-AC_CACHE_CHECK([whether to compile/use the ACE_QoS library],
- [ace_cv_user_enable_qos],[ace_cv_user_enable_qos=no])
-AM_CONDITIONAL([BUILD_QOS], [test X$ace_cv_user_enable_qos = Xyes])
-])
-
-AC_DEFUN([ACE_ENABLE_SSL],
-[AC_REQUIRE([ACE_CHECK_TLS])
-AC_ARG_ENABLE([ssl],
- AS_HELP_STRING([--enable-ssl],
- [compile/use the ACE_SSL library [[yes]]]),
- [case "${enableval}" in
- yes)
- ace_cv_user_enable_ssl=yes
- ;;
- no)
- ace_cv_user_enable_ssl=no
- ;;
- *)
- AC_MSG_ERROR(bad value ${enableval} for --enable-ssl)
- ;;
- esac])
-AC_CACHE_CHECK([whether to compile/use the ACE_SSL library],
- [ace_cv_user_enable_ssl], [ace_cv_user_enable_ssl=yes])
-AM_CONDITIONAL([BUILD_SSL], [test X$ace_cv_user_enable_ssl = Xyes])
-])
-
-AC_DEFUN([ACE_ENABLE_ACEXML],
-[AC_ARG_ENABLE([acexml],
- AS_HELP_STRING([--enable-acexml],
- [compile/use the ACEXML library [[yes]]]),
- [case "${enableval}" in
- yes)
- ace_cv_user_enable_acexml=yes
- ;;
- no)
- ace_cv_user_enable_acexml=no
- ;;
- *)
- AC_MSG_ERROR(bad value ${enableval} for --enable-acexml)
- ;;
- esac],
- [
- ace_cv_user_enable_acexml=yes
- ])
-AC_CACHE_CHECK([whether to compile/use the ACEXML library],
- [ace_cv_user_enable_acexml], [ace_cv_user_enable_acexml=yes])
-AM_CONDITIONAL([BUILD_ACEXML], [test X$ace_cv_user_enable_acexml = Xyes])
-])
-
-
-# ACE_PATH_GL
-#---------------------------------------------------------------------------
-# Find OpenGL Libraries, flags, etc.
-AC_DEFUN([ACE_PATH_GL],
-[
-])
-
-
-# ACE_PATH_FL
-#---------------------------------------------------------------------------
-# Find FL/TK Libraries, flags, etc.
-AC_DEFUN([ACE_PATH_FL],
-[AC_REQUIRE([ACE_PATH_GL])
- AC_ARG_WITH([fltkconfig],
- AS_HELP_STRING([--with-fltkconfig=DIR],
- [path to fltk-config [[automatic]]]),
- [ ac_fltkconfig_dir="${withval}" ])
- if test X"${ac_fltkconfig_dir}" = X; then
- AC_PATH_PROG([FLTKCONFIG], [fltk-config], [])
- else
- AC_MSG_CHECKING([whether fltk-config exists in ${ac_fltkconfig_dir}])
- if test -f "${ac_fltkconfig_dir}/fltk-config"; then
- FLTKCONFIG="${ac_fltkconfig_dir}/fltk-config"
- AC_MSG_RESULT([yes])
- else
- AC_MSG_RESULT([no])
- fi
- fi
- if test X"${FLTKCONFIG}" != X; then
- ACE_FLTK_CPPFLAGS=`$FLTKCONFIG --cxxflags 2>/dev/null`
- ACE_FLTK_LIBS=`$FLTKCONFIG --ldflags 2>/dev/null`
-
- AC_SUBST(ACE_FLTK_CPPFLAGS)
- AC_SUBST(ACE_FLTK_LIBS)
- fi
-])
-
-
-# ACE_PATH_QT
-#---------------------------------------------------------------------------
-# Find Qt Libraries, flags, etc.
-AC_DEFUN([ACE_PATH_QT],
-[
- ac_qt_found=no
- PKG_CHECK_MODULES([Qt], [qt-mt],
- [ac_qt_found=yes],
- [AC_MSG_RESULT([not found])])
- if test X"${ac_qt_found}" = Xyes; then
- ACE_QT_CPPFLAGS="${Qt_CFLAGS}"
- ACE_QT_LIBS="${Qt_LIBS}"
- AC_SUBST(ACE_QT_CPPFLAGS)
- AC_SUBST(ACE_QT_LIBS)
-
- AS_IF([test -n "$QTDIR"],
- [],
- [QTDIR=`$PKG_CONFIG --variable=prefix qt-mt 2>/dev/null`])
- AC_SUBST(QTDIR)
- fi
-])
-
-
-# ACE_PATH_TCL
-#---------------------------------------------------------------------------
-# Find Tcl Libraries, flags, etc.
-AC_DEFUN([ACE_PATH_TCL],
-[AC_REQUIRE([ACE_CHECK_LIB64])
- AC_ARG_WITH([tclconfig],
- AS_HELP_STRING([--with-tclconfig=DIR],
- [path to tclConfig.sh [[automatic]]]),
- [ ac_tclconfig_dir="${withval}" ])
-
- if test X"${ac_tclconfig_dir}" = X; then
- for i in `ls -d ${exec_prefix}/lib${acelibsuff} 2>/dev/null` \
- `ls -d ${prefix}/lib${acelibsuff} 2>/dev/null` \
- `ls -d /usr/local/lib${acelibsuff} 2>/dev/null` \
- `ls -d /usr/contrib/lib${acelibsuff} 2>/dev/null` \
- `ls -d /usr/lib${acelibsuff} 2>/dev/null` \
- `ls -d /usr/pkg/lib${acelibsuff} 2>/dev/null` \
- `ls -d /usr/lib${acelibsuff}/tcl8.[[43]]* 2>/dev/null` \
- ; do
- if test -f "$i/tclConfig.sh" ; then
- ac_tclconfig_dir=`(cd $i; pwd)`
- break
- fi
- done
- fi
-
- AC_MSG_CHECKING([whether tclConfig.sh exists in ${ac_tclconfig_dir}])
- if test -f "${ac_tclconfig_dir}/tclConfig.sh"; then
- TCLCONFIG="${ac_tclconfig_dir}/tclConfig.sh"
- AC_MSG_RESULT([yes])
- else
- AC_MSG_RESULT([no])
- fi
-
- if test X"${TCLCONFIG}" != X; then
- . ${TCLCONFIG}
-
- ACE_TCL_CPPFLAGS="${TCL_INCLUDE_SPEC}"
- eval "ACE_TCL_LIBS=\"${TCL_LIB_SPEC}\""
-
- AC_SUBST(ACE_TCL_CPPFLAGS)
- AC_SUBST(ACE_TCL_LIBS)
- fi
-])
-
-
-# ACE_PATH_TK
-#---------------------------------------------------------------------------
-# Find Tk Libraries, flags, etc.
-AC_DEFUN([ACE_PATH_TK],
-[AC_REQUIRE([ACE_PATH_TCL])
- AC_ARG_WITH([tkconfig],
- AS_HELP_STRING([--with-tkconfig=DIR],
- [path to tkConfig.sh [[automatic]]]),
- [ ac_tkconfig_dir="${withval}" ])
- if test X"${ac_tkconfig_dir}" = X; then
- if test X"${ac_tclconfig_dir}" != X && test -f ${ac_tclconfig_dir}/tkConfig.sh; then
- ac_tkconfig_dir=$ac_tclconfig_dir;
- else
- for i in `ls -d ${exec_prefix}/lib${acelibsuff} 2>/dev/null` \
- `ls -d ${prefix}/lib${acelibsuff} 2>/dev/null` \
- `ls -d /usr/local/lib${acelibsuff} 2>/dev/null` \
- `ls -d /usr/contrib/lib${acelibsuff} 2>/dev/null` \
- `ls -d /usr/lib${acelibsuff} 2>/dev/null` \
- `ls -d /usr/pkg/lib${acelibsuff} 2>/dev/null` \
- `ls -d /usr/lib${acelibsuff}/tk8.[[43]]* 2>/dev/null` \
- ; do
- if test -f "$i/tkConfig.sh" ; then
- ac_tkconfig_dir=`(cd $i; pwd)`
- break
- fi
- done
- fi
- fi
-
- AC_MSG_CHECKING([whether tkConfig.sh exists in ${ac_tkconfig_dir}])
- if test -f "${ac_tkconfig_dir}/tkConfig.sh"; then
- TKCONFIG="${ac_tkconfig_dir}/tkConfig.sh"
- AC_MSG_RESULT([yes])
- else
- AC_MSG_RESULT([no])
- fi
-
- if test X"${TKCONFIG}" != X; then
- . ${TKCONFIG}
-
- ACE_TK_CPPFLAGS="${TK_INCLUDE_SPEC} ${TK_XINCLUDES}"
- ACE_TK_LIBS="${TK_LIB_SPEC} ${TK_XLIBSW}"
-
- AC_SUBST(ACE_TK_CPPFLAGS)
- AC_SUBST(ACE_TK_LIBS)
- fi
-])
-
-
-# ACE_PATH_XT
-#---------------------------------------------------------------------------
-# Find Xt libraries, flags, etc.
-AC_DEFUN([ACE_PATH_XT],
-[AC_REQUIRE([ACE_PATH_X11])
-
-if test "$no_x" != yes; then
- ACE_XT_CPPFLAGS=""
- ACE_XT_LDFLAGS=""
- ACE_XT_LIBS="-lXt"
-
- AC_SUBST(ACE_XT_CPPFLAGS)
- AC_SUBST(ACE_XT_LDFLAGS)
- AC_SUBST(ACE_XT_LIBS)
-fi
-AM_CONDITIONAL([BUILD_ATHENA], true)
-AM_CONDITIONAL([BUILD_ATHENA3D], true)
-AM_CONDITIONAL([BUILD_MOTIF], false)
-])
-
-
-# ACE_PATH_X11
-#---------------------------------------------------------------------------
-# Find X11 libraries, flags, etc.
-AC_DEFUN([ACE_PATH_X11],
-[AC_REQUIRE([AC_PATH_XTRA])
-
-if test "$no_x" != yes; then
- ACE_X11_CPPFLAGS="${X_CFLAGS}"
- ACE_X11_LDFLAGS="${X_LIBS}"
- ACE_X11_LIBS="${X_PRE_LIBS} -lX11 ${X_EXTRA_LIBS}"
-
- AC_SUBST(ACE_X11_CPPFLAGS)
- AC_SUBST(ACE_X11_LDFLAGS)
- AC_SUBST(ACE_X11_LIBS)
-fi
-
-AM_CONDITIONAL([BUILD_X11], [test X$no_x != Xyes])
-])
-
-
-# ACE_PATH_BZIP2
-#---------------------------------------------------------------------------
-# Find bzip2 Libraries, flags, etc.
-AC_DEFUN([ACE_PATH_BZIP2],
-[
-ACE_BZIP2_CPPFLAGS=""
-ACE_BZIP2_LDFLAGS=""
-
-dnl TODO: default to false, at least until we add a check to see if
-dnl the bzip2 library is usable.
-AC_ARG_WITH([bzip2],
- AS_HELP_STRING([--with-bzip2@<:@=DIR@:>@],
- [root directory of bzip2 installation]),
- [
- ace_with_bzip2="${withval}"
- if test "${ace_with_bzip2}" != yes; then
- ace_bzip2_include="${ace_with_bzip2}/include"
- ace_bzip2_libdir="${ace_with_bzip2}/lib"
- fi
- ],[ace_with_bzip2=no])
-
-dnl TODO: let's wait and see before adding options to specify header
-dnl and library location separately.
-dnl
-dnl AC_ARG_WITH([bzip2_include],
-dnl AS_HELP_STRING([--with-bzip2-include=DIR],
-dnl [specify exact include dir for bzip2 headers]),
-dnl [ace_bzip2_include="$withval"])
-dnl
-dnl AC_ARG_WITH([bzip2_libdir],
-dnl AS_HELP_STRING([--with-bzip2-libdir=DIR],
-dnl [specify exact include dir for bzip2 libraries]),
-dnl [ace_bzip2_libdir="$withval"])
-
-if test "${ace_bzip2_include}"; then
- ACE_BZIP2_CPPFLAGS="-I$ace_bzip2_include"
-fi
-
-if test "${ace_bzip2_libdir}"; then
- ACE_BZIP2_LDFLAGS="-L$ace_bzip2_libdir"
-fi
-
-ACE_BZIP2_CPPFLAGS="${ACE_BZIP2_CPPFLAGS} -DBZIP2"
-
-if test "${ace_with_bzip2}" != no; then
- ACE_BZIP2_LIBS="-lbz2"
- AC_SUBST(ACE_BZIP2_CPPFLAGS)
- AC_SUBST(ACE_BZIP2_LDFLAGS)
- AC_SUBST(ACE_BZIP2_LIBS)
-fi
-AM_CONDITIONAL([BUILD_BZIP2], test "${ace_with_bzip2}" != no)
-])
-
-
-# ACE_PATH_ZLIB
-#---------------------------------------------------------------------------
-# Find zlib Libraries, flags, etc.
-AC_DEFUN([ACE_PATH_ZLIB],
-[
-ACE_ZLIB_CPPFLAGS=""
-ACE_ZLIB_LDFLAGS=""
-
-dnl TODO: default to false, at least until we add a check to see if
-dnl the zlib library is usable.
-AC_ARG_WITH([zlib],
- AS_HELP_STRING([--with-zlib@<:@=DIR@:>@],
- [root directory of zlib installation]),
- [
- ace_with_zlib="${withval}"
- if test "${ace_with_zlib}" != yes; then
- ace_zlib_include="${ace_with_zlib}/include"
- ace_zlib_libdir="${ace_with_zlib}/lib"
- fi
- ],[ace_with_zlib=no])
-
-dnl TODO: let's wait and see before adding options to specify header
-dnl and library location separately.
-dnl
-dnl AC_ARG_WITH([zlib_include],
-dnl AS_HELP_STRING([--with-zlib-include=DIR],
-dnl [specify exact include dir for zlib headers]),
-dnl [ace_zlib_include="$withval"])
-dnl
-dnl AC_ARG_WITH([zlib_libdir],
-dnl AS_HELP_STRING([--with-zlib-libdir=DIR],
-dnl [specify exact include dir for zlib libraries]),
-dnl [ace_zlib_libdir="$withval"])
-
-if test "${ace_zlib_include}"; then
- ACE_ZLIB_CPPFLAGS="-I$ace_zlib_include"
-fi
-
-if test "${ace_zlib_libdir}"; then
- ACE_ZLIB_LDFLAGS="-L$ace_zlib_libdir"
-fi
-
-ACE_ZLIB_CPPFLAGS="${ACE_ZLIB_CPPFLAGS} -DZLIB"
-
-if test "${ace_with_zlib}" != no; then
- ACE_ZLIB_LIBS="-lz"
- AC_SUBST(ACE_ZLIB_CPPFLAGS)
- AC_SUBST(ACE_ZLIB_LDFLAGS)
- AC_SUBST(ACE_ZLIB_LIBS)
-fi
-AM_CONDITIONAL([BUILD_ZLIB], test "${ace_with_zlib}" != no)
-])
-
-
-# ACE_PATH_ZZIP
-#---------------------------------------------------------------------------
-# Find zziplib Libraries, flags, etc.
-AC_DEFUN([ACE_PATH_ZZIP],
-[AC_REQUIRE([ACE_PATH_ZLIB])
-
-ACE_ZZIP_CPPFLAGS=""
-ACE_ZZIP_LDFLAGS=""
-
-dnl TODO: default to false, at least until we add a check to see if
-dnl the zlib library is usable.
-AC_ARG_WITH([zzip],
- AS_HELP_STRING([--with-zzip@<:@=DIR@:>@],
- [root directory of zzip installation]),
- [
- ace_with_zzip="${withval}"
- if test "${ace_with_zzip}" != yes; then
- ace_zzip_include="${ace_with_zzip}/include"
- ace_zzip_libdir="${ace_with_zzip}/lib"
- fi
- ],[ace_with_zzip=no])
-
-dnl TODO: let's wait and see before adding options to specify header
-dnl and library location separately.
-dnl
-dnl AC_ARG_WITH([zzip_include],
-dnl AS_HELP_STRING([--with-zzip-include=DIR],
-dnl [specify exact include dir for zzip headers]),
-dnl [ace_zzip_include="$withval"])
-dnl
-dnl AC_ARG_WITH([zzip_libdir],
-dnl AS_HELP_STRING([--with-zzip-libdir=DIR],
-dnl [specify exact include dir for zzip libraries]),
-dnl [ace_zzip_libdir="$withval"])
-
-if test "${ace_zzip_include}"; then
- ACE_ZZIP_CPPFLAGS="-I$ace_zzip_include"
-fi
-
-if test "${ace_zzip_libdir}"; then
- ACE_ZZIP_LDFLAGS="-L$ace_zzip_libdir"
-fi
-
-ACE_ZZIP_CPPFLAGS="${ACE_ZZIP_CPPFLAGS} -DUSE_ZZIP"
-
-if test "${ace_with_zzip}" != no; then
- ACE_ZZIP_LIBS="-lzzip"
- AC_SUBST(ACE_ZZIP_CPPFLAGS)
- AC_SUBST(ACE_ZZIP_LDFLAGS)
- AC_SUBST(ACE_ZZIP_LIBS)
-fi
-AM_CONDITIONAL([BUILD_ZZIP], test "${ace_with_zzip}" != no)
-])
-
-# ACE_ENABLE_FL_REACTOR
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_ENABLE_FL_REACTOR],
-[AC_REQUIRE([ACE_PATH_FL])
-AC_REQUIRE([ACE_PATH_X11])
-AC_ARG_ENABLE([fl-reactor],
- AS_HELP_STRING([--enable-fl-reactor],
- [build support for the FlReactor [[no]]]),
- [case "${enableval}" in
- yes)
- AS_IF([test X"${FLTKCONFIG}" != X],
- [ace_user_enable_fl_reactor=yes],
- [AC_MSG_ERROR([ACE_FlReactor cannot be enabled: fltk-config not found.])])
- ;;
- no)
- ace_user_enable_fl_reactor=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-fl-reactor])
- ;;
- esac],
- [
- ace_user_enable_fl_reactor=no
- ])
-AM_CONDITIONAL([BUILD_GL], [test X$ace_user_enable_fl_reactor = Xyes])
-AM_CONDITIONAL([BUILD_FL], [test X$ace_user_enable_fl_reactor = Xyes])
-AM_CONDITIONAL([BUILD_ACE_FLREACTOR],
- [test X$ace_user_enable_fl_reactor = Xyes])
-])
-
-
-# ACE_ENABLE_QT_REACTOR
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_ENABLE_QT_REACTOR],
-[AC_REQUIRE([ACE_PATH_QT])
-AC_ARG_ENABLE([qt-reactor],
- AS_HELP_STRING([--enable-qt-reactor],
- [build support for the QtReactor [[no]]]),
- [case "${enableval}" in
- yes)
- AS_IF([test X"${ac_qt_found}" = Xyes],
- [ace_user_enable_qt_reactor=yes],
- [AC_MSG_ERROR([ACE_QtReactor cannot be enabled: Qt not found.])])
- ;;
- no)
- ace_user_enable_qt_reactor=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-qt-reactor])
- ;;
- esac],
- [
- ace_user_enable_qt_reactor=no
- ])
-AM_CONDITIONAL([BUILD_QT], [test X$ace_user_enable_qt_reactor = Xyes])
-AM_CONDITIONAL([BUILD_ACE_QTREACTOR],
- [test X$ace_user_enable_qt_reactor = Xyes])
-])
-
-
-# ACE_ENABLE_TK_REACTOR
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_ENABLE_TK_REACTOR],
-[AC_REQUIRE([ACE_PATH_TK])
-AC_ARG_ENABLE([tk-reactor],
- AS_HELP_STRING([--enable-tk-reactor],
- [build support for the TkReactor [[no]]]),
- [case "${enableval}" in
- yes)
- AS_IF([test X"${TCLCONFIG}" != X],
- [AS_IF([test X"${TKCONFIG}" != X],
- [ace_user_enable_tk_reactor=yes],
- [AC_MSG_ERROR([ACE_TkReactor cannot be enabled: tkConfig not found.])])],
- [AC_MSG_ERROR([ACE_TkReactor cannot be enabled: tclConfig not found.])])
- ;;
- no)
- ace_user_enable_tk_reactor=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-tk-reactor])
- ;;
- esac],
- [
- ace_user_enable_tk_reactor=no
- ])
-AM_CONDITIONAL([BUILD_TK], [test X$ace_user_enable_tk_reactor = Xyes])
-AM_CONDITIONAL([BUILD_ACE_TKREACTOR],
- [test X$ace_user_enable_tk_reactor = Xyes])
-])
-
-
-# ACE_ENABLE_XT_REACTOR
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_ENABLE_XT_REACTOR],
-[AC_REQUIRE([ACE_PATH_XT])
-AC_ARG_ENABLE([xt-reactor],
- AS_HELP_STRING([--enable-xt-reactor],
- [build support for the XtReactor [[no]]]),
- [case "${enableval}" in
- yes)
-dnl Here, if X isn't found or the user sets "--without-x" on the command
-dnl line, then "no_x" is set to "yes."
- AS_IF([test "$no_x" != yes],
- [
- ace_user_enable_xt_reactor=yes
- ],[
- ace_user_enable_xt_reactor=no
- AC_MSG_WARN([X was not found or it was disabled.])
- AC_MSG_WARN([ACE_XtReactor will not be enabled.])
- ])
- ;;
- no)
- ace_user_enable_xt_reactor=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-xt-reactor])
- ;;
- esac],
- [
- ace_user_enable_xt_reactor=no
- ])
-AM_CONDITIONAL([BUILD_XT], [test X$ace_user_enable_xt_reactor = Xyes])
-AM_CONDITIONAL([BUILD_ACE_XTREACTOR],
- [test X$ace_user_enable_xt_reactor = Xyes])
-])
-
-# ACE_PATH_FOX
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_PATH_FOX],
-[AC_ARG_WITH([fox-config],
- AS_HELP_STRING([--with-fox-config=DIR],
- [path to fox-config [[automatic]]]),
- [ ac_fox_config_dir="${withval}" ])
- if test X"${ac_fox_config_dir}" = X; then
- AC_PATH_PROG([FOXCONFIG], [fox-config], [], [])
- else
- AC_MSG_CHECKING([whether fox-config exists in ${ac_fox_config_dir}])
- if test -f "${ac_fox_config_dir}/fox-config"; then
- FOXCONFIG="${ac_fox_config_dir}/fox-config"
- AC_MSG_RESULT([yes])
- else
- AC_MSG_RESULT([no])
- fi
- fi
- if test X"${FOXCONFIG}" != X; then
- ACE_FOX_CPPFLAGS=`$FOXCONFIG --cflags 2>/dev/null`
- ACE_FOX_LIBS=`$FOXCONFIG --libs 2>/dev/null`
- AC_SUBST(ACE_FOX_CPPFLAGS)
- AC_SUBST(ACE_FOX_LIBS)
- fi
-])
-
-# ACE_ENABLE_FOX_REACTOR
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_ENABLE_FOX_REACTOR],
-[AC_REQUIRE([ACE_PATH_FOX])
-AC_ARG_ENABLE([fox-reactor],
- AS_HELP_STRING([--enable-fox-reactor],
- [build support for the FoxReactor [[no]]]),
- [case "${enableval}" in
- yes)
- AS_IF([test X"${FOXCONFIG}" != X],
- [ace_user_enable_fox_reactor=yes],
- [AC_MSG_ERROR([ACE_FoxReactor cannot be enabled: fox-config not found.])])
- ;;
- no)
- ace_user_enable_fox_reactor=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-fox-reactor])
- ;;
- esac],
- [
- ace_user_enable_fox_reactor=no
- ])
-AM_CONDITIONAL([BUILD_FOX], [test X$ace_user_enable_fox_reactor = Xyes])
-AM_CONDITIONAL([BUILD_ACE_FOXREACTOR],
- [test X$ace_user_enable_fox_reactor = Xyes])
-])
diff --git a/ACE/m4/ace_defines.m4 b/ACE/m4/ace_defines.m4
deleted file mode 100644
index c8b37af9171..00000000000
--- a/ACE/m4/ace_defines.m4
+++ /dev/null
@@ -1,48 +0,0 @@
-# ACE_CHECK_DEFINE(DEFINE, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND],
-# [INCLUDES = 'default-includes'])
-#-----------------------------------------------------------------------------
-AC_DEFUN([ACE_CHECK_DEFINE],[
-AS_VAR_PUSHDEF([ac_var],[ace_cv_defined_$1])dnl
-AC_CACHE_CHECK([for $1], ac_var,
-AC_COMPILE_IFELSE([AC_LANG_SOURCE([AC_INCLUDES_DEFAULT([$4])
-#ifdef $1
-int ok;
-#else
-choke me
-#endif
-])],AS_VAR_SET(ac_var, yes),AS_VAR_SET(ac_var, no)))
-AS_IF([test AS_VAR_GET(ac_var) != "no"], [$2], [$3])dnl
-AS_VAR_POPDEF([ac_var])dnl
-])
-
-# ACE_CHECK_HAS_DEFINES(DEFINE..., [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND],
-# [INCLUDES = 'default-includes'])
-#-----------------------------------------------------------------------------
-AC_DEFUN([ACE_CHECK_HAS_DEFINES],
-[AC_FOREACH([ACE_Def], [$1],
- [AH_TEMPLATE(AS_TR_CPP([ACE_HAS_]ACE_Def),
- [Define to 1 if platform has ]ACE_Def[().])])dnl
-for ace_def in $1
-do
-ACE_CHECK_DEFINE($ace_def,
- [AC_DEFINE_UNQUOTED(AS_TR_CPP([ACE_HAS_$ace_def])) $2],
- [$3],
- [$4])
-done
-])
-
-# ACE_CHECK_LACKS_DEFINES(DEFINE..., [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-# [INCLUDES = 'default-includes'])
-#-----------------------------------------------------------------------------
-AC_DEFUN([ACE_CHECK_LACKS_DEFINES],
-[AC_FOREACH([ACE_Def], [$1],
- [AH_TEMPLATE(AS_TR_CPP([ACE_LACKS_]ACE_Def),
- [Define to 1 if platform lacks ]ACE_Def[().])])dnl
-for ace_def in $1
-do
-ACE_CHECK_DEFINE($ace_def,
- [$2],
- [AC_DEFINE_UNQUOTED(AS_TR_CPP([ACE_LACKS_$ace_def])) $3],
- [$4])
-done
-])
diff --git a/ACE/m4/ace_func.m4 b/ACE/m4/ace_func.m4
deleted file mode 100644
index f031f563ae0..00000000000
--- a/ACE/m4/ace_func.m4
+++ /dev/null
@@ -1,297 +0,0 @@
-# ACE_FUNC_STRCASECMP
-# + Defines ACE_LACKS_STRCASECMP to 1 if platform lacks strcasecmp()
-# + Defines ACE_STRCASECMP_EQUIVALENT to identifier name if platform
-# has a equivalent function that differs in name only.
-# + Defines ACE_LACKS_STRCASECMP_PROTOTYPE to 1 if platform lacks
-# declaration for strcasecmp().
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_FUNC_STRCASECMP],
-[ACE_CHECK_LACKS_FUNCS(strcasecmp)
-if test "$ac_cv_func_strcasecmp" = yes; then
- AC_CHECK_DECL([strcasecmp],
- [],
- [AC_DEFINE([ACE_LACKS_STRCASECMP_PROTOTYPE], 1,
- [Define to 1 if platform lacks a declaration for strcasecmp()])],
- [
-#if !defined(ACE_LACKS_STRINGS_H)
-#include <strings.h>
-#endif
-#if !defined(ACE_LACKS_STRING_H)
-#include <string.h>
-#endif
- ])
-else
- AC_CHECK_FUNC(stricmp)
- if test "$ac_cv_func_stricmp" = yes; then
- AC_DEFINE(ACE_STRCASECMP_EQUIVALENT, [::stricmp],
- [Define to function that is equivalent to strcasecmp()])
- else
- AC_CHECK_FUNC(_stricmp)
- if test "$ac_cv_func__stricmp" = yes; then
- AC_DEFINE(ACE_STRCASECMP_EQUIVALENT, [::_stricmp])
- fi
- fi
-fi
-])
-
-# ACE_FUNC_STRNCASECMP
-# + Defines ACE_LACKS_STRNCASECMP to 1 if platform lacks strncasecmp()
-# + Defines ACE_STRNCASECMP_EQUIVALENT to identifier name if platform
-# has a equivalent function that differs in name only.
-# + Defines ACE_LACKS_STRNCASECMP_PROTOTYPE to 1 if platform lacks
-# declaration for strncasecmp().
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_FUNC_STRNCASECMP],
-[ACE_CHECK_LACKS_FUNCS(strncasecmp)
-if test "$ac_cv_func_strncasecmp" = yes; then
- AC_CHECK_DECL([strncasecmp],
- [],
- [AC_DEFINE([ACE_LACKS_STRNCASECMP_PROTOTYPE], 1,
- [Define to 1 if platform lacks a declaration for strncasecmp()])],
- [
-#if !defined(ACE_LACKS_STRINGS_H)
-#include <strings.h>
-#endif
-#if !defined(ACE_LACKS_STRING_H)
-#include <string.h>
-#endif
- ])
-else
- AC_CHECK_FUNC(strnicmp)
- if test "$ac_cv_func_strnicmp" = yes; then
- AC_DEFINE(ACE_STRNCASECMP_EQUIVALENT, [::strnicmp],
- [Define to function that is equivalent to strncasecmp()])
- else
- AC_CHECK_FUNC(_strnicmp)
- if test "$ac_cv_func__strnicmp" = yes; then
- AC_DEFINE(ACE_STRNCASECMP_EQUIVALENT, [::_strnicmp])
- fi
- fi
-fi
-])
-
-# ACE_FUNC_STRDUP
-# + Defines ACE_LACKS_STRDUP to 1 if platform lacks strdup()
-# + Defines ACE_STRDUP_EQUIVALENT to identifier name if platform
-# has a equivalent function that differs in name only.
-# + Defines ACE_HAS_NONCONST_STRDUP if argument is char*. (TODO)
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_FUNC_STRDUP],
-[ACE_CHECK_LACKS_FUNCS(strdup)
-if test "$ac_cv_func_strdup" = no; then
- AC_CHECK_FUNC(_strdup)
- if test "$ac_cv_func__strdup" = yes; then
- AC_DEFINE(ACE_STRDUP_EQUIVALENT, [::_strdup],
- [Define to function that is equivalent to strdup()])
- fi
-fi
-])
-
-# ACE_FUNC_STRTOLL
-# + Defines ACE_LACKS_STRTOLL to 1 if platform lacks strtoll()
-# + Defines ACE_STRTOLL_EQUIVALENT to identifier name if platform
-# has a equivalent function that differs in name only.
-# + Defines ACE_LACKS_STRTOLL_PROTOTYPE to 1 if platform lacks
-# declaration for strtoll().
-AC_DEFUN([ACE_FUNC_STRTOLL],
-[ACE_CHECK_LACKS_FUNCS(strtoll)
-if test $ac_cv_func_strtoll = "no"; then
- AC_CHECK_FUNC(__strtoll)
- if test $ac_cv_func___strtoll = "yes"; then
- AC_DEFINE([ACE_STRTOLL_EQUIVALENT], [::__strtoll],
- [Define to function that is equivalent to strtoll()])
- else
- AC_CHECK_FUNC(_strtoi64)
- if test $ac_cv_func__strtoi64 = "yes"; then
- AC_DEFINE([ACE_STRTOLL_EQUIVALENT], [::_strtoi64])
- fi
- fi
-else
- AC_CHECK_DECL([strtoll],
- [],
- [AC_DEFINE([ACE_LACKS_STRTOLL_PROTOTYPE], 1,
- [Define to 1 if platform lacks a declaration for strtoll()])],
- [#include <stdlib.h>])
-fi
-])
-
-# ACE_FUNC_STRTOULL
-# + Defines ACE_LACKS_STRTOULL to 1 if platform lacks strtoull()
-# + Defines ACE_STRTOULL_EQUIVALENT to identifier name if platform
-# has a equivalent function that differs in name only.
-# + Defines ACE_LACKS_STRTOULL_PROTOTYPE to 1 if platform lacks
-# declaration for strtoull().
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_FUNC_STRTOULL],
-[ACE_CHECK_LACKS_FUNCS(strtoull)
-if test $ac_cv_func_strtoull = "no"; then
- AC_CHECK_FUNC(__strtoull)
- if test $ac_cv_func___strtoull = "yes"; then
- AC_DEFINE([ACE_STRTOULL_EQUIVALENT], [::__strtoull],
- [Define to function that is equivalent to strtoull()])
- else
- AC_CHECK_FUNC(_strtoui64)
- if test $ac_cv_func__strtoui64 = "yes"; then
- AC_DEFINE([ACE_STRTOULL_EQUIVALENT], [::_strtoui64])
- fi
- fi
-else
- AC_CHECK_DECL([strtoull],
- [],
- [AC_DEFINE([ACE_LACKS_STRTOULL_PROTOTYPE], 1,
- [Define to 1 if platform lacks a declaration for strtoull()])],
- [#include <stdlib.h>])
-fi
-])
-
-# ACE_FUNC_WCSCASECMP
-# + Defines ACE_LACKS_WCSCASECMP to 1 if platform lacks wcscasecmp()
-# + Defines ACE_WCSCASECMP_EQUIVALENT to identifier name if platform
-# has a equivalent function that differs in name only.
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_FUNC_WCSCASECMP],
-[ACE_CHECK_LACKS_FUNCS(wcscasecmp)
-if test "$ac_cv_func_wcscasecmp" = no; then
- AC_CHECK_FUNC(wcsicmp)
- if test "$ac_cv_func_wcsicmp" = yes; then
- AC_DEFINE(ACE_WCSCASECMP_EQUIVALENT, [::wcsicmp],
- [Define to function that is equivalent to wcscasecmp()])
- else
- AC_CHECK_FUNC(_wcsicmp)
- if test "$ac_cv_func__wcsicmp" = yes; then
- AC_DEFINE(ACE_WCSCASECMP_EQUIVALENT, [::_wcsicmp])
- fi
- fi
-fi
-])
-
-# ACE_FUNC_WCSNCASECMP
-# + Defines ACE_LACKS_WCSNCASECMP to 1 if platform lacks wcsncasecmp()
-# + Defines ACE_WCSNCASECMP_EQUIVALENT to identifier name if platform
-# has a equivalent function that differs in name only.
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_FUNC_WCSNCASECMP],
-[ACE_CHECK_LACKS_FUNCS(wcsncasecmp)
-if test "$ac_cv_func_wcsncasecmp" = no; then
- AC_CHECK_FUNC(wcsnicmp)
- if test "$ac_cv_func_wcsnicmp" = yes; then
- AC_DEFINE(ACE_WCSNCASECMP_EQUIVALENT, [::wcsnicmp],
- [Define to function that is equivalent to wcsncasecmp()])
- else
- AC_CHECK_FUNC(_wcsnicmp)
- if test "$ac_cv_func__wcsnicmp" = yes; then
- AC_DEFINE(ACE_WCSNCASECMP_EQUIVALENT, [::_wcsnicmp])
- fi
- fi
-fi
-])
-
-# ACE_FUNC_WCSDUP
-# + Defines ACE_LACKS_WCSDUP to 1 if platform lacks wcsdup()
-# + Defines ACE_WCSDUP_EQUIVALENT to identifier name if platform
-# has a equivalent function that differs in name only.
-# + Defines ACE_HAS_NONCONST_WCSDUP if argument is char*. (TODO)
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_FUNC_WCSDUP],
-[ACE_CHECK_LACKS_FUNCS(wcsdup)
-if test "$ac_cv_func_wcsdup" = no; then
- AC_CHECK_FUNC(_wcsdup)
- if test "$ac_cv_func__wcsdup" = yes; then
- AC_DEFINE(ACE_WCSDUP_EQUIVALENT, [::_wcsdup],
- [Define to function that is equivalent to wcsdup()])
- fi
-fi
-])
-
-# ACE_FUNC_WCSTOLL
-# + Defines ACE_LACKS_WCSTOLL to 1 if platform lacks wcstoll()
-# + Defines ACE_WCSTOLL_EQUIVALENT to identifier name if platform
-# has a equivalent function that differs in name only.
-AC_DEFUN([ACE_FUNC_WCSTOLL],
-[ACE_CHECK_LACKS_FUNCS(wcstoll)
-if test $ac_cv_func_wcstoll = "no"; then
- AC_CHECK_FUNC(__wcstoll)
- if test $ac_cv_func___wcstoll = "yes"; then
- AC_DEFINE([ACE_WCSTOLL_EQUIVALENT], [::__wcstoll],
- [Define to function that is equivalent to wcstoll()])
- else
- AC_CHECK_FUNC(_wcstoi64)
- if test $ac_cv_func__wcstoi64 = "yes"; then
- AC_DEFINE([ACE_WCSTOLL_EQUIVALENT], [::_wcstoi64],
- [Define to function that is equivalent to wcstoll()])
- fi
- fi
-fi
-])
-
-# ACE_FUNC_WCSTOULL
-# + Defines ACE_LACKS_WCSTOULL to 1 if platform lacks wcstoull()
-# + Defines ACE_WCSTOULL_EQUIVALENT to identifier name if platform
-# has a equivalent function that differs in name only.
-AC_DEFUN([ACE_FUNC_WCSTOULL],
-[ACE_CHECK_LACKS_FUNCS(wcstoull)
-if test $ac_cv_func_wcstoull = "no"; then
- AC_CHECK_FUNC(__wcstoull)
- if test $ac_cv_func___wcstoull = "yes"; then
- AC_DEFINE([ACE_WCSTOULL_EQUIVALENT], [::__wcstoull],
- [Define to function that is equivalent to wcstoull()])
- else
- AC_CHECK_FUNC(_wcstoui64)
- if test $ac_cv_func__wcstoui64 = "yes"; then
- AC_DEFINE([ACE_WCSTOULL_EQUIVALENT], [::_wcstoui64],
- [Define to function that is equivalent to wcstoull()])
- fi
- fi
-fi
-])
-
-# ACE_CHECK_SYSINFO
-#
-# HP/UX, SVR4/POSIX and Linux have completely independent
-# implementations of the # sysinfo() system / library call.
-#
-# The HP/UX syscall is undocumented.
-#
-# The SVR4 signature is:
-# #include <sys/systeminfo.h>
-# long sysinfo (int command, char *buf, long count)
-#
-# While the Linux signature is:
-# #include <sys/sysinfo.h>
-# int sysinfo (struct sysinfo* info);
-#
-# SVR4 (or at least Solaris) also has a sys/sysinfo.h header, so that
-# cannot be used to distinguish between the two varients. As far as I
-# know, Linux does not have a sys/systeminfo.h header, so that can.
-# To further avoid false positives, small programs that use the two
-# APIs are compiled as part of the feature tests.
-#
-# ACE uses the ACE_HAS_SYSV_SYSINFO feature test macro for the first
-# and ACE_HAS_LINUX_SYSINFO for the second.
-#
-AC_DEFUN([ACE_CHECK_FUNC_SYSINFO],[
-ACE_CHECK_HAS_HEADERS(sys/sysinfo.h sys/systeminfo.h)
-AC_CHECK_FUNC(sysinfo)
-if test "$ac_cv_func_sysinfo" = yes; then
- if test "$ac_cv_header_sys_systeminfo_h" = yes; then
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM(
- [#include <sys/systeminfo.h>],
- [char buf[256];
- sysinfo (SI_SYSNAME, buf, sizeof(buf));
- return 0;])],
- [AC_DEFINE([ACE_HAS_SYSV_SYSINFO], 1,
- [Define to 1 if system has SysV version of sysinfo().])])
-
- elif test "$ac_cv_header_sys_sysinfo_h" = yes; then
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM(
- [#include <sys/sysinfo.h>],
- [struct sysinfo s;
- sysinfo (&s);
- return 0;])],
- [AC_DEFINE([ACE_HAS_LINUX_SYSINFO], 1,
- [Define to 1 if system has Linux version of sysinfo().])])
- fi
-fi
-])
diff --git a/ACE/m4/ace_functions.m4 b/ACE/m4/ace_functions.m4
deleted file mode 100644
index 571b9f1dfdc..00000000000
--- a/ACE/m4/ace_functions.m4
+++ /dev/null
@@ -1,27 +0,0 @@
-# ACE_CHECK_HAS_FUNCS(FUNCTION..., [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_CHECK_HAS_FUNCS],
-[AC_FOREACH([ACE_Func], [$1],
- [AH_TEMPLATE(AS_TR_CPP([ACE_HAS_]ACE_Func),
- [Define to 1 if platform has ]ACE_Func[().])])dnl
-for ace_func in $1
-do
-AC_CHECK_FUNC($ace_func,
- [AC_DEFINE_UNQUOTED(AS_TR_CPP([ACE_HAS_$ace_func])) $2],
- [$3])dnl
-done
-])
-
-# ACE_CHECK_LACKS_FUNCS(FUNCTION..., [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-#-----------------------------------------------------------------------------
-AC_DEFUN([ACE_CHECK_LACKS_FUNCS],
-[AC_FOREACH([ACE_Func], [$1],
- [AH_TEMPLATE(AS_TR_CPP([ACE_LACKS_]ACE_Func),
- [Define to 1 if platform lacks ]ACE_Func[().])])dnl
-for ace_func in $1
-do
-AC_CHECK_FUNC($ace_func,
- [$2],
- [AC_DEFINE_UNQUOTED(AS_TR_CPP([ACE_LACKS_$ace_func])) $3])dnl
-done
-])
diff --git a/ACE/m4/ace_headers.m4 b/ACE/m4/ace_headers.m4
deleted file mode 100644
index 88a0cef94ae..00000000000
--- a/ACE/m4/ace_headers.m4
+++ /dev/null
@@ -1,35 +0,0 @@
-# ACE_CHECK_HAS_HEADERS(HEADER-FILE...,
-# [ACTION-IF-FOUND],
-# [ACTION-IF-NOT-FOUND],
-# [INCLUDES = 'default-includes'])
-#-----------------------------------------------------------------------------
-AC_DEFUN([ACE_CHECK_HAS_HEADERS],
-[AC_FOREACH([ACE_Header], [$1],
- [AH_TEMPLATE(AS_TR_CPP([ACE_HAS_]ACE_Header),
- [Define to 1 if platform has the <]ACE_Header[> header file.])])dnl
-for ace_header in $1
-do
-AC_CHECK_HEADER($ace_header,
- [AC_DEFINE_UNQUOTED(AS_TR_CPP([ACE_HAS_$ace_header])) $2],
- [$3],
- [$4])dnl
-done
-])
-
-# ACE_CHECK_LACKS_HEADERS(HEADER-FILE...,
-# [ACTION-IF-FOUND],
-# [ACTION-IF-NOT-FOUND],
-# [INCLUDES = 'default-includes'])
-#-----------------------------------------------------------------------------
-AC_DEFUN([ACE_CHECK_LACKS_HEADERS],
-[AC_FOREACH([ACE_Header], [$1],
- [AH_TEMPLATE(AS_TR_CPP([ACE_LACKS_]ACE_Header),
- [Define to 1 if platform lacks the <]ACE_Header[> header file.])])dnl
-for ace_header in $1
-do
-AC_CHECK_HEADER($ace_header,
- [$2],
- [AC_DEFINE_UNQUOTED(AS_TR_CPP([ACE_LACKS_$ace_header])) $3],
- [$4])dnl
-done
-])
diff --git a/ACE/m4/acinclude.m4 b/ACE/m4/acinclude.m4
deleted file mode 100644
index fed088549bf..00000000000
--- a/ACE/m4/acinclude.m4
+++ /dev/null
@@ -1,525 +0,0 @@
-dnl -------------------------------------------------------------------------
-dnl $Id$
-dnl
-dnl ACE M4 include file which contains general M4 macros
-dnl to be used by the ACE configure script.
-dnl
-dnl The macros in this file were designed for ACE but should be
-dnl general enough for general use.
-dnl
-dnl -------------------------------------------------------------------------
-
-dnl Copyright (C) 1998, 1999, 2000, 2002 Ossama Othman
-dnl
-dnl All Rights Reserved
-dnl
-dnl This library is free software; you can redistribute it and/or
-dnl modify it under the current ACE distribution terms.
-dnl
-dnl This library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
-
-dnl miscellaneous macros
-
-dnl Prevent the configure script continuing any further if a CVS control
-dnl directory is found. The idea is to prevent files generated during
-dnl configuration and build from be checked in to the CVS repository that
-dnl the sources are checked into. This should only be an issue for
-dnl maintainers, not end-users. Maintainers should configure and build in
-dnl a directory that doesn't contain any CVS controlled sources and files,
-dnl i.e. that doesn't contain a CVS directory.
-dnl
-dnl Usage: ACE_CHECK_FOR_CVS_DIR
-AC_DEFUN([ACE_CHECK_FOR_CVS_DIR],
-[
- if test -d CVS; then
- AC_MSG_ERROR(
- [
- This error is meant for maintainers:
-
- Please configure and build in a non-CVS controlled directory.
- Doing so will prevent accidentally committing automatically
- generated files into the CVS repository and help ensure that
- the generated files and build scheme are correct.
-
- For example, try the following from the top-level source
- directory:
-
- mkdir objdir
- cd objdir
- ../configure
- make
-
- This will create a build space in the directory `objdir' and
- start a build in that directory.
- ])
- fi
-])
-
-
-dnl Prevent the configure script from continuing any further if
-dnl configuration is being performed in the top-level directory. The
-dnl idea is to prevent files generated during configuration and build
-dnl from overwriting the stock files of the same name.
-dnl Usage: ACE_CHECK_TOP_SRCDIR
-AC_DEFUN([ACE_CHECK_TOP_SRCDIR],
-[
- if test "$srcdir" = "." && test "$USE_MAINTAINER_MODE" != "yes"; then
- AC_MSG_ERROR(
- [
- Please configure and build in a directory other than the
- top-level source directory. Doing so will prevent files
- distributed with the package from being overwritten. This is
- currently necessary since autoconf support is still
- experimental. If you encounter problems please use the stock
- build procedure.
-
- For example, try the following from the top-level source
- directory:
-
- mkdir objdir
- cd objdir
- ../configure
- make
-
- This will create a build space in the directory `objdir' and
- start a build in that directory.
- ])
- fi
-])
-
-dnl Add compiler flags to the CXXFLAGS and CFLAGS variables when doing an
-dnl AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])],[],[]) (not ACE_TRY_COMPILE).
-dnl Use this macro when adding include directories to the compiler flags,
-dnl for example.
-dnl Usage: ACE_TRY_COMPILE(COMPILER-FLAGS, INCLUDES, FUNCTION-BODY,
-dnl [ACTION-IF-FOUND [,ACTION-IF-NOT-FOUND]])
-AC_DEFUN([ACE_TRY_COMPILE],
-[
- AC_LANG([C++])
- AC_REQUIRE([AC_LANG])
-
- ace_pre_try_CXXFLAGS="$CXXFLAGS"
- CXXFLAGS="$CXXFLAGS $1"
-
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[$2]], [[$3]])],[$4],[$5])
-
- dnl Restore the C++ flags
- CXXFLAGS="$ace_pre_try_CXXFLAGS"
-
-])
-
-dnl Create a temporary empty file and remove it after commands are done using
-dnl it. The directory in which the temporary file will be created in must
-dnl exist. Files will be created under the source directory, not the build
-dnl directory.
-dnl Use this macro when you need a particular file available but want it to be
-dnl empty. This is useful to prevent conflicts with autoconf's confdefs.h
-dnl header when doing an AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])],[],[]).
-dnl Usage: ACE_USE_TEMP_FILE(TEMP-FILE-TO-CREATE, COMMANDS-THAT-WILL-USE-IT)
-AC_DEFUN([ACE_USE_TEMP_FILE],
-[
- test -d $1 && AC_MSG_ERROR([cannot create file: $acetmp is a directory])
-
- dnl Make sure contents of existing file don't override the contents
- dnl of the temporary one.
- test -f ${srcdir}/$1 && mv ${srcdir}/$1 ${srcdir}/$1.conf
-
- if test ${srcdir} != "."; then
- dnl Create all of the sub-directories.
- AS_MKDIR_P([`AS_DIRNAME(["$1"])`])
- fi
-
- touch $1
-
- $2
-
- if test -f ${srcdir}/$1.conf; then
- mv ${srcdir}/$1.conf ${srcdir}/$1
- fi
-
- if test ${srcdir} != "."; then
- dnl Remove the file. Any sub-directories will not be removed
- dnl since we have no way to tell if they existed prior to the
- dnl creation of this file.
- rm $1
- fi
-])
-
-dnl Run given test(s) with warnings converted to errors
-dnl Usage: ACE_CONVERT_WARNINGS_TO_ERRORS(TEST-BLOCK)
-AC_DEFUN([ACE_CONVERT_WARNINGS_TO_ERRORS],
-[
-dnl $WERROR is set in the ACE_SET_COMPILER_FLAGS macro.
- AC_REQUIRE([ACE_SET_COMPILER_FLAGS])
-
-dnl Some tests may pass because the compiler issues warnings
-dnl instead of errors when errors should occur. This macro converts
-dnl warnings to errors when executing the action/test passed to this
-dnl macro so that action/test fails when it is supposed to fail; at
-dnl least that is the idea.
-
- ace_pre_warning_CXXFLAGS="$CXXFLAGS"
- CXXFLAGS="$CXXFLAGS $WERROR"
-
- $1
-
- CXXFLAGS="$ace_pre_warning_CXXFLAGS"
-])
-
-dnl Wrapper around AC_CACHE_VAL used to ensure "ACTION-IF" commands are run
-dnl even if results have been previously cached.
-dnl Usage: ACE_CACHE_CHECK(MESSAGE, CACHE-ID, COMMANDS-TO-SET-CACHE-VAL,
-dnl ACTION-IF-CACHE-ID-IS-YES,
-dnl ACTION-IF-CACHE-ID-IS-NO)
-dnl The COMMANDS-TO-SET-CACHE-VAL should set the CACHE-ID to yes or "no,"
-dnl otherwise the "ACTION-IF*" commands may not run. The
-dnl COMMANDS-TO-SET-CACHE-VAL should only set the CACHE value. For example,
-dnl no AC_DEFINES should be placed in the COMMANDS-TO-SET-CACHE-VAL.
-AC_DEFUN([ACE_CACHE_CHECK],
-[
- AC_MSG_CHECKING([$1])
- AC_CACHE_VAL([$2], [$3])
- AC_MSG_RESULT([[$]$2])
- if test "[$]$2" != no; then
- ace_just_a_place_holder=fixme
-ifelse([$4], , :, [$4])
- else
- ace_just_a_place_holder=fixme
-ifelse([$5], , , [$5
-])
- fi
-])
-
-dnl checks for programs
-
-dnl checks for libraries
-
-dnl checks for header files
-
-dnl checks for typedefs
-
-dnl checks for structures
-
-dnl checks for variables
-
-dnl checks for compiler characteristics
-
-dnl checks for library functions
-
-dnl Check for function using prototype in header
-dnl This macro is used if a function is called a different name in a given
-dnl library than what is in the header file but the difference is made
-dnl transparent to the user since the header may provide a macro to make
-dnl things "transparent." If the given header does not exist then this
-dnl macro acts just like the standard AC_CHECK_FUNC macro.
-dnl Usage: ACE_CHECK_FUNC(FUNCTION, HEADER,
-dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
-AC_DEFUN([ACE_CHECK_FUNC],
-[
-dnl AC_REQUIRE([AC_PROG_CXX])
-dnl AC_REQUIRE([AC_PROG_CXXCPP])
-dnl AC_LANG([C++])
-dnl AC_REQUIRE([AC_LANG])
- AC_REQUIRE([AC_PROG_AWK])
-
- AC_PREPROC_IFELSE([AC_LANG_SOURCE([[
-#include <$2>
- ]])],[ace_header_exists=yes],[ace_header_exists=no])
-
- cat > conftest.$ac_ext <<EOF
-
-#include <$2>
- ACE_REAL_FUNCTION $1
-
-EOF
-
- if test "$ace_header_exists" = yes; then
- if test -z "$AWK"; then
- AC_MSG_WARN([No awk program found. Real $1 function may not be found.])
- fi
-
- if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "ACE_REAL_FUNCTION" |
- (eval "$AWK '{print \[$]2}' > conftest.awk 2>&1"); then
- rm -f conftest.$ac_ext
- ace_real_function=`cat conftest.awk`
- rm -f conftest.awk
- fi
-
- if test $1 != "$ace_real_function"; then
- AC_MSG_CHECKING([for real $1 from $2])
- AC_MSG_RESULT([$ace_real_function])
- fi
- else
- ace_real_function=$1
- fi dnl test "$ace_header_not_exist" != yes
-
- AC_CHECK_FUNC([$ace_real_function],[$3],[$4])
-])
-
-dnl Check for function in library using prototype in header
-dnl This macro is used if a function is called a different name in a given
-dnl library than what is in the header file but the difference is made
-dnl transparent to the user since the header may provide a macro to make
-dnl things "transparent." If the given header does not exist then this
-dnl macro acts just like the standard AC_CHECK_LIB macro.
-dnl Usage: ACE_CHECK_LIB(LIBRARY, FUNCTION, HEADER,
-dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
-AC_DEFUN([ACE_CHECK_LIB],
-[
-dnl AC_REQUIRE([AC_PROG_CXX])
-dnl AC_REQUIRE([AC_PROG_CXXCPP])
-dnl AC_LANG([C++])
-dnl AC_REQUIRE([AC_LANG])
- AC_REQUIRE([AC_PROG_AWK])
-
- AC_PREPROC_IFELSE([AC_LANG_SOURCE([[
-#include <$3>
- ]])],[ace_header_exists=yes],[ace_header_exists=no])
-
- cat > conftest.$ac_ext <<EOF
-
-#include <$3>
- ACE_REAL_FUNCTION $2
-
-EOF
-
- if test "$ace_header_exists" = yes; then
- if test -z "$AWK"; then
- AC_MSG_WARN([No awk program found. "Real" function in library may not be found.])
- fi
-
- if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "ACE_REAL_FUNCTION" |
- eval "$AWK '{print \[$]2}'" > conftest.awk 2>&1; then
- rm -f conftest.$ac_ext
- ace_real_function=`cat conftest.awk`
- rm -f conftest.awk
- fi
-
- if test $2 != "$ace_real_function"; then
- AC_MSG_CHECKING([for real $2 from $3])
- AC_MSG_RESULT([$ace_real_function])
- fi
- else
- ace_real_function=$2
- fi dnl test "$ace_header_not_exist" != yes
-
- AC_CHECK_LIB([$1], [$ace_real_function], [$4], [$5])
-])
-
-
-dnl Check if getrlimit() takes an enum as 1st argument
-dnl Usage: ACE_CHECK_SETRLIMIT_ENUM
-AC_DEFUN([ACE_CHECK_SETRLIMIT_ENUM],
-[
-if test "$ac_cv_func_setrlimit" = yes; then
- AC_MSG_CHECKING([if setrlimit() takes an enum as 1st argument])
- AC_EGREP_HEADER([setrlimit.*\(.*[^,]*enum], sys/resource.h,
- [
- cat > conftest.$ac_ext <<EOF
-#include "confdefs.h"
-#include <sys/resource.h>
-EOF
-
-dnl Here we attempt to determine the type of the first argument of
-dnl getrusage from its prototype. It should either be an int or an
-dnl enum. If it is an enum, determine the enum type.
- ace_setrlimit_enum=`eval "$ac_cpp conftest.$ac_ext" | \
- $EGREP '[[ ]]+setrlimit.*\(.*[[^,]]*enum' | \
- sed -e 's/^.*setrlimit.*(.*enum//' -e 's/[[^ ]]*,.*$//'`
-
- ace_setrlimit_enum="enum $ace_setrlimit_enum"
-
- AC_MSG_RESULT([$ace_setrlimit_enum])
-
-if test -n "$ace_setrlimit_enum"; then
- AC_DEFINE_UNQUOTED([ACE_HAS_RLIMIT_RESOURCE_ENUM], [$ace_setrlimit_enum])
-fi
-
- rm -rf conftest*
-
-dnl Do not remove this parenthesis --> )
-dnl It's only purpose to keep Emacs from getting confused about mismatched
-dnl parentheses.
- ],
- [
- AC_MSG_RESULT([no])
- ])
-
-fi dnl test "$ac_cv_func_setrlimit" = yes
-])
-
-dnl Check if getrusage() takes an enum as 1st argument
-dnl Usage: ACE_CHECK_GETRUSAGE_ENUM
-AC_DEFUN([ACE_CHECK_GETRUSAGE_ENUM],
-[
-if test "$ac_cv_func_getrusage" = yes; then
- AC_MSG_CHECKING([if getrusage() takes an enum as 1st argument])
- AC_EGREP_HEADER([getrusage.*\(.*[^,]*enum], [sys/resource.h],
- [
- cat > conftest.$ac_ext <<EOF
-#include "confdefs.h"
-#include <sys/resource.h>
-EOF
-
-dnl Here we attempt to determine the type of the first argument of
-dnl getrusage from its prototype. It should either be an int or an
-dnl enum. If it is an enum, determine the enum type.
- ace_rusage_who=`eval "$ac_cpp conftest.$ac_ext" | \
- $EGREP '[[ ]]+getrusage.*\(.*[[^,]]*enum' | \
- sed -e 's/^.*getrusage.*(.*enum//' -e 's/[[^ ]]*,.*$//'`
-
- ace_rusage_who="enum $ace_rusage_who"
-
- AC_MSG_RESULT([$ace_rusage_who])
-
-if test -n "$ace_rusage_who"; then
- AC_DEFINE_UNQUOTED([ACE_HAS_RUSAGE_WHO_ENUM], [$ace_rusage_who])
-fi
-
- rm -rf conftest*
-
-dnl Do not remove this parenthesis --> )
-dnl It's only purpose to keep Emacs from getting confused about mismatched
-dnl parentheses.
- ],
- [
- AC_MSG_RESULT([no])
- ])
-
-fi dnl test "$ac_cv_func_getrusage" = yes
-])
-
-
-dnl Check for 64 bit llseek() or lseek64()
-dnl Usage: ACE_CHECK_LSEEK64
-AC_DEFUN([ACE_CHECK_LSEEK64],
-[
- AH_TEMPLATE([ACE_HAS_LSEEK64],
- [Platform supports lseek64(). This should not be defined if
- ACE_HAS_LLSEEK is defined.])
-
- AH_TEMPLATE([ACE_LACKS_LSEEK64_PROTOTYPE],
- [Platform/compiler lacks the lseek64() prototype. This should not
- be defined if ACE_LACKS_LLSEEK_PROTOTYPE is defined.])
-
- AH_TEMPLATE([ACE_HAS_LLSEEK],
- [Platform supports llseek(). This should not be defined if
- ACE_HAS_LSEEK64 is defined.])
-
- AH_TEMPLATE([ACE_LACKS_LLSEEK_PROTOTYPE],
- [Platform/compiler lacks the llseek() prototype. This should not
- be defined if ACE_LACKS_LSEEK64_PROTOTYPE is defined.])
-
- AC_CHECK_FUNC([lseek64],
- [
- AC_DEFINE([ACE_HAS_LSEEK64])
-
- dnl Check for 64 bit offset type in the lseek64() prototype, if it
- dnl exists.
- dnl ACE_CHECK_OFF64_T([lseek64])
-
- dnl Check if _LARGEFILE64_SOURCE macro is needed to make the
- dnl lseek64() prototype visible, or if the prototype itself is missing.
- ACE_CACHE_CHECK([for lseek64 prototype],
- [ace_cv_lib_has_lseek64_prototype],
- [
- ace_save_CPPFLAGS="$CPPFLAGS"
- ace_no_largefile64="-U_LARGEFILE64_SOURCE"
- CPPFLAGS="$CPPFLAGS $ace_no_largefile64"
- AC_EGREP_HEADER([[^_]+lseek64], [unistd.h],
- [
- ace_cv_lib_has_lseek64_prototype=yes
- ],
- [
- ace_cv_lib_has_lseek64_prototype=no
- ])
- dnl Reset the compiler flags
- CPPFLAGS="$ace_save_CPPFLAGS"
- ],[],[AC_DEFINE([ACE_LACKS_LSEEK64_PROTOTYPE])])
- ],
- [
- AC_CHECK_FUNC([llseek],
- [
- AC_DEFINE([ACE_HAS_LLSEEK])
- dnl Check if _LARGEFILE64_SOURCE macro is needed to make the
- dnl llseek() prototype visible, or if the prototype itself is
- dnl missing.
-
- dnl Check for 64 bit offset type in the llseek() prototype, if
- dnl it exists.
- dnl ACE_CHECK_OFF64_T([llseek])
-
- ACE_CACHE_CHECK([for llseek prototype],
- [ace_cv_lib_has_llseek_prototype],
- [
- ace_save_CPPFLAGS="$CPPFLAGS"
- ace_no_largefile64="-U_LARGEFILE64_SOURCE"
- CPPFLAGS="$CPPFLAGS $ace_no_largefile64"
- AC_EGREP_HEADER([[^_]+llseek],[unistd.h],
- [
- ace_cv_lib_has_llseek_prototype=no
- ],
- [
- ace_cv_lib_has_llseek_prototype=yes
- ],)
- dnl Reset the compiler flags
- CPPFLAGS="$ace_save_CPPFLAGS"
- ],[],[AC_DEFINE([ACE_LACKS_LLSEEK_PROTOTYPE])])
-
-
- ],)
- ])
-])
-
-dnl Check what the 64 bit offset type is by checking what the offset
-dnl argument for llseek()/lseek64() is.
-dnl Usage: ACE_CHECK_LOFF_64(LSEEK64-FUNC)
-AC_DEFUN([ACE_CHECK_OFF64_T],
-[
- AC_MSG_CHECKING([for 64 bit offset type])
- AC_EGREP_HEADER([[ ]+$1.*\(.*],[unistd.h],
- [
- cat > conftest.$ac_ext <<EOF
-#include "confdefs.h"
-
-/* Make sure 64 bit file feature test macro is defined. */
-#ifndef _LARGEFILE64_SOURCE
-# define _LARGEFILE64_SOURCE
-#endif
-
-#ifndef ACE_LACKS_UNISTD_H
-# include <unistd.h> /* needed for lseek64()/llseek() prototype */
-#endif
-EOF
-
-dnl Here we attempt to determine the type of the second argument of
-dnl lseek64()/llseek() from its prototype.
- ace_off64_t=`eval "$ac_cpp conftest.$ac_ext" | \
- $EGREP '[[ ]]+lseek64.*\(.*' | \
- sed -e 's/^.*(.*,[[ ]]*\(.*\) .*,.*$/\1/'`
-
-
-if test -n "$ace_off64_t"; then
- AC_MSG_RESULT([$ace_off64_t])
- AC_DEFINE_UNQUOTED([ACE_LOFF_T_TYPEDEF], [$ace_off64_t])
-fi
-
- rm -rf conftest*
-
-dnl Do not remove this parenthesis --> )
-dnl It's only purpose is to keep Emacs from getting confused about
-dnl mismatched parentheses.
- ],
- [
- AC_MSG_RESULT([no])
- ])
-])
-
-dnl checks for structures
-
-dnl checks for system services
diff --git a/ACE/m4/aio.m4 b/ACE/m4/aio.m4
deleted file mode 100644
index b8248c6d24c..00000000000
--- a/ACE/m4/aio.m4
+++ /dev/null
@@ -1,625 +0,0 @@
-dnl -------------------------------------------------------------------------
-dnl $Id$
-dnl
-dnl aio.m4
-dnl
-dnl ACE M4 include file which contains ACE specific M4 macros
-dnl that determine availablility of POSIX asynchronous IO
-dnl support.
-dnl
-dnl -------------------------------------------------------------------------
-
-dnl Copyright (C) 1998, 1999, 2002 Ossama Othman
-dnl
-dnl All Rights Reserved
-dnl
-dnl This library is free software; you can redistribute it and/or
-dnl modify it under the current ACE distribution terms.
-dnl
-dnl This library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
-dnl Asynchronous IO check
-dnl Use this macro to determine if asynchronous IO is working on a
-dnl given platform.
-dnl Usage: ACE_CHECK_ASYNCH_IO
-AC_DEFUN([ACE_CHECK_ASYNCH_IO],
-[
- AC_REQUIRE([AC_PROG_CXX])
- AC_REQUIRE([AC_PROG_CXXCPP])
- AC_LANG([C++])
- AC_REQUIRE([AC_LANG])
- AC_REQUIRE([ACE_CHECK_THREADS])
-
- dnl In case a library with the asynchronous libraries is found but
- dnl the asynchronous IO support is not functional then save a copy
- dnl of the list of libraries before the asynch IO function library
- dnl is added to the list so that we can revert the list to its
- dnl pre-asynch-IO check state.
- ace_save_LIBS="$LIBS"
-
- dnl Asynchronous IO library check
- dnl Some platforms, such as Solaris puts aio_read in -lposix4, for example.
- dnl In some cases, the thread library must be linked to in addition to the
- dnl real-time support library. As such, make sure these checks are done
- dnl after the thread library checks.
- AC_SEARCH_LIBS([aio_read], [aio rt posix4],
- [ace_has_aio_funcs=yes], [ace_has_aio_funcs=no])
-
-if test "$ace_has_aio_funcs" = yes; then
- ACE_CACHE_CHECK([for working asynchronous IO],
- [ace_cv_feature_aio_calls],
- [
- AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#ifndef ACE_LACKS_UNISTD_H
-#include <unistd.h>
-#endif
-#include <fcntl.h>
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <sys/stat.h>
-#include <signal.h>
-#include <string.h>
-#include <errno.h>
-#include <stdio.h>
-#include <iostream>
-
-#include <aio.h>
-
-class Test_Aio
-{
-public:
- Test_Aio (void);
- // Default constructor.
-
- int init (void);
- // Initting the output file and the buffer.
-
- int do_aio (void);
- // Doing the testing stuff.
-
- ~Test_Aio (void);
- // Destructor.
-private:
- int out_fd_;
- // Output file descriptor.
-
- struct aiocb *aiocb_write_;
- // For writing to the file.
-
- struct aiocb *aiocb_read_;
- // Reading stuff from the file.
-
- char *buffer_write_;
- // The buffer to be written to the out_fd.
-
- char *buffer_read_;
- // The buffer to be read back from the file.
-};
-
-Test_Aio::Test_Aio (void)
- : out_fd_ (0),
- aiocb_write_ (new struct aiocb),
- aiocb_read_ (new struct aiocb),
- buffer_write_ (0),
- buffer_read_ (0)
-{
-}
-
-Test_Aio::~Test_Aio (void)
-{
- if (close (this->out_fd_) != 0)
- perror ("close");
-
- delete aiocb_write_;
- delete aiocb_read_;
- delete [] buffer_write_;
- delete [] buffer_read_;
-}
-
-// Init the output file and init the buffer.
-int
-Test_Aio::init (void)
-{
- // Open the output file.
- this->out_fd_ = open ("test_aio.log", O_RDWR | O_CREAT | O_TRUNC, 0600);
- if (this->out_fd_ == -1)
- {
- perror ("open");
- return -1;
- }
-
- unlink ("test_aio.log"); // Unlink now so we don't have to do so later.
-
- const char message[] = "Welcome to the world of AIO... AIO Rules !!!";
-
- // Init the buffers.
- this->buffer_write_ = new char [sizeof (message) + 1];
- strcpy (this->buffer_write_, message);
- this->buffer_read_ = new char [sizeof (message) + 1];
-
- return 0;
-}
-
-// Set the necessary things for the AIO stuff.
-// Write the buffer asynchly.hmm Disable signals.
-// Go on aio_suspend. Wait for completion.
-// Print out the result.
-int
-Test_Aio::do_aio (void)
-{
- // = Write to the file.
-
- // Setup AIOCB.
- this->aiocb_write_->aio_fildes = this->out_fd_;
- this->aiocb_write_->aio_offset = 0;
- this->aiocb_write_->aio_buf = this->buffer_write_;
- this->aiocb_write_->aio_nbytes = strlen (this->buffer_write_);
- this->aiocb_write_->aio_reqprio = 0;
- this->aiocb_write_->aio_sigevent.sigev_notify = SIGEV_NONE;
- //this->this->aiocb_.aio_sigevent.sigev_signo = SIGRTMAX;
- this->aiocb_write_->aio_sigevent.sigev_value.sival_ptr =
- (void *) this->aiocb_write_;
-
- // Fire off the aio write.
- if (aio_write (this->aiocb_write_) != 0)
- {
- perror ("aio_write");
- return -1;
- }
-
- // = Read from that file.
-
- // Setup AIOCB.
- this->aiocb_read_->aio_fildes = this->out_fd_;
- this->aiocb_read_->aio_offset = 0;
- this->aiocb_read_->aio_buf = this->buffer_read_;
- this->aiocb_read_->aio_nbytes = strlen (this->buffer_write_);
- this->aiocb_read_->aio_reqprio = 0;
- this->aiocb_read_->aio_sigevent.sigev_notify = SIGEV_NONE;
- //this->this->aiocb_.aio_sigevent.sigev_signo = SIGRTMAX;
- this->aiocb_read_->aio_sigevent.sigev_value.sival_ptr =
- (void *) this->aiocb_read_;
-
- // Fire off the aio write. If it doesnt get queued, carry on to get
- // the completion for the first one.
- if (aio_read (this->aiocb_read_) < 0)
- perror ("aio_read");
-
- // Wait for the completion on aio_suspend.
- struct aiocb *list_aiocb[2];
- list_aiocb [0] = this->aiocb_write_;
- list_aiocb [1] = this->aiocb_read_;
-
- // Do suspend till all the aiocbs in the list are done.
- int done = 0;
- while (!done)
- {
- if (aio_suspend (list_aiocb, 2, 0) != 0)
- {
- perror ("aio_suspend");
- return -1;
- }
-
- // Analyze return and error values.
- if (list_aiocb [0] != 0 && aio_error (list_aiocb [0]) != EINPROGRESS)
- {
- if (aio_return (list_aiocb [0]) == -1)
- {
- perror ("aio_return");
- return -1;
- }
- else
- {
- // Successful. Store the pointer somewhere and make the
- // entry NULL in the list.
- // @@ no need ----> this->aiocb_write_ = list_aiocb [0];
- list_aiocb [0] = 0;
- }
- }
-
- if (list_aiocb [1] != 0 && aio_error (list_aiocb [1]) != EINPROGRESS)
- {
- if (aio_return (list_aiocb [1]) == -1)
- {
- perror ("aio_return");
- return -1;
- }
- else
- {
- // Successful. Store the pointer somewhere and make the
- // entry NULL in the list.
- // @@ no need ----> this->aiocb_read_ = list_aiocb [1];
- list_aiocb [1] = 0;
- }
- }
-
- // Is it done?
- if ((list_aiocb [0] == 0) && (list_aiocb [1] == 0))
- done = 1;
- }
-
- return 0;
-}
-
-int
-main ()
-{
- Test_Aio test_aio;
-
- if (test_aio.init () != 0)
- {
- //printf ("AIOCB test failed:\n"
- // "ACE_POSIX_AIOCB_PROACTOR may not work in this platform\n");
- return -1;
- }
-
- if (test_aio.do_aio () != 0)
- {
- //printf ("AIOCB test failed:\n"
- // "ACE_POSIX_AIOCB_PROACTOR may not work in this platform\n");
- return -1;
- }
- //printf ("AIOCB test successful:\n"
- // "ACE_POSIX_AIOCB_PROACTOR should work in this platform\n");
- return 0;
-}
- ]])],[
- ace_cv_feature_aio_calls=yes
- ],[
- ace_cv_feature_aio_calls=no
- ],[
- dnl Asynchronous IO test for cross-compiled platforms
- dnl This test is weaker than the above run-time tests but it will
- dnl have to do.
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([[
-#include <aio.h>
- ]],
- [[
- aiocb* aiocb_ptr (void);
- ]])],
- [
- ace_cv_feature_aio_calls=yes
- ],
- [
- ace_cv_feature_aio_calls=no
- ])
- ])
- ],[AC_DEFINE([ACE_HAS_AIO_CALLS])],[LIBS="$ace_save_LIBS"])
-fi dnl test "$ace_has_aio_funcs" = yes
-
-
-if test "$ace_cv_feature_aio_calls" = yes; then
- ACE_CACHE_CHECK([for working POSIX realtime signals],
- [ace_cv_feature_posix_rt_sigs],
- [
- dnl Create a file for the test program to read.
- cat > test_aiosig.txt <<EOF
-
-*******************************************************
-FOO BAR FOO BAR FOO BAR FOO BAR FOO BAR FOO BAR FOO BAR
-*******************************************************
-EOF
-
-
- AC_RUN_IFELSE(
- [AC_LANG_SOURCE([[
-extern "C" {
-#include <signal.h>
-}
-#ifndef ACE_LACKS_UNISTD_H
-#include <unistd.h>
-#endif
-#include <fcntl.h>
-#ifndef ACE_LACKS_SYS_TYPES_H
-# include <sys/types.h>
-#endif
-#include <sys/stat.h>
-#include <pthread.h>
-#include <string.h>
-#include <errno.h>
-#include <stdio.h>
-
-#include <limits.h>
-
-#include <aio.h>
-
-#ifdef __cplusplus
-extern "C"
-#endif
-void null_handler (int /* signal_number */,
- siginfo_t * /* info */,
- void * /* context */);
-
-int file_handle = -1;
-char mb1[BUFSIZ + 1];
-char mb2[BUFSIZ + 1];
-aiocb aiocb1, aiocb2;
-sigset_t completion_signal;
-
-// Function prototypes.
-int setup_signal_delivery (void);
-int issue_aio_calls (void);
-int query_aio_completions (void);
-int test_aio_calls (void);
-int setup_signal_handler (void);
-int setup_signal_handler (int signal_number);
-
-int
-setup_signal_delivery (void)
-{
- // Make the sigset_t consisting of the completion signal.
- if (sigemptyset (&completion_signal) == -1)
- {
- perror ("Error:Couldn't init the RT completion signal set\n");
- return -1;
- }
-
- if (sigaddset (&completion_signal, SIGRTMIN) == -1)
- {
- perror ("Error:Couldn't init the RT completion signal set\n");
- return -1;
- }
-
- // Mask them.
- if (pthread_sigmask (SIG_BLOCK, &completion_signal, 0) == -1)
- {
- perror ("Error:Couldn't make the RT completion signals\n");
- return -1;
- }
-
- return setup_signal_handler (SIGRTMIN);
-}
-
-int
-issue_aio_calls (void)
-{
- // Setup AIOCB.
- aiocb1.aio_fildes = file_handle;
- aiocb1.aio_offset = 0;
- aiocb1.aio_buf = mb1;
- aiocb1.aio_nbytes = BUFSIZ;
- aiocb1.aio_reqprio = 0;
- aiocb1.aio_sigevent.sigev_notify = SIGEV_SIGNAL;
- aiocb1.aio_sigevent.sigev_signo = SIGRTMIN;
- aiocb1.aio_sigevent.sigev_value.sival_ptr = (void *) &aiocb1;
-
- // Fire off the aio write.
- if (aio_read (&aiocb1) == -1)
- {
- // Queueing failed.
- perror ("Error:Asynch_Read_Stream: aio_read queueing failed\n");
- return -1;
- }
-
- // Setup AIOCB.
- aiocb2.aio_fildes = file_handle;
- aiocb2.aio_offset = BUFSIZ + 1;
- aiocb2.aio_buf = mb2;
- aiocb2.aio_nbytes = BUFSIZ;
- aiocb2.aio_reqprio = 0;
- aiocb2.aio_sigevent.sigev_notify = SIGEV_SIGNAL;
- aiocb2.aio_sigevent.sigev_signo = SIGRTMIN;
- aiocb2.aio_sigevent.sigev_value.sival_ptr = (void *) &aiocb2;
-
- // Fire off the aio write.
- if (aio_read (&aiocb2) == -1)
- {
- // Queueing failed.
- perror ("Error:Asynch_Read_Stream: aio_read queueing failed\n");
- return -1;
- }
- return 0;
-}
-
-int
-query_aio_completions (void)
-{
- int result = 0;
- size_t number_of_completions = 0;
- for (number_of_completions = 0;
- number_of_completions < 2;
- number_of_completions++)
- {
- // Wait for <milli_seconds> amount of time.
- // @@ Assigning <milli_seconds> to tv_sec.
- timespec timeout;
- timeout.tv_sec = 5;
- timeout.tv_nsec = 0;
-
- // To get back the signal info.
- siginfo_t sig_info;
-
- // Await the RT completion signal.
- int sig_return = sigtimedwait (&completion_signal,
- &sig_info,
- &timeout);
-
- // Error case.
- // If failure is coz of timeout, then return *0* but set
- // errno appropriately. This is what the WinNT proactor
- // does.
- if (sig_return == -1)
- {
- perror ("Error:Error waiting for RT completion signals\n");
- return -1;
- }
-
- // RT completion signals returned.
- if (sig_return != SIGRTMIN)
- {
- //printf ("Unexpected signal (%d) has been received while waiting for RT Completion Signals\n",
- // sig_return);
- return -1;
- }
-
- // @@ Debugging.
- //printf ("Sig number found in the sig_info block : %d\n",
- // sig_info.si_signo);
-
- // Is the signo returned consistent?
- if (sig_info.si_signo != sig_return)
- {
- //printf ("Inconsistent signal number (%d) in the signal info block\n",
- // sig_info.si_signo);
- return -1;
- }
-
- // @@ Debugging.
- //printf ("Signal code for this signal delivery : %d\n",
- // sig_info.si_code);
-
- // Is the signal code an aio completion one?
- if ((sig_info.si_code != SI_ASYNCIO) &&
- (sig_info.si_code != SI_QUEUE))
- {
- //printf ("Unexpected signal code (%d) returned on completion querying\n",
- // sig_info.si_code);
- return -1;
- }
-
- // Retrive the aiocb.
- aiocb* aiocb_ptr = (aiocb *) sig_info.si_value.sival_ptr;
-
- // Analyze error and return values. Return values are
- // actually <errno>'s associated with the <aio_> call
- // corresponding to aiocb_ptr.
- int error_code = aio_error (aiocb_ptr);
- if (error_code == -1)
- {
- perror ("Error:Invalid control block was sent to <aio_error> for compleion querying\n");
- return -1;
- }
-
- if (error_code != 0)
- {
- // Error occurred in the <aio_>call. Return the errno
- // corresponding to that <aio_> call.
- //printf ("Error:An AIO call has failed:Error code = %d\n",
- // error_code);
- return -1;
- }
-
- // No error occured in the AIO operation.
- int nbytes = aio_return (aiocb_ptr);
- if (nbytes == -1)
- {
- perror ("Error:Invalid control block was sent to <aio_return>\n");
- return -1;
- }
-
- //if (number_of_completions == 0)
- // Print the buffer.
- //printf ("Number of bytes transferred : %d\n The buffer : %s \n",
- // nbytes,
- // mb1);
- //else
- // Print the buffer.
- //printf ("Number of bytes transferred : %d\n The buffer : %s \n",
- // nbytes,
- // mb2);
- }
- return 0;
-}
-
-int
-test_aio_calls (void)
-{
- // Set up the input file.
- // Open file (in SEQUENTIAL_SCAN mode)
- file_handle = open ("test_aiosig.txt", O_RDONLY);
-
- if (file_handle == -1)
- {
- perror ("open");
- return -1;
- }
-
- unlink ("test_aiosig.txt"); // Unlink now so we don't have to do so later.
-
- if (setup_signal_delivery () < 0)
- return -1;
-
- if (issue_aio_calls () < 0)
- return -1;
-
- if (query_aio_completions () < 0)
- return -1;
-
- if (close (file_handle) != 0)
- {
- perror ("close");
- return -1;
- }
-
- return 0;
-}
-
-int
-setup_signal_handler (int signal_number)
-{
- // Setting up the handler(!) for these signals.
- struct sigaction reaction;
- sigemptyset (&reaction.sa_mask); // Nothing else to mask.
- reaction.sa_flags = SA_SIGINFO; // Realtime flag.
-#if defined (SA_SIGACTION)
- // Lynx says, it is better to set this bit to be portable.
- reaction.sa_flags &= SA_SIGACTION;
-#endif /* SA_SIGACTION */
- reaction.sa_sigaction = null_handler; // Null handler.
- int sigaction_return = sigaction (SIGRTMIN,
- &reaction,
- 0);
- if (sigaction_return == -1)
- {
- perror ("Error:Proactor couldn't do sigaction for the RT SIGNAL");
- return -1;
- }
-
- return 0;
-}
-
-void
-null_handler (int /* signal_number */,
- siginfo_t * /* info */,
- void * /* context */)
-{
-}
-
-int
-main ()
-{
- if (test_aio_calls () == 0)
- {
- // printf ("RT SIG test successful:\n"
- // "ACE_POSIX_SIG_PROACTOR should work in this platform\n");
- return 0;
- }
-
- //printf ("RT SIG test failed:\n"
- // "ACE_POSIX_SIG_PROACTOR may not work in this platform\n");
- return -1;
-
-}
- ]])],
- [
- ace_cv_feature_posix_rt_sigs=yes
- ],
- [
- ace_cv_feature_posix_rt_sigs=no
- ],
- [
- dnl Don't bother doing anything for cross-compiling here
- dnl since the basic aio run-time test will prevent this
- dnl rt sig run-time test from ever running when cross-compiling.
- dnl We just put something in here to prevent autoconf
- dnl from complaining.
- ace_just_a_place_holder=ignoreme
- ])
- ],[AC_DEFINE([ACE_HAS_POSIX_REALTIME_SIGNALS])],[])
-fi dnl test "$ace_cv_feature_aio_calls" = yes
-
-])
diff --git a/ACE/m4/compiler.m4 b/ACE/m4/compiler.m4
deleted file mode 100644
index 14ba9708690..00000000000
--- a/ACE/m4/compiler.m4
+++ /dev/null
@@ -1,429 +0,0 @@
-dnl -------------------------------------------------------------------------
-dnl $Id$
-dnl
-dnl compiler.m4
-dnl
-dnl ACE M4 include file which contains ACE specific M4 macros
-dnl that set/determine compiler configurations for ACE.
-dnl
-dnl -------------------------------------------------------------------------
-
-dnl Copyright (C) 1998, 1999, 2003 Ossama Othman
-dnl
-dnl All Rights Reserved
-dnl
-dnl This library is free software; you can redistribute it and/or
-dnl modify it under the current ACE distribution terms.
-dnl
-dnl This library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
-
-dnl Macros to set flags for a given compiler on a given platform.
-dnl The flags set here are generally only useful for _KNOWN_ compilers.
-
-dnl ACE_SET_COMPILER_FLAGS
-dnl Usage: ACE_SET_COMPILER_FLAGS
-AC_DEFUN([ACE_SET_COMPILER_FLAGS],
-[
-dnl AC_BEFORE([$0], [AC_PROG_LIBTOOL])
-
- dnl Make sure we know what C++ compiler and preprocessor we have!
- AC_REQUIRE([AC_PROG_CXX])
- AC_REQUIRE([AC_PROG_CXXCPP])
- AC_LANG([C++])
- AC_REQUIRE([AC_LANG])
-
- AC_REQUIRE([ACE_COMPILATION_OPTIONS])
-
- ACE_GXX_MAJOR_VERSION=0
-
- if test "$GXX" = yes; then
- ACE_GXX_MAJOR_VERSION=`$CXX -dumpversion | sed -e 's/\..*$//'`
-
-dnl @todo Clean up / consolidate these conditionals
-
- if test "$ACE_GXX_MAJOR_VERSION -ge 3"; then
- if test "$ace_user_enable_exceptions" != yes; then
- ACE_CXXFLAGS="$ACE_CXXFLAGS -fcheck-new"
- fi
- else
- case `$CXX --version` in
- 2.9*)
- if test "$ace_user_enable_exceptions" != yes; then
- ACE_CXXFLAGS="$ACE_CXXFLAGS -fcheck-new"
- fi
- ;;
- esac
- fi
- fi
-
- dnl Compiler Flag Key
- dnl CXXFLAGS - C++ flags to use during the configure script run and
- dnl during ACE compilation. The user may set this prior to
- dnl running the configure script. As such, it is important
- dnl not to replace the existing value of CXXFLAGS; rather
- dnl one should only add to it.
- dnl ACE_CXXFLAGS
- dnl - General C++ flags the configure script should set before
- dnl CXXFLAGS to allow the user override them.
- dnl DCXXFLAGS - C++ debugging flags
- dnl OCXXFLAGS - C++ optimization flags
- dnl CPPFLAGS - C++ preprocessor flags
- dnl ACE_CPPFLAGS
- dnl - General C++ preprocessor flags the configure
- dnl script should set before CPPFLAGS to allow the
- dnl user to override them.
- dnl WERROR - Compiler flag that converts warnings to errors
-
- if test "$GXX" = yes; then
- WERROR="-Werror"
- fi
-
- case "$host" in
- *aix*)
- dnl In case anything here or in the config depends on OS
- dnl version number, grab it here and pass it all to the
- dnl compiler as well.
- AIX_VERS=`uname -v`0`uname -r`
- ACE_CPPFLAGS="$ACE_CPPFLAGS -DACE_AIX_VERS=$AIX_VERS"
-
- case "$CXX" in
- xlC*)
- dnl AIX compilers need to have RTTI enabled and ACE requires it.
- CXXFLAGS="$CXXFLAGS -qrtti=all"
- TEMPLATE_OPTION='-qnotempinc -qnotemplateregistry -DACE_TEMPLATES_REQUIRE_SOURCE'
- ACE_CXXFLAGS="$ACE_CXXFLAGS $TEMPLATE_OPTION"
- DCXXFLAGS="-g -qcheck=nobounds:div:null"
- OCXXFLAGS="-qlibansi -qarch=com"
- CPPFLAGS="$CPPFLAGS"
- # Use -qhalt=i to cause the compiler to signal failure on any
- # diagnostic when converting warnings to errors. This helps to
- # find that #pragma once is invalid, even though xlC only triggers
- # an informational message, not a warning.
- WERROR="-qhalt=i"
- ;;
- *)
- if test "$GXX" = yes; then
- ACE_CXXFLAGS="-mcpu=common"
- fi
- ;;
- esac
- ;;
- *chorus*)
- ;;
- *cray*)
- ;;
- *dgux*)
- case "$CXX" in
- ec++)
- CXXFLAGS="$CXXFLAGS"
- ACE_CXXFLAGS="$ACE_CXXFLAGS -relax -v -eh"
- DCXXFLAGS="-g"
- OCXXFLAGS=""
- ;;
- *)
- if test "$GXX" = yes; then
- ACE_CXXFLAGS="$ACE_CXXFLAGS"
- fi
- ;;
- esac
- ;;
- *freebsd*)
- ;;
- *hpux*)
- # In case anything here or in the config depends on OS
- # version number, grab it here and pass it all to the
- # compiler as well.
- OSVERS=`uname -r | $AWK 'BEGIN{FS=".";OFS="";}{print [$][2],[$][3]}' -`
- ACE_CPPFLAGS="$ACE_CPPFLAGS -DHPUX_VERS=$OSVERS"
-
- # HP-UX OS version specific settings.
- case "$host" in
- *hpux11*)
-# aCC's "-mt" flag detected by the configure script should already set
-# the appropriate preprocessor, compiler and linker flags.
-# if test "$ace_user_enable_threads" = yes; then
-# # Prefer kernel threads over CMA (user) threads.
-# ACE_CPPFLAGS="$ACE_CPPFLAGS -D_POSIX_C_SOURCE=199506L"
-# fi
- ;;
- esac
-
- # HP-UX compiler specific settings.
- case "$CXX" in
- CC)
- CXXFLAGS="$CXXFLAGS -pta -ti,/bin/true -tr,/bin/true"
- ACE_CXXFLAGS="$ACE_CXXFLAGS -Aa -z +a1"
- DCXXFLAGS="-g"
- OCXXFLAGS=""
- ;;
- aCC)
- CFLAGS = "${CFLAGS:-} -Ae"
- # We want support for long long; without this the feature checks
- # for wcstoll et al detect the function but it won't compile.
- CXXFLAGS="$CXXFLAGS -ext"
- # -AA has been available since aC++ x.27 (2001?) - if using a
- # compiler without this support, must --enable_stdcpplib=no.
- if test "$ace_user_enable_stdcpplib" = yes; then
- CXXFLAGS="$CXXFLAGS -AA"
- fi
- # Warning 930 is spurious when new(std::nothrow) is
- # used. Reported to HP as support call 3201224717. (Steve
- # Huston, 23-Nov-2002)
- #
- # Suppress warning 302 ((...) parameter list is a
- # non-portable feature)
- #
- # Additionally, on HP-UX 10.20, suppress 495 to shut up the
- # warnings from the system header files. 667 is also
- # suppressed, but the compiler still tells you there was a
- # future error, but at least you can pick out any real errors
- # by quickly scanning the output. 829 is suppressed because
- # the system headers have offending string literals assigned
- # to char *.
- ACE_CXXFLAGS="$ACE_CXXFLAGS +W302,495,667,829,908,930"
- DCXXFLAGS="-g"
- OCXXFLAGS="-O"
- # Warning 67: Invalid pragma name -- needed for
- # ACE_LACKS_PRAGMA_ONCE
- WERROR="+We67 +p +We"
-
- # If exception support is explicitly disabled, tell the
- # compiler. This is not recommended since the run-time
- # library can throw exceptions.
- if test "$ace_user_enable_exceptions" != yes; then
- ACE_CXXFLAGS="$ACE_CXXFLAGS +noeh"
- fi
- ;;
- *)
- if test "$GXX" = yes; then
- ACE_CXXFLAGS="$ACE_CXXFLAGS -w"
- fi
- ;;
- esac
- ;;
- *irix5*)
- case "$CXX" in
- CC)
- CXXFLAGS="$CXXFLAGS -ptused -prelink +pp -woff 3203,3209,3161,3262,3665"
- ACE_CXXFLAGS="$ACE_CXXFLAGS "
- DCXXFLAGS="-g"
- OCXXFLAGS=""
- ;;
- *)
- ;;
- esac
- ;;
- *irix6*)
- case "$CXX" in
- CC)
- CPPFLAGS="$CPPFLAGS -D_SGI_MP_SOURCE"
- CXXFLAGS="$CXXFLAGS -exceptions -ptnone -no_prelink -Wl,-woff,15 -Wl,-woff,84 -Wl,-woff,85 -Wl,-woff,133"
- ACE_CXXFLAGS="$ACE_CXXFLAGS "
- DCXXFLAGS="-g"
- OCXXFLAGS="-O -OPT:Olimit=0"
- ;;
- esac
- ;;
- *linux*)
- case "$CXX" in
- *icpc|*icc)
- CXXFLAGS="$CXXFLAGS -i-dynamic -w1"
- ACE_CXXFLAGS="$ACE_CXXFLAGS"
- DCXXFLAGS="$DCXXFLAGS"
- WERROR="-Werror -wr -Wall"
- ;;
- *)
- if test "$GXX" = yes; then
- CXXFLAGS="$CXXFLAGS"
- ACE_CXXFLAGS="$ACE_CXXFLAGS"
- DCXXFLAGS="$DCXXFLAGS"
- OCXXFLAGS="-O3"
- fi
- ;;
- esac
- ;;
- *lynxos*)
- ;;
- *m88k*)
- ;;
- *mvs*)
- ;;
- *netbsd*)
- ;;
- *osf*)
- ;;
- *psos*)
- ;;
- *sco*)
- ;;
- *sunos4*)
- ;;
- *solaris2*)
- case "$CXX" in
- CC)
- WERROR="-xwe"
-
- if test "$ace_user_enable_exceptions" != yes; then
- CXXFLAGS="$CXXFLAGS -noex"
- fi
-
- dnl Some flags only work with Sun C++ 4.2. ACE requires RTTI.
- if (CC -V 2>&1 | $EGREP 'Compilers 4\.2' > /dev/null); then
- CXXFLAGS="$CXXFLAGS -features=castop -features=rtti"
- fi
-
- dnl Sun C++ 5.0 weirdness
- if (CC -V 2>&1 | $EGREP 'Compilers 5\.0' > /dev/null); then
- if test "$ace_user_enable_stdcpplib" = yes; then
- CXXFLAGS="$CXXFLAGS -library=Cstd"
- else
- CXXFLAGS="$CXXFLAGS -library=iostream,no%Cstd"
- AC_DEFINE([ACE_USES_OLD_IOSTREAMS])
- fi
-
- dnl Inlining appears to cause link problems with early
- dnl releases of CC 5.0.
- AC_DEFINE([ACE_LACKS_INLINE_FUNCTIONS])
-
- if test "$ace_user_enable_exceptions" != yes; then
- dnl See /opt/SUNWspro_5.0/SC5.0/include/CC/stdcomp.h.
- ACE_CPPFLAGS="$ACE_CPPFLAGS -D_RWSTD_NO_EXCEPTIONS"
- fi
-
- CXXFLAGS="$CXXFLAGS -instances=explicit"
- fi
-
- CXXFLAGS="$CXXFLAGS"
- ACE_CXXFLAGS="$ACE_CXXFLAGS"
- DCXXFLAGS="$DCXXFLAGS -g"
- OCXXFLAGS="$OCXXFLAGS -O"
- ;;
- esac
- ;;
- *tandem*)
- ;;
- *unixware*)
- ;;
- *vxworks*)
- ;;
- *)
- CXXFLAGS="$CXXFLAGS"
- ACE_CXXFLAGS="$ACE_CXXFLAGS"
- DCXXFLAGS="-g"
- OCXXFLAGS="-O"
- ;;
- esac
-
- dnl Warning flags
- if test "$GCC" = yes; then
- ACE_CFLAGS="$ACE_CFLAGS -W -Wall -Wpointer-arith"
- fi
- if test "$GXX" = yes; then
- ACE_CXXFLAGS="$ACE_CXXFLAGS -W -Wall -Wpointer-arith"
- fi
-
- dnl Symbol Visibility flags
- dnl Take advantage of visibility attributes when using g++ 4.0 or
- dnl better.
- if test "$GXX" = yes; then
- dnl As of this writing, there are symbol visibility issues on some
- dnl platforms. The --disable-symbol-visibility option is intended
- dnl to allow users to explicitly disable symbol visibility support
- dnl in the cases where it does not work (or does not work properly),
- dnl but the feature test selects it anyway.
-
- AC_ARG_ENABLE([symbol-visibility],
- AS_HELP_STRING([--enable-symbol-visibility],
- [build with gcc symbol visibility attributes [[[no]]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_symbol_visibility=yes
- ;;
- no)
- ace_user_enable_symbol_visibility=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-symbol-visibility])
- ;;
- esac
- ],
- [
- ace_user_enable_symbol_visibility=no
- ])
-
- if test "$ace_user_enable_symbol_visibility" = yes; then
- ACE_CHECK_CXXFLAGS([fvisibility=hidden],
- [
- ACE_CXXFLAGS="$ACE_CXXFLAGS -fvisibility=hidden"
- AC_DEFINE([ACE_HAS_CUSTOM_EXPORT_MACROS])
- AC_DEFINE([ACE_Proper_Export_Flag],
- [__attribute__ ((visibility("default")))])
- ])
- ACE_CHECK_CXXFLAGS([fvisibility-inlines-hidden],
- [
- ACE_CXXFLAGS="$ACE_CXXFLAGS -fvisibility-inlines-hidden"
- ])
- fi
- fi
-
- dnl Additional flags
- if test "$GXX" = yes; then
- case `$CXX --version` in
- 2.9*)
- if test "$ace_user_enable_exceptions" != yes; then
- ACE_CXXFLAGS="$ACE_CXXFLAGS -fcheck-new"
- fi
- ;;
- esac
-
-dnl if test "$ace_user_enable_repo" = no; then
-dnl ACE_CXXFLAGS="$ACE_CXXFLAGS -fno-implicit-templates"
-dnl fi
- fi
-])
-
-AC_DEFUN([ACE_CHECK_CFLAGS],
-[
-AS_VAR_PUSHDEF([VAR],'ace_cv_cflag_$1')
-AC_MSG_CHECKING([whether $CC supports -$1])
-AC_LANG_SAVE
-AC_LANG([C])
-ace_save_CFLAGS=$CFLAGS
-CFLAGS="$CFLAGS -$1"
-AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[return 0])],[VAR=yes],[VAR=no])
-CFLAGS=$ace_save_CFLAGS
-AC_LANG_RESTORE
-if test $VAR = yes; then
- AC_MSG_RESULT([yes])
- $2
-else
- AC_MSG_RESULT([no])
- $3
-fi
-AS_VAR_POPDEF([VAR])
-])
-
-AC_DEFUN([ACE_CHECK_CXXFLAGS],
-[
-AS_VAR_PUSHDEF([VAR],'ace_cv_cxxflag_$1')
-AC_MSG_CHECKING([whether $CXX supports -$1])
-AC_LANG_SAVE
-AC_LANG([C++])
-ace_save_CXXFLAGS=$CXXFLAGS
-CXXFLAGS="$CXXFLAGS -$1"
-AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[return 0])],[VAR=yes],[VAR=no])
-CXXFLAGS=$ace_save_CXXFLAGS
-AC_LANG_RESTORE
-if test $VAR = yes; then
- AC_MSG_RESULT([yes])
- $2
-else
- AC_MSG_RESULT([no])
- $3
-fi
-AS_VAR_POPDEF([VAR])
-])
diff --git a/ACE/m4/config_h.m4 b/ACE/m4/config_h.m4
deleted file mode 100644
index 4d556e79698..00000000000
--- a/ACE/m4/config_h.m4
+++ /dev/null
@@ -1,889 +0,0 @@
-dnl -------------------------------------------------------------------------
-dnl $Id$
-dnl
-dnl config_h.m4
-dnl
-dnl ACE M4 include file which contains preprocessor constants
-dnl and other items to be place in the generated ace/config.h
-dnl header.
-dnl
-dnl Please try to avoid adding new autoheader templates to this
-dnl file, as they get included in both ACE and TAO config.h.in
-dnl files, even though the cooresponding feature tests are only
-dnl included in the ACE configure script. Put the autoheader
-dnl template in a AC_DEFUN used for the feature test, or use the
-dnl AC_DEFINE macro's third argument.
-dnl
-dnl -------------------------------------------------------------------------
-
-dnl Copyright (C) 2002, 2003 Ossama Othman
-dnl
-dnl All Rights Reserved
-dnl
-dnl This library is free software; you can redistribute it and/or
-dnl modify it under the current ACE distribution terms.
-dnl
-dnl This library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
-dnl Prepare the ace/config.h.in template.
-dnl
-dnl Usage: ACE_PREP_CONFIG_HEADER
-AC_DEFUN([ACE_PREP_CONFIG_HEADER],
-[
-dnl Text to be placed at the top of the `ace/config.h' header.
-AH_TOP([
-#ifndef ACE_CONFIG_H
-#define ACE_CONFIG_H
-
-// ACE configuration header file
-
-
-])
-
-dnl Text to be placed at the bottom of the `ace/config.h' header.
-dnl
-dnl @note Do not remove the "] [" between the words "Local Variables".
-dnl The generated Emacs "Local Variables" block will not contain
-dnl those characters. They are merely interpreted by M4 as two
-dnl concatenated text blocks. This is necessary to prevent
-dnl Emacs from inadvertently applying the "Local Variables"
-dnl block being placed in the generated "config.h" header to
-dnl this Autoconf/M4 file.
-AH_BOTTOM([
-
-
-#endif /* ACE_CONFIG_H */
-
-
-// Local] [Variables:
-// mode:C++
-// End:
-
-])
-
-
-dnl ACE currently doesn't use these; however the configure script does
-AH_TEMPLATE([ACE_LACKS_UNBUFFERED_STREAMBUF],[])
-AH_TEMPLATE([ACE_HAS_STDCPP_STL_INCLUDES],[])
-
-AH_TEMPLATE([ACE_HAS_NEW_NO_H],[Platform provides new style C++ <new> header])
-AH_TEMPLATE([ACE_HAS_STDEXCEPT_NO_H],[Platform provides C++ <stdexcept> header])
-
-dnl Deprecated! (or soon to be?)
-AH_TEMPLATE([ACE_HAS_OSF1_GETTIMEOFDAY],
-[timezone* 2nd parameter & no prototype])
-AH_TEMPLATE([ACE_HAS_LYNXOS4_SIGNALS],[])
-AH_TEMPLATE([ACE_HAS_TANDEM_SIGNALS],[])
-
-AH_TEMPLATE([PTHREAD_STACK_MIN],[])
-
-dnl ///////////////////// OSSAMA'S NEW STUFF ////////////////// */
-dnl THIS STUFF WILL REPLACE THE ABOVE OLDER STUFF AND/OR WILL BE MERGED INTO IT
-
-
-dnl /* results from checks for programs */
-dnl /* results from checks for libraries */
-dnl /* results from checks for header files */
-dnl /* results from checks for typedefs */
-dnl /* results from checks for structures */
-dnl /* results from checks for variables */
-dnl /* results from checks for compiler characteristics */
-dnl /* results from checks for library functions */
-dnl /* results from checks for system services */
-
-dnl AIX specific configuration parameters
-AH_TEMPLATE([AIX],[Configure for use on AIX])
-
-dnl FreeBSD specific configuration parameters
-dnl Nothing yet
-
-dnl HP/UX specific configuration parameters
-AH_TEMPLATE([HPUX],[Configure for use on HP-UX])
-AH_TEMPLATE([HPUX_10],[Configure for use on HP-UX 10])
-AH_TEMPLATE([HPUX_11],[Configure for use on HP-UX 11])
-
-dnl Irix specific configuration parameters
-AH_TEMPLATE([IRIX5],[Configure for use on Irix 5])
-AH_TEMPLATE([IRIX6],[Configure for use on Irix 6])
-AH_TEMPLATE([ACE_HAS_IRIX62_THREADS],
-[Platform supports the very odd IRIX 6.2 threads...])
-
-dnl Linux specific configuration parameters
-dnl Nothing yet */
-
-dnl LynxOS specific configuration parameters
-AH_TEMPLATE([__NO_INCLUDE_WARN__],[])
-
-dnl MVS specific configuration parameters
-dnl Nothing yet
-
-dnl NetBSD specific configuration parameters
-dnl Nothing yet
-
-dnl OSF/1 and Digital Unix specific configuration parameters
-AH_TEMPLATE([DEC_CXX],[])
-AH_TEMPLATE([DIGITAL_UNIX],[Configure for use on Digital Unix])
-
-dnl SCO specific configuration parameters
-AH_TEMPLATE([SCO],[])
-
-dnl Tandem specific configuration parameters
-dnl Nothing yet
-
-dnl UnixWare specific configuration parameters
-AH_TEMPLATE([UNIXWARE],[Configure for use on UnixWare])
-AH_TEMPLATE([UNIXWARE_2_0],[])
-AH_TEMPLATE([UNIXWARE_2_1],[])
-AH_TEMPLATE([UNIXWARE_7_1],[])
-AH_TEMPLATE([__IOCTL_VERSIONED__],[])
-
-dnl VXWorks specific configuration parameters
-AH_TEMPLATE([VXWORKS],[Configure for use on VxWorks])
-
-dnl Win32 specific configuration parameters
-AH_TEMPLATE([ACE_WIN32],[Configure for use on Win32])
-
-AH_TEMPLATE([ACE_DISABLE_DEBUG_DLL_CHECK],
-[Define this if you don't want debug version ACE search for debug version
-DLLs first before looking for the DLL names specified.])
-
-AH_TEMPLATE([ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS],
-[Platform/compiler supports Win32 structural exceptions.])
-
-AH_TEMPLATE([ACE_WSOCK_VERSION],
-[A parameter list indicating the version of WinSock (e.g., "1, 1" is
-version 1.1).])
-
-AH_TEMPLATE([ACE_HAS_MFC],[Platform supports Microsoft Foundation Classes])
-
-AH_TEMPLATE([ACE_USES_STATIC_MFC],
-[When linking MFC as a static library is desired])
-
-AH_TEMPLATE([ACE_HAS_CANCEL_IO],
-[Platform supports the Win32 CancelIO() function. (WinNT 4.0 and beyond)])
-
-AH_TEMPLATE([ACE_HAS_WIN32_TRYLOCK],
-[The Win32 platform support TryEnterCriticalSection(). (WinNT 4.0 and
-beyond)])
-
-AH_TEMPLATE([ACE_HAS_WINSOCK2],[The Win32 platform supports WinSock 2.0.])
-
-AH_TEMPLATE([ACE_USE_SELECT_REACTOR_FOR_REACTOR_IMPL],
-[For Win32: Use Select_Reactor as default implementation of Reactor
- instead of WFMO_Reactor.])
-
-AH_TEMPLATE([ACE_HAS_DLL],[Build ACE using the frigging PC DLL nonsense...])
-
-AH_TEMPLATE([ACE_HAS_STRICT],[Use the STRICT compilation mode on Win32.])
-
-AH_TEMPLATE([CYGWIN32], [GNU Win32 environement])
-
-
-dnl ACE internals
-AH_TEMPLATE([ACE_DEFAULT_BASE_ADDR],[])
-AH_TEMPLATE([ACE_DEFAULT_BASE_ADDRL],[])
-AH_TEMPLATE([ACE_DEFAULT_CLOSE_ALL_HANDLES],[])
-AH_TEMPLATE([ACE_DEFAULT_MAX_SOCKET_BUFSIZ],[])
-AH_TEMPLATE([ACE_DEFAULT_SELECT_REACTOR_SIZE],[The default number of handles the select()-based reactor should handle])
-AH_TEMPLATE([ACE_MALLOC_ALIGN],[])
-AH_TEMPLATE([ACE_MAP_PRIVATE],[])
-AH_TEMPLATE([ACE_THR_PRI_FIFO_DEF],[])
-AH_TEMPLATE([ACE_TIMER_SKEW],[])
-AH_TEMPLATE([IP_ADD_MEMBERSHIP],[])
-AH_TEMPLATE([IP_DROP_MEMBERSHIP],[])
-
-AH_TEMPLATE([ACE_LOFF_T_TYPEDEF],[typedef for ACE_LOFF_T])
-
-AH_TEMPLATE([__ACE_INLINE__],[Enable ACE inlining])
-
-AH_TEMPLATE([ACE_NO_INLINE],[Explicitly disable ACE inlining])
-
-AH_TEMPLATE([ACE_COMPILE_TIMEPROBES],[Enable ACE_Timeprobes])
-
-AH_TEMPLATE([ACE_HAS_GNU_REPO],
-[Enable use of GNU template repositories. GNU C++ w/repo patch
-and EGCS only])
-
-AH_TEMPLATE([ACE_HAS_AIO_CALLS],[Platform supports Asynchronous IO calls])
-
-AH_TEMPLATE([ACE_HAS_ALT_CUSERID],
-[Use ACE's alternate cuserid() implementation since a system
-cuserid() may not exist, or it is not desirable to use it. The
-implementation requires ACE_LACKS_PWD_FUNCTIONS to be undefined and
-that the geteuid() system call exists.])
-
-AH_TEMPLATE([ACE_DEFAULT_THREAD_KEYS],
-[Number of TSS keys, with ACE_HAS_TSS_EMULATION _only_. Defaults to 64.])
-
-AH_TEMPLATE([ACE_THREADS_DONT_INHERIT_LOG_MSG],
-[Specify this if you don't want threads to inherit parent thread's
-ACE_Log_Msg properties.])
-
-AH_TEMPLATE([ACE_HAS_PRIOCNTL],[OS has priocntl (2)])
-
-AH_TEMPLATE([ACE_HAS_RLIMIT_RESOURCE_ENUM],
-[Platform has enum instead of int for first argument to ::{get,set}rlimit ().
-The value of this macro is the enum definition, e.g.,
-enum __rlimit_resource, for Linux glibc 2.0.])
-
-AH_TEMPLATE([ACE_HAS_RUSAGE_WHO_ENUM],
-[Platform has enum instead of int for first argument to ::getrusage (). The
-value of this macro is the enum definition, e.g., enum __rusage_who, for
-Linux glibc 2.0.])
-
-AH_TEMPLATE([ACE_HAS_STDARG_THR_DEST],
-[Platform has void (*)(...) prototype for pthread_key_create()
-destructor (e.g., LynxOS).])
-
-AH_TEMPLATE([ACE_HAS_4_4BSD_SENDMSG_RECVMSG],
-[Platform has BSD 4.4 sendmsg()/recvmsg() APIs.])
-
-AH_TEMPLATE([ACE_HAS_P_READ_WRITE],
-[Platform has pread() and pwrite() support.])
-
-AH_TEMPLATE([ACE_HAS_AIX_HI_RES_TIMER],
-[Platform has AIX4 ::read_real_time()])
-
-AH_TEMPLATE([ACE_HAS_ALLOCA],[Compiler/platform supports alloca().])
-
-AH_TEMPLATE([ACE_HAS_ALLOCA_H],[Compiler/platform has <alloca.h>])
-
-AH_TEMPLATE([ACE_HAS_AUTOMATIC_INIT_FINI],
-[Compiler/platform correctly calls init()/fini() for shared libraries.])
-
-AH_TEMPLATE([ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR],
-[Compiler handles explicit calling of template destructor correctly.])
-
-AH_TEMPLATE([ACE_EXPLICIT_TEMPLATE_DESTRUCTOR_TAKES_ARGS],
-[Compiler requires template args when explicitly calling template destructor.])
-
-AH_TEMPLATE([ACE_HAS_BROKEN_MAP_FAILED],
-[Platform doesn't cast MAP_FAILED to a (void *).])
-
-AH_TEMPLATE([ACE_HAS_BROKEN_DGRAM_SENDV],
-[Platform sendv() does not work properly with datagrams, i.e. it
-fails when the iovec size is IOV_MAX.])
-
-AH_TEMPLATE([ACE_HAS_BROKEN_MSG_H],
-[Platform headers don't support <msg.h> prototypes])
-
-AH_TEMPLATE([ACE_HAS_BROKEN_MMAP_H],
-[HP/UX does not wrap the mmap(2) header files with extern "C".])
-
-AH_TEMPLATE([ACE_HAS_BROKEN_POSIX_TIME],
-[Platform defines struct timespec in <sys/timers.h>])
-
-AH_TEMPLATE([ACE_HAS_BROKEN_RANDR],
-[OS/compiler's header files are inconsistent with libC definition of
-rand_r().])
-
-AH_TEMPLATE([ACE_HAS_BROKEN_T_ERROR],
-[Compiler/platform has the wrong prototype for t_error(), i.e.,
-t_error(char *) rather than t_error(const char *).])
-
-AH_TEMPLATE([ACE_HAS_BSTRING],
-[Platform has <bstring.h> (which contains bzero() prototype)])
-
-AH_TEMPLATE([ACE_HAS_CHARPTR_DL],
-[OS/platform uses char * for dlopen/dlsym args, rather than const char *.])
-
-AH_TEMPLATE([ACE_HAS_CHARPTR_SOCKOPT],
-[OS/platform uses char * for sockopt, rather than const char *])
-
-AH_TEMPLATE([ACE_HAS_CONFLICTING_XTI_MACROS],
-[OS header files have some problems with XTI (HP/UX 11).])
-
-AH_TEMPLATE([ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES],
-[Prototypes for both signal() and struct sigaction are consistent.])
-
-AH_TEMPLATE([ACE_HAS_CONST_CHAR_SWAB],
-[Platform has swab(const char*, char*, ssize_t) variant.])
-
-AH_TEMPLATE([ACE_HAS_CPLUSPLUS_HEADERS],
-[Compiler/platform has correctly prototyped header files.])
-
-AH_TEMPLATE([ACE_HAS_DIRENT],
-[Platform supports operations on directories via struct dirent,
-readdir_r, etc.])
-
-AH_TEMPLATE([ACE_HAS_EXCEPTIONS],[Compiler supports C++ exception handling.])
-
-AH_TEMPLATE([ACE_HAS_FL],[Platform has Fast-Light (FL) toolkit installed.])
-
-AH_TEMPLATE([ACE_HAS_GETPAGESIZE],
-[Platform supports getpagesize() call (otherwise, ACE_PAGE_SIZE must
-be defined, except on Win32).])
-
-AH_TEMPLATE([ACE_HAS_INTRINSIC_INTERLOCKED],
-[Platform supports the intrinsic interlocked optimizations.])
-
-AH_TEMPLATE([ACE_HAS_GPERF],
-[The GPERF utility is compiled for this platform])
-
-AH_TEMPLATE([ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT],
-[Optimize ACE_Handle_Set::count_bits for select() operations (common case)])
-
-AH_TEMPLATE([ACE_HAS_INLINED_OSCALLS],[
-Inline all the static class OS methods to remove call overhead
-Note: This gets defined by OS.h if __ACE_INLINE__ is defined])
-
-AH_TEMPLATE([ACE_HAS_IP_MULTICAST],[Platform supports IP multicast])
-
-AH_TEMPLATE([ACE_HAS_IPV6],[Platform supports IPv6])
-AH_TEMPLATE([ACE_USES_IPV4_IPV6_MIGRATION],
-[Enable IPv6 support on platforms that don't have IPv6 turned on by default])
-
-AH_TEMPLATE([ACE_HAS_NEW_NOTHROW],
-[Compiler supports new (std::nothrow)])
-
-AH_TEMPLATE([ACE_HAS_NONCONST_SWAB],
-[Platform has swab(char*, char*, ssize_t) variant.])
-
-AH_TEMPLATE([ACE_HAS_NONSTATIC_OBJECT_MANAGER],
-[Causes the ACE_Object_Manager instance to be created in
- main (int, char *[]), instead of as a static (global) instance.])
-
-AH_TEMPLATE([ACE_HAS_THR_KEYDELETE],
-[Platform supports thr_keydelete (e.g,. UNIXWARE)])
-
-AH_TEMPLATE([ACE_HAS_THR_MINSTACK],
-[Platform calls thr_minstack() rather than thr_min_stack() (e.g., Tandem).])
-
-AH_TEMPLATE([ACE_HAS_LIMITED_RUSAGE_T],
-[The rusage_t structure has only two fields.])
-
-AH_TEMPLATE([ACE_HAS_BIG_FD_SET],
-[Compiler/platform has "big" fd_set, i.e. large number of bits set
- in fd_set passed back from select().])
-
-AH_TEMPLATE([ACE_HAS_LONG_MAP_FAILED],
-[Platform defines MAP_FAILED as a long constant.])
-
-AH_TEMPLATE([ACE_HAS_MALLOC_STATS], [Enabled malloc statistics collection.])
-
-AH_TEMPLATE([ACE_USES_OLD_IOSTREAMS],
-[Some files, such as ace/streams.h, want to include new style C++
- stream headers. These headers are iomanip, ios, iostream, istream,
- ostream, fstream and streambuf. If _all_ of these headers aren't
- available, then assume that only iostream.h and fstream.h are
- available.])
-
-AH_TEMPLATE([ACE_HAS_MSG],[Platform supports recvmsg and sendmsg])
-
-AH_TEMPLATE([ACE_HAS_MT_SAFE_MKTIME],
-[Platform supports MT safe mktime() call (do any of them?)])
-
-AH_TEMPLATE([ACE_HAS_MT_SAFE_SOCKETS],
-[Sockets may be called in multi-threaded programs])
-
-AH_TEMPLATE([ACE_HAS_NONCONST_GETBY],
-[Platform uses non-const char * in calls to gethostbyaddr,
- gethostbyname, getservbyname])
-
-AH_TEMPLATE([ACE_HAS_NONCONST_MSGSND],
-[Platform has a non-const parameter to msgsnd() (e.g., SCO).])
-
-AH_TEMPLATE([ACE_HAS_NONCONST_READV],
-[Platform omits const qualifier from iovec parameter in readv() prototype.])
-
-AH_TEMPLATE([ACE_HAS_NONCONST_SELECT_TIMEVAL],
-[Platform's select() uses non-const timeval* (only found on Linux
- right now)])
-
-AH_TEMPLATE([ACE_HAS_NONCONST_SENDMSG],
-[Platform omits const qualifier from msghdr parameter in sendmsg()
- prototype.])
-
-AH_TEMPLATE([ACE_HAS_NONCONST_SETRLIMIT],
-[Platform omits const qualifier from rlimit parameter in setrlimit()
- prototype.])
-
-AH_TEMPLATE([ACE_HAS_NONCONST_WRITEV],
-[Platform omits const qualifier from iovec parameter in writev() prototype.])
-
-AH_TEMPLATE([ACE_HAS_OLD_MALLOC],
-[Compiler/platform uses old malloc()/free() prototypes (ugh)])
-
-AH_TEMPLATE([ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R],
-[Uses ctime_r & asctime_r with only two parameters vs. three.])
-
-AH_TEMPLATE([ACE_HAS_ONLY_SCHED_OTHER],
-[Platform, e.g., Solaris 2.5, only supports SCHED_OTHER POSIX
- scheduling policy.])
-
-AH_TEMPLATE([ACE_HAS_OPTIMIZED_MESSAGE_QUEUE],
-[Use the semaphore implementation of ACE_Message_Queue rather than
- the emulated condition variable (NT and VxWorks).])
-
-AH_TEMPLATE([ACE_HAS_OSF_TIMOD_H],
-[Platform supports the OSF TLI timod STREAMS module])
-
-AH_TEMPLATE([ACE_HAS_POLL],[Platform contains <poll.h>])
-
-AH_TEMPLATE([ACE_HAS_POSITION_INDEPENDENT_POINTERS],
-[Platform supports "position-independent" features provided by
- ACE_Based_Pointer<>.])
-
-AH_TEMPLATE([ACE_HAS_POSIX_GETPWNAM_R],
-[Platform supports POSIX getpwnam_r() function])
-
-AH_TEMPLATE([ACE_HAS_POSIX_NONBLOCK],
-[Platform supports POSIX O_NONBLOCK semantics])
-
-AH_TEMPLATE([ACE_HAS_POSIX_REALTIME_SIGNALS],
-[Platform supports POSIX realtime signals])
-
-AH_TEMPLATE([ACE_HAS_POSIX_SEM],
-[Platform supports POSIX real-time semaphores (e.g., VxWorks and
- Solaris)])
-
-AH_TEMPLATE([ACE_HAS_POSIX_SEM_TIMEOUT],
-[Platform supports timed POSIX semaphore acquisitions (sem_timedwait()).])
-
-AH_TEMPLATE([ACE_DISABLE_POSIX_SEM_TIMEOUT_EMULATION],
-[Do not include emulation for timed semaphore acquisitions.])
-
-AH_TEMPLATE([ACE_HAS_POSIX_TIME],
-[Platform supports the POSIX struct timespec type])
-
-AH_TEMPLATE([ACE_HAS_PROC_FS],
-[Platform supports the /proc file system and defines tid_t
- in <sys/procfs.h>])
-
-AH_TEMPLATE([ACE_HAS_PTHREADS_UNIX98_EXT],
-[Platform has the UNIX98 extensions to Pthreads (rwlocks)])
-
-AH_TEMPLATE([ACE_HAS_PTHREAD_PROCESS_ENUM],
-[pthread.h declares an enum with PTHREAD_PROCESS_PRIVATE and
- PTHREAD_PROCESS_SHARED values])
-
-AH_TEMPLATE([ACE_HAS_PURIFY],[Purify'ing. Defined on command line.])
-
-AH_TEMPLATE([ACE_HAS_QUANTIFY],[Quantify'ing. Defined on command line.])
-
-AH_TEMPLATE([ACE_HAS_RECURSIVE_MUTEXES],
-[Mutexes are inherently recursive (e.g., Win32) ])
-
-AH_TEMPLATE([ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS],
-[Platform will recurse infinitely on thread exits from TSS cleanup
- routines (e.g., AIX)])
-
-AH_TEMPLATE([ACE_HAS_SIGACTION_CONSTP2],
-[Platform's sigaction() function takes const sigaction* as 2nd parameter])
-
-AH_TEMPLATE([ACE_HAS_REENTRANT_FUNCTIONS],
-[Platform supports reentrant functions (i.e., all the POSIX *_r
- functions).])
-
-AH_TEMPLATE([ACE_HAS_X86_STAT_MACROS],
-[Solaris for intel uses macros for fstat() and stat(), these are
- wrappers for _fxstat() and _xstat() uses of the macros. Causes
- compile and runtime problems.])
-
-AH_TEMPLATE([ACE_HAS_XPG4_MULTIBYTE_CHAR],
-[Platform has support for multi-byte character support compliant
- with the XPG4 Worldwide Portability Interface wide-character
- classification.])
-
-AH_TEMPLATE([ACE_LACKS_AUTO_MMAP_REPLACEMENT],
-[No system support for replacing any previous mappings.])
-
-AH_TEMPLATE([ACE_LACKS_AUTO_PTR],
-[Platform lacks support for the standard C++ auto_ptr class])
-
-AH_TEMPLATE([ACE_AUTO_PTR_LACKS_RESET],
-[Compiler/platform standard C++ auto_ptr implementation lacks
- reset() method])
-
-AH_TEMPLATE([ACE_LACKS_READDIR_R],[Platform lacks readdir_r()])
-
-AH_TEMPLATE([ACE_LACKS_INLINE_FUNCTIONS],
-[Platform can't handle "inline" keyword correctly.])
-
-AH_TEMPLATE([ACE_LACKS_IOSTREAM_TOTALLY],
-[iostreams are not supported adequately on the given platform.])
-
-AH_TEMPLATE([ACE_LACKS_NETDB_REENTRANT_FUNCTIONS],
-[Platform does not support reentrant netdb functions
- (getprotobyname_r, getprotobynumber_r, gethostbyaddr_r,
- gethostbyname_r, getservbyname_r).])
-
-AH_TEMPLATE([ACE_HAS_REGEX],
-[Platform supports the POSIX regular expression library])
-
-AH_TEMPLATE([ACE_HAS_SEMUN],
-[Compiler/platform defines a union semun for SysV shared memory ])
-
-AH_TEMPLATE([ACE_HAS_SHM_OPEN],[Platform has shm_open()])
-AH_TEMPLATE([ACE_SHM_OPEN_REQUIRES_ONE_SLASH],[shm_open() requires a leading slash in name])
-
-AH_TEMPLATE([ACE_HAS_SIGISMEMBER_BUG],
-[Platform has bug with sigismember() (HP/UX 11).])
-
-AH_TEMPLATE([ACE_HAS_SIGNAL_OBJECT_AND_WAIT],
-[Platform supports the Win32 SignalObjectAndWait() function (WinNT
- 4.0 and beyond).])
-
-AH_TEMPLATE([ACE_HAS_SIG_C_FUNC],
-[Compiler requires extern "C" functions for signals.])
-
-AH_TEMPLATE([ACE_HAS_SIZET_SOCKET_LEN],
-[OS/compiler uses size_t * rather than int * for socket lengths])
-
-AH_TEMPLATE([ACE_HAS_SOCKADDR_MSG_NAME],
-[Platform requires (struct sockaddr *) for msg_name field of
- struct msghdr.])
-
-AH_TEMPLATE([ACE_HAS_THR_YIELD],[Platform has thr_yield()])
-
-AH_TEMPLATE([ACE_HAS_STANDARD_CPP_LIBRARY],
-[Platform/compiler supports Standard C++ Library])
-
-AH_TEMPLATE([ACE_HAS_STREAMS],[Platform supports STREAMS])
-
-AH_TEMPLATE([ACE_HAS_STREAM_PIPES],[Platform supports STREAM pipes])
-
-AH_TEMPLATE([ACE_LACKS_STROPTS_H],[Platform lacks stropts.h])
-
-AH_TEMPLATE([ACE_HAS_STRING_CLASS],
-[Platform/Compiler supports a String class (e.g., GNU or Win32).])
-
-AH_TEMPLATE([ACE_HAS_STRINGS],
-[Platform has <strings.h> (which contains bzero() prototype)])
-
-AH_TEMPLATE([ACE_HAS_STRUCT_NETDB_DATA],
-[Compiler/platform has strange hostent API for socket *_r() calls])
-
-AH_TEMPLATE([ACE_HAS_SVR4_DYNAMIC_LINKING],
-[Compiler/platform supports SVR4 dynamic linking semantics])
-
-AH_TEMPLATE([ACE_HAS_SVR4_GETTIMEOFDAY],
-[Compiler/platform supports SVR4 gettimeofday() prototype but
- doesn't have a prototype])
-
-AH_TEMPLATE([ACE_HAS_SVR4_SIGNAL_T],
-[Compiler/platform supports SVR4 signal typedef.])
-
-AH_TEMPLATE([ACE_HAS_SVR4_TLI],
-[Compiler/platform supports SVR4 TLI (in particular, T_GETNAME stuff).])
-
-AH_TEMPLATE([ACE_HAS_SYSV_IPC],
-[Platform supports System V IPC (most versions of UNIX, but not Win32)])
-
-AH_TEMPLATE([ACE_HAS_SYS_SIGLIST],
-[Compiler/platform supports _sys_siglist array])
-
-AH_TEMPLATE([ACE_HAS_SYS_XTI_H],[Platform provides <sys/xti.h> header])
-
-AH_TEMPLATE([ACE_HAS_TEMPLATE_TYPEDEFS],
-[Compiler implements templates that support typedefs inside of
- classes used as formal arguments to a template class.])
-
-AH_TEMPLATE([ACE_HAS_THREADS],[Platform supports threads.])
-
-AH_TEMPLATE([ACE_HAS_THREAD_SAFE_ACCEPT],
-[Platform allows multiple threads to call accept() on the same port
- (e.g., WinNT).])
-
-AH_TEMPLATE([ACE_HAS_THREAD_SELF],
-[Platform has thread_self() rather than pthread_self() (e.g.,
- DCETHREADS and AIX)])
-
-AH_TEMPLATE([ACE_HAS_THREAD_SPECIFIC_STORAGE],
-[Compiler/platform has thread-specific storage])
-
-AH_TEMPLATE([ACE_HAS_THR_C_DEST],
-[The pthread_keycreate() routine *must* take extern C functions.])
-
-AH_TEMPLATE([ACE_HAS_THR_C_FUNC],
-[The pthread_create() routine *must* take extern C functions.])
-
-AH_TEMPLATE([ACE_HAS_TIMEZONE_GETTIMEOFDAY],
-[Platform/compiler supports timezone * as second parameter to
- gettimeofday() and has a prototype.])
-
-AH_TEMPLATE([ACE_HAS_TIMOD_H],
-[Platform supports TLI timod STREAMS module])
-
-AH_TEMPLATE([ACE_HAS_TIUSER_H],[Platform supports TLI tiuser header])
-
-AH_TEMPLATE([ACE_HAS_TIUSER_H_BROKEN_EXTERN_C],
-[Platform does not protect <tiuser.h> with extern "C"])
-
-AH_TEMPLATE([ACE_HAS_TLI],
-[Platform supports TLI. Also see ACE_TLI_TCP_DEVICE.])
-
-AH_TEMPLATE([ACE_HAS_TLI_PROTOTYPES],
-[Platform provides TLI function prototypes])
-
-AH_TEMPLATE([ACE_HAS_TSS_EMULATION],
-[ACE provides TSS emulation. See also ACE_DEFAULT_THREAD_KEYS.])
-
-AH_TEMPLATE([ACE_HAS_UCONTEXT_T],
-[Platform supports ucontext_t (which is used in the extended signal API).])
-
-AH_TEMPLATE([ACE_HAS_UNIXWARE_SVR4_SIGNAL_T],
-[Has inconsistent SVR4 signal stuff, but not the same as the other
- platforms])
-
-AH_TEMPLATE([ACE_HAS_WCHAR],[Platform/compiler supports wchar_t])
-AH_TEMPLATE([ACE_USES_WCHAR],[ACE is built to use wide characters internally])
-
-AH_TEMPLATE([ACE_HAS_VERBOSE_NOTSUP],
-[Prints out console message in ACE_NOTSUP. Useful for tracking down
- origin of ACE_NOTSUP.])
-
-AH_TEMPLATE([ACE_HAS_VOIDPTR_GETTIMEOFDAY],
-[Platform/compiler supports void * as second parameter to
- gettimeofday() and has a prototype.])
-
-AH_TEMPLATE([ACE_HAS_VOIDPTR_MMAP],[Platform requires void * for mmap().])
-
-AH_TEMPLATE([ACE_HAS_VOIDPTR_SOCKOPT],
-[OS/compiler uses void * arg 4 setsockopt() rather than const char *])
-
-AH_TEMPLATE([ACE_HAS_XLI],[Platform has the XLI version of TLI])
-
-AH_TEMPLATE([ACE_HAS_XT],[Platform has Xt Intrinsics Toolkit])
-
-AH_TEMPLATE([ACE_LACKS_MOTIF],
-[Platform does not have Motif X toolkit available])
-
-AH_TEMPLATE([ACE_HAS_XTI],
-[Platform has XTI (X/Open-standardized superset of TLI). Implies
- ACE_HAS_TLI but uses a different header file.])
-
-AH_TEMPLATE([ACE_LACKS_ACE_IOSTREAM],
-[Platform can not build ace/IOStream{,_T}.cpp. This does not
- necessarily mean that the platform does not support iostreams.])
-
-AH_TEMPLATE([ACE_LACKS_ACE_CODECS],
-[Do not compile support for the "Codecs" ACE features.])
-
-AH_TEMPLATE([ACE_LACKS_ACE_OTHER],
-[Do not compile support for the "other" ACE features, such as CORBA
- handling, name services, and QoS.])
-
-AH_TEMPLATE([ACE_LACKS_ACE_SVCCONF],
-[Do not compile support for the ACE Service Configurator.])
-
-AH_TEMPLATE([ACE_LACKS_ACE_TOKEN],
-[Do not compile support for the ACE Token feature.])
-
-AH_TEMPLATE([ACE_LACKS_ACE_UUID],
-[Do not compile support for the ACE UUID feature.])
-
-AH_TEMPLATE([ACE_LACKS_COND_T],
-[Platform lacks condition variables (e.g., Win32 and VxWorks)])
-
-AH_TEMPLATE([ACE_LACKS_COND_TIMEDWAIT_RESET],
-[pthread_cond_timedwait does *not* reset the time argument when
- the lock is acquired.])
-
-AH_TEMPLATE([ACE_LACKS_CONST_STRBUF_PTR],
-[Platform uses struct strbuf * rather than const struct strbuf *
- (e.g., HP/UX 10.x)])
-
-AH_TEMPLATE([ACE_LACKS_CONST_TIMESPEC_PTR],
-[Platform forgot const in cond_timewait (e.g., HP/UX).])
-
-AH_TEMPLATE([ACE_LACKS_EXEC],
-[Platform lacks the exec() family of system calls (e.g., Win32,
- VxWorks, Chorus)])
-
-AH_TEMPLATE([ACE_LACKS_GETSERVBYNAME],
-[Platforms lacks getservbyname() (e.g., VxWorks and Chorus).])
-
-AH_TEMPLATE([ACE_LACKS_IOSTREAM_FX],
-[iostream header does not declare ipfx (), opfx (), etc.])
-
-AH_TEMPLATE([ACE_LACKS_LINEBUFFERED_STREAMBUF],
-[Platform lacks streambuf "linebuffered ()".])
-
-AH_TEMPLATE([ACE_LACKS_LONGLONG_T],
-[Compiler/platform does not support the unsigned long long datatype.])
-
-AH_TEMPLATE([ACE_LACKS_U_LONGLONG_T],
-[Platform does not have u_longlong_t typedef])
-
-AH_TEMPLATE([ACE_LACKS_MMAP],
-[The platform doesn't have mmap(2) (e.g., SCO UNIX).])
-
-AH_TEMPLATE([ACE_LACKS_MODE_MASKS],
-[Platform/compiler doesn't have open() mode masks.])
-
-AH_TEMPLATE([ACE_LACKS_MSG_ACCRIGHTS],
-[Platform defines ACE_HAS_MSG, but lacks msg_accrights{len}.])
-
-AH_TEMPLATE([ACE_LACKS_NULL_PTHREAD_STATUS],
-[OS requires non-null status pointer for pthread_join ()])
-
-AH_TEMPLATE([ACE_HAS_MUTEX_TIMEOUTS],
-[Compiler supports timed mutex acquisitions (e.g. pthread_mutex_timedlock()).])
-
-AH_TEMPLATE([ACE_LACKS_NAMED_POSIX_SEM],
-[Platform lacks named POSIX semaphores (e.g., Chorus)])
-
-AH_TEMPLATE([ACE_LACKS_RLIMIT],
-[Platform/compiler lacks {get,set}rlimit() function (e.g., VxWorks,
- Chorus, and SCO UNIX)])
-
-AH_TEMPLATE([ACE_LACKS_PLACEMENT_OPERATOR_DELETE],
-[Compiler doesn't support placement operator delete(void *, void *).])
-
-AH_TEMPLATE([ACE_LACKS_PRAGMA_ONCE],
-[Compiler complains about use of obsolete "pragma once"])
-
-AH_TEMPLATE([ACE_LACKS_PTHREAD_CANCEL],[Platform lacks pthread_cancel()])
-
-AH_TEMPLATE([ACE_LACKS_PWD_FUNCTIONS],
-[Platform lacks, getpwnam(), etc.])
-
-AH_TEMPLATE([ACE_LACKS_PWD_REENTRANT_FUNCTIONS],
-[Platform lacks getpwnam_r() methods (e.g., SGI 6.2).])
-
-AH_TEMPLATE([ACE_LACKS_SETDETACH],
-[Platform lacks pthread_attr_setdetachstate() (e.g., HP/UX 10.x)])
-
-AH_TEMPLATE([ACE_LACKS_SETSCHED],
-[Platform lacks pthread_attr_setsched() (e.g. MVS)])
-
-AH_TEMPLATE([ACE_LACKS_SIGNED_CHAR],
-[Platform lacks "signed char" type (broken!)])
-
-AH_TEMPLATE([ACE_LACKS_SYS_MSG_H],
-[Platform lacks sys/msg.h (e.g., Chorus and VxWorks)])
-
-AH_TEMPLATE([ACE_LACKS_SYSV_MSQ_PROTOS],
-[Platform lacks SYSV message queue prototypes])
-
-AH_TEMPLATE([ACE_LACKS_SYSV_SHMEM],
-[Platform lacks System V shared memory (e.g., Win32 and VxWorks)])
-
-AH_TEMPLATE([ACE_LACKS_SOCKET_BUFSIZ],
-[Platform doesn't support SO_SNDBUF/SO_RCVBUF (used in TAO)])
-
-AH_TEMPLATE([ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES],
-[Compiler doesn't support static data member templates])
-
-AH_TEMPLATE([ACE_LACKS_T_ERRNO],[Header files lack t_errno for TLI])
-
-AH_TEMPLATE([ACE_LACKS_TCP_NODELAY],[OS does not support TCP_NODELAY])
-
-AH_TEMPLATE([ACE_LACKS_THREAD_PROCESS_SCOPING],
-[Platform lacks pthread_attr_setscope()])
-
-AH_TEMPLATE([ACE_LACKS_TIMESPEC_T],
-[Platform does not define timepec_t as a typedef for struct timespec.])
-
-AH_TEMPLATE([ACE_LACKS_STRTOK_R_PROTOTYPE],
-[Platform/compiler lacks the strtok_r() prototype])
-
-AH_TEMPLATE([ACE_LACKS_CHAR_RIGHT_SHIFTS],
-[Compiler does not have any istream operator>> for chars, u_chars, or
- signed chars.])
-
-AH_TEMPLATE([ACE_LACKS_CHAR_STAR_RIGHT_SHIFTS],
-[Compiler does not have operator>> (istream &, u_char *) or
- operator>> (istream &, signed char *)])
-
-AH_TEMPLATE([ACE_LACKS_NUMERIC_LIMITS],[Platform lacks std::numeric_limits<>])
-
-AH_TEMPLATE([ACE_LACKS_UNIX_DOMAIN_SOCKETS],
-[ACE platform has no UNIX domain sockets])
-
-AH_TEMPLATE([ACE_LACKS_UNIX_SIGNALS],
-[Platform lacks full signal support (e.g., Win32 and Chorus).])
-
-AH_TEMPLATE([ACE_MAIN],
-[Renames "main (int, char *[])", for platforms such as g++/VxWorks
- that don't allow main. Requires the use of
- ACE_HAS_NONSTATIC_OBJECT_MANAGER.])
-
-AH_TEMPLATE([ACE_MT_SAFE],[Compile using multi-thread libraries])
-
-AH_TEMPLATE([ACE_NDEBUG],[Turns off debugging features])
-
-AH_TEMPLATE([ACE_NEEDS_DEV_IO_CONVERSION],
-[Necessary with some compilers to pass ACE_TTY_IO as parameter to
- DEV_Connector.])
-
-AH_TEMPLATE([ACE_NEEDS_HUGE_THREAD_STACKSIZE],
-[Required by platforms with small default stacks.])
-
-AH_TEMPLATE([ACE_NEEDS_LWP_PRIO_SET],
-[OS has LWPs, and when the priority of a bound thread is set, then
- the LWP priority must be set also.])
-
-AH_TEMPLATE([ACE_NEEDS_SCHED_H],
-[Platform needs to #include <sched.h> to get thread scheduling defs.])
-
-AH_TEMPLATE([ACE_NEW_THROWS_EXCEPTIONS],
-[Compiler's 'new' throws exception on failure (ANSI C++ behavior).])
-
-AH_TEMPLATE([ACE_NLOGGING],
-[Turns off the LM_DEBUG and LM_ERROR logging macros...])
-
-AH_TEMPLATE([ACE_NTRACE],[Turns off the tracing feature.])
-
-AH_TEMPLATE([ACE_PAGE_SIZE],
-[Defines the page size of the system (not used on Win32 or with
- ACE_HAS_GETPAGESIZE).])
-
-AH_TEMPLATE([ACE_REDEFINES_XTI_FUNCTIONS],
-[Platform redefines the t_... names (UnixWare)])
-
-AH_TEMPLATE([ACE_TEMPLATES_REQUIRE_PRAGMA],
-[Compiler's template mechanism must use a pragma. This is used for
- AIX's C++ compiler.])
-
-AH_TEMPLATE([ACE_TEMPLATES_REQUIRE_SOURCE],
-[Compiler's template mechanim must see source code (i.e., .cpp
- files). This is used for GNU G++.])
-
-AH_TEMPLATE([ACE_HAS_ICMP_SUPPORT],
-[Defined to 1 if platform supports ICMP over raw sockets])
-
-AH_TEMPLATE([ACE_NEEDS_FUNC_DEFINITIONS],
-[Compiler requires a definition for a "hidden" function, e.g., a
- private, unimplemented copy constructor or assignment operator.
- The SGI C++ compiler needs this, in template classes, with
- ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA.])
-
-AH_TEMPLATE([ACE_TLI_TCP_DEVICE],
-[Device the platform uses for TCP on TLI. Only needed if not
- /dev/tcp.])
-
-AH_TEMPLATE([ACE_USE_POLL],
-[The OS/platform supports the poll() event demultiplexor])
-
-AH_TEMPLATE([ACE_HAS_EVENT_POLL],[Platform (Linux) supports event poll
- interface.])
-
-AH_TEMPLATE([ACE_HAS_DEV_POLL],[Platform supports /dev/poll character
- device.])
-
-AH_TEMPLATE([ACE_USES_ASM_SYMBOL_IN_DLSYM],
-[Platform uses assembly symbols instead of C symbols in dlsym()])
-
-AH_TEMPLATE([ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB],
-[Platform has its standard C++ library in the namespace std.])
-
-dnl DSO/DLL export macros.
-AH_TEMPLATE([ACE_HAS_CUSTOM_EXPORT_MACROS],
-[Platform defines custom DSO/DLL symbol export macros.])
-
-AH_TEMPLATE([ACE_Proper_Export_Flag],
-[Flag that denotes the symbol should be exported from the DSO/DLL.])
-
-AH_TEMPLATE([ACE_Proper_Import_Flag],
-[Flag that denotes the symbol should be imported from the DSO/DLL.])
-
-dnl ACE_EXPORT_SINGLETON_DECLARATION(T)
-dnl ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-dnl ACE_IMPORT_SINGLETON_DECLARATION(T)
-dnl ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-
-]) dnl End ACE_PREP_CONFIG_HEADER
diff --git a/ACE/m4/pkg.m4 b/ACE/m4/pkg.m4
deleted file mode 100644
index cbb46dbf832..00000000000
--- a/ACE/m4/pkg.m4
+++ /dev/null
@@ -1,156 +0,0 @@
-# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
-#
-# Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# PKG_PROG_PKG_CONFIG([MIN-VERSION])
-# ----------------------------------
-AC_DEFUN([PKG_PROG_PKG_CONFIG],
-[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
-m4_pattern_allow([^PKG_CONFIG(_PATH)?$])
-AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])dnl
-if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
- AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
-fi
-if test -n "$PKG_CONFIG"; then
- _pkg_min_version=m4_default([$1], [0.9.0])
- AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
- if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
- AC_MSG_RESULT([yes])
- else
- AC_MSG_RESULT([no])
- PKG_CONFIG=""
- fi
-
-fi[]dnl
-])# PKG_PROG_PKG_CONFIG
-
-# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-#
-# Check to see whether a particular set of modules exists. Similar
-# to PKG_CHECK_MODULES(), but does not set variables or print errors.
-#
-#
-# Similar to PKG_CHECK_MODULES, make sure that the first instance of
-# this or PKG_CHECK_MODULES is called, or make sure to call
-# PKG_CHECK_EXISTS manually
-# --------------------------------------------------------------
-AC_DEFUN([PKG_CHECK_EXISTS],
-[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
-if test -n "$PKG_CONFIG" && \
- AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
- m4_ifval([$2], [$2], [:])
-m4_ifvaln([$3], [else
- $3])dnl
-fi])
-
-
-# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
-# ---------------------------------------------
-m4_define([_PKG_CONFIG],
-[if test -n "$PKG_CONFIG"; then
- if test -n "$$1"; then
- pkg_cv_[]$1="$$1"
- else
- PKG_CHECK_EXISTS([$3],
- [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`],
- [pkg_failed=yes])
- fi
-else
- pkg_failed=untried
-fi[]dnl
-])# _PKG_CONFIG
-
-# _PKG_SHORT_ERRORS_SUPPORTED
-# -----------------------------
-AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
-[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
- _pkg_short_errors_supported=yes
-else
- _pkg_short_errors_supported=no
-fi[]dnl
-])# _PKG_SHORT_ERRORS_SUPPORTED
-
-
-# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
-# [ACTION-IF-NOT-FOUND])
-#
-#
-# Note that if there is a possibility the first call to
-# PKG_CHECK_MODULES might not happen, you should be sure to include an
-# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
-#
-#
-# --------------------------------------------------------------
-AC_DEFUN([PKG_CHECK_MODULES],
-[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
-AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
-AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
-
-pkg_failed=no
-AC_MSG_CHECKING([for $1])
-
-_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
-_PKG_CONFIG([$1][_LIBS], [libs], [$2])
-
-m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
-and $1[]_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.])
-
-if test $pkg_failed = yes; then
- _PKG_SHORT_ERRORS_SUPPORTED
- if test $_pkg_short_errors_supported = yes; then
- $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$2"`
- else
- $1[]_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"`
- fi
- # Put the nasty error message in config.log where it belongs
- echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
-
- ifelse([$4], , [AC_MSG_ERROR(dnl
-[Package requirements ($2) were not met:
-
-$$1_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-_PKG_TEXT
-])],
- [$4])
-elif test $pkg_failed = untried; then
- ifelse([$4], , [AC_MSG_FAILURE(dnl
-[The pkg-config script could not be found or is too old. Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-_PKG_TEXT
-
-To get pkg-config, see <http://www.freedesktop.org/software/pkgconfig>.])],
- [$4])
-else
- $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
- $1[]_LIBS=$pkg_cv_[]$1[]_LIBS
- AC_MSG_RESULT([yes])
- ifelse([$3], , :, [$3])
-fi[]dnl
-])# PKG_CHECK_MODULES
diff --git a/ACE/m4/platform.m4 b/ACE/m4/platform.m4
deleted file mode 100644
index f03fefd3dba..00000000000
--- a/ACE/m4/platform.m4
+++ /dev/null
@@ -1,545 +0,0 @@
-dnl -------------------------------------------------------------------------
-dnl $Id$
-dnl
-dnl platform.m4
-dnl
-dnl ACE M4 include file which contains ACE specific M4 macros
-dnl that set/determine which known platform specific C++ macros
-dnl to define.
-dnl
-dnl -------------------------------------------------------------------------
-
-dnl Copyright (C) 1998, 1999, 2000, 2002, 2003 Ossama Othman
-dnl
-dnl All Rights Reserved
-dnl
-dnl This library is free software; you can redistribute it and/or
-dnl modify it under the current ACE distribution terms.
-dnl
-dnl This library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
-dnl Check for thread related libraries and compiler flags
-dnl Usage: ACE_SET_PLATFORM_MACROS
-AC_DEFUN([ACE_SET_PLATFORM_MACROS],
-[
-dnl Begin ACE_SET_PLATFORM_MACROS
-
-dnl At some point the below platform specific settings should be
-dnl automated as much as possible! We set things manually just to get
-dnl things going with the auto{conf,make}/libtool integration into the
-dnl ACE source tree.
-
-dnl Platform specific flags
-case "$host" in
- *aix3*)
- AC_DEFINE([AIX])
- AC_DEFINE([ACE_DEFAULT_BASE_ADDR], [((char *) 0x80000000)])
- ;;
- *aix4.1*)
- AC_DEFINE([AIX])
- dnl Use BSD 4.4 socket definitions for pre-AIX 4.2. The _BSD
- dnl setting also controls the data type used for waitpid(),
- dnl wait(), and wait3().
- ACE_CPPFLAGS="$ACE_CPPFLAGS -D_BSD=44"
- dnl pre-AIX 4.3 requires _BSD_INCLUDES
- ACE_CPPFLAGS="$ACE_CPPFLAGS -D_BSD_INCLUDES"
- AC_DEFINE([ACE_DEFAULT_BASE_ADDR], [((char *) 0x80000000)])
- ;;
- *aix4.2*)
- AC_DEFINE([AIX])
- dnl pre-AIX 4.3 requires _BSD_INCLUDES
- ACE_CPPFLAGS="$ACE_CPPFLAGS -D_BSD_INCLUDES"
- AC_DEFINE([ACE_DEFAULT_BASE_ADDR], [((char *) 0x80000000)])
- AC_DEFINE([ACE_TLI_TCP_DEVICE], ["/dev/xti/tcp"])
- ;;
- *aix*)
- AC_DEFINE([AIX])
- ;;
-dnl /* Cray specific configuration parameters */
-dnl /*
-dnl * The following predefined macros are used within ACE ifdefs.
-dnl * These are defined when using the Cray compilers. _CRAYMPP
-dnl * is defined, for example, if you are running on a Cray T3E
-dnl * massively parallel machine. Moreover, in the case of the T3E,
-dnl * _CRAYT3E will be defined. This is used to determine the
-dnl * ACE_SIZEOF defines for primitive types.
-dnl *
-dnl * _UNICOS is defined as either the major version of UNICOS being run,
-dnl * e.g. 9 or 10 on the vector machines (e.g. C90, T90, J90, YMP, ...)
-dnl * or the major+minor+level UNICOS/mk version, e.g. 2.0.3 => 203,
-dnl * being run on an MPP machine.
-dnl *
-dnl * Summary:
-dnl *
-dnl * _CRAYMPP (defined only if running on MPP machine, e.g. T3E, UNICOS/mk)
-dnl * _CRAYT3E (defined specifically if compiling on a Cray T3E)
-dnl * _UNICOS (defined if running UNICOS or UNICOS/mk)
-dnl *
-dnl * Tested on UNICOS 10.0.0.2, UNICOS/mk 2.0.3.10
-dnl *
-dnl * Contributed by Doug Anderson <doug "at" clark.net>
-dnl */
- t3e-cray-unicosmk*)
- ACE_CPPFLAGS="$ACE_CPPFLAGS -D_CRAYMPP -D_CRAYT3E -D_UNICOS"
- ;;
- t3e-cray*)
- ACE_CPPFLAGS="$ACE_CPPFLAGS -D_CRAYT3E -D_UNICOS"
- ;;
- *cray-unicos*)
- ACE_CPPFLAGS="$ACE_CPPFLAGS -D_UNICOS"
- ;;
- *hpux9*)
- AC_DEFINE([HPUX])
- ;;
- *hpux10*)
- AC_DEFINE([HPUX])
- AC_DEFINE([HPUX_10])
- dnl _HPUX_SOURCE : Enable HP-UX specific features in platform headers
- ACE_CPPFLAGS="$ACE_CPPFLAGS -D_HPUX_SOURCE"
- AC_DEFINE([ACE_DEFAULT_BASE_ADDR], [((char *) 0x80000000)])
- AC_DEFINE([ACE_TLI_TCP_DEVICE], ["/dev/inet_cots"])
- ;;
- *hpux11*)
- AC_DEFINE([HPUX])
- AC_DEFINE([HPUX_11])
- AC_EGREP_CPP([ACE_ON_64BIT_HP],
- [
-#ifdef __LP64__
- ACE_ON_64BIT_HP
-#endif
- ],
- [
- AC_DEFINE([ACE_DEFAULT_BASE_ADDR], [((char *) 0x0000001100000000)])
- AC_DEFINE([ACE_DEFAULT_BASE_ADDRL], [((char *) 0x0000001100000000)])
- ],
- [
- AC_DEFINE([ACE_DEFAULT_BASE_ADDR], [((char *) 0x80000000)])
- ])
- AC_DEFINE([ACE_TIMER_SKEW], [(1000 * 10)])
- ;;
- *irix5.2*)
- AC_DEFINE([IRIX5])
- ;;
- *irix5.3*)
- AC_DEFINE([IRIX5])
- if test "$GXX" = no; then
- ACE_CPPFLAGS="$ACE_CPPFLAGS -D_BSD_TYPES"
- fi
- ;;
- *irix6*)
- AC_DEFINE([IRIX6])
- AC_DEFINE([ACE_DEFAULT_BASE_ADDR], [((char *) (1024U * 1024 * 1024))])
- AC_DEFINE([ACE_TIMER_SKEW], [(1000 * 10)])
- dnl _MODERN_C_ : Enable modern features in SGI C++ compiler
- ACE_CPPFLAGS="$ACE_CPPFLAGS -D_SGI_MP_SOURCE -D_MODERN_C_"
-
- case "$host" in
- *irix6.2*)
- dnl Recent versions of IRIX do not appear to require this macro.
- if test "$ace_user_enable_threads" = yes; then
- AC_DEFINE([ACE_HAS_IRIX62_THREADS])
- fi
- ;;
- esac
- ;;
- *linux*)
- AC_DEFINE([ACE_DEFAULT_MAX_SOCKET_BUFSIZ], [65535])
- AC_DEFINE([ACE_DEFAULT_BASE_ADDR], [((char *) 0x80000000)])
- AC_DEFINE([ACE_HAS_BIG_FD_SET]) dnl FIXME: We need a test for this!
- AC_DEFINE([ACE_TIMER_SKEW], [(1000 * 10)])
- dnl Does this box have NPTL?
- NPTL=`getconf GNU_LIBPTHREAD_VERSION | $AWK '{print [$][1]}' -`
- if test "$NPTL" != NPTL; then
- ACE_CPPFLAGS="$ACE_CPPFLAGS -DACE_LACKS_LINUX_NPTL"
- fi
- ;;
- *lynxos*)
- ACE_CPPFLAGS="$ACE_CPPFLAGS -D_POSIX_THREADS_CALLS"
- AC_DEFINE([__NO_INCLUDE_WARN__])
- AC_DEFINE([ACE_MALLOC_ALIGN], [8])
- AC_DEFINE([ACE_MAP_PRIVATE], [ACE_MAP_SHARED])
- AC_DEFINE([ACE_HAS_LYNXOS4_SIGNALS])
- AC_DEFINE([ACE_TIMER_SKEW], [(1000 * 10)])
- ;;
- *mvs*)
- ACE_CPPFLAGS="$ACE_CPPFLAGS -D_ALL_SOURCE"
- ;;
- *osf3.2*)
- AC_EGREP_CPP([ACE_DEC_CXX],
- [
-#if defined(__DECCXX)
- ACE_DEC_CXX
-#endif
- ],
- [
- AC_DEFINE([DEC_CXX])
- ],)
- ;;
- *osf4.0*)
-dnl We need to add checks for g++, DEC C++ and Rational C++
- AC_EGREP_CPP([ACE_DEC_CXX],
- [
-#if defined(__DECCXX)
- ACE_DEC_CXX
-#endif
- ],
- [
- AC_DEFINE([DEC_CXX])
- ],)
-dnl Check for _POSIX_C_SOURCE macro
- AC_EGREP_CPP([ACE_ON_DEC_WITH_POS_SRC],
- [
- /* Include unistd.h to define _POSIX_C_SOURCE. */
-#ifndef ACE_LACKS_UNISTD_H
-# include <unistd.h>
-#endif
-
-#if defined(_POSIX_C_SOURCE) && (_POSIX_C_SOURCE >= 199506L)
- ACE_ON_DEC_WITH_POS_SRC
-#endif
- ],
- [
- AC_DEFINE([DIGITAL_UNIX])
- ],)
- AC_DEFINE([ACE_DEFAULT_BASE_ADDR], [((char *) 0x80000000)])
- AC_DEFINE([ACE_NEEDS_HUGE_THREAD_STACKSIZE], [(1024 * 1024)])
- AC_DEFINE([ACE_TIMER_SKEW], [(1000 * 10)])
- ;;
- *sco4.2*)
- AC_DEFINE([SCO])
- AC_DEFINE([ACE_DEFAULT_CLOSE_ALL_HANDLES], [0])
- ;;
- *sco5*)
- ACE_CPPFLAGS="$ACE_CPPFLAGS -D_SVID3"
- AC_DEFINE([SCO])
- AC_DEFINE([ACE_DEFAULT_CLOSE_ALL_HANDLES], [0])
- AC_DEFINE([ACE_HAS_BIG_FD_SET]) dnl FIXME: We need a test for this!
- ;;
- *sunos4*)
- AC_DEFINE([ACE_TIMER_SKEW], [(1000 * 10)])
- ;;
- *solaris2.4*)
- AC_DEFINE([ACE_TIMER_SKEW], [(1000 * 10)])
- AC_DEFINE([ACE_NEEDS_LWP_PRIO_SET])
- ;;
- *solaris2.5*)
- AC_DEFINE([ACE_MALLOC_ALIGN], [8])
- AC_DEFINE([ACE_TIMER_SKEW], [(1000 * 10)])
- AC_DEFINE([ACE_NEEDS_LWP_PRIO_SET])
- ;;
- *solaris2.6*)
- AC_DEFINE([ACE_MALLOC_ALIGN], [8])
- AC_DEFINE([ACE_TIMER_SKEW], [(1000 * 10)])
- AC_DEFINE([ACE_NEEDS_LWP_PRIO_SET])
- ;;
- *solaris2.7*)
- AC_DEFINE([ACE_MALLOC_ALIGN], [8])
- AC_DEFINE([ACE_TIMER_SKEW], [(1000 * 10)])
- AC_DEFINE([ACE_NEEDS_LWP_PRIO_SET])
- ;;
- *86*solaris*)
- AC_DEFINE([ACE_HAS_X86_STAT_MACROS])
- AC_DEFINE([ACE_TIMER_SKEW], [(1000 * 10)])
- AC_DEFINE([ACE_NEEDS_LWP_PRIO_SET])
- ;;
- *tandem*)
- AC_DEFINE([ACE_TIMER_SKEW], [(1000 * 10)])
- ;;
- *unixware2.0*)
- AC_DEFINE([UNIXWARE])
- AC_DEFINE([UNIXWARE_2_0])
- ;;
- *unixware2.1*)
- AC_DEFINE([UNIXWARE])
- AC_DEFINE([UNIXWARE_2_1])
- ;;
- *UnixWare7.1*)
- AC_DEFINE([UNIXWARE])
- AC_DEFINE([UNIXWARE_7_1])
- AC_DEFINE([__IOCTL_VERSIONED__])
- ACE_CPPFLAGS="$ACE_CPPFLAGS -D_REENTRANT"
- ;;
- *vxworks*)
- AC_DEFINE([VXWORKS])
- AC_DEFINE([ACE_MAIN], [ace_main])
- AC_DEFINE([ACE_DEFAULT_MAX_SOCKET_BUFSIZ], [32768])
- dnl need ACE_HAS_TSS_EMULATION for ACE_DEFAULT_THREAD_KEYS!
- AC_EGREP_CPP([ACE_TSS_EMULATION],
- [
-#if defined (ACE_HAS_TSS_EMULATION)
- ACE_TSS_EMULATION
-#endif
- ], [AC_DEFINE([ACE_DEFAULT_THREAD_KEYS], [16])],[])
- AC_DEFINE([ACE_THR_PRI_FIFO_DEF], [101])
- ;;
- *cygwin32*)
- AC_DEFINE([CYGWIN32])
- ;;
- *mingw32*)
- AC_DEFINE([ACE_WIN32])
- ;;
- *win32*)
- AC_DEFINE([ACE_WIN32])
-dnl AC_DEFINE(ACE_USE_SELECT_REACTOR_FOR_REACTOR_IMPL)
- if test "$ace_u_long_long_typedef_set" != yes; then
- ACE_UINT64="unsigned __int64"
- ace_u_long_long_typedef_set=yes
- fi dnl "$ace_u_long_long_typedef_set" != yes
- ;;
- *qnx* | *nto* | *neutrino*)
- dnl These should be defined on the command line, not in config.h.
- ACE_CPPFLAGS="$ACE_CPPFLAGS -D_QNX_SOURCE -D_POSIX_C_SOURCE=199506"
- ACE_CPPFLAGS="$ACE_CPPFLAGS -D_POSIX_NAME_MAX=14" # Max bytes in a
- # filename
- ACE_CPPFLAGS="$ACE_CPPFLAGS -D_POSIX_PATH_MAX=256" # Num. bytes in
- # pathname (excl. NULL)
- case "$host" in
- i[[3456]]86*)
- if test "$GXX" = yes; then
- # Neutrino defines memcpy as a macro on x86, which then
- # hoses the ACE_OS::memcpy() method. Undefining
- # __OPTIMIZE__ prevents this from happening.
- ACE_CPPFLAGS="$ACE_CPPFLAGS -U__OPTIMIZE__"
- fi
- ;;
- esac
- ;;
- *)
- ;;
-esac
-
-ACE_FUNC_IOCTL_ARGTYPES
-ACE_CHECK_GETNAME_RETURNS_RANDOM_SIN_ZERO
-ACE_CHECK_HAS_NONCONST_FD_ISSET
-ACE_CHECK_FORMAT_SPECIFIERS
-ACE_CHECK_LACKS_PERFECT_MULTICAST_FILTERING
-ACE_CHECK_HAS_DLSYM_SEGFAULT_ON_INVALID_HANDLE
-
-dnl End ACE_SET_PLATFORM_MACROS
-])
-
-
-
-# ACE_CHECK_FORMAT_SPECIFIERS
-#
-# Override default *printf format specifiers for size_t, ssize_t, ACE_INT64,
-# and ACE_UINT64
-#
-# FIXME: Is it possible to write a portable feature test, or is checking
-# the the target OS / target CPU the best we can do?
-#
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_CHECK_FORMAT_SPECIFIERS],
-[dnl
-AH_TEMPLATE([ACE_SIZE_T_FORMAT_SPECIFIER],
-[Define to the *printf format specifier (e.g. "%u") for size_t])dnl
-AH_TEMPLATE([ACE_SSIZE_T_FORMAT_SPECIFIER],
-[Define to the *printf format specifier (e.g. "%d") for ssize_t])dnl
-AH_TEMPLATE([ACE_INT64_FORMAT_SPECIFIER],
-[Define to the *printf format specifier (e.g. "%lld") for ACE_INT64])dnl
-AH_TEMPLATE([ACE_UINT64_FORMAT_SPECIFIER],
-[Define to the *printf format specifier (e.g. "%llu") for ACE_UINT64])dnl
-
-case "$host_os" in
-darwin*)
- AC_DEFINE([ACE_SIZE_T_FORMAT_SPECIFIER], ["%lu"])
- ;;
-
-linux*)
- case "$host_cpu" in
- alpha|ia64|x86_64)
- AC_DEFINE([ACE_SIZE_T_FORMAT_SPECIFIER], ["%lu"])
- AC_DEFINE([ACE_SSIZE_T_FORMAT_SPECIFIER], ["%ld"])
- AC_DEFINE([ACE_INT64_FORMAT_SPECIFIER], ["%ld"])
- AC_DEFINE([ACE_UINT64_FORMAT_SPECIFIER], ["%lu"])
- ;;
- *)
- ;;
- esac
- ;;
-
-mingw32*)
- AC_DEFINE([ACE_INT64_FORMAT_SPECIFIER], ["%I64d"])
- AC_DEFINE([ACE_UINT64_FORMAT_SPECIFIER], ["%I64u"])
- ;;
-
-netbsd*)
- case "$host_cpu" in
- x86_64)
- AC_DEFINE([ACE_SIZE_T_FORMAT_SPECIFIER], ["%lu"])
- AC_DEFINE([ACE_SSIZE_T_FORMAT_SPECIFIER], ["%ld"])
- ;;
- *)
- ;;
- esac
- ;;
-
-win32*)
- AC_DEFINE([ACE_INT64_FORMAT_SPECIFIER], ["%I64d"])
- AC_DEFINE([ACE_UINT64_FORMAT_SPECIFIER], ["%I64u"])
- ;;
-
-*)
- ;;
-esac])
-
-
-# ACE_CHECK_PERFECT_MULTICAST_FILTERING
-#
-# Checks whether platform lacks "perfect" multicast filtering.
-#
-# FIXME: Is it possible to write a portable feature test, or is checking
-# the the target OS the best we can do?
-#
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_CHECK_LACKS_PERFECT_MULTICAST_FILTERING],
-[AC_CACHE_CHECK([whether platform lacks perfect multicast filtering],
- [ace_cv_lacks_perfect_multicast_filtering],
- [case "$host_os" in
- darwin* | freebsd* | netbsd* | openbsd* | qnx*)
- ace_cv_lacks_perfect_multicast_filtering=yes ;;
- *)
- ace_cv_lacks_perfect_multicast_filtering=no ;;
- esac])
-
-if test $ace_cv_lacks_perfect_multicast_filtering = yes; then
- AC_DEFINE([ACE_LACKS_PERFECT_MULTICAST_FILTERING], 1,
-[Define to 1 if platform lacks IGMPv3 "perfect" filtering of multicast
-datagrams at the socket level. If defined, ACE_SOCK_Dgram_Mcast will bind
-the first joined multicast group to the socket, and all future joins on that
-socket will fail with an error.])
-fi
-])
-
-
-# ACE_FUNC_IOCTL_ARGTYPES
-#
-# Determine the correct type to be passed to ioctl's second argument and
-# define the types in ACE_IOCTL_TYPE_ARG2.
-#
-# FIXME: Should we support ioctl's third argument as well...?
-#
-# FIXME: Is it possible to write a portable feature test, or is checking
-# the the target OS the best we can do?
-#
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_FUNC_IOCTL_ARGTYPES],
-[AC_CACHE_CHECK([types of arguments for ioctl()],
- [ace_cv_func_ioctl_arg2],
- [case "$host_os" in
- darwin* | freebsd* | netbsd* | openbsd*)
- ace_cv_func_ioctl_arg2="unsigned long" ;;
- *)
- ace_cv_func_ioctl_arg2="int" ;;
- esac])
-
-AC_DEFINE_UNQUOTED(ACE_IOCTL_TYPE_ARG2, $ace_cv_func_ioctl_arg2,
- [Define to the type of arg 2 for `ioctl'.])
-])
-
-
-# ACE_VAR_TIMEZONE
-#
-# Checks whether platform has global "timezone" variable.
-#
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_VAR_TIMEZONE],
-[AC_CACHE_CHECK([for timezone variable],
- [ace_cv_var_timezone],
- [AC_TRY_LINK([#include <time.h>],
- [return (int) timezone(0, 0);],
- [ace_cv_var_timezone=no],
- [AC_TRY_LINK([#include <time.h>],
- [return (int) timezone;],
- [ace_cv_var_timezone=yes],
- [ace_cv_var_timezone=no])])
- ])
-if test "$ace_cv_var_timezone" = yes; then
- AC_DEFINE([ACE_HAS_TIMEZONE], 1,
- [Define to 1 if platform has global timezone variable])
-fi
-])
-
-
-# ACE_CHECK_GETNAME_RETURNS_RANDOM_SIN_ZERO
-#
-# Checks whether getsockname() and getpeername() return random values
-# in the sockaddr_in.sin_zero field.
-#
-# FIXME: Is it possible to write a portable feature test, or is checking
-# the the target OS the best we can do?
-#
-AC_DEFUN([ACE_CHECK_GETNAME_RETURNS_RANDOM_SIN_ZERO],
-[AC_CACHE_CHECK([whether getsockname() and getpeername() return random values in sockaddr_in.sin_zero],
- [ace_cv_getname_returns_random_sin_zero],
- [case "$host_os" in
- linux*)
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([#include <linux/version.h>],
- [
- #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,47))
- int ok;
- #else
- choke me
- #endif
- ])
- ],
- [ace_cv_getname_returns_random_sin_zero=no],
- [ace_cv_getname_returns_random_sin_zero=yes])
- ;;
- *)
- ace_cv_getname_returns_random_sin_zero=no
- ;;
- esac])
-
-if test $ace_cv_getname_returns_random_sin_zero = yes; then
- AC_DEFINE([ACE_GETNAME_RETURNS_RANDOM_SIN_ZERO], 1,
-[Define to 1 if the getsockname() and getpeername() return random values in the sockaddr_in.sin_zero field.])
-fi
-])
-
-
-# ACE_CHECK_HAS_NONCONST_FD_ISSET
-#
-# Checks if system has a nonconst FD_ISSET macro.
-#
-#---------------------------------------------------------------------------
-AC_DEFUN([ACE_CHECK_HAS_NONCONST_FD_ISSET],
-[dnl
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM([#include <sys/time.h>],
- [
- //const fd_set* temp = new fd_set();
- //FD_ISSET(0, const_cast< fd_set* >( temp ) );
- const fd_set* temp = new fd_set();
- FD_ISSET(0, temp );
- ])
- ],[],[AC_DEFINE([ACE_HAS_NONCONST_FD_ISSET], 1,
- [Define to 1 if system has nonconst FD_ISSET() macro.])]
- )
-])
-
-# ACE_CHECK_HAS_DLSYM_SEGFAULT_ON_INVALID_HANDLE
-#
-# Checks whether the dlsym() call segfaults when passed an invalid handle.
-#
-# FIXME: Is it possible to write a portable feature test, or is checking
-# the the target OS the best we can do?
-#
-AC_DEFUN([ACE_CHECK_HAS_DLSYM_SEGFAULT_ON_INVALID_HANDLE],
-[AC_CACHE_CHECK([whether dlsym() segfaults when passed an invalid handle],
- [ace_cv_has_dlsym_segfault_on_invalid_handle],
- [case "$host_os" in
- linux* | openbsd*)
- ace_cv_has_dlsym_segfault_on_invalid_handle=yes ;;
- *)
- ace_cv_has_dlsym_segfault_on_invalid_handle=no;;
- esac])
-
-if test $ace_cv_has_dlsym_segfault_on_invalid_handle = yes; then
- AC_DEFINE([ACE_HAS_DLSYM_SEGFAULT_ON_INVALID_HANDLE], 1,
-[Define to 1 if the dlsym() call segfaults when passed an invalid handle.])
-fi
-])
diff --git a/ACE/m4/subsets.m4 b/ACE/m4/subsets.m4
deleted file mode 100644
index afcd471b25f..00000000000
--- a/ACE/m4/subsets.m4
+++ /dev/null
@@ -1,770 +0,0 @@
-dnl -------------------------------------------------------------------------
-dnl $Id$
-dnl
-dnl subsets.m4
-dnl
-dnl ACE M4 include file which contains ACE specific M4 macros
-dnl that set/determine which ACE subsets to build.
-dnl
-dnl -------------------------------------------------------------------------
-
-dnl Copyright (C) 1998, 1999, 2001 Ossama Othman
-dnl
-dnl All Rights Reserved
-dnl
-dnl This library is free software; you can redistribute it and/or
-dnl modify it under the current ACE distribution terms.
-dnl
-dnl This library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
-
-dnl Check for thread related libraries and compiler flags
-dnl Usage: ACE_CHECK_SUBSETS
-AC_DEFUN([ACE_CHECK_SUBSETS],
-[
-dnl Begin ACE_CHECK_SUBSETS
-
-dnl Assume all subsets will be built, including the full ACE library.
-dnl If any of the components is explicitly enabled or disabled by the user
-dnl then do NOT build the full ACE library.
-AC_ARG_ENABLE([lib-all],
- AS_HELP_STRING([--enable-lib-all],[build all ACE components [[no]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_lib_all=yes
- ;;
- no)
- ace_user_enable_lib_all=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-lib-all])
- ;;
- esac
- ],
- [
- ace_user_enable_lib_all=no
- ])
-
-AC_ARG_ENABLE([lib-full],
- AS_HELP_STRING([--enable-lib-full],[build the full ACE library [[yes]]]),
- [
- case "${enableval}" in
- yes)
- ace_user_enable_lib_full=yes
- ;;
- no)
- ace_user_enable_lib_full=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-lib-full])
- ;;
- esac
- ],
- [
- ace_user_enable_lib_full=yes
- ])
-
-AC_ARG_ENABLE([lib-os],
- AS_HELP_STRING([--enable-lib-os],[build ACE_OS library]),
- [
- case "${enableval}" in
- yes)
- ACE_CREATE_LIBACE_OS
- ;;
- no)
- ace_user_enable_lib_os=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-lib-os])
- ;;
- esac
-
- dnl Disable full ACE library build
- ace_user_enable_lib_full=no
- ],)
-
-AC_ARG_ENABLE([lib-codecs],
- AS_HELP_STRING([--enable-lib-codecs],[build ACE_Codecs library]),
- [
- case "${enableval}" in
- yes)
- ACE_CREATE_LIBACE_CODECS
- ;;
- no)
- ace_user_enable_lib_codecs=no
- AC_DEFINE([ACE_LACKS_ACE_CODECS])
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-lib-codecs])
- ;;
- esac
-
- dnl Disable full ACE library build
- ace_user_enable_lib_full=no
- ],)
-
-AC_ARG_ENABLE([lib-connection],
- AS_HELP_STRING([--enable-lib-connection],[build ACE_Connection library ]),
- [
- case "${enableval}" in
- yes)
- ACE_CREATE_LIBACE_CONNECTION
- ;;
- no)
- ace_user_enable_lib_connection=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-lib-connection])
- ;;
- esac
-
- dnl Disable full ACE library build
- ace_user_enable_lib_full=no
- ],)
-
-AC_ARG_ENABLE([lib-demux],
- AS_HELP_STRING([--enable-lib-demux],[build ACE_Demux library]),
- [
- case "${enableval}" in
- yes)
- ACE_CREATE_LIBACE_DEMUX
- ;;
- no)
- ace_user_enable_lib_demux=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-lib-demux])
- ;;
- esac
-
- dnl Disable full ACE library build
- ace_user_enable_lib_full=no
- ],)
-
-AC_ARG_ENABLE([lib-filecache],
- AS_HELP_STRING([--enable-lib-filecache],[build ACE_Filecache library]),
- [
- case "${enableval}" in
- yes)
- ACE_CREATE_LIBACE_FILECACHE
- ;;
- no)
- ace_user_enable_lib_filecache=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-lib-filecache])
- ;;
- esac
-
- dnl Disable full ACE library build
- ace_user_enable_lib_full=no
- ],)
-
-AC_ARG_ENABLE([lib-ipc],
- AS_HELP_STRING([--enable-lib-ipc],[build ACE_IPC library]),
- [
- case "${enableval}" in
- yes)
- ACE_CREATE_LIBACE_IPC
- ;;
- no)
- ace_user_enable_lib_ipc=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-lib-ipc])
- ;;
- esac
-
- dnl Disable full ACE library build
- ace_user_enable_lib_full=no
- ],)
-
-AC_ARG_ENABLE([lib-logging],
- AS_HELP_STRING([--enable-lib-logging],[build ACE_Logging library]),
- [
- case "${enableval}" in
- yes)
- ACE_CREATE_LIBACE_LOGGING
- ;;
- no)
- ace_user_enable_lib_logging=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-lib-logging])
- ;;
- esac
-
- dnl Disable full ACE library build
- ace_user_enable_lib_full=no
- ],)
-
-AC_ARG_ENABLE([lib-memory],
- AS_HELP_STRING([--enable-lib-memory],[build ACE_Memory library]),
- [
- case "${enableval}" in
- yes)
- ACE_CREATE_LIBACE_MEMORY
- ;;
- no)
- ace_user_enable_lib_memory=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-lib-memory])
- ;;
- esac
-
- dnl Disable full ACE library build
- ace_user_enable_lib_full=no
- ],)
-
-AC_ARG_ENABLE([lib-metrics],
- AS_HELP_STRING([--enable-lib-metrics],[build ACE_Metrics library]),
- [
- case "${enableval}" in
- yes)
- ACE_CREATE_LIBACE_METRICS
- ;;
- no)
- ace_user_enable_lib_metrics=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-lib-metrics])
- ;;
- esac
-
- dnl Disable full ACE library build
- ace_user_enable_lib_full=no
- ],)
-
-AC_ARG_ENABLE([lib-sockets],
- AS_HELP_STRING([--enable-lib-sockets],[build ACE_Sockets library]),
- [
- case "${enableval}" in
- yes)
- ACE_CREATE_LIBACE_SOCKETS
- ;;
- no)
- ace_user_enable_lib_sockets=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-lib-sockets])
- ;;
- esac
-
- dnl Disable full ACE library build
- ace_user_enable_lib_full=no
- ],)
-
-AC_ARG_ENABLE([lib-streams],
- AS_HELP_STRING([--enable-lib-streams],[build ACE_Streams library]),
- [
- case "${enableval}" in
- yes)
- ACE_CREATE_LIBACE_STREAMS
- ;;
- no)
- ace_user_enable_lib_streams=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-lib-streams])
- ;;
- esac
-
- dnl Disable full ACE library build
- ace_user_enable_lib_full=no
- ],)
-
-AC_ARG_ENABLE([lib-svcconf],
- AS_HELP_STRING([--enable-lib-svcconf],[build ACE_Svcconf library]),
- [
- case "${enableval}" in
- yes)
- ACE_CREATE_LIBACE_SVCCONF
- ;;
- no)
- ace_user_enable_lib_svcconf=no
- AC_DEFINE([ACE_LACKS_ACE_SVCCONF])
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-lib-svcconf])
- ;;
- esac
-
- dnl Disable full ACE library build
- ace_user_enable_lib_full=no
- ],)
-
-AC_ARG_ENABLE([lib-threads],
- AS_HELP_STRING([--enable-lib-threads],[build ACE_Threads library]),
- [
- case "${enableval}" in
- yes)
- ACE_CREATE_LIBACE_THREADS
- ;;
- no)
- ace_user_enable_lib_threads=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-lib-threads])
- ;;
- esac
-
- dnl Disable full ACE library build
- ace_user_enable_lib_full=no
- ],)
-
-AC_ARG_ENABLE([lib-timer],
- AS_HELP_STRING([--enable-lib-timer],[build ACE_Timer library]),
- [
- case "${enableval}" in
- yes)
- ACE_CREATE_LIBACE_TIMER
- ;;
- no)
- ace_user_enable_lib_timer=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-lib-timer])
- ;;
- esac
-
- dnl Disable full ACE library build
- ace_user_enable_lib_full=no
- ],)
-
-AC_ARG_ENABLE([lib-token],
- AS_HELP_STRING([--enable-lib-token],[build ACE_Token library]),
- [
- case "${enableval}" in
- yes)
- ACE_CREATE_LIBACE_TOKEN
- ;;
- no)
- ace_user_enable_lib_token=no
- AC_DEFINE([ACE_LACKS_ACE_TOKEN])
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-lib-token])
- ;;
- esac
-
- dnl Disable full ACE library build
- ace_user_enable_lib_full=no
- ],)
-
-AC_ARG_ENABLE([lib-utils],
- AS_HELP_STRING([--enable-lib-utils],[build ACE_Utils library]),
- [
- case "${enableval}" in
- yes)
- ACE_CREATE_LIBACE_UTILS
- ;;
- no)
- ace_user_enable_lib_utils=no
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-lib-utils])
- ;;
- esac
-
- dnl Disable full ACE library build
- ace_user_enable_lib_full=no
- ],)
-
-AC_ARG_ENABLE([lib-uuid],
- AS_HELP_STRING([--enable-lib-uuid],[build ACE_UUID library]),
- [
- case "${enableval}" in
- yes)
- ACE_CREATE_LIBACE_UUID
- ;;
- no)
- ace_user_enable_lib_uuid=no
- AC_DEFINE([ACE_LACKS_ACE_UUID])
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-lib-uuid])
- ;;
- esac
-
- dnl Disable full ACE library build
- ace_user_enable_lib_full=no
- ],)
-
-AC_ARG_ENABLE([lib-other],
- AS_HELP_STRING([--enable-lib-other],[build ACE_Other library]),
- [
- case "${enableval}" in
- yes)
- ACE_CREATE_LIBACE_OTHER
- ;;
- no)
- ace_user_enable_lib_other=no
- AC_DEFINE([ACE_LACKS_ACE_OTHER])
- ;;
- *)
- AC_MSG_ERROR([bad value ${enableval} for --enable-lib-other])
- ;;
- esac
-
- dnl Disable full ACE library build
- ace_user_enable_lib_full=no
- ],)
-
-
-dnl If no ACE subsets were explicitly enabled or disabled then build
-dnl all of them.
-if test $ace_user_enable_lib_all = yes; then
-
- ACE_CREATE_ALL_COMPONENTS
-
-elif test $ace_user_enable_lib_all = no; then
-
- ACE_DISABLE_ALL_COMPONENTS
-
-fi
-
-if test $ace_user_enable_lib_full = no &&
- test $ace_user_enable_lib_os = no &&
- test $ace_user_enable_lib_codecs = no &&
- test $ace_user_enable_lib_connection = no &&
- test $ace_user_enable_lib_demux = no &&
- test $ace_user_enable_lib_filecache = no &&
- test $ace_user_enable_lib_ipc = no &&
- test $ace_user_enable_lib_logging = no &&
- test $ace_user_enable_lib_memory = no &&
- test $ace_user_enable_lib_metrics = no &&
- test $ace_user_enable_lib_threads = no &&
- test $ace_user_enable_lib_sockets = no &&
- test $ace_user_enable_lib_svcconf = no &&
- test $ace_user_enable_lib_streams = no &&
- test $ace_user_enable_lib_timer = no &&
- test $ace_user_enable_lib_token = no &&
- test $ace_user_enable_lib_utils = no &&
- test $ace_user_enable_lib_uuid = no &&
- test $ace_user_enable_lib_other = no; then
-
- dnl If we get here then no ACE libraries will be built!
- AC_MSG_ERROR([No ACE components will be built. Specify which components to build.])
-
-fi dnl No components will be built!
-
-dnl Set which ACE subsets to build
-AM_CONDITIONAL(BUILD_OS_FILES,
- test X$ace_user_enable_lib_os = Xyes)
-
-AM_CONDITIONAL(BUILD_CODECS_FILES,
- test X$ace_user_enable_lib_codecs = Xyes)
-
-AM_CONDITIONAL(BUILD_CONNECTION_FILES,
- test X$ace_user_enable_lib_connection = Xyes)
-
-AM_CONDITIONAL(BUILD_DEMUX_FILES,
- test X$ace_user_enable_lib_demux = Xyes)
-
-AM_CONDITIONAL(BUILD_FILECACHE_FILES,
- test X$ace_user_enable_lib_filecache = Xyes)
-
-AM_CONDITIONAL(BUILD_IPC_FILES,
- test X$ace_user_enable_lib_ipc = Xyes)
-
-AM_CONDITIONAL(BUILD_LOGGING_FILES,
- test X$ace_user_enable_lib_logging = Xyes)
-
-AM_CONDITIONAL(BUILD_MEMORY_FILES,
- test X$ace_user_enable_lib_memory = Xyes)
-
-AM_CONDITIONAL(BUILD_METRICS_FILES,
- test X$ace_user_enable_lib_metrics = Xyes)
-
-AM_CONDITIONAL(BUILD_SOCKETS_FILES,
- test X$ace_user_enable_lib_sockets = Xyes)
-
-AM_CONDITIONAL(BUILD_STREAMS_FILES,
- test X$ace_user_enable_lib_streams = Xyes)
-
-AM_CONDITIONAL(BUILD_SVCCONF_FILES,
- test X$ace_user_enable_lib_svcconf = Xyes)
-
-AM_CONDITIONAL(BUILD_THREADS_FILES,
- test X$ace_user_enable_lib_threads = Xyes)
-
-AM_CONDITIONAL(BUILD_TIMER_FILES,
- test X$ace_user_enable_lib_timer = Xyes)
-
-AM_CONDITIONAL(BUILD_TOKEN_FILES,
- test X$ace_user_enable_lib_token = Xyes)
-
-AM_CONDITIONAL(BUILD_UTILS_FILES,
- test X$ace_user_enable_lib_utils = Xyes)
-
-AM_CONDITIONAL(BUILD_UUID_FILES,
- test X$ace_user_enable_lib_uuid = Xyes)
-
-AM_CONDITIONAL(BUILD_OTHER_FILES,
- test X$ace_user_enable_lib_other = Xyes)
-
-AM_CONDITIONAL(BUILD_FULL_LIBRARY,
- test X$ace_user_enable_lib_full = Xyes)
-
-dnl End ACE_CHECK_SUBSETS
-])
-
-dnl Set the component dependencies for the libACE_OS library
-dnl Usage: ACE_CREATE_LIBACE_OS
-AC_DEFUN([ACE_CREATE_LIBACE_OS],
-[
- ace_user_enable_lib_os=yes
-])
-
-dnl Set the component dependencies for the libACE_Utils library
-dnl Usage: ACE_CREATE_LIBACE_UTILS
-AC_DEFUN([ACE_CREATE_LIBACE_UTILS],
-[
- ace_user_enable_lib_utils=yes
-
- dnl Be careful not to go into a circular/recursive loop with these macros!
- ACE_CREATE_LIBACE_OS
-])
-
-dnl Set the component dependencies for the libACE_UUID library
-dnl Usage: ACE_CREATE_LIBACE_UUID
-AC_DEFUN([ACE_CREATE_LIBACE_UUID],
-[
- ace_user_enable_lib_uuid=yes
-
- dnl Be careful not to go into a circular/recursive loop with these macros!
- ACE_CREATE_LIBACE_OS
-])
-
-dnl Set the component dependencies for the libACE_Filecache library
-dnl Usage: ACE_CREATE_LIBACE_FILECACHE
-AC_DEFUN([ACE_CREATE_LIBACE_FILECACHE],
-[
- ace_user_enable_lib_filecache=yes
-
- dnl Be careful not to go into a circular/recursive loop with these macros!
- ACE_CREATE_LIBACE_OS
-])
-
-dnl Set the component dependencies for the libACE_Logging library
-dnl Usage: ACE_CREATE_LIBACE_LOGGING
-AC_DEFUN([ACE_CREATE_LIBACE_LOGGING],
-[
- ace_user_enable_lib_logging=yes
-
- dnl Be careful not to go into a circular/recursive loop with these macros!
- ACE_CREATE_LIBACE_OS
-])
-
-dnl Set the component dependencies for the libACE_Metrics library
-dnl Usage: ACE_CREATE_LIBACE_METRICS
-AC_DEFUN([ACE_CREATE_LIBACE_METRICS],
-[
- ace_user_enable_lib_metrics=yes
-
- dnl Be careful not to go into a circular/recursive loop with these macros!
- ACE_CREATE_LIBACE_OS
-])
-
-dnl Set the component dependencies for the libACE_Threads library
-dnl Usage: ACE_CREATE_LIBACE_THREADS
-AC_DEFUN([ACE_CREATE_LIBACE_THREADS],
-[
- ace_user_enable_lib_threads=yes
-
- dnl Be careful not to go into a circular/recursive loop with these macros!
- ACE_CREATE_LIBACE_OS
-])
-
-dnl Set the component dependencies for the libACE_Demux library
-dnl Usage: ACE_CREATE_LIBACE_DEMUX
-AC_DEFUN([ACE_CREATE_LIBACE_DEMUX],
-[
- ace_user_enable_lib_demux=yes
-
- dnl Be careful not to go into a circular/recursive loop with these macros!
- ACE_CREATE_LIBACE_OS
- ACE_CREATE_LIBACE_THREADS
-])
-
-dnl Set the component dependencies for the libACE_Connection library
-dnl Usage: ACE_CREATE_LIBACE_CONNECTION
-AC_DEFUN([ACE_CREATE_LIBACE_CONNECTION],
-[
- ace_user_enable_lib_connection=yes
-
- dnl Be careful not to go into a circular/recursive loop with these macros!
- ACE_CREATE_LIBACE_OS
- ACE_CREATE_LIBACE_THREADS
- ACE_CREATE_LIBACE_DEMUX
-])
-
-dnl Set the component dependencies for the libACE_Sockets library
-dnl Usage: ACE_CREATE_LIBACE_SOCKETS
-AC_DEFUN([ACE_CREATE_LIBACE_SOCKETS],
-[
- ace_user_enable_lib_sockets=yes
-
- dnl Be careful not to go into a circular/recursive loop with these macros!
- ACE_CREATE_LIBACE_OS
-])
-
-dnl Set the component dependencies for the libACE_IPC library
-dnl Usage: ACE_CREATE_LIBACE_IPC
-AC_DEFUN([ACE_CREATE_LIBACE_IPC],
-[
- ace_user_enable_lib_ipc=yes
-
- dnl Be careful not to go into a circular/recursive loop with these macros!
- ACE_CREATE_LIBACE_OS
- ACE_CREATE_LIBACE_SOCKETS
-])
-
-dnl Set the component dependencies for the libACE_Svcconf library
-dnl Usage: ACE_CREATE_LIBACE_SVCCONF
-AC_DEFUN([ACE_CREATE_LIBACE_SVCCONF],
-[
- ace_user_enable_lib_svcconf=yes
-
- dnl Be careful not to go into a circular/recursive loop with these macros!
- ACE_CREATE_LIBACE_OS
- ACE_CREATE_LIBACE_THREADS
- ACE_CREATE_LIBACE_DEMUX
- ACE_CREATE_LIBACE_SOCKETS
-])
-
-dnl Set the component dependencies for the libACE_Streams library
-dnl Usage: ACE_CREATE_LIBACE_STREAMS
-AC_DEFUN([ACE_CREATE_LIBACE_STREAMS],
-[
- ace_user_enable_lib_streams=yes
-
- dnl Be careful not to go into a circular/recursive loop with these macros!
- ACE_CREATE_LIBACE_OS
- ACE_CREATE_LIBACE_THREADS
- ACE_CREATE_LIBACE_DEMUX
-])
-
-dnl Set the component dependencies for the libACE_Memory library
-dnl Usage: ACE_CREATE_LIBACE_MEMORY
-AC_DEFUN([ACE_CREATE_LIBACE_MEMORY],
-[
- ace_user_enable_lib_memory=yes
-
- dnl Be careful not to go into a circular/recursive loop with these macros!
- ACE_CREATE_LIBACE_OS
-])
-
-dnl Set the component dependencies for the libACE_Timer library
-dnl Usage: ACE_CREATE_LIBACE_TIMER
-AC_DEFUN([ACE_CREATE_LIBACE_TIMER],
-[
- ace_user_enable_lib_timer=yes
-
- dnl Be careful not to go into a circular/recursive loop with these macros!
- ACE_CREATE_LIBACE_OS
-])
-
-dnl Set the component dependencies for the libACE_Token library
-dnl Usage: ACE_CREATE_LIBACE_TOKEN
-AC_DEFUN([ACE_CREATE_LIBACE_TOKEN],
-[
- ace_user_enable_lib_token=yes
-
- dnl Be careful not to go into a circular/recursive loop with these macros!
- ACE_CREATE_LIBACE_OS
- ACE_CREATE_LIBACE_UTILS
- ACE_CREATE_LIBACE_LOGGING
- ACE_CREATE_LIBACE_THREADS
- ACE_CREATE_LIBACE_DEMUX
- ACE_CREATE_LIBACE_CONNECTION
- ACE_CREATE_LIBACE_SOCKETS
- ACE_CREATE_LIBACE_IPC
- ACE_CREATE_LIBACE_SVCCONF
- ACE_CREATE_LIBACE_STREAMS
- ACE_CREATE_LIBACE_MEMORY
- dnl ACE_CREATE_LIBACE_OTHER
-])
-
-dnl Set the component dependencies for the libACE_Codecs library
-dnl Usage: ACE_CREATE_LIBACE_CODECS
-AC_DEFUN([ACE_CREATE_LIBACE_CODECS],
-[
- ace_user_enable_lib_codecs=yes
-
- dnl Be careful not to go into a circular/recursive loop with these macros!
- ACE_CREATE_LIBACE_OS
-])
-
-dnl Set the component dependencies for the libACE_Other library
-dnl Usage: ACE_CREATE_LIBACE_OTHER
-AC_DEFUN([ACE_CREATE_LIBACE_OTHER],
-[
- ace_user_enable_lib_other=yes
-
- dnl Be careful not to go into a circular/recursive loop with these macros!
- ACE_CREATE_LIBACE_OS
- ACE_CREATE_LIBACE_UTILS
- ACE_CREATE_LIBACE_LOGGING
- ACE_CREATE_LIBACE_THREADS
- ACE_CREATE_LIBACE_DEMUX
- ACE_CREATE_LIBACE_CONNECTION
- ACE_CREATE_LIBACE_SOCKETS
- ACE_CREATE_LIBACE_IPC
- ACE_CREATE_LIBACE_SVCCONF
- ACE_CREATE_LIBACE_STREAMS
- ACE_CREATE_LIBACE_MEMORY
- dnl ACE_CREATE_LIBACE_TOKEN
-])
-
-dnl Build all ACE component libraries
-dnl Usage: ACE_CREATE_ALL_COMPONENTS
-AC_DEFUN([ACE_CREATE_ALL_COMPONENTS],
-[
- ace_user_enable_lib_os=yes
- ace_user_enable_lib_codecs=yes
- ace_user_enable_lib_connection=yes
- ace_user_enable_lib_demux=yes
- ace_user_enable_lib_filecache=yes
- ace_user_enable_lib_ipc=yes
- ace_user_enable_lib_logging=yes
- ace_user_enable_lib_memory=yes
- ace_user_enable_lib_metrics=yes
- ace_user_enable_lib_sockets=yes
- ace_user_enable_lib_streams=yes
- ace_user_enable_lib_svcconf=yes
- ace_user_enable_lib_threads=yes
- ace_user_enable_lib_timer=yes
- ace_user_enable_lib_token=yes
- ace_user_enable_lib_utils=yes
- ace_user_enable_lib_uuid=yes
- ace_user_enable_lib_other=yes
-])
-
-dnl Disable all ACE component libraries
-dnl Usage: ACE_CREATE_ALL_COMPONENTS
-AC_DEFUN([ACE_DISABLE_ALL_COMPONENTS],
-[
- ace_user_enable_lib_os=no
- ace_user_enable_lib_codecs=no
- ace_user_enable_lib_connection=no
- ace_user_enable_lib_demux=no
- ace_user_enable_lib_filecache=no
- ace_user_enable_lib_ipc=no
- ace_user_enable_lib_logging=no
- ace_user_enable_lib_memory=no
- ace_user_enable_lib_metrics=no
- ace_user_enable_lib_sockets=no
- ace_user_enable_lib_streams=no
- ace_user_enable_lib_svcconf=no
- ace_user_enable_lib_threads=no
- ace_user_enable_lib_timer=no
- ace_user_enable_lib_token=no
- ace_user_enable_lib_utils=no
- ace_user_enable_lib_uuid=no
- ace_user_enable_lib_other=no
-])
diff --git a/ACE/m4/threads.m4 b/ACE/m4/threads.m4
deleted file mode 100644
index d6fc759b4c1..00000000000
--- a/ACE/m4/threads.m4
+++ /dev/null
@@ -1,334 +0,0 @@
-dnl -------------------------------------------------------------------------
-dnl $Id$
-dnl
-dnl threads.m4
-dnl
-dnl ACE M4 include file which contains ACE specific M4 macros
-dnl for configuring thread support. This file is to be used
-dnl with the configure script.
-dnl
-dnl -------------------------------------------------------------------------
-
-dnl Copyright (C) 1998, 1999, 2002 Ossama Othman
-dnl
-dnl All Rights Reserved
-dnl
-dnl This library is free software; you can redistribute it and/or
-dnl modify it under the current ACE distribution terms.
-dnl
-dnl This library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
-dnl Make sure thread library exists
-dnl We need to be careful when tests for other thread libraries are
-dnl added that we don't screw up handling of "ace_user_enable_threads"
-dnl Tests should probably be more platform specific later on.
-
-dnl Check for thread related libraries and compiler flags
-dnl Usage: ACE_CHECK_THREADS
-AC_DEFUN([ACE_CHECK_THREADS],
-[
-dnl AC_REQUIRE([AC_PROG_CXX])
-dnl AC_REQUIRE([AC_PROG_CXXCPP])
-dnl AC_LANG([C++])
-dnl AC_REQUIRE([AC_LANG])
-
- dnl Check if compiler accepts specific flag to enable threads
- ACE_CACHE_CHECK([if compiler may need a command line thread flag],
- [ace_cv_feature_may_need_thread_flag],
- [
- ace_save_CXXFLAGS="$CXXFLAGS"
-
- ACE_CHECK_THREAD_FLAGS(
- [
- ace_cv_feature_may_need_thread_flag=no
- ],
- [
- ace_cv_feature_may_need_thread_flag=yes
- ])
- dnl Reset the flags to a consistent state.
- dnl This prevents duplicate flags from being added to
- dnl the C/CXXFLAGS variable.
- CXXFLAGS="$ace_save_CXXFLAGS"
- ],
- [
- dnl The compiler/platform has no thread support linked in by default
- dnl so search for a usable compiler flag to enable thread support.
- dnl If no thread flag is found then the remaining tests should still
- dnl figure out how to enable thread support via library checks.
- ACE_SEARCH_THREAD_FLAGS(
- [mt pthread pthreads mthreads threads Kthread kthread -thread_safe],,)
- dnl NOTE: "-thread_safe" is correct, not "thread_safe."
- dnl KAI C++ uses the flag "--thread_safe" which is why
- dnl "-thread_safe" is passed as the flag to test.
- ],
- [
- dnl Do nothing
- ])
-
- dnl Check for UNIX International Threads (ACE calls this STHREADS)
- dnl This used to check for thr_create(), but AIX has a semi-functional
- dnl UI Threads capability that includes thr_create(). We don't want to
- dnl find such a half-hearted UI Threads, so this was changed to look for
- dnl a UI Threads function that AIX doesn't offer.
- AS_IF([test "$ace_user_enable_uithreads" = yes],
- [ AC_MSG_CHECKING([for UNIX International threads capability])
- AC_SEARCH_LIBS([mutex_lock], [thread],
- [
- ace_has_sthreads=yes
- AC_DEFINE([ACE_HAS_STHREADS], 1,
- [Define to 1 if platform has UNIX International Threads])
- ],
- [
- ace_has_sthreads=no
- ])
- dnl Sometimes thr_create is actually found with explicitly linking against
- dnl -lthread, so try a more "exotic" function.
- AC_SEARCH_LIBS([rwlock_destroy], [thread],[],[])
- AC_MSG_RESULT([$ace_has_sthreads])
- ],[])
-
- dnl Check if any thread related preprocessor flags are needed.
- ACE_CHECK_THREAD_CPPFLAGS
-
- dnl Check for POSIX threads
- ace_has_pthreads=no
- AS_IF([test "$ace_user_enable_pthreads" = yes],
- [ AC_MSG_CHECKING([for POSIX threads library])
- ACE_CHECK_POSIX_THREADS(
- [
- ace_has_pthreads=yes
- AC_DEFINE([ACE_HAS_PTHREADS], 1,
- [Define to 1 if platform has POSIX threads])
- AC_MSG_RESULT([none required])
- ],
- [])
-
- AS_IF([test "$ace_has_pthreads" != yes],
- [
- ace_posix_threads_search_LIBS="$LIBS"
- for ace_p in pthread pthreads c_r gthreads; do
- LIBS="-l$ace_p $ace_posix_threads_search_LIBS"
- ACE_CHECK_POSIX_THREADS(
- [
- ace_has_pthreads=yes
- AC_DEFINE([ACE_HAS_PTHREADS])
- AC_MSG_RESULT([-l$ace_p])
- break
- ],
- [])
- done
-
- AS_IF([test "$ace_has_pthreads" != yes],
- [
- AC_MSG_RESULT([no])
- LIBS="$ace_posix_threads_search_LIBS"
- ],[])
- ],
- [])
- ],
- [
- AC_MSG_NOTICE([Pthreads disabled by user; not checking for it])
- ])
-
- dnl If we don't have any thread library, then disable threading altogether!
- AS_IF([test "$ace_has_pthreads" != yes && test "$ace_has_sthreads" != yes],
- [
- ace_user_enable_threads=no
- ])
-])
-
-dnl This macro will check that the current compiler flags do something
-dnl useful in terms of thread libraries and/or functions.
-dnl Usage: ACE_CHECK_THREAD_FLAGS(ACTION-IF-USABLE [, ACTION-IF-NOT-USABLE]])
-AC_DEFUN([ACE_CHECK_THREAD_FLAGS],
-[
- ACE_CONVERT_WARNINGS_TO_ERRORS([
- dnl Check for UI thread support first.
-
- dnl Because some platforms are brain damaged enough to provide
- dnl useless thread function stubs, link tests may succeed despite the
- dnl fact the stubs are no-ops. This forces us to use a run-time test
- dnl to get around this nuisance by checking the return value of
- dnl thr_create(). The cross-compiled case will use a link-time
- dnl test, instead.
- dnl Furthermore, we need the implementation to be a real one, not
- dnl a half-hearted attempt such as that provided on AIX 5. So, we
- dnl make sure it can at least work with a mutex.
-
- AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#include <thread.h>
-#if ((THR_BOUND & THR_SUSPEND & THR_DETACHED) != 0)
-# error This is a silly UI Threads implementation.
-#endif
-
-extern "C" void *
-ace_start_func (void *)
-{
- mutex_t m;
- mutex_init (&m, USYNC_THREAD, NULL);
- mutex_lock (&m);
- mutex_unlock (&m);
- mutex_destroy (&m);
- return 0;
-}
-
-int
-main ()
-{
- thread_t tid = 0;
-
- return thr_create (0, 0, ace_start_func, 0, 0, &tid);
-}
- ]])],
- [$1],
- [
- dnl Now check for POSIX thread support.
- ACE_CHECK_POSIX_THREADS([$1],[$2])
-
- ],
- [
- dnl UI threads cross-compiled case
-
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[
-#include <thread.h>
-
-extern "C" void *
-ace_start_func (void *)
-{
- return 0;
-}
- ]],
- [[
- thread_t tid = 0;
-
- (void) thr_create (&tid, 0, ace_start_func, 0);
- ]])],
- [$1],
- [$2])
- ])
- ])
-])
-
-dnl Check what compiler thread flag may be used, if any, from the given list.
-dnl The flag list is separated by white space.
-dnl Usage: ACE_SEARCH_THREAD_FLAGS(THREAD-FLAG-LIST,
-dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-AC_DEFUN([ACE_SEARCH_THREAD_FLAGS],
-[
- AC_LANG([C++])
- AC_REQUIRE([AC_LANG])
-
- ACE_CACHE_CHECK([for compiler thread flag],
- [ace_cv_thread_flag_search],
- [
- ace_save_CXXFLAGS="$CXXFLAGS"
-
- for i in $1; do
- CXXFLAGS="$CXXFLAGS -$i"
-
- ACE_CHECK_THREAD_FLAGS(
- [
- ace_cv_thread_flag_search="-$i"
-
- dnl A usable flag was found so break out of the loop.
- break;
- ],
- [
- ace_cv_thread_flag_search=no
- ])
-
- dnl Reset the flags for the next flag check.
- CXXFLAGS="$ace_save_CXXFLAGS"
- done
-
- dnl Reset the flags to a consistent state.
- dnl This prevents duplicate flags from being added to
- dnl the CCXXFLAGS variable.
- CXXFLAGS="$ace_save_CXXFLAGS"
- ],
- [
- dnl Add the found/cached thread flag to the C/CXXFLAGS variables
- CXXFLAGS="$CXXFLAGS $ace_cv_thread_flag_search"
-
- $2
- ],
- [
- $3
- ])
-])
-
-
-dnl Check if the compiler defines thread related preprocessor flags.
-dnl If not, then provide them.
-dnl Usage: ACE_CHECK_THREAD_CPPFLAGS
-AC_DEFUN([ACE_CHECK_THREAD_CPPFLAGS],
-[
- dnl A compile-time test is used instead of a preprocesse-time test
- dnl because compiler thread flags defined in CFLAGS or CXXFLAGS
- dnl should be used for this test.
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#if !defined (_REENTRANT) && !defined (_THREAD_SAFE)
-#error Neither _REENTRANT nor _THREAD_SAFE were defined.
-THROW ME AN ERROR!
-#endif
- ]], [[
- int a = 0; a++;
- ]])],[
- ACE_THR_CPPFLAGS=
- ],[
- ACE_THR_CPPFLAGS="-D_REENTRANT -D_THREAD_SAFE"
- ])
-])
-
-dnl Check for POSIX threads support.
-dnl Usage: ACE_CHECK_POSIX_THREADS([ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-AC_DEFUN([ACE_CHECK_POSIX_THREADS],
-[
- dnl Because some platforms are brain damaged enough to provide
- dnl useless thread function stubs, link tests may succeed despite the
- dnl fact the stubs are no-ops. This forces us to use a run-time test
- dnl to get around this nuisance by checking the return value of
- dnl pthread_create(). The cross-compiled case will use a link-time
- dnl test, instead.
- AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#include <pthread.h>
-
-extern "C" void *
-ace_start_func (void *)
-{
- return 0;
-}
-
-int
-main ()
-{
- pthread_t tid = 0;
-
- return pthread_create (&tid, 0, ace_start_func, 0);
-}
- ]])],
- [$1],
- [$2],
- [
- dnl POSIX threads check -- cross-compiled case
-
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[
-#include <pthread.h>
-
-extern "C" void *
-ace_start_func (void *)
-{
- return 0;
-}
- ]],
- [[
- pthread_t tid = 0;
-
- (void) pthread_create (&tid, 0, ace_start_func, 0);
- ]])],
- [$1],
- [$2])
- ])
-])
diff --git a/ACE/m4/tls.m4 b/ACE/m4/tls.m4
deleted file mode 100644
index f1c47e33051..00000000000
--- a/ACE/m4/tls.m4
+++ /dev/null
@@ -1,220 +0,0 @@
-dnl -------------------------------------------------------------------------
-dnl $Id$
-dnl
-dnl tls.m4
-dnl
-dnl ACE M4 include file which contains ACE specific M4 macros
-dnl that determine availablility of SSL/TLS support.
-dnl
-dnl -------------------------------------------------------------------------
-
-dnl Copyright (C) 2003 Ossama Othman
-dnl
-dnl All Rights Reserved
-dnl
-dnl This library is free software; you can redistribute it and/or
-dnl modify it under the current ACE distribution terms.
-dnl
-dnl This library is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
-dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
-dnl TLS/SSL library IO check
-dnl Use this macro to determine if TLS/SSL support is available on the
-dnl current host.
-dnl Usage: ACE_CHECK_TLS
-AC_DEFUN([ACE_CHECK_TLS],
-[
- AC_REQUIRE([AC_PROG_CXX])
- AC_REQUIRE([AC_PROG_CXXCPP])
- AC_LANG([C++])
- AC_REQUIRE([AC_LANG])
-
- ace_TLS_CPPFLAGS=""
- ace_TLS_LDFLAGS=""
-
- AC_ARG_WITH([openssl],
- AS_HELP_STRING([--with-openssl@<:@=DIR@:>@],
- [root directory of openssl installation]),
- [
- ace_with_openssl="${withval}"
- if test "${ace_with_openssl}" != yes; then
- ace_openssl_include="${ace_with_openssl}/include"
- ace_openssl_libdir="${ace_with_openssl}/lib"
- fi
- ])
-
- AC_ARG_WITH([openssl_include],
- AS_HELP_STRING([--with-openssl-include=DIR],
- [specify exact include dir for openssl headers]),
- [ace_openssl_include="$withval"])
-
- AC_ARG_WITH([openssl_libdir],
- AS_HELP_STRING([--with-openssl-libdir=DIR],
- [specify exact include dir for openssl libraries]),
- [ace_openssl_libdir="$withval"])
-
- if test "${ace_openssl_include}"; then
- ace_TLS_CPPFLAGS="-I${ace_openssl_include}"
- fi
-
- if test "${ace_openssl_libdir}"; then
- ace_TLS_LDFLAGS="-L${ace_openssl_libdir}"
- fi
-
- dnl Save the current library and preprocessor flagslist. We do not
- dnl want to add the SSL/TLS-specific ones to the general library link
- dnl and preprocessor flags list since they should only be used when
- dnl building the ACE_SSL library and/or binaries that use the ACE_SSL
- dnl library.
- ace_save_LIBS="$LIBS"
- ace_save_CPPFLAGS="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS $ace_TLS_CPPFLAGS"
- ace_save_LDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS $ace_TLS_LDFLAGS"
-
- dnl ---------------------------------------------------------
-
- dnl Check if OpenSSL requires the Kerberos include directory to be
- dnl added to the header search path.
-
- AC_CACHE_CHECK([for Kerberos include flags needed by OpenSSL],
- [ac_cv_kerberos_dir],
- [
- dnl Try compiling without any Kerberos-specific flags first.
-
- AC_COMPILE_IFELSE([
- AC_LANG_PROGRAM([
-#include <openssl/ssl.h>
- ],
- [
-// ... THIS CODE DOES NOTHING! IT IS JUST USED FOR COMPILE TESTS ...
-
-// ... Perform TCP connection ...
-
-// ... Perform TLS/SSL stuff ...
-CRYPTO_set_locking_callback (0);
-SSLeay_add_ssl_algorithms ();
-SSL_load_error_strings ();
-SSL_METHOD * meth = TLSv1_method ();
-SSL_CTX * ctx = SSL_CTX_new (meth);
-SSL * ssl = SSL_new (ctx);
-int fd = 2000; // Dummy file descriptor value.
-SSL_set_fd (ssl, fd);
-SSL_connect (ssl);
-SSL_shutdown (ssl);
-
-// ...
- ])
- ],
- [
- ac_cv_kerberos_dir=no
- ],
- [
- ace_kerberos_dir=""
- for ace_kerberos in /usr /usr/local; do
- ace_kerberos_dir="${ace_kerberos}/kerberos/include"
- ace_kerberos_CPPFLAGS="-I${ace_kerberos_dir}"
-
- CPPFLAGS="$ace_save_CPPFLAGS $ace_TLS_CPPFLAGS $ace_kerberos_CPPFLAGS"
-
- AC_COMPILE_IFELSE([
- AC_LANG_PROGRAM([
-#include <openssl/ssl.h>
- ],
- [
-// ... THIS CODE DOES NOTHING! IT IS JUST USED FOR COMPILE TESTS ...
-
-// ... Perform TCP connection ...
-
-// ... Perform TLS/SSL stuff ...
-CRYPTO_set_locking_callback (0);
-SSLeay_add_ssl_algorithms ();
-SSL_load_error_strings ();
-SSL_METHOD * meth = TLSv1_method ();
-SSL_CTX * ctx = SSL_CTX_new (meth);
-SSL * ssl = SSL_new (ctx);
-int fd = 2000; // Dummy file descriptor value.
-SSL_set_fd (ssl, fd);
-SSL_connect (ssl);
-SSL_shutdown (ssl);
-
-// ...
- ])
- ],
- [
- ac_cv_kerberos_dir="$ace_kerberos_dir"
- break
- ],
- [
- ac_cv_kerberos_dir=no
- ])
- done
- ])
- ])
-
- AS_IF([test "$ac_cv_kerberos_dir" = no],
- [
- AC_SUBST([ACE_KERBEROS_INCLUDES],[.])
- ],
- [
- ace_TLS_CPPFLAGS="$ace_TLS_CPPFLAGS -I${ac_cv_kerberos_dir}"
- AC_SUBST([ACE_KERBEROS_INCLUDES],[$ac_cv_kerberos_dir])
- ])
-
- dnl ---------------------------------------------------------
-
- dnl Add the TLS/SSL libraries to the library list.
- ace_TLS_LIBS="-lssl -lcrypto"
-
- LIBS="$ace_TLS_LIBS $LIBS"
- LDFLAGS="$ace_TLS_LDFLAGS $LDFLAGS"
-
- AC_CACHE_CHECK([for OpenSSL libraries],
- [ac_cv_openssl_libs],
- [
- AC_LINK_IFELSE([
- AC_LANG_PROGRAM([
-#include <openssl/ssl.h>
- ],
- [
-// ... THIS PROGRAM DOES NOTHING! IT IS JUST USED FOR LINK TESTS ...
-
-// ... Perform TCP connection ...
-
-// ... Perform TLS/SSL stuff ...
-CRYPTO_set_locking_callback (0);
-SSLeay_add_ssl_algorithms ();
-SSL_load_error_strings ();
-SSL_METHOD * meth = TLSv1_method ();
-SSL_CTX * ctx = SSL_CTX_new (meth);
-SSL * ssl = SSL_new (ctx);
-int fd = 2000; // Dummy file descriptor value.
-SSL_set_fd (ssl, fd);
-SSL_connect (ssl);
-SSL_shutdown (ssl);
-
-// ...
- ])
- ],
- [
- ac_cv_openssl_libs=yes
- ],
- [
- ac_cv_openssl_libs=no
- ])
- ])
-
- AS_IF([test $ac_cv_openssl_libs != no],
- [
-AC_SUBST([ACE_TLS_CPPFLAGS],[$ace_TLS_CPPFLAGS])
-AC_SUBST([ACE_TLS_LDFLAGS],[$ace_TLS_LDFLAGS])
-AC_SUBST([ACE_TLS_LIBS],[$ace_TLS_LIBS])
- ],
- [])
-
- dnl Restore the original library list and preprocessor flags.
- LIBS="$ace_save_LIBS"
- CPPFLAGS="$ace_save_CPPFLAGS"
- LDFLAGS="$ace_save_LDFLAGS"
-])
diff --git a/TAO/ChangeLog b/TAO/ChangeLog
index c7fa1b581b3..9c7e144dc06 100644
--- a/TAO/ChangeLog
+++ b/TAO/ChangeLog
@@ -1,3 +1,1214 @@
+Wed Nov 02 13:30:13 UTC 2011 Marijke Hengstmengel <mhengstmengel@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_component/servant_svs.cpp:
+ Put narrow in var, use ACE_NEW with CIAO_FACET
+
+
+Wed Nov 02 08:30:13 UTC 2011 Martin Corino <mcorino@remedy.nl>
+
+ Merged changes from Remedy work branch.
+
+ === start changelog ===
+
+ Tue Nov 1 14:29:07 UTC 2011 Marcel Smit <msmit@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_component/executor_exs.cpp:
+ Fixed link issues on windows.
+
+ Tue Nov 1 12:52:03 UTC 2011 Marcel Smit <msmit@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_component/component_ex_idl.cpp:
+ * TAO_IDL/be/be_visitor_component/component_exh.cpp:
+ * TAO_IDL/be/be_visitor_component/executor_exh.cpp:
+ * TAO_IDL/be/be_visitor_component/executor_exs.cpp:
+ Reverted a few of my last changes. An derived executor
+ is not directly derived from its base anymore (on
+ executor IDL level as well as on implementation level).
+
+ Mon Oct 31 15:14:05 UTC 2011 Marcel Smit <msmit@remedy.nl>
+
+ * TAO_IDL/be/be_type.cpp:
+ Fixed new line.
+
+ Fri Oct 28 11:22:03 UTC 2011 Marcel Smit <msmit@remedy.nl>
+
+ * tests/Bug_3768_Regression/TestCallback.cpp:
+ * tests/Bug_3768_Regression/TestServer.cpp:
+ * tests/Bug_3768_Regression/client.cpp:
+ * tests/Bug_3768_Regression/server.cpp:
+ Fuzz.
+
+ Fri Oct 28 10:35:06 UTC 2011 Martin Corino <mcorino@remedy.nl>
+
+ * tests/Bug_3531b_Regression/server.cpp:
+
+ Fix for Windoze runtime problem with TSS.
+
+ Fri Oct 28 10:22:48 UTC 2011 Marcel Smit <msmit@remedy.nl>
+
+ * TAO_IDL/be/be_array.cpp:
+ * TAO_IDL/be/be_codegen.cpp:
+ * TAO_IDL/be/be_component.cpp:
+ * TAO_IDL/be/be_interface.cpp:
+ * TAO_IDL/be/be_type.cpp:
+ * TAO_IDL/be/be_visitor_array/any_op_cs.cpp:
+ * TAO_IDL/be/be_visitor_array/array_ch.cpp:
+ * TAO_IDL/be/be_visitor_array/array_cs.cpp:
+ * TAO_IDL/be/be_visitor_component/servant_svh.cpp:
+ * TAO_IDL/be/be_visitor_component/servant_svs.cpp:
+ * TAO_IDL/be/be_visitor_connector/facet_ami_exs.cpp:
+ * TAO_IDL/be/be_visitor_exception/any_op_cs.cpp:
+ * TAO_IDL/be/be_visitor_exception/exception_ch.cpp:
+ * TAO_IDL/be/be_visitor_exception/exception_cs.cpp:
+ * TAO_IDL/be/be_visitor_interface/amh_rh_ss.cpp:
+ * TAO_IDL/be/be_visitor_interface/amh_ss.cpp:
+ * TAO_IDL/be/be_visitor_interface/direct_proxy_impl_sh.cpp:
+ * TAO_IDL/be/be_visitor_interface/interface_cs.cpp:
+ * TAO_IDL/be/be_visitor_interface/interface_ih.cpp:
+ * TAO_IDL/be/be_visitor_interface/interface_ss.cpp:
+ * TAO_IDL/be/be_visitor_interface/smart_proxy_cs.cpp:
+ * TAO_IDL/be/be_visitor_operation/amh_rh_ss.cpp:
+ * TAO_IDL/be/be_visitor_operation/amh_sh.cpp:
+ * TAO_IDL/be/be_visitor_operation/amh_ss.cpp:
+ * TAO_IDL/be/be_visitor_operation/ami_handler_reply_stub_operation_cs.cpp:
+ * TAO_IDL/be/be_visitor_operation/direct_proxy_impl_ss.cpp:
+ * TAO_IDL/be/be_visitor_operation/operation_ch.cpp:
+ * TAO_IDL/be/be_visitor_operation/operation_ss.cpp:
+ * TAO_IDL/be/be_visitor_operation/tie_ss.cpp:
+ * TAO_IDL/be/be_visitor_root/root_ch.cpp:
+ * TAO_IDL/be/be_visitor_root/root_sth.cpp:
+ * TAO_IDL/be/be_visitor_sequence/any_op_cs.cpp:
+ * TAO_IDL/be/be_visitor_sequence/sequence_ch.cpp:
+ * TAO_IDL/be/be_visitor_sequence/sequence_cs.cpp:
+ * TAO_IDL/be/be_visitor_structure/any_op_cs.cpp:
+ * TAO_IDL/be/be_visitor_structure/structure_cs.cpp:
+ * TAO_IDL/be/be_visitor_template_export.cpp:
+ * TAO_IDL/be/be_visitor_typedef/typedef_ci.cpp:
+ * TAO_IDL/be/be_visitor_union/any_op_cs.cpp:
+ * TAO_IDL/be/be_visitor_union/discriminant_ci.cpp:
+ * TAO_IDL/be/be_visitor_union_branch/public_ci.cpp:
+ * TAO_IDL/be/be_visitor_valuebox/cdr_op_cs.cpp:
+ * TAO_IDL/be/be_visitor_valuebox/valuebox_ci.cpp:
+ * TAO_IDL/be/be_visitor_valuebox/valuebox_cs.cpp:
+ * TAO_IDL/be/be_visitor_valuetype/cdr_op_cs.cpp:
+ * TAO_IDL/be/be_visitor_valuetype/field_cdr_cs.cpp:
+ * TAO_IDL/be/be_visitor_valuetype/field_cs.cpp:
+ * TAO_IDL/be/be_visitor_valuetype/valuetype.cpp:
+ * TAO_IDL/be/be_visitor_valuetype/valuetype_ci.cpp:
+ * TAO_IDL/be/be_visitor_valuetype/valuetype_cs.cpp:
+ * TAO_IDL/be/be_visitor_valuetype/valuetype_init_cs.cpp:
+ * TAO_IDL/be/be_visitor_valuetype/valuetype_ss.cpp:
+ Reduced whitespaces in generated code.
+
+ * TAO_IDL/be/be_visitor_interface/tie_ss.cpp:
+ Removed tabs from generated code.
+
+
+ Fri Oct 28 09:23:52 UTC 2011 Martin Corino <mcorino@remedy.nl>
+
+ * tests/Bug_3531b_Regression/server.cpp:
+
+ Fix for Windoze compile problem.
+
+ Fri Oct 28 07:36:43 UTC 2011 Marcel Smit <msmit@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_component/executor_exh.cpp:
+ * TAO_IDL/be/be_visitor_component/executor_exs.cpp:
+ * TAO_IDL/be/be_visitor_component/executor_private_exh.cpp:
+ * TAO_IDL/be/be_visitor_component/facet_exh.cpp:
+ * TAO_IDL/be/be_visitor_component/facet_exs.cpp:
+ Fixed compile issues.
+
+ Thu Oct 27 08:05:28 UTC 2011 Marcel Smit <msmit@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_component/executor_exh.cpp:
+ * TAO_IDL/be/be_visitor_component/executor_exs.cpp:
+ Removed the overrides of _is_a, marshal and _repository_id since
+ these methods are not needed anymore.
+
+ Wed Oct 26 13:38:02 UTC 2011 Marcel Smit <msmit@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_component/component_ex_idl.cpp:
+ * TAO_IDL/be/be_visitor_component/component_exh.cpp:
+ * TAO_IDL/be/be_visitor_component/component_exs.cpp:
+ * TAO_IDL/be/be_visitor_component/executor_exh.cpp:
+ * TAO_IDL/be/be_visitor_component/executor_exs.cpp:
+ * TAO_IDL/be/be_visitor_component/executor_exs_attr_init.cpp:
+ * TAO_IDL/be/be_visitor_component/executor_private_exh.cpp:
+ * TAO_IDL/be/be_visitor_component/facet_exh.cpp:
+ * TAO_IDL/be/be_visitor_component/facet_exs.cpp:
+ Fixed issues regarding derived components. Derived component
+ were not derived from the base implementation. Instead of deriving
+ from the base implementation, a whole new base executor was
+ generated and still wasn't derived from this. Now there's
+ one base implementation where the derived executor is derived from.
+
+ * TAO_IDL/be/be_visitor_component/executor_ex_idl.cpp:
+ Fixed compile issues when a derived interface supports
+ another interface.
+
+ Mon Oct 24 11:50:33 UTC 2011 Martin Corino <mcorino@remedy.nl>
+
+ * tao/Connection_Handler.cpp:
+ * tao/Leader_Follower.h:
+ * tao/Leader_Follower.inl:
+ * tao/Leader_Follower.cpp:
+ * tao/Wait_On_LF_No_Upcall.h:
+ * tao/Wait_On_LF_No_Upcall.cpp:
+ * tao/Wait_On_Leader_Follower.h:
+ * tao/Wait_Strategy.h:
+ * tao/Wait_Strategy.cpp:
+
+ Implemented a solution for two known problems:
+ a) deadlocking possibility because of upcall handling
+ in client leader threads without abdicating
+ leadership
+ b) inefficient handling of nested upcalls in
+ client leader threads in case MT_NOUPCALL
+ strategy
+ This solution implements leadership abdication
+ (as also proposed by Russell Mora in Bugzilla #3531
+ and David Kinder in Bugzilla #3768) when a client
+ leader thread receives an upcall (triggering a
+ call to Leader_Follower::set_upcall_thread) so
+ any waiting (regular) leader thread could now
+ take over. Futhermore leader abdication for client
+ leader threads is also implemented in case an event
+ causes a client leader thread to wake up and it detects
+ leader threads waiting which are capable to take over
+ leadership.
+ With this out of the way the solution for MT_NOUPCALL
+ could now be optimized with a 'handle deferring'
+ mechanism which allows a client leader thread to
+ temporarily defer an upcall until the client leader
+ thread has abdicated and leadership switches (which
+ should happen almost immediately after the client
+ leader thread deferred the upcall handle(r)).
+
+ * tao/Resume_Handle_Deferred.h:
+ * tao/Resume_Handle_Deferred.cpp:
+
+ Removed these files. Part of previous, non-optimal,
+ MT_NOUPCALL solution.
+
+ * tao/tao.mpc:
+
+ Removed Resume_Handle_Deferred.{h,cpp}
+
+ * tests/Bug_3531b_Regression/Bug_3531b_Regression.mpc:
+ * tests/Bug_3531b_Regression/server.cpp:
+
+ Fixed compile problems due to TAO version
+ incompatibilities and removed dummy_label
+ restriction.
+
+ * tests/Bug_3768_Regression:
+ * tests/Bug_3768_Regression/Bug_3768_Test.mpc:
+ * tests/Bug_3768_Regression/Test.idl:
+ * tests/Bug_3768_Regression/TestCallback.h:
+ * tests/Bug_3768_Regression/TestCallback.cpp:
+ * tests/Bug_3768_Regression/TestServer.h:
+ * tests/Bug_3768_Regression/TestServer.cpp:
+ * tests/Bug_3768_Regression/client.cpp:
+ * tests/Bug_3768_Regression/run_test.pl:
+ * tests/Bug_3768_Regression/server.cpp:
+
+ Added new test for Bugzilla #3768.
+
+ * bin/tao_orb_tests.lst
+
+ Added Bug_3531_Regression, Bug_3531b_Regression and
+ Bug_3768_Regression to regular test runs.
+
+ === end changelog ===
+
+Tue Nov 01 14:34:13 UTC 2011 Marijke Hengstmengel <mhengstmengel@remedy.nl>
+ * On_Demand_Act_Direct_Coll/Collocated_Test.cpp:
+ * On_Demand_Act_Direct_Coll/test_i.cpp:
+ * On_Demand_Act_Direct_Coll/test_i.h:
+ * On_Demand_Act_Direct_Coll/Client_Task.cpp:
+ * On_Demand_Act_Direct_Coll/test.idl:
+ Clean up test.
+
+
+Tue Nov 01 10:54:13 UTC 2011 Martin Corino <mcorino@remedy.nl>
+
+ Merged changes from Remedy SA work branch.
+
+ === start changelog ===
+
+ Mon Oct 31 13:14:04 UTC 2011 Marijke Hengstmengel <mhengstmengel@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_component/servant_svs.cpp:
+ Add safe_servant_base in CIAO consumers servant
+
+
+ Fri Oct 28 11:37:40 UTC 2011 Marijke Hengstmengel <mhengstmengel@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_component/servant_svs.cpp:
+ Changes for removing activators for CIAO consumers
+
+ Wed Oct 26 07:18:40 UTC 2011 Marijke Hengstmengel <mhengstmengel@remedy.nl>
+
+ * TAO_IDL/be/be_codegen.cpp:
+ Remove include files for ciao servant- and port_activator.
+
+ * TAO_IDL/be/be_visitor_component/servant_svs.cpp:
+ Changes for removing activators in CIAO
+
+ === end changelog ===
+
+Thu Oct 27 16:16:09 UTC 2011 Phil Mesnier <mesnier_p@ociweb.com>
+
+ * utils/logWalker/HostProcess.h:
+ * utils/logWalker/HostProcess.cpp:
+ * utils/logWalker/Log.cpp:
+
+ Clean up treatment of connection closure and reuse of handles.
+
+Thu Oct 27 12:13:40 UTC 2011 Simon Massey <sma at prismtech dot com>
+
+ * tao/PI_Server/PI_Server_include.pidl:
+ Was duplicating the tao/PortableServer/PortableServer_include.pidl
+ #define guard name.
+
+Tue Oct 25 08:10:00 UTC 2011 Marijke Hengstmengel <mhengstmengel@remedy.nl>
+
+ * tests/POA/On_Demand_Act_Direct_Coll/Client_Task.cpp:
+ Solved error in destroying the orb.
+
+Fri Oct 21 14:44:28 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * tao/IORManipulation/IORManipulation.mpc:
+ * tao/IORTable/IORTable.mpc:
+ * tao/ZIOP/ZIOP.mpc:
+ Generate export files as part of the build
+
+ * tao/IORManipulation/ior_manip_export.h:
+ * tao/IORTable/iortable_export.h:
+ * tao/ZIOP/ziop_export.h:
+ Removed these files.
+
+ * tao/ZIOP/ZIOP.h:
+ Doxygen fix
+
+Thu Oct 20 17:34:00 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * tests/POA/On_Demand_Act_Direct_Coll/On_Demand_Act_D_Coll.mpc:
+ Don't build this test with minimum corba and CORBA/e
+
+Thu Oct 20 12:50:09 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * TAO_IDL/be_include/be_interface.h:
+ Fixed gcc warning
+
+Tue Oct 20 09:30:13 UTC 2011 Martin Corino <mcorino@remedy.nl>
+
+ Merged changes from Remedy work branch.
+
+ === start changelog ===
+
+ Thu Oct 20 08:42:33 UTC 2011 Marijke Hengstmengel <hengstmengel_m@remedy.nl>
+
+ * On_Demand_Act_Direct_Coll:
+ * On_Demand_Act_Direct_Coll/Collocated_Test.cpp:
+ * On_Demand_Act_Direct_Coll/Servant_Activator.cpp:
+ * On_Demand_Act_Direct_Coll/test_i.cpp:
+ * On_Demand_Act_Direct_Coll/Server_Task.h:
+ * On_Demand_Act_Direct_Coll/run_test.pl:
+ * On_Demand_Act_Direct_Coll/test_i.h:
+ * On_Demand_Act_Direct_Coll/Client_Task.cpp:
+ * On_Demand_Act_Direct_Coll/Server_Task.cpp:
+ * On_Demand_Act_Direct_Coll/Servant_Activator.h:
+ * On_Demand_Act_Direct_Coll/Client_Task.h:
+ * On_Demand_Act_Direct_Coll/On_Demand_Act_D_Coll.mpc:
+ * On_Demand_Act_Direct_Coll/test.idl:
+ Test with Servant Activator and thru_poa- and direct collocation.
+
+ * bin/tao_orb_tests.lst
+ Added On_Demand_Act_Direct_Coll test.
+
+
+ Wed Oct 19 14:15:57 UTC 2011 Marcel Smit <msmit@remedy.nl>
+
+ * docs/tutorials/Quoter/RTCORBA/Broker.cpp:
+ * docs/tutorials/Quoter/RTCORBA/docs/distributor.html:
+ Fixed typos.
+
+ * orbsvcs/orbsvcs/CosEvent/CEC_TypedProxyPushConsumer.h:
+ Fixed typo.
+
+ * orbsvcs/orbsvcs/CosEvent/CEC_TypedProxyPushConsumer.cpp:
+ ++x instead of x++;
+
+ Tue Oct 18 13:47:54 UTC 2011 Marcel Smit <msmit@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_component/context_svh.cpp:
+ * TAO_IDL/be/be_visitor_component/context_svs.cpp:
+ Reverted last changes. Need a more robust implementation to
+ fix re-entrancy
+
+ Tue Oct 18 11:35:58 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_exception/any_op_cs.cpp:
+ * TAO_IDL/be/be_visitor_interface/any_op_cs.cpp:
+ * TAO_IDL/be/be_visitor_sequence/any_op_cs.cpp:
+ * TAO_IDL/be/be_visitor_structure/any_op_cs.cpp:
+ Layout changes to the generated code
+
+ Tue Oct 18 10:51:21 UTC 2011 Marcel Smit <msmit@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_component/context_svh.cpp:
+ * TAO_IDL/be/be_visitor_component/context_svs.cpp:
+ Using recursive mutexes instead of normal mutexes.
+
+ Tue Oct 18 10:39:23 UTC 2011 Marcel Smit <msmit@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_component/context_svs.cpp:
+ Fixed a minor indentation issue.
+
+ Tue Oct 18 10:03:32 UTC 2011 Marcel Smit <msmit@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_component/servant_svs.cpp:
+ Using the container_ variable in a thread safe way.
+
+ Tue Oct 18 07:01:33 UTC 2011 Marijke Hengstmengel <hengstmengel_m@remedy.nl>
+ * tests/Collocated_DerivedIF/Collocated_DerivedIF.mpc:
+ Changes for duplicate project names.
+
+ Mon Oct 17 13:08:33 UTC 2011 Marijke Hengstmengel <hengstmengel_m@remedy.nl>
+ * tests/Collocated_DerivedIF:
+ * tests/Collocated_DerivedIF/Client_Task.h:
+ * tests/Collocated_DerivedIF/Client_Task.cpp:
+ * tests/Collocated_DerivedIF/Collocated_DerivedIF.mpc:
+ * tests/Collocated_DerivedIF/Collocated_Test.cpp:
+ * tests/Collocated_DerivedIF/Hello.h:
+ * tests/Collocated_DerivedIF/Hello.cpp:
+ * tests/Collocated_DerivedIF/Server_Task.h:
+ * tests/Collocated_DerivedIF/Server_Task.cpp:
+ * tests/Collocated_DerivedIF/Test.idl:
+ * tests/Collocated_DerivedIFl/run_test.pl:
+ * tests/Collocated_DerivedIFl/README:
+ Test for -ORBCollocationStrategy direct and interface inheritance
+
+ * tests/Collocated_Best/README:
+ Add ID
+
+ Mon Oct 17 12:33:33 UTC 2011 Marijke Hengstmengel <hengstmengel_m@remedy.nl>
+ * docs/Options.html
+ Added new define TAO_DEFAULT_COLLOCATION_STRATEGY .
+
+ Mon Oct 17 11:41:33 UTC 2011 Marijke Hengstmengel <hengstmengel_m@remedy.nl>
+ * docs/Options.html
+ Add new ORBCollocationStrategy best .
+
+ Thu Oct 13 12:57:25 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * TAO_IDL/be_include/be_valuetype.h:
+ * TAO_IDL/be/be_valuetype.cpp:
+ Removed gen_skel_helper from here, not used at all
+
+ * orbsvcs/tests/Notify/lib/Options_Parser.cpp:
+ Fixed compile error with gcc 4.6
+
+ Thu Oct 13 12:14:00 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * TAO_IDL/be/be_interface.cpp:
+ * TAO_IDL/be/be_visitor_interface/amh_si.cpp:
+ static_cast seems to be required, not sure why, reverting this part
+ to get our branch build green again
+
+ Thu Oct 13 11:15:06 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * tao/AnyTypeCode/Any_Impl.cpp:
+ Layout changes
+
+ * tao/LocalObject.cpp:
+ * tao/Object.cpp:
+ Log an error before throwing a NO_IMPLEMENT system exception
+
+ Thu Oct 13 07:15:34 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * TAO_IDL/be/be_interface.cpp:
+ * TAO_IDL/be/be_visitor_interface/amh_si.cpp:
+ Further reduction of code being generated in case of interface
+ inheritance
+
+ Thu Oct 13 06:46:25 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * TAO_IDL/be/be_interface.cpp:
+ Fixed problem with num_args that still was generated for arguments
+
+ Wed Oct 12 14:14:32 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * TAO_IDL/be/be_interface.cpp:
+ * TAO_IDL/be/be_visitor_interface/interface_si.cpp:
+ Changed indentation and removed not needed static cast in the
+ generated code
+
+ Wed Oct 12 12:06:33 UTC 2011 Marijke Hengstmengel <hengstmengel_m@remedy.nl>
+ * tests/Collocated_NoColl:
+ * tests/Collocated_NoColl/Client_Task.h:
+ * tests/Collocated_NoColl/Client_Task.cpp:
+ * tests/Collocated_NoColl/Collocated_NoColl.mpc:
+ * tests/Collocated_NoColl/Collocated_Test.cpp:
+ * tests/Collocated_NoColl/Hello.h:
+ * tests/Collocated_NoColl/Hello.cpp:
+ * tests/Collocated_NoColl/Server_Task.h:
+ * tests/Collocated_NoColl/Server_Task.cpp:
+ * tests/Collocated_NoColl/Test.idl:
+ * tests/Collocated_NoColl/run_test.pl:
+ Test for -ORBCollocation NO
+
+
+ Wed Oct 12 12:02:04 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * tao/Collocation_Strategy.h:
+ * tao/Invocation_Adapter.cpp:
+ Print the collocation strategy that we have determined
+
+ * tests/Hello/run_test.pl:
+ Added -cdebug that enables ORBDebugLevel 10 for the client
+
+ Wed Oct 12 10:09:25 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_operation/direct_proxy_impl_ss.cpp:
+ * TAO_IDL/be/be_visitor_operation/proxy_impl_xh.cpp:
+ * tao/Abstract_Servant_Base.h:
+ * tao/PortableServer/Direct_Collocation_Upcall_Wrapper.cpp:
+ * tao/PortableServer/Operation_Table.h:
+ Removed the num_args argument for the direct collocation skeleton
+ functions because it was not used at all
+
+ Wed Oct 12 09:55:38 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_interface/amh_ss.cpp:
+ * TAO_IDL/be/be_visitor_interface/interface_cs.cpp:
+ * tao/Object_T.h:
+ * tao/Object_T.cpp:
+ * tao/PolicyC.cpp:
+ * tao/Valuetype/AbstractBase_T.h:
+ * tao/Valuetype/AbstractBase_T.cpp:
+ unchecked_narrow method was available with and without repository_id
+ argument but that wasn't used at all. merged both methods into one
+ and updated tao_idl code generation to not generate the repository_id
+ anymore
+
+ Wed Oct 12 09:01:19 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_interface/amh_ss.cpp:
+ * TAO_IDL/be/be_visitor_interface/cdr_op_cs.cpp:
+ * TAO_IDL/be/be_visitor_interface/interface_cs.cpp:
+ * TAO_IDL/be/be_visitor_interface/interface_ss.cpp:
+ * tao/Object_T.h:
+ * tao/Object_T.cpp:
+ * tao/PolicyC.cpp:
+ * tao/PortableServer/PolicyS.cpp:
+ * tao/Valuetype/AbstractBase_T.h:
+ * tao/Valuetype/AbstractBase_T.cpp:
+ Removed the collocation opportunity from the narrow calls, the
+ boolean collocated only means whether the servant is collocated or
+ not and shouldn't include the fact whether we have a collocation
+ opportunity or not
+
+ Tue Oct 11 17:38:06 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * tests/Collocated_Best/Collocated_Best_Direct/Client_Task.cpp:
+ * tests/Collocated_Best/Collocated_Best_NoColl/Client_Task.cpp:
+ * tests/Collocated_Best/Collocated_Best_ThuP/Client_Task.cpp:
+ Also check the string that returned
+
+ Tue Oct 11 10:53:17 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * tao/Object_T.cpp:
+ Don't use collocation opportunity, just determine whether the
+ object is collocated or not. If this doesn't break any tests, we
+ need to do some more cleanup here
+
+ Tue Oct 11 10:41:02 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * tao/CORBANAME_Parser.cpp:
+ * tao/Remote_Object_Proxy_Broker.cpp:
+ Enable through poa collocation by default
+
+ Tue Oct 11 07:17:47 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_interface/interface_ss.cpp:
+ Layout changes and just always generate the orb optimize flags
+
+ Mon Oct 10 17:43:50 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * tao/IIOP_Connector.cpp:
+ * tao/Invocation_Adapter.h:
+ * tao/Invocation_Adapter.cpp:
+ * tao/ORB_Core.h:
+ * tao/ORB_Core.cpp:
+ Moved collocation_strategy from the orb core to the invocation adapter
+
+ * tests/Collocated_ThruP_Sp/Collocated_Test.cpp:
+ * tests/Collocated_ThruP_Sp/README:
+ * tests/Collocated_ThruP_Sp/Server_Task.cpp:
+ * tests/Collocated_ThruP_Sp/run_test.pl:
+ * tests/Collocated_ThruP_Sp_Gd/README:
+ * tests/Collocated_ThruP_Sp_Gd/run_test.pl:
+ Add -debug to the script, layout changes, missing Id
+
+ Fri Oct 7 10:54:09 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * tao/ORB_Core.cpp:
+ Tweaked collocation strategy a little bit more, for direct we need
+ a servant, not for poa. If we are not collocated, we just go remote and
+ not give an exception
+
+ Fri Oct 7 09:17:36 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_interface/interface_ss.cpp:
+ Layout change to generated code
+
+ * tao/Invocation_Adapter.cpp:
+ Removed the check that servant != 0 before being able to invoke
+ collocated, collocation opportunities test shows a case where this
+ happens
+
+ * tao/ORB_Core.cpp:
+ Added logging before we throw an exception related to collocation
+ mis configuration. If we are collocated with best opportunity without
+ any opportunity we default to remote instead of having an exception.
+ Through poa seems possible without a servant pointer
+
+ Thu Oct 6 09:34:57 UTC 2011 Marijke Hengstmengel <mhengstmengel@remedy.nl>
+
+ * tao/DynamicInterface/DII_Invocation_Adapter.cpp:
+ Set collocation_opportunity to TAO_CO_THRU_POA_STRATEGY instead of 0.
+
+ Thu Oct 6 08:56:57 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * orbsvcs/ImplRepo_Service/ImplRepo_Service.mpc:
+ * orbsvcs/examples/RtEC/IIOPGateway/RtEC_IIOPGateway.mpc:
+ * tests/Oneway_Buffering/Oneway_Buffering.mpc:
+ * tests/Policies/Policies.mpc:
+ requires for corba_messaging is already pulled in through the
+ base projects
+
+ Wed Oct 5 18:49:30 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * TAO_IDL/be/be_interface.cpp:
+ * TAO_IDL/be/be_visitor_interface/interface_ch.cpp:
+ * TAO_IDL/be/be_visitor_root/root_ch.cpp:
+ * TAO_IDL/be_include/be_global.h:
+ * TAO_IDL/be_include/be_interface.h:
+ * TAO_IDL/be_include/be_visitor_root/root_ch.h:
+ Even more cleanup of old stuff
+
+ Wed Oct 5 18:42:43 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * TAO_IDL/be/be_home.cpp:
+ * TAO_IDL/be/be_interface.cpp:
+ * TAO_IDL/be/be_visitor_interface/interface_ch.cpp:
+ * TAO_IDL/be_include/be_interface.h:
+ * TAO_IDL/be/be_visitor_operation/base_proxy_impl_ch.cpp:
+ * TAO_IDL/be/be_visitor_operation/remote_proxy_impl_cs.cpp:
+ More cleanup
+
+ * TAO_IDL/be_include/be_visitor_operation/base_proxy_impl_ch.h:
+ * TAO_IDL/be_include/be_visitor_operation/remote_proxy_impl_cs.h:
+ Removed these files.
+
+ Wed Oct 5 18:34:21 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * TAO_IDL/be/be_home.cpp:
+ * TAO_IDL/be/be_interface.cpp:
+ * TAO_IDL/be/be_visitor_interface/interface_ch.cpp:
+ * TAO_IDL/be_include/be_interface.h:
+ Cleanup of very old stuff
+
+ * TAO_IDL/be/be_visitor_operation/ami_cs.cpp:
+ Fixed cpb
+
+ * tao/Valuetype/AbstractBase_T.h:
+ * tao/Valuetype/AbstractBase_T.cpp:
+ Updated for changes below
+
+ * tests/CSD_Collocation/svc.conf.csd:
+ Removed deprecated arguments
+
+ Wed Oct 5 13:01:20 UTC 2011 Marijke Hengstmengel <hengstmengel_m@remedy.nl>
+
+ * tests/Collocated_Best/README
+ * tests/Collocated_ThruP_Sp/README
+ * tests/Collocated_ThruP_Sp_Gd/README
+ * tests/Bug_2241_Regression/README
+ Add README's
+
+ * bin/tao_orb_tests.lst
+ Added Collocated_ThruP_Sp_Gd test.
+
+ Wed Oct 5 12:41:20 UTC 2011 Marijke Hengstmengel <hengstmengel_m@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_interface/amh_ss.cpp:
+ * TAO_IDL/be/be_visitor_interface/cdr_op_cs.cpp:
+ * TAO_IDL/be/be_visitor_interface/interface_cs.cpp:
+ * TAO_IDL/be/be_visitor_interface/interface_ss.cpp:
+ * TAO_IDL/be/be_visitor_operation/operation.cpp:
+ * tao/PolicyC.cpp:
+ * tao/Collocation_Strategy.h:
+ * tao/PortableServer/PolicyS.cpp:
+ Change define TAO_CO_DIRECT_POA,remove POA
+
+ * tao/DynamicInterface/DII_Invocation_Adapter.h:
+ * tao/DynamicInterface/DII_Invocation_Adapter.cpp:
+ * tao/Messaging/Asynch_Invocation_Adapter.h:
+ * tao/Messaging/Asynch_Invocation_Adapter.cpp:
+ * tao/Valuetype/AbstractBase_Invocation_Adapter.h:
+ * tao/Valuetype/AbstractBase_Invocation_Adapter.cpp:
+ Change proxybroker for collocation opertunities
+
+ * tao/ORB_Core.cpp:
+ * tao/Invocation_Adapter.cpp:
+ Extended collocation_strategy with opertunities
+ Handling of BEST strategy and checking other strategies.
+
+ * tests/Collocated_Best/Collocated_Best_Direct/run_test.pl:
+
+
+
+ Wed Oct 5 08:35:20 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * TAO_IDL/be/be_codegen.cpp:
+ * TAO_IDL/be/be_component.cpp:
+ * TAO_IDL/be/be_interface.cpp:
+ * TAO_IDL/be/be_visitor_interface.cpp:
+ * TAO_IDL/be/be_visitor_interface/amh_ss.cpp:
+ * TAO_IDL/be/be_visitor_interface/cdr_op_cs.cpp:
+ * TAO_IDL/be/be_visitor_interface/interface_ch.cpp:
+ * TAO_IDL/be/be_visitor_interface/interface_ci.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_operation/ami_cs.cpp:
+ * TAO_IDL/be/be_visitor_operation/direct_proxy_impl_ss.cpp:
+ * TAO_IDL/be/be_visitor_operation/operation.cpp:
+ * TAO_IDL/be/be_visitor_root/root_ch.cpp:
+ * TAO_IDL/be/be_visitor_valuetype/valuetype_sh.cpp:
+ * TAO_IDL/be_include/be_component.h:
+ * TAO_IDL/be_include/be_interface.h:
+ * TAO_IDL/be_include/be_visitor_interface.h:
+ * tao/Abstract_Servant_Base.h:
+ * tao/Collocated_Invocation.h:
+ * tao/Collocated_Invocation.cpp:
+ * tao/Collocation_Strategy.h:
+ * tao/Invocation_Adapter.h:
+ * tao/Invocation_Adapter.inl:
+ * tao/Invocation_Adapter.cpp:
+ * tao/ORB_Core.h:
+ * tao/ORB_Core.cpp:
+ * tao/Object.h:
+ * tao/Object.cpp:
+ * tao/Object_T.h:
+ * tao/Object_T.cpp:
+ * tao/PolicyC.h:
+ * tao/PolicyC.inl:
+ * tao/PolicyC.cpp:
+ * tao/PortableServer/Direct_Collocation_Upcall_Wrapper.h:
+ * tao/PortableServer/PolicyS.h:
+ * tao/PortableServer/PolicyS.cpp:
+ * tao/PortableServer/Servant_Base.h:
+ * tao/PortableServer/Servant_Base.cpp:
+ * tao/tao.mpc:
+ Rough reimplementatin of handling of collocated call. A pre condition
+ for using collocation is having a servant pointer. The core of TAO
+ also couldn't detect whether through poa collocation is requested
+ without having -Gp being enabled. The collocated proxy broker (cpb)
+ was only used for direct collocation, but didn't contain any interface
+ specific code. TAO_IDL now generated a collocation opportunity to
+ indicate which support it did generate, when the core than has
+ a servant pointer it can determine which opportunities it has an
+ what is requested.
+
+ As side effect we get smaller generated code, less complexity, and
+ better performance
+
+ This has to be finished but committing it right now.
+
+ * TAO_IDL/be/be_visitor_interface/strategized_proxy_broker_sh.cpp:
+ * TAO_IDL/be/be_visitor_interface/strategized_proxy_broker_ss.cpp:
+ * TAO_IDL/be_include/be_visitor_interface/strategized_proxy_broker_sh.h:
+ * TAO_IDL/be_include/be_visitor_interface/strategized_proxy_broker_ss.h:
+ * tao/Collocation_Proxy_Broker.h:
+ * tao/Collocation_Proxy_Broker.cpp:
+ Removed these files.
+
+ Wed Oct 5 07:15:46 UTC 2011 Marijke Hengstmengel <hengstmengel_m@remedy.nl>
+
+ * tao/PortableServer/Collocated_Object_Proxy_Broker.cpp:
+ Add prefix TAO_COLLOCATION_ to Collocated strategy Thru_POA
+
+ Tue Oct 4 16:36:46 UTC 2011 Marijke Hengstmengel <hengstmengel_m@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_interface/interface_ss.cpp:
+ Clean up debug text
+
+ * tao/Invocation_Adapter.cpp:
+ * tao/ORB_Core.h:
+ * tao/ORB_Core.cpp:
+ Change Exception for collocated errors.
+ Add prefix TAO_COLLOCATION_ to Collocated strategies DIrect, Best and Thru_POA
+ Add TAO_DEFAULT_COLLOCATION_STRATEGY
+
+ * tao/orbconf.h:
+ Add TAO_DEFAULT_COLLOCATION_STRATEGY
+
+ * tests/Bug_2241_Regression/run_test.pl:
+ * tests/Collocated_Best/Collocated_Best_Direct/Collocated_Best_Direct.mpc:
+ * tests/Collocated_Best/Collocated_Best_NoColl/Hello.cpp:
+ * tests/Collocated_Best/Collocated_Best_ThuP/Collocated_Best_ThruP.mpc:
+
+ * tests/Collocated_ThruP_Sp_Gd:
+ * tests/Collocated_ThruP_Sp_Gd/Client_Task.h:
+ * tests/Collocated_ThruP_Sp_Gd/Client_Task.cpp:
+ * tests/Collocated_ThruP_Sp_Gd/Collocated_Test.cpp:
+ * tests/Collocated_ThruP_Sp_Gd/Collocated_ThruP_Sp_Gd.mpc:
+ * tests/Collocated_ThruP_Sp_Gd/Hello.h:
+ * tests/Collocated_ThruP_Sp_Gd/Hello.cpp:
+ * tests/Collocated_ThruP_Sp_Gd/Server_Task.h:
+ * tests/Collocated_ThruP_Sp_Gd/Server_Task.cpp:
+ * tests/Collocated_ThruP_Sp_Gd/Test.idl:
+ * tests/Collocated_ThruP_Sp_Gd/run_test.pl:
+ New test for combination Sp and Gd
+
+ Mon Oct 3 15:33:35 UTC 2011 Marijke Hengstmengel <hengstmengel_m@remedy.nl>
+
+ * TAO_IDL/be/be_visitor_interface/interface_ss.cpp:
+ Change dead to 0 for Collocation_Proxy_Broker
+
+ * tao/Collocation_Strategy.h:
+ * tao/Invocation_Adapter.cpp:
+ * tao/ORB_Core.h:
+ * tao/ORB_Core.cpp:
+ Add exceptions for situations if not used -Gp or used -Sp idl flags and
+ ORBCollocationStrategies Direct and Thru_Poa. Add strategie BEST.
+ To do: add prefix COLLOCATION_.
+
+ * tests/Bug_2241_Regression/Client_Task.cpp:
+ * tests/Bug_2241_Regression/Hello.cpp:
+ * tests/Bug_2241_Regression/run_test.pl:
+ Catch expected exceptions.
+
+ * tests/Collocated_Best:
+ * tests/Collocated_Best/Collocated_Best_Direct:
+ * tests/Collocated_Best/Collocated_Best_Direct/Client_Task.h:
+ * tests/Collocated_Best/Collocated_Best_Direct/Client_Task.cpp:
+ * tests/Collocated_Best/Collocated_Best_Direct/Collocated_Best_Direct.mpc:
+ * tests/Collocated_Best/Collocated_Best_Direct/Collocated_Test.cpp:
+ * tests/Collocated_Best/Collocated_Best_Direct/Hello.h:
+ * tests/Collocated_Best/Collocated_Best_Direct/Hello.cpp:
+ * tests/Collocated_Best/Collocated_Best_Direct/Server_Task.h:
+ * tests/Collocated_Best/Collocated_Best_Direct/Server_Task.cpp:
+ * tests/Collocated_Best/Collocated_Best_Direct/Test.idl:
+ * tests/Collocated_Best/Collocated_Best_Direct/run_test.pl:
+
+ * tests/Collocated_Best/Collocated_Best_NoColl:
+
+ * tests/Collocated_Best/Collocated_Best_NoColl/Client_Task.h:
+ * tests/Collocated_Best/Collocated_Best_NoColl/Client_Task.cpp:
+ * tests/Collocated_Best/Collocated_Best_NoColl/Collocated_Best_NoColl.mpc:
+ * tests/Collocated_Best/Collocated_Best_NoColl/Collocated_Test.cpp:
+ * tests/Collocated_Best/Collocated_Best_NoColl/Hello.h:
+ * tests/Collocated_Best/Collocated_Best_NoColl/Hello.cpp:
+ * tests/Collocated_Best/Collocated_Best_NoColl/Server_Task.h:
+ * tests/Collocated_Best/Collocated_Best_NoColl/Server_Task.cpp:
+ * tests/Collocated_Best/Collocated_Best_NoColl/Test.idl:
+ * tests/Collocated_Best/Collocated_Best_NoColl/run_test.pl:
+
+ * tests/Collocated_Best/Collocated_Best_ThuP:
+
+ * tests/Collocated_Best/Collocated_Best_ThuP/Client_Task.h:
+ * tests/Collocated_Best/Collocated_Best_ThuP/Client_Task.cpp:
+ * tests/Collocated_Best/Collocated_Best_ThuP/Collocated_Best_ThruP.mpc:
+ * tests/Collocated_Best/Collocated_Best_ThuP/Collocated_Test.cpp:
+ * tests/Collocated_Best/Collocated_Best_ThuP/Hello.h:
+ * tests/Collocated_Best/Collocated_Best_ThuP/Hello.cpp:
+ * tests/Collocated_Best/Collocated_Best_ThuP/Server_Task.h:
+ * tests/Collocated_Best/Collocated_Best_ThuP/Server_Task.cpp:
+ * tests/Collocated_Best/Collocated_Best_ThuP/Test.idl:
+ * tests/Collocated_Best/Collocated_Best_ThuP/run_test.pl:
+
+ * tests/Collocated_ThruP_Sp:
+
+ * tests/Collocated_ThruP_Sp/Client_Task.h:
+ * tests/Collocated_ThruP_Sp/Client_Task.cpp:
+ * tests/Collocated_ThruP_Sp/Collocated_Test.cpp:
+ * tests/Collocated_ThruP_Sp/Collocated_ThruP_Sp.mpc:
+ * tests/Collocated_ThruP_Sp/Hello.h:
+ * tests/Collocated_ThruP_Sp/Hello.cpp:
+ * tests/Collocated_ThruP_Sp/Server_Task.h:
+ * tests/Collocated_ThruP_Sp/Server_Task.cpp:
+ * tests/Collocated_ThruP_Sp/Test.idl:
+ * tests/Collocated_ThruP_Sp/run_test.pl:
+ tests for COLLOCATION_DIRECT. To do: add readme
+
+ === end changelog ===
+
+Mon Oct 10 08:48:51 CEST 2011 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * TAO version 2.0.5 released.
+
+Fri Oct 7 10:45:41 UTC 2011 Marcel Smit <msmit@remedy.nl>
+
+ * docs/tutorials/Quoter/Event_Service/stock_list.txt:
+ * docs/tutorials/Quoter/Event_Service/stock_list1.txt:
+ * docs/tutorials/Quoter/Event_Service/stock_list2.txt:
+
+ * docs/tutorials/Quoter/Simple/ImprovedServer/stock_list.txt:
+
+ * orbsvcs/examples/Notify/MC/TkMonitor/modules/GeometryStore.pm:
+ * orbsvcs/examples/Notify/MC/TkMonitor/modules/MonitorControl.pm:
+
+ * performance-tests/Protocols/set_lksctp_params.sh:
+ * performance-tests/Protocols/set_sctp_params.sh:
+ * performance-tests/Protocols/show_lksctp_params.sh:
+ * performance-tests/Protocols/show_sctp_params.sh:
+ Fuzz
+
+Fri Oct 7 09:45:58 UTC 2011 Marcel Smit <msmit@remedy.nl>
+
+ * docs/PP_Memory_Management.txt:
+ * orbsvcs/tests/FT_App/replica.cmd:
+ * orbsvcs/tests/InterfaceRepo/Union_Forward_Test/README.txt:
+ * orbsvcs/tests/Log/README:
+ * orbsvcs/tests/Time/README:
+ Fuzz.
+
+Fri Oct 7 09:12:23 UTC 2011 Marcel Smit <msmit@remedy.nl>
+
+ * DevGuideExamples/AMH/README:
+ * DevGuideExamples/AMH_AMI/README:
+ * DevGuideExamples/BiDirectionalGIOP/README:
+ * DevGuideExamples/GettingStarted/README:
+ * DevGuideExamples/Messaging/AMIcallback/README:
+ * DevGuideExamples/Messaging/RelativeRoundtripTimeout/README:
+ * DevGuideExamples/Multithreading/GracefulShutdown/README:
+ * DevGuideExamples/Multithreading/README:
+ * DevGuideExamples/Multithreading/Reactive/README:
+ * DevGuideExamples/Multithreading/ThreadPerConnection/README:
+ * DevGuideExamples/Multithreading/ThreadPool/README:
+ * DevGuideExamples/PortableInterceptors/Auth/README:
+ * DevGuideExamples/PortableInterceptors/IOR/README:
+ * DevGuideExamples/PortableInterceptors/PICurrent/README:
+ * DevGuideExamples/PortableInterceptors/SimpleCodec/README:
+ * DevGuideExamples/RTCORBA/README:
+ * DevGuideExamples/SmartProxies/README:
+ * DevGuideExamples/ValueTypes/Bank/README:
+ * DevGuideExamples/ValueTypes/Messenger/README:
+ * DevGuideExamples/readme.txt:
+ * README:
+ * examples/AMI/FL_Callback/README:
+ * examples/Buffered_AMI/README:
+ * examples/Buffered_Oneways/README:
+ * examples/CSD_Strategy/ThreadPool/README:
+ * examples/CSD_Strategy/ThreadPool2/README:
+ * examples/CSD_Strategy/ThreadPool3/README:
+ * examples/CSD_Strategy/ThreadPool4/README:
+ * examples/CSD_Strategy/ThreadPool6/README:
+ * examples/Load_Balancing/README:
+ * examples/OBV/Typed_Events/README:
+ * examples/RTCORBA/Activity/README:
+ * interop-tests/wchar/README:
+ * orbsvcs/DevGuideExamples/EventServices/OMG_Basic/README:
+ * orbsvcs/DevGuideExamples/EventServices/OMG_SupplierSideEC/README:
+ * orbsvcs/DevGuideExamples/EventServices/OMG_TypedEC/README:
+ * orbsvcs/DevGuideExamples/EventServices/RTEC_Basic/README:
+ * orbsvcs/DevGuideExamples/EventServices/RTEC_Federated/README:
+ * orbsvcs/DevGuideExamples/EventServices/RTEC_Filter/README:
+ * orbsvcs/DevGuideExamples/EventServices/RTEC_MCast_Federated/README:
+ * orbsvcs/DevGuideExamples/ImplRepo/README:
+ * orbsvcs/DevGuideExamples/NamingService/Messenger/README:
+ * orbsvcs/DevGuideExamples/NamingService/Naming_Client/README:
+ * orbsvcs/DevGuideExamples/NamingService/Naming_Context_Ext/README:
+ * orbsvcs/DevGuideExamples/NamingService/Naming_Server/README:
+ * orbsvcs/DevGuideExamples/NamingService/corbaloc_Messenger/README:
+ * orbsvcs/DevGuideExamples/NotifyService/EventSequence/README:
+ * orbsvcs/DevGuideExamples/NotifyService/Filtering/README:
+ * orbsvcs/DevGuideExamples/NotifyService/Messenger/README:
+ * orbsvcs/DevGuideExamples/NotifyService/OfferSubscriptions/README:
+ * orbsvcs/DevGuideExamples/NotifyService/QoSProperties/README:
+ * orbsvcs/DevGuideExamples/NotifyService/RTNotify/README:
+ * orbsvcs/DevGuideExamples/NotifyService/SupplierSideNC/README:
+ * orbsvcs/DevGuideExamples/PortableInterceptors/PICurrent_NameService/README:
+ * orbsvcs/DevGuideExamples/Security/PolicyControllingApp/README:
+ * orbsvcs/DevGuideExamples/Security/SecurityUnawareApp/README:
+ * orbsvcs/DevGuideExamples/ValueTypes/Notify/readme.txt:
+ * orbsvcs/FT_ReplicationManager/README:
+ * orbsvcs/ImplRepo_Service/README.txt:
+ * orbsvcs/LoadBalancer/README:
+ * orbsvcs/TAO_Service/README:
+ * orbsvcs/examples/CosEC/Factory/README:
+ * orbsvcs/examples/CosEC/RtEC_Based/README:
+ * orbsvcs/examples/CosEC/RtEC_Based/bin/README:
+ * orbsvcs/examples/CosEC/RtEC_Based/tests/Multiple/README:
+ * orbsvcs/examples/CosEC/Simple/README:
+ * orbsvcs/examples/Log/Basic/README:
+ * orbsvcs/examples/Log/Event/README:
+ * orbsvcs/examples/Log/Notify/README:
+ * orbsvcs/examples/Log/README:
+ * orbsvcs/examples/Log/RTEvent/README:
+ * orbsvcs/examples/Notify/Federation/Agent/README:
+ * orbsvcs/examples/Notify/Federation/SpaceCraft/README:
+ * orbsvcs/examples/Notify/Filter/README:
+ * orbsvcs/examples/Notify/Lanes/README:
+ * orbsvcs/examples/Notify/MC/TkMonitor/README:
+ * orbsvcs/examples/Notify/README:
+ * orbsvcs/examples/Notify/Subscribe/README:
+ * orbsvcs/examples/Notify/ThreadPool/README:
+ * orbsvcs/examples/RtEC/IIOPGateway/README:
+ * orbsvcs/examples/RtEC/MCast/README:
+ * orbsvcs/examples/RtEC/Schedule/README:
+ * orbsvcs/examples/RtEC/Simple/README:
+ * orbsvcs/examples/Security/README:
+ * orbsvcs/examples/Security/SecurityLevel1/README:
+ * orbsvcs/orbsvcs/HTIOP/README.txt:
+ * orbsvcs/orbsvcs/Naming/README:
+ * orbsvcs/tests/AVStreams/Component_Switching/README:
+ * orbsvcs/tests/AVStreams/Latency/README:
+ * orbsvcs/tests/AVStreams/Multicast/README:
+ * orbsvcs/tests/AVStreams/Multicast_Full_Profile/README:
+ * orbsvcs/tests/AVStreams/README:
+ * orbsvcs/tests/AVStreams/Simple_Three_Stage/README:
+ * orbsvcs/tests/AVStreams/mpeg/README.uav:
+ * orbsvcs/tests/Bug_1334_Regression/README:
+ * orbsvcs/tests/Bug_1393_Regression/README:
+ * orbsvcs/tests/Bug_1395_Regression/README:
+ * orbsvcs/tests/Bug_1436_Regression/README:
+ * orbsvcs/tests/Bug_1437_Regression/README:
+ * orbsvcs/tests/Bug_2137_Regression/README:
+ * orbsvcs/tests/Bug_2247_Regression/README:
+ * orbsvcs/tests/Bug_2248_Regression/README:
+ * orbsvcs/tests/Bug_2285_Regression/README:
+ * orbsvcs/tests/Bug_2287_Regression/README:
+ * orbsvcs/tests/Bug_2615_Regression/README:
+ * orbsvcs/tests/Bug_2709_Regression/README:
+ * orbsvcs/tests/Bug_2777_Regression/README:
+ * orbsvcs/tests/Bug_3215_Regression/README:
+ * orbsvcs/tests/Bug_3216_Regression/README:
+ * orbsvcs/tests/CosEvent/Timeout/README:
+ * orbsvcs/tests/EC_Custom_Marshal/README:
+ * orbsvcs/tests/EC_MT_Mcast/README:
+ * orbsvcs/tests/EC_Mcast/README:
+ * orbsvcs/tests/EC_Multiple/README:
+ * orbsvcs/tests/EC_Throughput/README:
+ * orbsvcs/tests/Event/Mcast/AddrServer/README:
+ * orbsvcs/tests/Event/Mcast/RTEC_MCast_Federated/README:
+ * orbsvcs/tests/Event/Mcast/Two_Way/README:
+ * orbsvcs/tests/Event/Performance/README:
+ * orbsvcs/tests/Event/lib/README:
+ * orbsvcs/tests/FaultTolerance/IOGR/README:
+ * orbsvcs/tests/ImplRepo/Bug_2604_Regression/README:
+ * orbsvcs/tests/InterfaceRepo/Bug_2962_Regression/ReadMe.txt:
+ * orbsvcs/tests/InterfaceRepo/Bug_3155_Regression/ReadMe.txt:
+ * orbsvcs/tests/InterfaceRepo/Bug_3174_Regression/ReadMe.txt:
+ * orbsvcs/tests/InterfaceRepo/IFR_Self_Recursive_IDL_Test/README:
+ * orbsvcs/tests/InterfaceRepo/Union_Forward_Test/README.txt:
+ * orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/README:
+ * orbsvcs/tests/LoadBalancing/GenericFactory/Infrastructure_Controlled/README:
+ * orbsvcs/tests/Log/Basic_Log_Test/README:
+ * orbsvcs/tests/Notify/lib/README:
+ * orbsvcs/tests/Notify/performance-tests/scripts/1_Path_Period_0_Lanes/README:
+ * orbsvcs/tests/Notify/performance-tests/scripts/3_Path_Period_10ms_Lanes/README:
+ * orbsvcs/tests/Notify/performance-tests/scripts/Max_Throughput/README:
+ * orbsvcs/tests/Redundant_Naming/README:
+ * orbsvcs/tests/Security/Big_Request/README:
+ * orbsvcs/tests/Security/Bug_1107_Regression/README:
+ * orbsvcs/tests/Security/Bug_2908_Regression/README:
+ * orbsvcs/tests/Security/Callback/README:
+ * orbsvcs/tests/Security/Secure_Invocation/README:
+ * orbsvcs/tests/Security/cert/README:
+ * orbsvcs/tests/Security/ssliop_CSD/README:
+ * orbsvcs/tests/Simple_Naming/README:
+ * orbsvcs/tests/unit/Notify/MC/MonitorControlExt/README:
+ * performance-tests/Cubit/README:
+ * performance-tests/Latency/README:
+ * performance-tests/README:
+ * performance-tests/RTCorba/Multiple_Endpoints/Orb_Per_Priority/README:
+ * performance-tests/RTCorba/Multiple_Endpoints/Single_Endpoint/README:
+ * performance-tests/Sequence_Latency/Sequence_Operations_Time/README.txt:
+ * tests/Any/Recursive/README:
+ * tests/BiDirectional_DelayedUpcall/README:
+ * tests/Big_AMI/README:
+ * tests/Bug_1330_Regression/README:
+ * tests/Bug_1551_Regression/README:
+ * tests/Bug_1627_Regression/README:
+ * tests/Bug_2119_Regression/README:
+ * tests/Bug_2122_Regression/README:
+ * tests/Bug_2124_Regression/README:
+ * tests/Bug_2126_Regression/README:
+ * tests/Bug_2134_Regression/README:
+ * tests/Bug_2183_Regression/README:
+ * tests/Bug_2186_Regression/README:
+ * tests/Bug_2289_Regression/README:
+ * tests/Bug_2375_Regression/README:
+ * tests/Bug_2399_Regression/README:
+ * tests/Bug_2419_Regression/README:
+ * tests/Bug_2424_Regression/README:
+ * tests/Bug_2429_Regression/README:
+ * tests/Bug_2549_Regression/README:
+ * tests/Bug_2669_Regression/README:
+ * tests/Bug_2791_Regression/README:
+ * tests/Bug_2805_Regression/README.txt:
+ * tests/Bug_2935_Regression/README.txt:
+ * tests/Bug_3068_Regression/README:
+ * tests/Bug_3276_Regression/README:
+ * tests/Bug_3299_Regression/README:
+ * tests/Bug_3311_Regression/README:
+ * tests/Bug_3513_Regression/README:
+ * tests/Bug_3524_Regression/README:
+ * tests/Bug_3574_Regression/README:
+ * tests/Bug_3575_Regression/README:
+ * tests/Bug_3632_Regression/README:
+ * tests/Bug_3676_Regression/README:
+ * tests/Bug_3743_Regression/README:
+ * tests/Bug_3748_Regression/README:
+ * tests/Bug_3755_Ext_Regression/README:
+ * tests/Bug_3790_Regression/README:
+ * tests/Bug_3821_Regression/README:
+ * tests/Bug_3827_Regression/README:
+ * tests/Bug_3837_Regression/README:
+ * tests/Bug_3926_Regression/README:
+ * tests/Bug_3941_Regression/README:
+ * tests/CSD_Strategy_Tests/TP_Test_4/README:
+ * tests/CodeSets/simple/README:
+ * tests/Collocation_Opportunities/README:
+ * tests/DIOP/README:
+ * tests/DSI_Gateway/README:
+ * tests/FL_Cube/README:
+ * tests/Faults/README:
+ * tests/HandleExhaustion/README:
+ * tests/Hello/README:
+ * tests/ICMG_Any_Bug/README:
+ * tests/IPV6/README:
+ * tests/Leader_Followers/README:
+ * tests/LongUpcalls/README:
+ * tests/MProfile/README:
+ * tests/MProfile_Connection_Timeout/README:
+ * tests/MT_BiDir/README:
+ * tests/MT_Client/README:
+ * tests/MT_Server/README:
+ * tests/MT_Timeout/README:
+ * tests/Multiple/README:
+ * tests/Multiple_Inheritance/README:
+ * tests/Muxed_GIOP_Versions/README:
+ * tests/Muxing/README:
+ * tests/Native_Exceptions/README:
+ * tests/Nested_Event_Loop/README:
+ * tests/No_Server_MT_Connect_Test/README:
+ * tests/OBV/Any/README:
+ * tests/OBV/Supports/README:
+ * tests/ORB_Local_Config/Bug_1459/README:
+ * tests/ORB_Local_Config/Bug_3049/README:
+ * tests/ORB_Local_Config/README:
+ * tests/ORB_Local_Config/Two_DLL_ORB/README:
+ * tests/ORB_destroy/README:
+ * tests/Object_Loader/README:
+ * tests/Objref_Sequence_Test/README:
+ * tests/OctetSeq/README:
+ * tests/POA/Adapter_Activator/README:
+ * tests/POA/Bug_1592_Regression/README:
+ * tests/POA/DSI/README:
+ * tests/POA/Explicit_Activation/Alt_Resources/README:
+ * tests/POA/Explicit_Activation/README:
+ * tests/POA/FindPOA/README:
+ * tests/POA/README:
+ * tests/POA/Reference_Counted_Servant/README:
+ * tests/POA/RootPOA/README:
+ * tests/Policies/README:
+ * tests/Portable_Interceptors/Benchmark/README:
+ * tests/Portable_Interceptors/Dynamic/README:
+ * tests/Portable_Interceptors/ForwardRequest/README:
+ * tests/Portable_Interceptors/IORInterceptor/README:
+ * tests/Portable_Interceptors/ORB_Shutdown/README:
+ * tests/Portable_Interceptors/PICurrent/README:
+ * tests/Portable_Interceptors/Request_Interceptor_Flow/README:
+ * tests/RTScheduling/Current/README:
+ * tests/RTScheduling/DT_Spawn/README:
+ * tests/RTScheduling/Thread_Cancel/README:
+ * tests/RTScheduling/VoidData/README:
+ * tests/Smart_Proxies/Collocation/README:
+ * tests/Timed_Buffered_Oneways/README:
+ * tests/Timeout/README:
+ * tests/TransportCurrent/Framework/README:
+ * tests/Xt_Stopwatch/README:
+ Fuzz: Missing Id-tags.
+
+Fri Oct 7 07:55:46 UTC 2011 Marcel Smit <msmit@remedy.nl>
+
+ * examples/PluggableUDP/tests/Performance/svc.conf.xml:
+ * examples/PluggableUDP/tests/SimplePerformance/svc.conf.xml:
+ * examples/Simple/time-date/client.conf.xml:
+ * examples/Simple/time-date/svc.conf.xml:
+ * interop-tests/wchar/build.xml:
+ * orbsvcs/Concurrency_Service/svc.conf.xml:
+ * orbsvcs/ImplRepo_Service/repository.xml:
+ * orbsvcs/Notify_Service/svc.conf.xml:
+ * orbsvcs/TAO_Service/svc.conf.xml:
+ * orbsvcs/tests/AVStreams/Pluggable_Flow_Protocol/svc.conf.xml:
+ * orbsvcs/tests/CosEvent/Basic/svc.pull.conf.xml:
+ * orbsvcs/tests/Event/Basic/control.conf.xml:
+ * orbsvcs/tests/Event/UDP/svc.conf.xml:
+ * orbsvcs/tests/FaultTolerance/IOGR/svc.conf.xml:
+ * orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/windows.conf.xml:
+ * orbsvcs/tests/LoadBalancing/GenericFactory/DeadMemberDetection_Inf_Ctrl/windows.conf.xml:
+ * orbsvcs/tests/LoadBalancing/GenericFactory/Infrastructure_Controlled/windows.conf.xml:
+ * orbsvcs/tests/LoadBalancing/GenericFactory/Manage_Object_Group/windows.conf.xml:
+ * orbsvcs/tests/Miop/McastHello/client.conf.xml:
+ * orbsvcs/tests/Miop/McastHello/server.conf.xml:
+ * orbsvcs/tests/Notify/performance-tests/RedGreen/listener.conf.xml:
+ * orbsvcs/tests/Notify/performance-tests/RedGreen/lookup.conf.xml:
+ * orbsvcs/tests/Notify/performance-tests/RedGreen/reactive.conf.xml:
+ * orbsvcs/tests/Notify/performance-tests/RedGreen/svc.conf.xml:
+ * orbsvcs/tests/Security/MT_IIOP_SSL/client.conf.xml:
+ * orbsvcs/tests/Security/MT_IIOP_SSL/server.conf.xml:
+ * orbsvcs/tests/Security/MT_SSLIOP/client.conf.xml:
+ * orbsvcs/tests/Security/MT_SSLIOP/server.conf.xml:
+ * orbsvcs/tests/Security/ssliop_corbaloc/client.conf.xml:
+ * orbsvcs/tests/Security/ssliop_corbaloc/server.conf.xml:
+ * orbsvcs/tests/unit/Notify/MC/MonitorManager/svc.conf.xml:
+ * performance-tests/RTCorba/Thread_Pool/native-svc.conf.xml:
+ * performance-tests/RTCorba/Thread_Pool/svc.conf.xml:
+ * performance-tests/Throughput/svc.conf.xml:
+ * tests/AMI/exclusive.conf.xml:
+ * tests/AMI/muxed.conf.xml:
+ * tests/AMI/server.conf.xml:
+ * tests/AMI_Timeouts/svc.conf.xml:
+ * tests/Bug_3251_Regression/Bug_3251.conf.xml:
+ * tests/Bug_3801_Regression/exclusive.conf.xml:
+ * tests/Bug_3801_Regression/muxed.conf.xml:
+ * tests/ORB_Local_Config/Service_Dependency/Service_Config_Test.conf.xml:
+ * tests/POA/Explicit_Activation/alternate.conf.xml:
+ * tests/RTCORBA/Banded_Connections/svc.conf.xml:
+ * tests/RTCORBA/Client_Propagated/svc.conf.xml:
+ * tests/RTCORBA/Client_Protocol/svc.conf.xml:
+ * tests/RTCORBA/Collocation/continuous.conf.xml:
+ * tests/RTCORBA/Collocation/svc.conf.xml:
+ * tests/RTCORBA/Destroy_Thread_Pool/continuous.conf.xml:
+ * tests/RTCORBA/Dynamic_Thread_Pool/continuous.conf.xml:
+ * tests/RTCORBA/Dynamic_Thread_Pool/svc.conf.xml:
+ * tests/RTCORBA/Explicit_Binding/svc.conf.xml:
+ * tests/RTCORBA/Linear_Priority/svc.conf.xml:
+ * tests/RTCORBA/MT_Client_Protocol_Priority/svc.conf.xml:
+ * tests/RTCORBA/Persistent_IOR/continuous.conf.xml:
+ * tests/RTCORBA/Policy_Combinations/svc.conf.xml:
+ * tests/RTCORBA/Priority_Inversion_With_Bands/continuous.conf.xml:
+ * tests/RTCORBA/Priority_Inversion_With_Bands/svc.conf.xml:
+ * tests/RTCORBA/Server_Declared/continuous.conf.xml:
+ * tests/RTCORBA/Server_Declared/svc.conf.xml:
+ * tests/RTCORBA/Server_Protocol/server_iiop.conf.xml:
+ * tests/RTCORBA/Server_Protocol/server_reverse.conf.xml:
+ * tests/RTCORBA/Server_Protocol/server_reverse_nt.conf.xml:
+ * tests/RTCORBA/Server_Protocol/server_shmiop.conf.xml:
+ * tests/RTCORBA/Server_Protocol/server_uiop.conf.xml:
+ * tests/RTCORBA/Thread_Pool/continuous.conf.xml:
+ * tests/RTCORBA/Thread_Pool/svc.conf.xml:
+ Fuzz: No Id-tags.
+
Wed Sep 28 12:46:14 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
* tao/BiDir_GIOP/BiDir_GIOP.mpc:
diff --git a/TAO/DevGuideExamples/AMH/README b/TAO/DevGuideExamples/AMH/README
index 3a21e06275a..19a325bcf6f 100644
--- a/TAO/DevGuideExamples/AMH/README
+++ b/TAO/DevGuideExamples/AMH/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
File: DevGuideExamples/GettingStarted/README
@@ -6,12 +6,12 @@ File: DevGuideExamples/GettingStarted/README
This directory contains a CORBA example illustrating a simple client and
a server with a Interface Messenger. The Messenger Interface has
an operation for sending a message (send_message). The MessengerClient
-will send a message which is displayed by the MessengerServer when
+will send a message which is displayed by the MessengerServer when
received. The MessengerClient will then confirm that the message has
been sent successfully.
-How to Run
+How to Run
----------
To start the server :
@@ -36,10 +36,10 @@ above. This script can be run via the following command:
NOTE:
- If you run on Windows platform, go to Debug or Release directory to run the
- script via following command:
-
+ If you run on Windows platform, go to Debug or Release directory to run the
+ script via following command:
+
perl ../run_test.pl
-
+
diff --git a/TAO/DevGuideExamples/AMH_AMI/README b/TAO/DevGuideExamples/AMH_AMI/README
index 4c9bf5aa5e7..572ec7ec4d6 100644
--- a/TAO/DevGuideExamples/AMH_AMI/README
+++ b/TAO/DevGuideExamples/AMH_AMI/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
File: DevGuideExamples/AMH_AMI/README
diff --git a/TAO/DevGuideExamples/BiDirectionalGIOP/README b/TAO/DevGuideExamples/BiDirectionalGIOP/README
index de7ea54bb3b..30d94fe0e45 100644
--- a/TAO/DevGuideExamples/BiDirectionalGIOP/README
+++ b/TAO/DevGuideExamples/BiDirectionalGIOP/README
@@ -1,10 +1,10 @@
-// $Id$
+$Id$
This example is a copy of the $TAO_ROOT/test/BiDirerectional test
but it does not use ACE_TRY/ENVIRONMENT macros.
This example exercises the birectional GIOP connection
-implementation in TAO.
+implementation in TAO.
Start like this:
diff --git a/TAO/DevGuideExamples/GettingStarted/README b/TAO/DevGuideExamples/GettingStarted/README
index 3a21e06275a..19a325bcf6f 100644
--- a/TAO/DevGuideExamples/GettingStarted/README
+++ b/TAO/DevGuideExamples/GettingStarted/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
File: DevGuideExamples/GettingStarted/README
@@ -6,12 +6,12 @@ File: DevGuideExamples/GettingStarted/README
This directory contains a CORBA example illustrating a simple client and
a server with a Interface Messenger. The Messenger Interface has
an operation for sending a message (send_message). The MessengerClient
-will send a message which is displayed by the MessengerServer when
+will send a message which is displayed by the MessengerServer when
received. The MessengerClient will then confirm that the message has
been sent successfully.
-How to Run
+How to Run
----------
To start the server :
@@ -36,10 +36,10 @@ above. This script can be run via the following command:
NOTE:
- If you run on Windows platform, go to Debug or Release directory to run the
- script via following command:
-
+ If you run on Windows platform, go to Debug or Release directory to run the
+ script via following command:
+
perl ../run_test.pl
-
+
diff --git a/TAO/DevGuideExamples/Messaging/AMIcallback/README b/TAO/DevGuideExamples/Messaging/AMIcallback/README
index 74eaecb5e42..ff064d0118c 100644
--- a/TAO/DevGuideExamples/Messaging/AMIcallback/README
+++ b/TAO/DevGuideExamples/Messaging/AMIcallback/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
CORBA Messaging
@@ -11,10 +11,10 @@ Method Invocation (AMI) feature of TAO. This feature permits
requests to be made that do not require a client to block while
waiting for a reply from a server.
-This example is based on the Messenger example in GettingStarted
-directory. A message is send by MessengerClient and displayed by
+This example is based on the Messenger example in GettingStarted
+directory. A message is send by MessengerClient and displayed by
MessengerServer. The server responds to provide confirmation
-that the message was received. The delay for this exchange of
+that the message was received. The delay for this exchange of
messages is then displayed.
@@ -23,12 +23,12 @@ How to Run
To start the server:
------------------
-./MessengerServer
+./MessengerServer
To start the client:
------------------
-./MessengerClient
+./MessengerClient
diff --git a/TAO/DevGuideExamples/Messaging/RelativeRoundtripTimeout/README b/TAO/DevGuideExamples/Messaging/RelativeRoundtripTimeout/README
index 50214efaeba..5e1cad163ad 100644
--- a/TAO/DevGuideExamples/Messaging/RelativeRoundtripTimeout/README
+++ b/TAO/DevGuideExamples/Messaging/RelativeRoundtripTimeout/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
CORBA Messaging
@@ -23,12 +23,12 @@ How to Run
To start the server:
------------------
-./MessengerServer
+./MessengerServer
To start the client:
------------------
-./MessengerClient
+./MessengerClient
diff --git a/TAO/DevGuideExamples/Multithreading/GracefulShutdown/README b/TAO/DevGuideExamples/Multithreading/GracefulShutdown/README
index 0998bbfe167..53dc6a5f6f0 100644
--- a/TAO/DevGuideExamples/Multithreading/GracefulShutdown/README
+++ b/TAO/DevGuideExamples/Multithreading/GracefulShutdown/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
File: DevGuideExamples/Multithreading/GracefulShutdown/README
@@ -8,7 +8,7 @@ Getting Started example to show various techniques for gracefully
shutting down a TAO server.
-How to Run
+How to Run
----------
To start the server :
@@ -20,10 +20,10 @@ where [options] can be one of the following:
-x - (default) shutdown the ORB when the client invokes the
Messenger::shutdown() operation
- -p <n> - use non-blocking ORB operations in a polling loop to shutdown
+ -p <n> - use non-blocking ORB operations in a polling loop to shutdown
after <n> iterations
- -t <n> - schedule a timer with the ORB's reactor to shutdown in
+ -t <n> - schedule a timer with the ORB's reactor to shutdown in
<n> seconds
-r <n> - use the overloaded version of CORBA::ORB::run() that takes
@@ -31,7 +31,7 @@ where [options] can be one of the following:
should process events before returning, where <n> is the
number of seconds the ORB will run.
- -c - spawn a separate thread to shutdown the ORB on any
+ -c - spawn a separate thread to shutdown the ORB on any
input from the console (terminal)
@@ -56,10 +56,10 @@ above. This script can be run via the following command:
NOTE:
- If you run on Windows platform, go to Debug or Release directory to run the
- script via following command:
-
+ If you run on Windows platform, go to Debug or Release directory to run the
+ script via following command:
+
perl ../run_test.pl
-
+
diff --git a/TAO/DevGuideExamples/Multithreading/README b/TAO/DevGuideExamples/Multithreading/README
index 33afe107074..59ae26bd53d 100644
--- a/TAO/DevGuideExamples/Multithreading/README
+++ b/TAO/DevGuideExamples/Multithreading/README
@@ -1,7 +1,8 @@
-File: DevGuideExamples/Multithreading/README
+$Id$
+File: DevGuideExamples/Multithreading/README
-This directory contains subdirectories containing CORBA examples
+This directory contains subdirectories containing CORBA examples
illustrating TAO's various concurrency models:
Reactive
diff --git a/TAO/DevGuideExamples/Multithreading/Reactive/README b/TAO/DevGuideExamples/Multithreading/Reactive/README
index e061c5582fd..48003cd1549 100644
--- a/TAO/DevGuideExamples/Multithreading/Reactive/README
+++ b/TAO/DevGuideExamples/Multithreading/Reactive/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
File: DevGuideExamples/Multithreading/Reactive/README
@@ -6,7 +6,7 @@ File: DevGuideExamples/Multithreading/Reactive/README
This directory contains a CORBA example illustrating a simple client and
a server with an interface Messenger. The Messenger interface has
an operation for sending a message (send_message). The MessengerClient
-will send a message which is displayed by the MessengerServer when
+will send a message which is displayed by the MessengerServer when
received. The MessengerClient will then confirm that the message has
been sent successfully.
@@ -16,7 +16,7 @@ Multithreading with TAO chapter. The svc.conf file shows run time
configuration options for optimizing single-threaded TAO applications.
-How to Run
+How to Run
----------
To start the server :
@@ -41,10 +41,10 @@ above. This script can be run via the following command:
NOTE:
- If you run on Windows platform, go to Debug or Release directory to run the
- script via following command:
-
+ If you run on Windows platform, go to Debug or Release directory to run the
+ script via following command:
+
perl ../run_test.pl
-
+
diff --git a/TAO/DevGuideExamples/Multithreading/ThreadPerConnection/README b/TAO/DevGuideExamples/Multithreading/ThreadPerConnection/README
index 2ac572efae3..03aab46eaed 100644
--- a/TAO/DevGuideExamples/Multithreading/ThreadPerConnection/README
+++ b/TAO/DevGuideExamples/Multithreading/ThreadPerConnection/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
File: DevGuideExamples/Multithreading/ThreadPerConnection/README
@@ -10,7 +10,7 @@ capabilities to the server using the thread-per-connection concurrency
model.
-How to Run
+How to Run
----------
To start the server :
@@ -64,10 +64,10 @@ NOTE:
NOTE:
- If you run on Windows platform, go to Debug or Release directory to run the
- script via following command:
-
+ If you run on Windows platform, go to Debug or Release directory to run the
+ script via following command:
+
perl ../run_test.pl
-
+
diff --git a/TAO/DevGuideExamples/Multithreading/ThreadPool/README b/TAO/DevGuideExamples/Multithreading/ThreadPool/README
index fd353365383..5530e575fc4 100644
--- a/TAO/DevGuideExamples/Multithreading/ThreadPool/README
+++ b/TAO/DevGuideExamples/Multithreading/ThreadPool/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
File: DevGuideExamples/Multithreading/ThreadPool/README
@@ -10,7 +10,7 @@ capabilities to the server using the thread pool concurrency model.
The server creates 4 threads for the thread pool.
-How to Run
+How to Run
----------
To start the server :
@@ -67,10 +67,10 @@ NOTE:
NOTE:
- If you run on Windows platform, go to Debug or Release directory to run the
- script via following command:
-
+ If you run on Windows platform, go to Debug or Release directory to run the
+ script via following command:
+
perl ../run_test.pl
-
+
diff --git a/TAO/DevGuideExamples/PortableInterceptors/Auth/README b/TAO/DevGuideExamples/PortableInterceptors/Auth/README
index 5bcc33ea99b..d3b9e5f2612 100644
--- a/TAO/DevGuideExamples/PortableInterceptors/Auth/README
+++ b/TAO/DevGuideExamples/PortableInterceptors/Auth/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Portable Interceptors
@@ -9,10 +9,10 @@ File: DevGuideExamples/PortableInterceptor/Auth/README
This directory contains an example illustrating client and server
Request Interceptors.
-This is a simple insecure authentication example that is based on
-the Messenger example in GettingStarted directory. A message is
-sent by MessengerClient and displayed by MessengerServer. A client-side
-portable interceptor adds a username to each request sent to the server.
+This is a simple insecure authentication example that is based on
+the Messenger example in GettingStarted directory. A message is
+sent by MessengerClient and displayed by MessengerServer. A client-side
+portable interceptor adds a username to each request sent to the server.
A server-side interceptor verifies that the supplied username is valid.
How to Run
@@ -20,12 +20,12 @@ How to Run
To start the server:
------------------
-./MessengerServer
+./MessengerServer
To start the client:
------------------
-./MessengerClient
+./MessengerClient
diff --git a/TAO/DevGuideExamples/PortableInterceptors/IOR/README b/TAO/DevGuideExamples/PortableInterceptors/IOR/README
index c0ae563435b..7b43e4ca2f2 100644
--- a/TAO/DevGuideExamples/PortableInterceptors/IOR/README
+++ b/TAO/DevGuideExamples/PortableInterceptors/IOR/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Portable Interceptors
@@ -6,11 +6,11 @@ Portable Interceptors
File: DevGuideExamples/PortableInterceptor/IOR/README
-This directory contains an example of using portable interceptors to add
+This directory contains an example of using portable interceptors to add
tagged information to an IOR.
-This example is based on the Messenger example in GettingStarted
-directory. A message is send by MessengerClient and displayed by
+This example is based on the Messenger example in GettingStarted
+directory. A message is send by MessengerClient and displayed by
MessengerServer. On IOR creation, the server has added a special
tag "ServerRequiresAuth". The client is able to extract this tag.
@@ -20,12 +20,12 @@ How to Run
To start the server:
------------------
-./MessengerServer
+./MessengerServer
To start the client:
------------------
-./MessengerClient
+./MessengerClient
Execution via Perl Script
diff --git a/TAO/DevGuideExamples/PortableInterceptors/PICurrent/README b/TAO/DevGuideExamples/PortableInterceptors/PICurrent/README
index 0f37fae7ad8..a7897d17ea9 100644
--- a/TAO/DevGuideExamples/PortableInterceptors/PICurrent/README
+++ b/TAO/DevGuideExamples/PortableInterceptors/PICurrent/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Portable Interceptors
@@ -7,13 +7,13 @@ File: DevGuideExamples/PortableInterceptor/PICurrent_NameService/README
This directory contains an example that shows how the PICurrent can
-be used to stop client-side interceptor recursions.
+be used to stop client-side interceptor recursions.
-This example is based on the Messenger example in GettingStarted
-directory. A message is send by MessengerClient and displayed by
+This example is based on the Messenger example in GettingStarted
+directory. A message is send by MessengerClient and displayed by
MessengerServer. When the client receives a reply, it asks the server
for the current time. This causes a recursive call at the receive_reply()
-interception point. A flag is passed in the PICurrent to let the client
+interception point. A flag is passed in the PICurrent to let the client
know the call is recursive.
How to Run
@@ -21,7 +21,7 @@ How to Run
To start the server:
------------------
-./MessengerServer
+./MessengerServer
To start the client:
------------------
diff --git a/TAO/DevGuideExamples/PortableInterceptors/SimpleCodec/README b/TAO/DevGuideExamples/PortableInterceptors/SimpleCodec/README
index 2f7dd7295c5..d7c09f9ed96 100644
--- a/TAO/DevGuideExamples/PortableInterceptors/SimpleCodec/README
+++ b/TAO/DevGuideExamples/PortableInterceptors/SimpleCodec/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Portable Interceptors
@@ -9,11 +9,11 @@ File: DevGuideExamples/PortableInterceptor/SimpleCodec/README
This directory contains an example illustrating marshaling of data in
client and server Request Interceptors.
-This example extends the authentication example in ../Auth. It is based on
-the Messenger example in GettingStarted directory. A message is
-sent by MessengerClient and displayed by MessengerServer. A client-side
-portable interceptor adds an encoded (marshaled) GID to each request
-sent to the server. A server-side interceptor verifies that the supplied
+This example extends the authentication example in ../Auth. It is based on
+the Messenger example in GettingStarted directory. A message is
+sent by MessengerClient and displayed by MessengerServer. A client-side
+portable interceptor adds an encoded (marshaled) GID to each request
+sent to the server. A server-side interceptor verifies that the supplied
GID is valid.
How to Run
@@ -21,12 +21,12 @@ How to Run
To start the server:
------------------
-./MessengerServer
+./MessengerServer
To start the client:
------------------
-./MessengerClient
+./MessengerClient
Execution via Perl Script
diff --git a/TAO/DevGuideExamples/RTCORBA/README b/TAO/DevGuideExamples/RTCORBA/README
index 38bc8e96a2f..9bda29a5b95 100644
--- a/TAO/DevGuideExamples/RTCORBA/README
+++ b/TAO/DevGuideExamples/RTCORBA/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
DevGuideExamples/RTCORBA/README
diff --git a/TAO/DevGuideExamples/SmartProxies/README b/TAO/DevGuideExamples/SmartProxies/README
index 4e6bf55cdcd..13ac4dd51ef 100644
--- a/TAO/DevGuideExamples/SmartProxies/README
+++ b/TAO/DevGuideExamples/SmartProxies/README
@@ -1,10 +1,10 @@
-// $Id$
+$Id$
DevGuideExamples/SmartProxies/README
-The example in this directory extends the Messenger example in
+The example in this directory extends the Messenger example in
GettingStarted directory to use the Smart Proxy feature in TAO.
-
+
A new Interface, Logger which supports an operation to log the messages
(log_message) is used to log the information about the use of the
Messenger.
diff --git a/TAO/DevGuideExamples/ValueTypes/Bank/README b/TAO/DevGuideExamples/ValueTypes/Bank/README
index 8078ebe21e1..116700abfd4 100644
--- a/TAO/DevGuideExamples/ValueTypes/Bank/README
+++ b/TAO/DevGuideExamples/ValueTypes/Bank/README
@@ -1,9 +1,9 @@
-// $Id$
+$Id$
A simple example using valuetypes.
-How to Run
+How to Run
----------
Start the server :
@@ -28,10 +28,10 @@ above. This script can be run via the following command:
NOTE:
- If you run on Windows platform, go to Debug or Release directory to run the
- script via following command:
-
+ If you run on Windows platform, go to Debug or Release directory to run the
+ script via following command:
+
perl ../run_test.pl
-
+
diff --git a/TAO/DevGuideExamples/ValueTypes/Messenger/README b/TAO/DevGuideExamples/ValueTypes/Messenger/README
index 6d344abc251..4fe9f604ece 100644
--- a/TAO/DevGuideExamples/ValueTypes/Messenger/README
+++ b/TAO/DevGuideExamples/ValueTypes/Messenger/README
@@ -1,9 +1,9 @@
-// $Id$
+$Id$
This directory contains a CORBA example illustrating a simple client and
a server with a Interface Messenger. The Messenger Interface has
an operation for sending a message (send_message). The MessengerClient
-will send a message which is displayed by the MessengerServer when
+will send a message which is displayed by the MessengerServer when
received. The MessengerClient will then confirm that the message has
been sent successfully.
@@ -12,7 +12,7 @@ Message that encapsulates the message information. The send method on
Messenger has been modified to take a single Message inout parameter.
-How to Run
+How to Run
----------
Start the server :
@@ -37,10 +37,10 @@ above. This script can be run via the following command:
NOTE:
- If you run on Windows platform, go to Debug or Release directory to run the
- script via following command:
-
+ If you run on Windows platform, go to Debug or Release directory to run the
+ script via following command:
+
perl ../run_test.pl
-
+
diff --git a/TAO/DevGuideExamples/readme.txt b/TAO/DevGuideExamples/readme.txt
index 9f6e9699e07..1b2da6e00fc 100644
--- a/TAO/DevGuideExamples/readme.txt
+++ b/TAO/DevGuideExamples/readme.txt
@@ -1,3 +1,5 @@
+$Id$
+
"These examples were developed by and are included in this
distribution with the permission of Object Computing, Inc. (OCI)
for the purpose of illustrating the usage of certain features of
diff --git a/TAO/MPC/modules/IDLHelper.pm b/TAO/MPC/modules/IDLHelper.pm
index de2ddd8dc3f..553d93207de 100644
--- a/TAO/MPC/modules/IDLHelper.pm
+++ b/TAO/MPC/modules/IDLHelper.pm
@@ -1,3 +1,5 @@
+# $Id$
+
package IDLHelper;
use strict;
diff --git a/TAO/NEWS b/TAO/NEWS
index 3956d04ea7e..b6058523c6b 100644
--- a/TAO/NEWS
+++ b/TAO/NEWS
@@ -1,6 +1,18 @@
+USER VISIBLE CHANGES BETWEEN TAO-2.0.5 and TAO-2.1.0
+====================================================
+
+. Added new define TAO_DEFAULT_COLLOCATION_STRATEGY (default = thru_poa)
+ which is used as -ORBCollocationStrategy isn't specified.
+
+. Added new -ORBCollocationStrategy best. TAO tries to perform the best
+ possible collocation, first direct if possible, then through_poa if possible
+ else no collocation.
+
USER VISIBLE CHANGES BETWEEN TAO-2.0.4 and TAO-2.0.5
====================================================
+. Updated several TAO tests for automatic testing on Android
+
USER VISIBLE CHANGES BETWEEN TAO-2.0.3 and TAO-2.0.4
====================================================
diff --git a/TAO/PROBLEM-REPORT-FORM b/TAO/PROBLEM-REPORT-FORM
index c3db0c35bc7..0e87ae48e5c 100644
--- a/TAO/PROBLEM-REPORT-FORM
+++ b/TAO/PROBLEM-REPORT-FORM
@@ -40,8 +40,8 @@
To: tao-bugs@list.isis.vanderbilt.edu
Subject: [area]: [synopsis]
- TAO VERSION: 2.0.4
- ACE VERSION: 6.0.4
+ TAO VERSION: 2.0.5
+ ACE VERSION: 6.0.5
HOST MACHINE and OPERATING SYSTEM:
If on Windows based OS's, which version of WINSOCK do you
diff --git a/TAO/README b/TAO/README
index 920b84f646c..b0852e24432 100644
--- a/TAO/README
+++ b/TAO/README
@@ -1,3 +1,5 @@
+$Id$
+
Welcome to the latest release of The ACE ORB (TAO). TAO is a freely
available, open-source implementation of a CORBA 3.x-compliant ORB
that supports real-time extensions. Please see
diff --git a/TAO/TAO_IDL/be/be_array.cpp b/TAO/TAO_IDL/be/be_array.cpp
index 67bc226edf6..90d82b9226e 100644
--- a/TAO/TAO_IDL/be/be_array.cpp
+++ b/TAO/TAO_IDL/be/be_array.cpp
@@ -254,7 +254,7 @@ be_array::gen_ostream_operator (TAO_OutStream *os,
// automatically converting back to xxx_slice *.
*os << be_nl
<< "std::ostream& operator<< (" << be_idt << be_idt_nl
- << "std::ostream &strm, " << be_nl
+ << "std::ostream &strm," << be_nl
<< "const " << arg_name.c_str () << be_uidt_nl
<< ")" << be_uidt_nl
<< "{" << be_idt_nl
diff --git a/TAO/TAO_IDL/be/be_codegen.cpp b/TAO/TAO_IDL/be/be_codegen.cpp
index b811ca7a72f..856b20614c4 100644
--- a/TAO/TAO_IDL/be/be_codegen.cpp
+++ b/TAO/TAO_IDL/be/be_codegen.cpp
@@ -647,7 +647,7 @@ TAO_CodeGen::start_server_skeletons (const char *fname)
return -1;
}
- *this->server_skeletons_ << be_nl_2 << "// TAO_IDL - Generated from "
+ *this->server_skeletons_ << be_nl_2 << "// TAO_IDL - Generated from"
<< be_nl << "// " << __FILE__ << ":" << __LINE__
<< be_nl_2;
@@ -721,7 +721,7 @@ TAO_CodeGen::start_server_template_skeletons (const char *fname)
return -1;
}
- *this->server_template_skeletons_ << be_nl << "// TAO_IDL - Generated from "
+ *this->server_template_skeletons_ << be_nl << "// TAO_IDL - Generated from"
<< be_nl << "// "
<< __FILE__ << ":" << __LINE__
<< be_nl_2;
@@ -1489,7 +1489,7 @@ TAO_CodeGen::start_implementation_header (const char *fname)
return -1;
}
- *this->implementation_header_ << be_nl << "// TAO_IDL - Generated from "
+ *this->implementation_header_ << be_nl << "// TAO_IDL - Generated from"
<< be_nl << "// "
<< __FILE__ << ":" << __LINE__
<< be_nl_2;
@@ -1546,7 +1546,7 @@ TAO_CodeGen::start_implementation_skeleton (const char *fname)
return -1;
}
- *this->implementation_skeleton_ << be_nl << "// TAO_IDL - Generated from "
+ *this->implementation_skeleton_ << be_nl << "// TAO_IDL - Generated from"
<< be_nl << "// "
<< __FILE__ << ":" << __LINE__
<< be_nl_2;
@@ -1743,7 +1743,7 @@ TAO_CodeGen::end_implementation_header (const char *fname)
int
TAO_CodeGen::end_server_template_header (void)
{
- *this->server_template_header_ << be_nl_2 << "// TAO_IDL - Generated from "
+ *this->server_template_header_ << be_nl_2 << "// TAO_IDL - Generated from"
<< be_nl << "// "
<< __FILE__ << ":" << __LINE__ << "\n";
@@ -2669,8 +2669,6 @@ TAO_CodeGen::gen_skel_hdr_includes (void)
}
this->gen_standard_include (this->server_header_,
- "tao/Collocation_Proxy_Broker.h");
- this->gen_standard_include (this->server_header_,
"tao/PortableServer/PortableServer.h");
this->gen_standard_include (this->server_header_,
"tao/PortableServer/Servant_Base.h");
@@ -3256,18 +3254,6 @@ TAO_CodeGen::gen_svnt_src_includes (void)
this->gen_standard_include (
this->ciao_svnt_source_,
- "ciao/Containers/CIAO_Servant_ActivatorC.h");
-
- this->gen_standard_include (
- this->ciao_svnt_source_,
- "ciao/Servants/Port_Activator_T.h");
-
- this->gen_standard_include (
- this->ciao_svnt_source_,
- "ciao/Servants/CIAO_Port_ActivatorC.h");
-
- this->gen_standard_include (
- this->ciao_svnt_source_,
"tao/SystemException.h");
this->gen_standard_include (
diff --git a/TAO/TAO_IDL/be/be_component.cpp b/TAO/TAO_IDL/be/be_component.cpp
index 9d2cd33ab31..1c3b3c455b6 100644
--- a/TAO/TAO_IDL/be/be_component.cpp
+++ b/TAO/TAO_IDL/be/be_component.cpp
@@ -302,7 +302,7 @@ be_component::gen_stub_inheritance (TAO_OutStream *os)
for (long i = 0; i < nsupports; ++i)
{
- *os << ", " << be_nl
+ *os << "," << be_nl
<< "public virtual ::"
<< supp_list[i]->name ();
}
@@ -369,19 +369,6 @@ be_component::gen_is_a_ancestors (TAO_OutStream *os)
}
void
-be_component::gen_parent_collocation (TAO_OutStream *os)
-{
- AST_Component *base = this->base_component ();
-
- if (base != 0)
- {
- *os << be_nl
- << "this->" << base->flat_name ()
- << "_setup_collocation" << " ();";
- }
-}
-
-void
be_component::mirror_scan (AST_PortType *pt)
{
AST_Uses *u = 0;
diff --git a/TAO/TAO_IDL/be/be_home.cpp b/TAO/TAO_IDL/be/be_home.cpp
index cecee18c8cb..6c8aa51a9cd 100644
--- a/TAO/TAO_IDL/be/be_home.cpp
+++ b/TAO/TAO_IDL/be/be_home.cpp
@@ -133,42 +133,12 @@ be_home::destroy (void)
delete [] this->relative_skel_name_;
this->relative_skel_name_ = 0;
- delete [] this->base_proxy_impl_name_;
- this->base_proxy_impl_name_ = 0;
-
- delete [] this->remote_proxy_impl_name_;
- this->remote_proxy_impl_name_ = 0;
-
delete [] this->direct_proxy_impl_name_;
this->direct_proxy_impl_name_ = 0;
- delete [] this->full_base_proxy_impl_name_;
- this->full_base_proxy_impl_name_ = 0;
-
- delete [] this->full_remote_proxy_impl_name_;
- this->full_remote_proxy_impl_name_ = 0;
-
delete [] this->full_direct_proxy_impl_name_;
this->full_direct_proxy_impl_name_ = 0;
- delete [] this->base_proxy_broker_;
- this->base_proxy_broker_ = 0;
-
- delete [] this->remote_proxy_broker_;
- this->remote_proxy_broker_ = 0;
-
- delete [] this->strategized_proxy_broker_;
- this->strategized_proxy_broker_ = 0;
-
- delete [] this->full_base_proxy_broker_name_;
- this->full_base_proxy_broker_name_ = 0;
-
- delete [] this->full_remote_proxy_broker_name_;
- this->full_remote_proxy_broker_name_ = 0;
-
- delete [] this->full_strategized_proxy_broker_name_;
- this->full_strategized_proxy_broker_name_ = 0;
-
delete [] this->client_scope_;
this->client_scope_ = 0;
diff --git a/TAO/TAO_IDL/be/be_interface.cpp b/TAO/TAO_IDL/be/be_interface.cpp
index 81ec9046965..b0028396a15 100644
--- a/TAO/TAO_IDL/be/be_interface.cpp
+++ b/TAO/TAO_IDL/be/be_interface.cpp
@@ -50,15 +50,11 @@
const char *be_interface::suffix_table_[] =
{
"_Proxy_Impl",
- "_Proxy_Broker"
};
const char *be_interface::tag_table_[] =
{
- "_ThruPOA",
"_Direct",
- "_Remote",
- "_Strategized",
"_TAO_"
};
@@ -88,18 +84,8 @@ be_interface::be_interface (UTL_ScopedName *n,
n),
be_type (AST_Decl::NT_interface,
n),
- base_proxy_impl_name_ (0),
- remote_proxy_impl_name_ (0),
direct_proxy_impl_name_ (0),
- full_base_proxy_impl_name_ (0),
- full_remote_proxy_impl_name_ (0),
full_direct_proxy_impl_name_ (0),
- base_proxy_broker_ (0),
- remote_proxy_broker_ (0),
- strategized_proxy_broker_ (0),
- full_base_proxy_broker_name_ (0),
- full_remote_proxy_broker_name_ (0),
- full_strategized_proxy_broker_name_ (0),
client_scope_ (0),
flat_client_scope_ (0),
server_scope_ (0),
@@ -365,13 +351,13 @@ be_interface::compute_coll_names (int type,
// in the loop.
j.next ();
- // We add the POA_ preffix only if the first component is not
+ // We add the POA_ prefix only if the first component is not
// the global scope...
if (ACE_OS::strcmp (item, "") != 0)
{
if (!j.is_done ())
{
- // We only add the POA_ preffix if there are more than
+ // We only add the POA_ prefix if there are more than
// two components in the name, in other words, if the
// class is inside some scope.
if (!poa_added)
@@ -669,6 +655,7 @@ be_interface::gen_stub_ctor (TAO_OutStream *os)
// Generate the constructor from stub and servant.
if (!this->is_local ())
{
+ bool const abstract = this->is_abstract ();
*os << be_nl_2
<< "ACE_INLINE" << be_nl;
*os << this->name () << "::"
@@ -677,7 +664,8 @@ be_interface::gen_stub_ctor (TAO_OutStream *os)
<< "TAO_Stub *objref," << be_nl
<< "::CORBA::Boolean _tao_collocated," << be_nl
<< "TAO_Abstract_ServantBase *servant," << be_nl
- << "TAO_ORB_Core *oc)" << be_uidt_nl
+ << "TAO_ORB_Core *" << (abstract ? "" : "oc") << ")"
+ << be_uidt_nl
<< ": ";
bool the_check =
@@ -740,29 +728,7 @@ be_interface::gen_stub_ctor (TAO_OutStream *os)
*os << "::CORBA::Object (objref, _tao_collocated, servant, oc)";
}
- if (be_global->gen_direct_collocation() || be_global->gen_thru_poa_collocation ())
- {
- *os << "," << be_nl
- << "the" << this->base_proxy_broker_name () << "_ (0)"
- << be_uidt << be_uidt;
- }
-
- *os << be_nl << "{" << be_idt_nl;
-
- if (be_global->gen_direct_collocation() || be_global->gen_thru_poa_collocation ())
- {
- *os << "this->" << this->flat_name ()
- << "_setup_collocation ();";
- }
-
- if (this->is_abstract ())
- {
- *os << be_nl
- << "ACE_UNUSED_ARG (oc);";
- }
-
- *os << be_uidt_nl
- << "}";
+ *os << be_uidt << be_uidt_nl << "{" << be_nl << "}";
}
}
@@ -867,8 +833,7 @@ private:
};
TAO_IDL_Gen_OpTable_Worker::TAO_IDL_Gen_OpTable_Worker (
- const char *skeleton_name
- )
+ const char *skeleton_name)
: skeleton_name_ (skeleton_name)
{
}
@@ -1286,7 +1251,7 @@ be_interface::gen_optable_entries (be_interface *derived_interface,
const char *full_skeleton_name,
TAO_OutStream *os)
{
- int lookup_strategy =
+ int const lookup_strategy =
be_global->lookup_strategy ();
if (lookup_strategy == BE_GlobalData::TAO_DYNAMIC_HASH)
@@ -1326,7 +1291,7 @@ be_interface::gen_optable_entries (be_interface *derived_interface,
*os << "}," << be_nl;
- derived_interface->skel_count_++;
+ ++derived_interface->skel_count_;
}
else if (d->node_type () == AST_Decl::NT_attr)
{
@@ -1355,7 +1320,7 @@ be_interface::gen_optable_entries (be_interface *derived_interface,
*os << "}," << be_nl;
- derived_interface->skel_count_++;
+ ++derived_interface->skel_count_;
if (!attr->readonly ())
{
@@ -1377,7 +1342,7 @@ be_interface::gen_optable_entries (be_interface *derived_interface,
*os << "}," << be_nl;
- derived_interface->skel_count_++;
+ ++derived_interface->skel_count_;
}
}
}
@@ -1515,20 +1480,17 @@ be_interface::gen_collocated_skel_body (be_interface *derived,
<< "ACE_INLINE void" << be_nl
<< derived->full_direct_proxy_impl_name ()
<< "::" << prefix << d->local_name () << " ("
- << be_idt << be_idt_nl
+ << be_idt_nl
<< "TAO_Abstract_ServantBase *servant," << be_nl
- << "TAO::Argument ** args," << be_nl
- << "int num_args)" << be_uidt_nl;
+ << "TAO::Argument ** args)" << be_uidt_nl;
- *os << be_uidt_nl
- << "{" << be_idt_nl
+ *os << "{" << be_idt_nl
<< ancestor->full_direct_proxy_impl_name ()
<< "::" << prefix << d->local_name () << " ("
- << be_idt << be_idt_nl
+ << be_idt_nl
<< "servant," << be_nl
- << "args," << be_nl
- << "num_args);" << be_uidt
- << be_uidt << be_uidt_nl
+ << "args);" << be_uidt
+ << be_uidt_nl
<< "}"<< be_nl;
}
@@ -1592,7 +1554,6 @@ be_interface::traverse_inheritance_graph (
this->insert_queue.reset ();
this->del_queue.reset ();
-
// Insert ourselves in the queue.
if (insert_queue.enqueue_tail (this) == -1)
{
@@ -2198,7 +2159,6 @@ be_interface::gen_skel_helper (be_interface *derived,
// attributes defined by "ancestor", become methods on the derived
// class which call the corresponding method of the base class by
// doing the proper casting.
-
for (UTL_ScopeActiveIterator si (ancestor, UTL_Scope::IK_decls);
!si.is_done ();
si.next ())
@@ -2229,7 +2189,7 @@ be_interface::gen_skel_helper (be_interface *derived,
*os << "static void" << be_nl
<< d->local_name ()
<< "_skel (" << be_idt << be_idt_nl
- << "TAO_ServerRequest & server_request, " << be_nl
+ << "TAO_ServerRequest & server_request," << be_nl
<< "void * servant_upcall," << be_nl
<< "void * servant);" << be_uidt
<< be_uidt;
@@ -2241,14 +2201,14 @@ be_interface::gen_skel_helper (be_interface *derived,
<< "void" << be_nl
<< derived->full_skel_name () << "::"
<< d->local_name ()
- << "_skel (" << be_idt << be_idt_nl
+ << "_skel (" << be_idt_nl
<< "TAO_ServerRequest & server_request," << be_nl
<< "void * servant_upcall," << be_nl
- << "void * servant)" << be_uidt
+ << "void * servant)"
<< be_uidt_nl
<< "{" << be_idt_nl;
- *os << ancestor->full_skel_name ()
+ *os << ancestor->full_skel_name ()
<< " * const impl =" << be_idt_nl
<< "static_cast<"
<< derived->full_skel_name ()
@@ -2256,11 +2216,11 @@ be_interface::gen_skel_helper (be_interface *derived,
*os << ancestor->full_skel_name ()
<< "::" << d->local_name ()
- << "_skel (" << be_idt << be_idt_nl
+ << "_skel (" << be_idt_nl
<< "server_request," << be_nl
<< "servant_upcall," << be_nl
<< "impl);" << be_uidt
- << be_uidt << be_uidt_nl
+ << be_uidt_nl
<< "}";
}
}
@@ -2300,7 +2260,7 @@ be_interface::gen_skel_helper (be_interface *derived,
<< be_uidt_nl
<< "{" << be_idt_nl;
- *os << ancestor->full_skel_name ()
+ *os << ancestor->full_skel_name ()
<< " * const impl = static_cast<"
<< derived->full_skel_name ()
<< " *> (servant);" << be_nl;
@@ -2406,8 +2366,7 @@ be_interface::gen_colloc_op_decl_helper (be_interface *derived,
*os << "static void" << be_nl
<< d->local_name () << " (" << be_idt_nl
<< "TAO_Abstract_ServantBase *servant, "
- << "TAO::Argument **args, "
- << "int num_args);" << be_uidt_nl;
+ << "TAO::Argument **args);" << be_uidt_nl;
}
else if (d->node_type () == AST_Decl::NT_attr)
{
@@ -2422,8 +2381,7 @@ be_interface::gen_colloc_op_decl_helper (be_interface *derived,
*os << "static void" << be_nl
<< "_get_" << d->local_name () << " (" << be_idt_nl
<< "TAO_Abstract_ServantBase *servant, "
- << "TAO::Argument **args, "
- << "int num_args);" << be_uidt_nl;
+ << "TAO::Argument **args);" << be_uidt_nl;
if (!attr->readonly ())
{
@@ -2435,8 +2393,7 @@ be_interface::gen_colloc_op_decl_helper (be_interface *derived,
<< "_set_" << d->local_name () << " ("
<< be_idt_nl
<< "TAO_Abstract_ServantBase *servant, "
- << "TAO::Argument **args, "
- << "int num_args);" << be_uidt_nl;
+ << "TAO::Argument **args);" << be_uidt_nl;
}
}
}
@@ -2728,42 +2685,12 @@ be_interface::destroy (void)
delete [] this->relative_skel_name_;
this->relative_skel_name_ = 0;
- delete [] this->base_proxy_impl_name_;
- this->base_proxy_impl_name_ = 0;
-
- delete [] this->remote_proxy_impl_name_;
- this->remote_proxy_impl_name_ = 0;
-
delete [] this->direct_proxy_impl_name_;
this->direct_proxy_impl_name_ = 0;
- delete [] this->full_base_proxy_impl_name_;
- this->full_base_proxy_impl_name_ = 0;
-
- delete [] this->full_remote_proxy_impl_name_;
- this->full_remote_proxy_impl_name_ = 0;
-
delete [] this->full_direct_proxy_impl_name_;
this->full_direct_proxy_impl_name_ = 0;
- delete [] this->base_proxy_broker_;
- this->base_proxy_broker_ = 0;
-
- delete [] this->remote_proxy_broker_;
- this->remote_proxy_broker_ = 0;
-
- delete [] this->strategized_proxy_broker_;
- this->strategized_proxy_broker_ = 0;
-
- delete [] this->full_base_proxy_broker_name_;
- this->full_base_proxy_broker_name_ = 0;
-
- delete [] this->full_remote_proxy_broker_name_;
- this->full_remote_proxy_broker_name_ = 0;
-
- delete [] this->full_strategized_proxy_broker_name_;
- this->full_strategized_proxy_broker_name_ = 0;
-
delete [] this->client_scope_;
this->client_scope_ = 0;
@@ -3043,34 +2970,6 @@ be_interface::gen_is_a_ancestors (TAO_OutStream *os)
return 0;
}
-void
-be_interface::gen_parent_collocation (TAO_OutStream *os)
-{
- long n_parents = this->n_inherits ();
- bool has_parent = false;
- AST_Type **parents = this->inherits ();
-
- if (n_parents > 0)
- {
- for (long i = 0; i < n_parents; ++i)
- {
- be_interface *inherited =
- be_interface::narrow_from_decl (parents[i]);
-
- if (!has_parent)
- {
- *os << be_nl;
- }
-
- has_parent = true;
-
- *os << be_nl
- << "this->" << inherited->flat_name ()
- << "_setup_collocation" << " ();";
- }
- }
-}
-
// =================================================================
class Facet_Op_Attr_Helper
@@ -3379,84 +3278,6 @@ be_interface::is_ami4ccm_rh (bool val)
}
const char *
-be_interface::base_proxy_impl_name (void)
-{
- if (this->base_proxy_impl_name_ == 0)
- {
- this->base_proxy_impl_name_ =
- this->create_with_prefix_suffix (
- this->tag_table_[GC_PREFIX],
- this->local_name (),
- this->suffix_table_[PROXY_IMPL]);
- }
-
- return this->base_proxy_impl_name_;
-}
-
-const char *
-be_interface::full_base_proxy_impl_name (void)
-{
- if (this->full_base_proxy_impl_name_ == 0)
- {
- const char *scope = this->client_enclosing_scope ();
- const char *base_name =
- this->base_proxy_impl_name ();
- size_t length =
- ACE_OS::strlen (scope) + ACE_OS::strlen (base_name);
-
- ACE_NEW_RETURN (this->full_base_proxy_impl_name_,
- char[length + 1],
- 0);
-
- ACE_OS::strcpy (this->full_base_proxy_impl_name_,
- scope);
- ACE_OS::strcat (this->full_base_proxy_impl_name_,
- base_name);
- }
-
- return this->full_base_proxy_impl_name_;
-}
-
-const char *
-be_interface::remote_proxy_impl_name (void)
-{
- if (this->remote_proxy_impl_name_ == 0)
- {
- this->remote_proxy_impl_name_ =
- this->create_with_prefix_suffix (
- this->tag_table_[GC_PREFIX],
- this->local_name (),
- this->suffix_table_[PROXY_IMPL],
- this->tag_table_[REMOTE]);
- }
-
- return this->remote_proxy_impl_name_;
-}
-
-const char *
-be_interface::full_remote_proxy_impl_name (void)
-{
- if (this->full_remote_proxy_impl_name_ == 0)
- {
- const char *scope = this->client_enclosing_scope ();
- const char *base_name = this->remote_proxy_impl_name ();
- size_t length =
- ACE_OS::strlen (scope) + ACE_OS::strlen (base_name);
-
- ACE_NEW_RETURN (this->full_remote_proxy_impl_name_,
- char[length + 1],
- 0);
-
- ACE_OS::strcpy (this->full_remote_proxy_impl_name_,
- scope);
- ACE_OS::strcat (this->full_remote_proxy_impl_name_,
- base_name);
- }
-
- return this->full_remote_proxy_impl_name_;
-}
-
-const char *
be_interface::direct_proxy_impl_name (void)
{
if (this->direct_proxy_impl_name_ == 0)
@@ -3498,125 +3319,6 @@ be_interface::full_direct_proxy_impl_name (void)
const char *
-be_interface::base_proxy_broker_name (void)
-{
- if (this->base_proxy_broker_ == 0)
- {
- this->base_proxy_broker_ =
- this->create_with_prefix_suffix (
- this->tag_table_[GC_PREFIX],
- this->local_name (),
- this->suffix_table_[PROXY_BROKER]);
- }
-
- return this->base_proxy_broker_;
-}
-
-const char *
-be_interface::full_base_proxy_broker_name (void)
-{
- if (this->full_base_proxy_broker_name_ == 0)
- {
- const char *scope = this->client_enclosing_scope ();
- const char *base_name = this->base_proxy_broker_name ();
- size_t length =
- ACE_OS::strlen (scope) + ACE_OS::strlen (base_name);
-
- ACE_NEW_RETURN (this->full_base_proxy_broker_name_,
- char[length + 1],
- 0);
-
- ACE_OS::strcpy (this->full_base_proxy_broker_name_,
- scope);
- ACE_OS::strcat (this->full_base_proxy_broker_name_,
- base_name);
- }
-
- return this->full_base_proxy_broker_name_;
-}
-
-
-const char *
-be_interface::remote_proxy_broker_name (void)
-{
- if (this->remote_proxy_broker_ == 0)
- {
- this->remote_proxy_broker_ =
- this->create_with_prefix_suffix (
- this->tag_table_[GC_PREFIX],
- this->local_name (),
- this->suffix_table_[PROXY_BROKER],
- this->tag_table_[REMOTE]);
- }
-
- return this->remote_proxy_broker_;
-}
-
-const char *
-be_interface::full_remote_proxy_broker_name (void)
-{
- if (this->full_remote_proxy_broker_name_ == 0)
- {
- const char *scope = this->client_enclosing_scope ();
- const char *base_name = this->remote_proxy_broker_name ();
- size_t length =
- ACE_OS::strlen (scope) + ACE_OS::strlen (base_name);
-
- ACE_NEW_RETURN (this->full_remote_proxy_broker_name_,
- char[length + 1],
- 0);
-
- ACE_OS::strcpy (this->full_remote_proxy_broker_name_,
- scope);
- ACE_OS::strcat (this->full_remote_proxy_broker_name_,
- base_name);
- }
-
- return this->full_remote_proxy_broker_name_;
-}
-
-
-const char *
-be_interface::strategized_proxy_broker_name (void)
-{
- if (this->strategized_proxy_broker_ == 0)
- {
- this->strategized_proxy_broker_ =
- this->create_with_prefix_suffix (
- this->tag_table_[GC_PREFIX],
- this->local_name (),
- this->suffix_table_[PROXY_BROKER],
- this->tag_table_[STRATEGIZED]);
- }
-
- return this->strategized_proxy_broker_;
-}
-
-const char *
-be_interface::full_strategized_proxy_broker_name (void)
-{
- if (this->full_strategized_proxy_broker_name_ == 0)
- {
- const char *scope = this->server_enclosing_scope ();
- const char *base_name =
- this->strategized_proxy_broker_name ();
- size_t length =
- ACE_OS::strlen (scope) + ACE_OS::strlen (base_name);
-
- ACE_NEW_RETURN (this->full_strategized_proxy_broker_name_,
- char[length + 1],
- 0);
-
- ACE_OS::strcpy (this->full_strategized_proxy_broker_name_,
- scope);
- ACE_OS::strcat (this->full_strategized_proxy_broker_name_,
- base_name);
- }
-
- return this->full_strategized_proxy_broker_name_;
-}
-
-const char *
be_interface::client_enclosing_scope (void)
{
if (this->client_scope_ == 0)
diff --git a/TAO/TAO_IDL/be/be_type.cpp b/TAO/TAO_IDL/be/be_type.cpp
index 4f8547ad54b..6ba88d65d0f 100644
--- a/TAO/TAO_IDL/be/be_type.cpp
+++ b/TAO/TAO_IDL/be/be_type.cpp
@@ -28,6 +28,7 @@
#include "utl_identifier.h"
#include "idl_defines.h"
#include "nr_extern.h"
+#include <TAO_IDL/be_include/be_helper.h>
be_type::be_type (AST_Decl::NodeType nt,
UTL_ScopedName *n)
@@ -274,7 +275,7 @@ be_type::gen_common_varout (TAO_OutStream *os)
<< be_idt << be_idt_nl
<< this->local_name () << be_uidt_nl
<< ">" << be_uidt_nl
- << this->local_name () << "_var;" << be_uidt_nl << be_nl;
+ << this->local_name () << "_var;" << be_uidt << be_nl_2;
if (st == AST_Type::FIXED)
{
@@ -304,17 +305,14 @@ be_type::gen_stub_decls (TAO_OutStream *os)
*os << be_nl_2
<< "// TAO_IDL - Generated from" << be_nl
- << "// " << __FILE__ << ":" << __LINE__;
-
- *os << be_nl;
+ << "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
AST_Interface *i = AST_Interface::narrow_from_decl (this);
AST_ValueType *v = AST_ValueType::narrow_from_decl (this);
if (i != 0)
{
- *os << be_nl
- << "typedef " << this->local_name ()
+ *os << "typedef " << this->local_name ()
<< (v == 0 ? "_ptr" : " *") << " _ptr_type;";
}
diff --git a/TAO/TAO_IDL/be/be_valuetype.cpp b/TAO/TAO_IDL/be/be_valuetype.cpp
index badb282a429..fc16fb8e30d 100644
--- a/TAO/TAO_IDL/be/be_valuetype.cpp
+++ b/TAO/TAO_IDL/be/be_valuetype.cpp
@@ -779,94 +779,5 @@ be_valuetype::abstract_supports_helper (be_interface *,
return 0;
}
-int
-be_valuetype::gen_skel_helper (be_interface *concrete,
- be_interface *ancestor,
- TAO_OutStream *os)
-{
- // If derived and ancestor are same, skip it.
- if (concrete == ancestor)
- {
- return 0;
- }
-
- // If an operation or an attribute is abstract (declared in an
- // abstract interface), we will either generate the full
- // definition (if there are no concrete interfaces between the
- // abstract ancestor and us) or, if there is a concrete ancestor
- // in between, we will catch its definition elsewhere in this
- // traversal.
- if (ancestor->is_abstract ())
- {
- return 0;
- }
-
- // Else generate code that does the cast to the appropriate type.
-
- if (ancestor->nmembers () > 0)
- {
- // If there are elements in ancestor scope i.e., any operations and
- // attributes defined by "ancestor", become methods on the derived class
- // which call the corresponding method of the base class by doing the
- // proper casting.
-
- for (UTL_ScopeActiveIterator si (ancestor, UTL_Scope::IK_decls);
- !si.is_done ();
- si.next ())
- {
- // Get the next AST decl node
- AST_Decl *d = si.item ();
-
- if (d->node_type () == AST_Decl::NT_op)
- {
- // Start from current indentation level.
- os->indent ();
-
- *os << "// TAO_IDL - Generated from" << be_nl
- << "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
-
- if (os->stream_type () == TAO_OutStream::TAO_SVR_HDR)
- {
- // Generate the static method corresponding to this method.
- *os << "static void " << d->local_name ()
- << "_skel (" << be_idt << be_idt_nl
- << "TAO_ServerRequest &req, " << be_nl
- << "void *obj," << be_nl
- << "void *context" << be_uidt_nl
- << ");" << be_uidt << "\n\n";
- }
- else
- { // Generate code in the inline file.
- // Generate the static method corresponding to this method.
- *os << "ACE_INLINE void "
- << concrete->full_skel_name () << "::"
- << d->local_name ()
- << "_skel (" << be_idt << be_idt_nl
- << "TAO_ServerRequest &req," << be_nl
- << "void *obj," << be_nl
- << "void *context" << be_uidt_nl
- << ")" << be_uidt_nl
- << "{" << be_idt_nl;
- *os << ancestor->full_skel_name ()
- << "_ptr impl = ("
- << concrete->full_skel_name ()
- << "_ptr) obj;" << be_nl;
- *os << ancestor->full_skel_name ()
- << "::" << d->local_name ()
- << "_skel (" << be_idt << be_idt_nl
- << "req," << be_nl
- << "(" << ancestor->full_skel_name ()
- << "_ptr) impl," << be_nl
- << "context" << be_uidt_nl
- << ");" << be_uidt << be_uidt_nl
- << "}\n";
- }
- }
- } // End of scope iterator.
- }
-
- return 0;
-}
-
IMPL_NARROW_FROM_DECL (be_valuetype)
IMPL_NARROW_FROM_SCOPE (be_valuetype)
diff --git a/TAO/TAO_IDL/be/be_visitor_array/any_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_array/any_op_cs.cpp
index 79dbcaaad22..05d999bc283 100644
--- a/TAO/TAO_IDL/be/be_visitor_array/any_op_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_array/any_op_cs.cpp
@@ -41,7 +41,7 @@ be_visitor_array_any_op_cs::visit_array (be_array *node)
TAO_OutStream *os = this->ctx_->stream ();
*os << be_nl_2
- << "// TAO_IDL - Generated from " << be_nl
+ << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
*os << be_global->core_versioning_begin () << be_nl;
diff --git a/TAO/TAO_IDL/be/be_visitor_array/array_ch.cpp b/TAO/TAO_IDL/be/be_visitor_array/array_ch.cpp
index 47c6384e8f8..498d8cccb1f 100644
--- a/TAO/TAO_IDL/be/be_visitor_array/array_ch.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_array/array_ch.cpp
@@ -52,7 +52,7 @@ int be_visitor_array_ch::visit_array (be_array *node)
AST_Decl::NodeType nt = bt->node_type ();
- *os << be_nl_2 << "// TAO_IDL - Generated from " << be_nl
+ *os << be_nl_2 << "// TAO_IDL - Generated from" << be_nl
<< "// " __FILE__ << ":" << __LINE__;
// If we contain an anonymous sequence,
diff --git a/TAO/TAO_IDL/be/be_visitor_array/array_cs.cpp b/TAO/TAO_IDL/be/be_visitor_array/array_cs.cpp
index 70bcfd15cbb..f6c3eeb1137 100644
--- a/TAO/TAO_IDL/be/be_visitor_array/array_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_array/array_cs.cpp
@@ -154,7 +154,7 @@ int be_visitor_array_cs::visit_array (be_array *node)
*os << "}" << be_nl_2;
// copy method.
- *os << "void " << be_nl;
+ *os << "void" << be_nl;
*os << fname << "_copy (" << be_idt << be_idt_nl
<< fname << "_slice * _tao_to," << be_nl
<< "const " << fname << "_slice *_tao_from)" << be_uidt
diff --git a/TAO/TAO_IDL/be/be_visitor_component/component_ex_idl.cpp b/TAO/TAO_IDL/be/be_visitor_component/component_ex_idl.cpp
index 0a6d0a0e3cc..1d401a243f7 100644
--- a/TAO/TAO_IDL/be/be_visitor_component/component_ex_idl.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_component/component_ex_idl.cpp
@@ -89,10 +89,12 @@ be_visitor_component_ex_idl::visit_component (
os_ << "local interface " << lname << "_Exec" << be_idt_nl
<< ": " << global << sname << "::CCM_" << lname
- << "," << be_idt_nl
- << "::Components::" << be_global->ciao_container_type ()
- << "Component" << be_uidt << be_uidt_nl
- << "{" << be_nl
+ << "," << be_idt_nl;
+
+ os_ << "::Components::" << be_global->ciao_container_type ()
+ << "Component" << be_uidt << be_uidt_nl;
+
+ os_ << "{" << be_nl
<< "};";
os_ << be_uidt_nl
diff --git a/TAO/TAO_IDL/be/be_visitor_component/component_exh.cpp b/TAO/TAO_IDL/be/be_visitor_component/component_exh.cpp
index 9b652118d59..b89e9cb106b 100644
--- a/TAO/TAO_IDL/be/be_visitor_component/component_exh.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_component/component_exh.cpp
@@ -30,6 +30,11 @@ be_visitor_component_exh::~be_visitor_component_exh (void)
int
be_visitor_component_exh::visit_component (be_component *node)
{
+ if (node->imported ())
+ {
+ return 0;
+ }
+
this->node_ = node;
/// CIDL-generated namespace used 'CIDL_' + composition name.
diff --git a/TAO/TAO_IDL/be/be_visitor_component/component_exs.cpp b/TAO/TAO_IDL/be/be_visitor_component/component_exs.cpp
index 38b2f4ed57f..d48f2e0cc2e 100644
--- a/TAO/TAO_IDL/be/be_visitor_component/component_exs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_component/component_exs.cpp
@@ -30,6 +30,12 @@ be_visitor_component_exs::~be_visitor_component_exs (void)
int
be_visitor_component_exs::visit_component (be_component *node)
{
+
+ if (node->imported ())
+ {
+ return 0;
+ }
+
node_ = node;
/// CIDL-generated namespace used 'CIDL_' + composition name.
diff --git a/TAO/TAO_IDL/be/be_visitor_component/context_svs.cpp b/TAO/TAO_IDL/be/be_visitor_component/context_svs.cpp
index f5f2749fe00..418165944e4 100644
--- a/TAO/TAO_IDL/be/be_visitor_component/context_svs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_component/context_svs.cpp
@@ -488,8 +488,8 @@ be_visitor_context_svs::gen_uses_multiplex (
<< "retv = iter->second;" << be_nl
<< "n = this->ciao_uses_" << port_name
<< "_.erase (key);" << be_uidt_nl
- << "}" << be_uidt_nl
- << "}" << be_uidt;
+ << "}" << be_uidt << be_uidt_nl
+ << "}";
os_ << be_nl_2
<< "if (n != 1UL)" << be_idt_nl
diff --git a/TAO/TAO_IDL/be/be_visitor_component/executor_ex_idl.cpp b/TAO/TAO_IDL/be/be_visitor_component/executor_ex_idl.cpp
index afe0d6f703d..c614714265e 100644
--- a/TAO/TAO_IDL/be/be_visitor_component/executor_ex_idl.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_component/executor_ex_idl.cpp
@@ -41,8 +41,6 @@ be_visitor_executor_ex_idl::visit_component (
if (base == 0)
{
os_ << "::Components::EnterpriseComponent";
-
- this->gen_supported ();
}
else
{
@@ -57,6 +55,8 @@ be_visitor_executor_ex_idl::visit_component (
<< base->original_local_name ()->get_string ();
}
+ this->gen_supported ();
+
os_ << be_uidt_nl
<< "{" << be_idt;
diff --git a/TAO/TAO_IDL/be/be_visitor_component/executor_exh.cpp b/TAO/TAO_IDL/be/be_visitor_component/executor_exh.cpp
index fe294044a14..287ee04e09d 100644
--- a/TAO/TAO_IDL/be/be_visitor_component/executor_exh.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_component/executor_exh.cpp
@@ -11,6 +11,7 @@
* @author Jeff Parsons
*/
//=============================================================================
+#include <TAO_IDL/be_include/be_helper.h>
be_visitor_executor_exh::be_visitor_executor_exh (
be_visitor_context *ctx)
@@ -49,6 +50,10 @@ be_visitor_executor_exh::visit_attribute (be_attribute *node)
int
be_visitor_executor_exh::visit_component (be_component *node)
{
+ if (node->imported ())
+ {
+ return 0;
+ }
this->node_ = node;
AST_Decl *scope = ScopeAsDecl (node->defined_in ());
ACE_CString sname_str (scope->full_name ());
@@ -67,11 +72,15 @@ be_visitor_executor_exh::visit_component (be_component *node)
<< comment_end_border_;
os_ << be_nl_2
- << "class " << lname
+ << "class ";
+
+ os_ << lname
<< "_exec_i" << be_idt_nl
- << ": public virtual " << lname << "_Exec," << be_idt_nl
- << "public virtual ::CORBA::LocalObject"
- << be_uidt << be_uidt_nl
+ << ": public virtual " << lname << "_Exec," << be_idt_nl;
+
+ os_ << "public virtual ::CORBA::LocalObject";
+
+ os_ << be_uidt << be_uidt_nl
<< "{" << be_nl
<< "public:" << be_idt_nl;
@@ -120,8 +129,7 @@ be_visitor_executor_exh::visit_component (be_component *node)
-1);
}
- os_
- << "/** @name Operations from Components::" << be_global->ciao_container_type ()
+ os_ << "/** @name Operations from Components::" << be_global->ciao_container_type ()
<< "Component. */" << be_nl
<< "//@{";
diff --git a/TAO/TAO_IDL/be/be_visitor_component/executor_exs.cpp b/TAO/TAO_IDL/be/be_visitor_component/executor_exs.cpp
index 602e197d672..c5715a76d7f 100644
--- a/TAO/TAO_IDL/be/be_visitor_component/executor_exs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_component/executor_exs.cpp
@@ -140,6 +140,10 @@ be_visitor_executor_exs::visit_attribute (be_attribute *node)
int
be_visitor_executor_exs::visit_component (be_component *node)
{
+ if (node->imported ())
+ {
+ return 0;
+ }
node_ = node;
const char *lname = node->local_name ();
@@ -184,6 +188,10 @@ be_visitor_executor_exs::visit_component (be_component *node)
{
os_ << be_uidt << be_uidt_nl;
}
+ else
+ {
+ os_ << be_nl;
+ }
os_ << "{" << be_nl
<< "}";
diff --git a/TAO/TAO_IDL/be/be_visitor_component/executor_exs_attr_init.cpp b/TAO/TAO_IDL/be/be_visitor_component/executor_exs_attr_init.cpp
index b6a6277fff5..c723bf9a61d 100644
--- a/TAO/TAO_IDL/be/be_visitor_component/executor_exs_attr_init.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_component/executor_exs_attr_init.cpp
@@ -28,6 +28,11 @@ int
be_visitor_executor_exs_attr_init::visit_attribute (
be_attribute *node)
{
+ if (node->imported ())
+ {
+ return 0;
+ }
+
AST_Decl::NodeType nt = this->node_->node_type ();
// Executor attribute code generated for porttype attributes
@@ -63,6 +68,10 @@ be_visitor_executor_exs_attr_init::visit_attribute (
int
be_visitor_executor_exs_attr_init::pre_process (be_decl *node)
{
+ if (node->imported ())
+ {
+ return 0;
+ }
AST_Decl::NodeType nt = this->node_->node_type ();
// Executor attribute code generated for porttype attributes
diff --git a/TAO/TAO_IDL/be/be_visitor_component/servant_svh.cpp b/TAO/TAO_IDL/be/be_visitor_component/servant_svh.cpp
index 24115152589..0709be18cd0 100644
--- a/TAO/TAO_IDL/be/be_visitor_component/servant_svh.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_component/servant_svh.cpp
@@ -389,7 +389,7 @@ be_visitor_servant_svh::gen_non_type_specific (void)
<< "connect (const char * name, ::CORBA::Object_ptr connection);";
os_ << be_nl_2
- << "virtual ::CORBA::Object_ptr " << be_nl
+ << "virtual ::CORBA::Object_ptr" << be_nl
<< "disconnect (const char * name, ::Components::Cookie * ck);";
}
diff --git a/TAO/TAO_IDL/be/be_visitor_component/servant_svs.cpp b/TAO/TAO_IDL/be/be_visitor_component/servant_svs.cpp
index cd9943a1671..be4df8c1ce9 100644
--- a/TAO/TAO_IDL/be/be_visitor_component/servant_svs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_component/servant_svs.cpp
@@ -293,49 +293,48 @@ be_visitor_servant_svs::visit_provides (be_provides *node)
}
os_ << be_nl_2
- << "void" << be_nl
- << node_->local_name () << "_Servant::setup_"
- << port_name << "_i (void)" << be_nl
- << "{" << be_idt_nl
- << "typedef" << be_idt_nl
- << "::CIAO::Port_Activator_T<" << be_idt_nl
- << "::CIAO_FACET" << prefix_connector
- << scope->flat_name () << "::" << lname
- << "_Servant," << be_nl
- << global << sname << "::CCM_" << lname << "," << be_nl
- << "::Components::CCMContext," << be_nl
- << node_->local_name () << "_Servant>" << be_uidt_nl
- << "MACRO_MADNESS_TYPEDEF;" << be_uidt_nl << be_nl
- << "MACRO_MADNESS_TYPEDEF * tmp = 0;" << be_nl
- << "ACE_CString obj_id (this->ins_name_);" << be_nl
- << "obj_id += \"_" << port_name << "\";" << be_nl_2
- << "ACE_NEW_THROW_EX (" << be_idt_nl
- << "tmp," << be_nl
- << "MACRO_MADNESS_TYPEDEF (" << be_idt_nl
- << "obj_id.c_str ()," << be_nl
- << "\"" << port_name << "\"," << be_nl
- << "::CIAO::Port_Activator_Types::FACET," << be_nl
- << "0," << be_nl
- << "this->context_," << be_nl
- << "this)," << be_uidt_nl
- << "::CORBA::NO_MEMORY ());" << be_uidt_nl << be_nl
- << "::CIAO::Port_Activator_var pa = tmp;" << be_nl_2
- << "::CIAO::Servant_Activator_var sa =" << be_idt_nl
- << "this->container_->ports_servant_activator ();"
- << be_uidt_nl << be_nl
- << "if (sa->register_port_activator (pa.in ()))"
- << be_idt_nl
- << "{" << be_idt_nl
- << "::CORBA::Object_var obj =" << be_idt_nl
- << "this->container_->generate_reference (" << be_idt_nl
- << "obj_id.c_str ()," << be_nl
- << "\"" << obj->repoID () << "\"," << be_nl
- << "::CIAO::Container_Types::FACET_CONSUMER_t);"
- << be_uidt_nl << be_uidt_nl
- << "this->add_facet (\"" << port_name << "\", obj.in ());"
- << be_uidt_nl
- << "}" << be_uidt << be_uidt_nl
- << "}";
+ << "void" << be_nl
+ << node_->local_name () << "_Servant::setup_"
+ << port_name << "_i (void)" << be_nl
+ << "{" << be_idt_nl
+ << "ACE_CString obj_id (this->ins_name_);" << be_nl
+ << "obj_id += \"_" << port_name << "\";" << be_nl_2
+ << "::CIAO::Container_var cnt_safe =" << be_idt_nl
+ << "::CIAO::Container::_duplicate ("
+ << "this->container_.in ());" << be_uidt_nl << be_nl
+ << "if (::CORBA::is_nil (cnt_safe.in ()))" << be_idt_nl
+ << "{" << be_idt_nl << "throw ::CORBA::INV_OBJREF ();" << be_uidt_nl
+ << "}" << be_uidt_nl << be_nl
+ << "PortableServer::POA_var POA = cnt_safe->the_port_POA ();" << be_nl
+ << "::CORBA::Object_var tmp =" << be_idt_nl
+ << "this->get_facet_executor (\"" << port_name << "\");"<< be_uidt_nl << be_nl
+ << "::CCM_" << lname << "_var tmp_var = "<< global << sname <<"::CCM_" << lname
+ << "::_narrow (tmp.in());" << be_nl
+ << "::CIAO_FACET" << prefix_connector
+ << scope->flat_name () << "::" << lname
+ << "_Servant *" << port_name << "_servant_impl = 0;" << be_nl
+ << "ACE_NEW_THROW_EX (" << be_idt_nl
+ << port_name << "_servant_impl," << be_nl
+ << "::CIAO_FACET" << prefix_connector
+ << scope->flat_name () << "::" << lname << "_Servant (" << be_idt_nl
+ << "tmp_var.in(), " << be_nl
+ << "this->context_)," << be_uidt_nl
+ << "CORBA::NO_MEMORY ());" << be_uidt_nl << be_nl
+ << "PortableServer::ServantBase_var safe_base_servant ("
+ << port_name << "_servant_impl);" << be_nl << be_nl
+ << "PortableServer::ObjectId_var " << port_name << "_servant_oid =" << be_idt_nl
+ << "PortableServer::string_to_ObjectId (obj_id.c_str());" << be_uidt_nl << be_nl
+ << "POA->activate_object_with_id(" << port_name << "_servant_oid.in(),"
+ << port_name << "_servant_impl);" << be_nl
+ << "::CORBA::Object_var " << port_name << "_servant_impl_obj = " << be_idt_nl
+ << "cnt_safe->generate_reference ( " << be_idt_nl
+ << "obj_id.c_str ()," << be_nl
+ << "\"" << obj->repoID () << "\"," << be_nl
+ << "::CIAO::Container_Types::FACET_CONSUMER_t);"
+ << be_uidt_nl << be_uidt_nl
+ << "this->add_facet (\"" << port_name << "\", " << port_name << "_servant_impl_obj.in ());"
+ << be_uidt_nl
+ << "}";
return 0;
}
@@ -593,56 +592,49 @@ be_visitor_servant_svs::visit_consumes (be_consumes *node)
<< node_->local_name () << "_Servant::setup_consumer_"
<< port_name << "_i (void)" << be_nl
<< "{" << be_idt_nl
- << "typedef" << be_idt_nl
- << "::CIAO::Port_Activator_T<" << be_idt_nl
- << node_->local_name () << "_Servant::" << lname
- << "Consumer_" << port_name << "_Servant," << be_nl
- << global << comp_sname << "::CCM_" << comp_lname
- << "," << be_nl
- << global << comp_sname << "::CCM_" << comp_lname
- << "_Context," << be_nl
- << node_->local_name () << "_Servant>" << be_uidt_nl
- << "MACRO_MADNESS_TYPEDEF;" << be_uidt_nl << be_nl
- << "MACRO_MADNESS_TYPEDEF * tmp = 0;" << be_nl
<< "ACE_CString obj_id (this->ins_name_);" << be_nl
<< "obj_id += \"_" << port_name << "\";" << be_nl_2
- << "ACE_NEW_THROW_EX (" << be_idt_nl
- << "tmp," << be_nl
- << "MACRO_MADNESS_TYPEDEF (" << be_idt_nl
- << "obj_id.c_str ()," << be_nl
- << "\"" << port_name << "\"," << be_nl
- << "::CIAO::Port_Activator_Types::SINK," << be_nl
- << "this->executor_.in ()," << be_nl
- << "this->context_," << be_nl
- << "this)," << be_uidt_nl
- << "::CORBA::NO_MEMORY ());" << be_uidt_nl << be_nl
- << "::CIAO::Port_Activator_var pa = tmp;" << be_nl_2
- << "::CIAO::Servant_Activator_var sa =" << be_idt_nl
- << "this->container_->ports_servant_activator ();"
- << be_uidt_nl << be_nl
- << "if (sa->register_port_activator (pa.in ()))"
- << be_idt_nl
- << "{" << be_idt_nl
- << "::CORBA::Object_var obj =" << be_idt_nl
- << "this->container_->generate_reference (" << be_idt_nl
+ << "::CIAO::Container_var cnt_safe =" << be_idt_nl
+ << "::CIAO::Container::_duplicate ("
+ << "this->container_.in ());" << be_uidt_nl << be_nl
+ << "if (::CORBA::is_nil (cnt_safe.in ()))" << be_idt_nl
+ << "{" << be_idt_nl << "throw ::CORBA::INV_OBJREF ();" << be_uidt_nl
+ << "}" << be_uidt_nl << be_nl
+ << "PortableServer::POA_var POA = cnt_safe->the_port_POA ();" << be_nl
+ << node_->local_name () << "_Servant::" << lname
+ << "Consumer_" << port_name << "_Servant *"
+ << port_name << "_servant_impl = " << be_idt_nl
+ << "new " << node_->local_name () << "_Servant::" << lname
+ << "Consumer_" << port_name << "_Servant (" << be_idt_nl
+ << " this->executor_, this->context_);" << be_uidt_nl << be_uidt_nl << be_nl
+ << "PortableServer::ServantBase_var safe_base_servant ("
+ << port_name << "_servant_impl);" << be_nl
+ << "PortableServer::ObjectId_var " << port_name << "_servant_oid =" << be_idt_nl
+ << "PortableServer::string_to_ObjectId (obj_id.c_str());" << be_uidt_nl << be_nl
+ << "POA->activate_object_with_id(" << be_idt_nl
+ << port_name << "_servant_oid.in()," << be_nl
+ << port_name << "_servant_impl);" << be_uidt_nl << be_nl
+
+ << "::CORBA::Object_var " << port_name << "_servant_impl_obj = " << be_idt_nl
+ << "cnt_safe->generate_reference ( " << be_idt_nl
<< "obj_id.c_str ()," << be_nl
<< "\"";
- ACE_CString work (obj->repoID ());
- ACE_CString result (work.substr (0, work.rfind (':')));
- result += "Consumer:1.0";
+ ACE_CString work (obj->repoID ());
+ ACE_CString result (work.substr (0, work.rfind (':')));
+ result += "Consumer:1.0";
- os_ << result.c_str ();
+ os_ << result.c_str ();
- os_ << "\"," << be_nl
+ os_ << "\"," << be_nl
<< "::CIAO::Container_Types::FACET_CONSUMER_t);"
<< be_uidt_nl << be_uidt_nl
<< "::Components::EventConsumerBase_var ecb =" << be_idt_nl
- << "::Components::EventConsumerBase::_narrow (obj.in ());"
+ << "::Components::EventConsumerBase::_narrow ("
+ << port_name << "_servant_impl_obj.in ());"
<< be_uidt_nl << be_nl
<< "this->add_consumer (\"" << port_name << "\", ecb.in ());"
<< be_uidt_nl
- << "}" << be_uidt_nl << be_uidt_nl
<< "}";
return 0;
@@ -1298,7 +1290,7 @@ be_visitor_receptacle_desc::visit_uses (be_uses *node)
os_ << "\"" << port_name << "\"," << be_nl
<< "\"" << obj->repoID () << "\"," << be_nl;
- os_ << "ciao_" << port_name << ".in (), " << be_nl;
+ os_ << "ciao_" << port_name << ".in ()," << be_nl;
os_ << "safe_retval," << be_nl
<< slot_++ << "UL);" << be_uidt << be_uidt;
diff --git a/TAO/TAO_IDL/be/be_visitor_connector/facet_ami_exs.cpp b/TAO/TAO_IDL/be/be_visitor_connector/facet_ami_exs.cpp
index 5cf4cf3bbb3..a47895645a0 100644
--- a/TAO/TAO_IDL/be/be_visitor_connector/facet_ami_exs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_connector/facet_ami_exs.cpp
@@ -433,7 +433,7 @@ be_visitor_facet_ami_exs::gen_facet_executor_op (be_operation *node)
<< "::PortableServer::POA::_narrow (objvar.in ());" << be_uidt_nl
<< this->iface_->local_name () << "_reply_handler *handler = 0;"
<< be_nl
- << "ACE_NEW (handler, " << be_nl
+ << "ACE_NEW (handler," << be_nl
<< " " << this->iface_->local_name ()
<< "_reply_handler (ami_handler, poa));" << be_nl
<< "::PortableServer::ServantBase_var owner_transfer (handler);"
diff --git a/TAO/TAO_IDL/be/be_visitor_exception/any_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_exception/any_op_cs.cpp
index a1cecbb2468..6c2dbd5b4ae 100644
--- a/TAO/TAO_IDL/be/be_visitor_exception/any_op_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_exception/any_op_cs.cpp
@@ -41,7 +41,7 @@ be_visitor_exception_any_op_cs::visit_exception (be_exception *node)
TAO_OutStream *os = this->ctx_->stream ();
*os << be_nl_2
- << "// TAO_IDL - Generated from " << be_nl
+ << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__;
*os << be_global->core_versioning_begin () << be_nl;
@@ -144,53 +144,53 @@ be_visitor_exception_any_op_cs::visit_exception (be_exception *node)
<< "// Copying insertion." << be_nl
<< "void operator<<= (" << be_idt << be_idt_nl
<< "::CORBA::Any &_tao_any," << be_nl
- << "const ::" << node->name () << " &_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << "const ::" << node->name () << " &_tao_elem)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "TAO::Any_Dual_Impl_T< ::" << node->name () << ">::insert_copy ("
<< be_idt << be_idt_nl
<< "_tao_any," << be_nl
<< "::" << node->name () << "::_tao_any_destructor," << be_nl
<< "::" << node->tc_name () << "," << be_nl
- << "_tao_elem" << be_uidt_nl
- << ");" << be_uidt << be_uidt_nl
+ << "_tao_elem);" << be_uidt
+ << be_uidt << be_uidt_nl
<< "}" << be_nl_2;
// Non-copying insertion operator."
*os << "// Non-copying insertion." << be_nl
<< "void operator<<= (" << be_idt << be_idt_nl
<< "::CORBA::Any &_tao_any," << be_nl
- << "::" << node->name () << " *_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << "::" << node->name () << " *_tao_elem)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "TAO::Any_Dual_Impl_T< ::" << node->name () << ">::insert ("
<< be_idt << be_idt_nl
<< "_tao_any," << be_nl
<< "::" << node->name () << "::_tao_any_destructor," << be_nl
<< "::" << node->tc_name () << "," << be_nl
- << "_tao_elem" << be_uidt_nl
- << ");" << be_uidt << be_uidt_nl
+ << "_tao_elem);" << be_uidt
+ << be_uidt << be_uidt_nl
<< "}" << be_nl_2;
// Extraction to non-const pointer operator.
*os << "// Extraction to non-const pointer (deprecated)." << be_nl
<< "::CORBA::Boolean operator>>= (" << be_idt << be_idt_nl
<< "const ::CORBA::Any &_tao_any," << be_nl
- << "::" << node->name () << " *&_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << "::" << node->name () << " *&_tao_elem)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "return _tao_any >>= const_cast<" << be_idt << be_idt_nl
<< "const ::" << node->name () << " *&> (" << be_nl
- << "_tao_elem" << be_uidt_nl
- << ");" << be_uidt << be_uidt_nl
+ << "_tao_elem);" << be_uidt
+ << be_uidt << be_uidt_nl
<< "}" << be_nl_2;
// Extraction to const pointer operator.
*os << "// Extraction to const pointer." << be_nl
<< "::CORBA::Boolean operator>>= (" << be_idt << be_idt_nl
<< "const ::CORBA::Any &_tao_any," << be_nl
- << "const ::" << node->name () << " *&_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << "const ::" << node->name () << " *&_tao_elem)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "return" << be_idt_nl
<< "TAO::Any_Dual_Impl_T< ::" << node->name () << ">::extract ("
@@ -198,8 +198,8 @@ be_visitor_exception_any_op_cs::visit_exception (be_exception *node)
<< "_tao_any," << be_nl
<< "::" << node->name () << "::_tao_any_destructor," << be_nl
<< "::" << node->tc_name () << "," << be_nl
- << "_tao_elem" << be_uidt_nl
- << ");" << be_uidt << be_uidt << be_uidt_nl
+ << "_tao_elem);" << be_uidt
+ << be_uidt << be_uidt << be_uidt_nl
<< "}";
be_util::gen_nested_namespace_end (os, module);
@@ -219,8 +219,8 @@ be_visitor_exception_any_op_cs::visit_exception (be_exception *node)
<< "// Copying insertion." << be_nl
<< "void operator<<= (" << be_idt << be_idt_nl
<< "::CORBA::Any &_tao_any," << be_nl
- << "const " << node->name () << " &_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << "const " << node->name () << " &_tao_elem)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "TAO::Any_Dual_Impl_T<" << node->name () << ">::insert_copy ("
<< be_idt << be_idt_nl
@@ -235,8 +235,8 @@ be_visitor_exception_any_op_cs::visit_exception (be_exception *node)
*os << "// Non-copying insertion." << be_nl
<< "void operator<<= (" << be_idt << be_idt_nl
<< "::CORBA::Any &_tao_any," << be_nl
- << node->name () << " *_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << node->name () << " *_tao_elem)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "TAO::Any_Dual_Impl_T<" << node->name () << ">::insert ("
<< be_idt << be_idt_nl
@@ -251,13 +251,13 @@ be_visitor_exception_any_op_cs::visit_exception (be_exception *node)
*os << "// Extraction to non-const pointer (deprecated)." << be_nl
<< "::CORBA::Boolean operator>>= (" << be_idt << be_idt_nl
<< "const ::CORBA::Any &_tao_any," << be_nl
- << node->name () << " *&_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << node->name () << " *&_tao_elem)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "return _tao_any >>= const_cast<" << be_idt << be_idt_nl
<< "const " << node->name () << " *&> (" << be_nl
- << "_tao_elem" << be_uidt_nl
- << ");" << be_uidt << be_uidt_nl
+ << "_tao_elem);" << be_uidt
+ << be_uidt << be_uidt_nl
<< "}" << be_nl_2;
// Extraction to const pointer operator.
@@ -273,8 +273,8 @@ be_visitor_exception_any_op_cs::visit_exception (be_exception *node)
<< "_tao_any," << be_nl
<< node->name () << "::_tao_any_destructor," << be_nl
<< node->tc_name () << "," << be_nl
- << "_tao_elem" << be_uidt_nl
- << ");" << be_uidt << be_uidt << be_uidt_nl
+ << "_tao_elem);" << be_uidt
+ << be_uidt << be_uidt << be_uidt_nl
<< "}";
*os << be_global->core_versioning_end () << be_nl;
diff --git a/TAO/TAO_IDL/be/be_visitor_exception/exception_ch.cpp b/TAO/TAO_IDL/be/be_visitor_exception/exception_ch.cpp
index 3d1b21a4671..dd3694b94b4 100644
--- a/TAO/TAO_IDL/be/be_visitor_exception/exception_ch.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_exception/exception_ch.cpp
@@ -46,7 +46,7 @@ int be_visitor_exception_ch::visit_exception (be_exception *node)
<< " " << node->local_name ()
<< " : public ::CORBA::UserException" << be_nl;
*os << "{" << be_nl
- << "public:" << be_idt_nl;
+ << "public:" << be_idt;
// Generate code for field members.
if (this->visit_scope (node) == -1)
@@ -58,10 +58,9 @@ int be_visitor_exception_ch::visit_exception (be_exception *node)
-1);
}
- *os << be_nl;
-
// Constructors and destructor.
- *os << node->local_name () << " (void);" << be_nl
+ *os << be_nl_2
+ << node->local_name () << " (void);" << be_nl
<< node->local_name () << " (const " << node->local_name ()
<< " &);" << be_nl
<< "~" << node->local_name () << " (void);\n" << be_nl;
@@ -86,7 +85,7 @@ int be_visitor_exception_ch::visit_exception (be_exception *node)
<< "_tao_duplicate (void) const;\n" << be_nl
<< "virtual void _raise (void) const;\n" << be_nl
<< "virtual void _tao_encode (TAO_OutputCDR &cdr) const;" << be_nl
- << "virtual void _tao_decode (TAO_InputCDR &cdr);" << be_nl;
+ << "virtual void _tao_decode (TAO_InputCDR &cdr);";
// Generate constructor that takes each member as a parameter. We need a
// new state. Such a constructor exists if we have members.
diff --git a/TAO/TAO_IDL/be/be_visitor_exception/exception_cs.cpp b/TAO/TAO_IDL/be/be_visitor_exception/exception_cs.cpp
index 039d043b689..ed83ceca8a5 100644
--- a/TAO/TAO_IDL/be/be_visitor_exception/exception_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_exception/exception_cs.cpp
@@ -97,7 +97,7 @@ int be_visitor_exception_cs::visit_exception (be_exception *node)
*os << be_uidt_nl << "}" << be_nl_2;
}
- *os << be_nl_2 << "// TAO_IDL - Generated from " << be_nl
+ *os << be_nl_2 << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
// Default constructor.
diff --git a/TAO/TAO_IDL/be/be_visitor_interface.cpp b/TAO/TAO_IDL/be/be_visitor_interface.cpp
index 6326664887f..76d01092d19 100644
--- a/TAO/TAO_IDL/be/be_visitor_interface.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_interface.cpp
@@ -79,10 +79,6 @@
#include "be_visitor_interface/smart_proxy_ch.cpp"
#include "be_visitor_interface/smart_proxy_cs.cpp"
-// Proxy Brokers
-#include "be_visitor_interface/strategized_proxy_broker_sh.cpp"
-#include "be_visitor_interface/strategized_proxy_broker_ss.cpp"
-
// Proxy Impls
#include "be_visitor_interface/direct_proxy_impl_sh.cpp"
#include "be_visitor_interface/direct_proxy_impl_ss.cpp"
diff --git a/TAO/TAO_IDL/be/be_visitor_interface/amh_rh_ss.cpp b/TAO/TAO_IDL/be/be_visitor_interface/amh_rh_ss.cpp
index 5a7bb54567f..275605b14c0 100644
--- a/TAO/TAO_IDL/be/be_visitor_interface/amh_rh_ss.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_interface/amh_rh_ss.cpp
@@ -65,7 +65,7 @@ be_visitor_amh_rh_interface_ss::visit_interface (be_interface *node)
ACE_CString rh_skel_class_name (rh_skel_class_name_prefix);
rh_skel_class_name += node->local_name ();
- *os << be_nl_2 << "// TAO_IDL - Generated from " << be_nl
+ *os << be_nl_2 << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
*os << rh_skel_full_scope_name.c_str ()
diff --git a/TAO/TAO_IDL/be/be_visitor_interface/amh_si.cpp b/TAO/TAO_IDL/be/be_visitor_interface/amh_si.cpp
index 5a81582e537..11b3910effa 100644
--- a/TAO/TAO_IDL/be/be_visitor_interface/amh_si.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_interface/amh_si.cpp
@@ -12,8 +12,7 @@
//=============================================================================
be_visitor_amh_interface_si::be_visitor_amh_interface_si (
- be_visitor_context *ctx
- )
+ be_visitor_context *ctx)
: be_visitor_interface_si (ctx)
{
}
@@ -40,9 +39,7 @@ be_visitor_amh_interface_si::visit_interface (be_interface *node)
int status =
node->traverse_inheritance_graph (
- be_visitor_amh_interface_si::gen_skel_helper,
- os
- );
+ be_visitor_amh_interface_si::gen_skel_helper, os);
if (status == -1)
{
@@ -141,8 +138,8 @@ be_visitor_amh_interface_si::gen_skel_helper (be_interface *derived,
<< "_skel (" << be_idt << be_idt_nl
<< "TAO_ServerRequest & req," << be_nl
<< "void * context," << be_nl
- << "void * obj" << be_uidt_nl
- << ")" << be_uidt_nl
+ << "void * obj)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl;
*os << ancestor_amh_name
<< "* const impl = static_cast<"
@@ -150,11 +147,11 @@ be_visitor_amh_interface_si::gen_skel_helper (be_interface *derived,
<< " *> (obj);" << be_nl;
*os << ancestor_amh_name
<< "::" << d->local_name ()
- << "_skel (" << be_idt << be_idt_nl
+ << "_skel (" << be_idt_nl
<< "req," << be_nl
<< "context," << be_nl
- << "impl" << be_uidt_nl
- << ");" << be_uidt << be_uidt_nl
+ << "impl);" << be_uidt
+ << be_uidt_nl
<< "}";
}
else if (nt == AST_Decl::NT_attr)
@@ -177,11 +174,11 @@ be_visitor_amh_interface_si::gen_skel_helper (be_interface *derived,
<< "_skel (" << be_idt << be_idt_nl
<< "TAO_ServerRequest & req," << be_nl
<< "void * context," << be_nl
- << "void * obj" << be_uidt_nl
- << ")" << be_uidt_nl
+ << "void * obj)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl;
- *os << ancestor_amh_name
+ *os << ancestor_amh_name
<< "* const impl = static_cast<"
<< derived_amh_name
<< " *> (obj);" << be_nl;
@@ -191,8 +188,8 @@ be_visitor_amh_interface_si::gen_skel_helper (be_interface *derived,
<< "_skel (" << be_idt << be_idt_nl
<< "req," << be_nl
<< "context," << be_nl
- << "impl" << be_uidt_nl
- << ");" << be_uidt << be_uidt_nl
+ << "impl);" << be_uidt
+ << be_uidt << be_uidt_nl
<< "}";
if (!attr->readonly ())
@@ -209,11 +206,11 @@ be_visitor_amh_interface_si::gen_skel_helper (be_interface *derived,
<< "_skel (" << be_idt << be_idt_nl
<< "TAO_ServerRequest & req," << be_nl
<< "void * context," << be_nl
- << "void * obj" << be_uidt_nl
- << ")" << be_uidt_nl
+ << "void * obj)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl;
- *os << ancestor_amh_name
+ *os << ancestor_amh_name
<< "* const impl = static_cast<"
<< derived_amh_name
<< " *> (obj);" << be_nl;
@@ -223,8 +220,8 @@ be_visitor_amh_interface_si::gen_skel_helper (be_interface *derived,
<< "_skel (" << be_idt << be_idt_nl
<< "req," << be_nl
<< "context," << be_nl
- << "impl" << be_uidt_nl
- << ");" << be_uidt << be_uidt_nl
+ << "impl);" << be_uidt
+ << be_uidt << be_uidt_nl
<< "}";
}
}
diff --git a/TAO/TAO_IDL/be/be_visitor_interface/amh_ss.cpp b/TAO/TAO_IDL/be/be_visitor_interface/amh_ss.cpp
index 645b5640710..bba533b2f72 100644
--- a/TAO/TAO_IDL/be/be_visitor_interface/amh_ss.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_interface/amh_ss.cpp
@@ -62,7 +62,7 @@ be_visitor_amh_interface_ss::this_method (be_interface *node)
this->generate_full_skel_name (node);
const char *full_skel_name = full_skel_name_holder.c_str ();
- *os << be_nl_2 << "// TAO_IDL - Generated from " << be_nl
+ *os << be_nl_2 << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
*os << non_amh_name.c_str () << "*" << be_nl
@@ -97,21 +97,9 @@ be_visitor_amh_interface_ss::this_method (be_interface *node)
{
*os << "TAO::AbstractBase_Narrow_Utils<STUB_SCOPED_NAME>::unchecked_narrow (";
}
- *os << be_idt << be_idt_nl
- << "obj.in ()," << be_nl;
+ *os << "obj.in ());" << be_nl;
- if (be_global->gen_direct_collocation() || be_global->gen_thru_poa_collocation ())
- {
- *os << node->flat_client_enclosing_scope ()
- << node->base_proxy_broker_name ()
- << "_Factory_function_pointer" << be_uidt_nl;
- }
- else
- {
- *os << "0" << be_uidt_nl;
- }
-
- *os << ");" << be_uidt << be_uidt << be_uidt_nl
+ *os << be_uidt << be_uidt_nl
<< "}";
}
@@ -125,7 +113,7 @@ be_visitor_amh_interface_ss::dispatch_method (be_interface *node)
this->generate_full_skel_name (node);
const char *full_skel_name = full_skel_name_holder.c_str ();
- *os << be_nl_2 << "// TAO_IDL - Generated from " << be_nl
+ *os << be_nl_2 << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
*os << "void" << be_nl
@@ -221,14 +209,12 @@ public:
be_interface *derived);
};
-TAO_IDL_Copy_Ctor_Worker::
-TAO_IDL_Copy_Ctor_Worker (void)
+TAO_IDL_Copy_Ctor_Worker::TAO_IDL_Copy_Ctor_Worker (void)
{
}
int
-TAO_IDL_Copy_Ctor_Worker::
-emit (be_interface *derived,
+TAO_IDL_Copy_Ctor_Worker::emit (be_interface *derived,
TAO_OutStream *os,
be_interface *base)
{
@@ -278,12 +264,11 @@ be_visitor_amh_interface_ss::generate_copy_ctor (be_interface *node,
node->get_insert_queue ().reset ();
node->get_del_queue ().reset ();
-
// Insert ourselves in the queue.
if (node->get_insert_queue ().enqueue_tail (node) == -1)
{
ACE_ERROR_RETURN ((LM_ERROR,
- "(%N:%l) be_interface::traverse_inheritance_graph - "
+ "(%N:%l) be_interface::generate_copy_ctor - "
"error generating entries\n"),
-1);
}
diff --git a/TAO/TAO_IDL/be/be_visitor_interface/any_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_interface/any_op_cs.cpp
index 9794c4e8e0a..765b0e5174a 100644
--- a/TAO/TAO_IDL/be/be_visitor_interface/any_op_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_interface/any_op_cs.cpp
@@ -59,8 +59,8 @@ be_visitor_interface_any_op_cs::visit_interface (be_interface *node)
<< "::CORBA::Boolean" << be_nl
<< "Any_Impl_T<" << node->name () << ">::to_object ("
<< be_idt << be_idt_nl
- << "::CORBA::Object_ptr &_tao_elem" << be_uidt_nl
- << ") const" << be_uidt_nl
+ << "::CORBA::Object_ptr &_tao_elem) const" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "_tao_elem = ::CORBA::Object::_duplicate (this->value_);" << be_nl
<< "return true;" << be_uidt_nl
@@ -78,8 +78,8 @@ be_visitor_interface_any_op_cs::visit_interface (be_interface *node)
<< "Any_Impl_T<" << node->name ()
<< ">::to_abstract_base ("
<< be_idt << be_idt_nl
- << "::CORBA::AbstractBase_ptr &_tao_elem" << be_uidt_nl
- << ") const" << be_uidt_nl
+ << "::CORBA::AbstractBase_ptr &_tao_elem) const" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "_tao_elem = ::CORBA::AbstractBase::_duplicate (this->value_);"
<< be_nl
diff --git a/TAO/TAO_IDL/be/be_visitor_interface/cdr_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_interface/cdr_op_cs.cpp
index 5c81c3159a5..113ec5afd2a 100644
--- a/TAO/TAO_IDL/be/be_visitor_interface/cdr_op_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_interface/cdr_op_cs.cpp
@@ -117,28 +117,16 @@ be_visitor_interface_cdr_op_cs::visit_interface (be_interface *node)
if (!node->is_abstract ())
{
- *os << "TAO::Narrow_Utils<RHS_SCOPED_NAME>::unchecked_narrow (";
+ *os << "TAO::Narrow_Utils<RHS_SCOPED_NAME>::unchecked_narrow ("
+ << "obj.in ());";
}
else
{
- *os << "TAO::AbstractBase_Narrow_Utils<RHS_SCOPED_NAME>::unchecked_narrow (";
+ *os << "TAO::AbstractBase_Narrow_Utils<RHS_SCOPED_NAME>::unchecked_narrow ("
+ << "obj.in ());";
}
- *os << be_idt << be_idt_nl
- << "obj.in ()," << be_nl;
-
- if (be_global->gen_direct_collocation() || be_global->gen_thru_poa_collocation ())
- {
- *os << node->flat_client_enclosing_scope ()
- << node->base_proxy_broker_name ()
- << "_Factory_function_pointer";
- }
- else
- {
- *os << "0";
- }
-
- *os << ");" << be_uidt << be_uidt_nl << be_uidt_nl;
+ *os << be_nl << be_uidt_nl;
*os << "return true;" << be_uidt_nl
<< "}" << be_nl;
diff --git a/TAO/TAO_IDL/be/be_visitor_interface/direct_proxy_impl_sh.cpp b/TAO/TAO_IDL/be/be_visitor_interface/direct_proxy_impl_sh.cpp
index f3ccdce64c5..6426205be58 100644
--- a/TAO/TAO_IDL/be/be_visitor_interface/direct_proxy_impl_sh.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_interface/direct_proxy_impl_sh.cpp
@@ -23,7 +23,7 @@ be_visitor_interface_direct_proxy_impl_sh::visit_interface (
TAO_OutStream *os = this->ctx_->stream ();
*os << be_nl_2
- << "// TAO_IDL - Generated from " << be_nl
+ << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__;
*os << be_nl_2
diff --git a/TAO/TAO_IDL/be/be_visitor_interface/interface_ch.cpp b/TAO/TAO_IDL/be/be_visitor_interface/interface_ch.cpp
index 53fd3d60e3e..c7f2c0abd69 100644
--- a/TAO/TAO_IDL/be/be_visitor_interface/interface_ch.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_interface/interface_ch.cpp
@@ -46,20 +46,6 @@ be_visitor_interface_ch::visit_interface (be_interface *node)
AST_Component *c = AST_Component::narrow_from_decl (node);
- if (c != 0)
- {
- // Forward class declarations for components.
- *os << be_nl_2
- << "class " << node->base_proxy_impl_name ()
- << ";" << be_nl
- << "class " << node->remote_proxy_impl_name ()
- << ";" << be_nl
- << "class " << node->base_proxy_broker_name ()
- << ";" << be_nl
- << "class " << node->remote_proxy_broker_name ()
- << ";";
- }
-
// Now generate the class definition.
*os << be_nl_2
<< "class " << be_global->stub_export_macro ()
@@ -183,18 +169,6 @@ be_visitor_interface_ch::visit_interface (be_interface *node)
<< "virtual std::ostream &_tao_stream_v (std::ostream &) const;";
}
- if (! node->is_local () &&
- (be_global->gen_direct_collocation()
- || be_global->gen_thru_poa_collocation ()))
- {
- // Add the Proxy Broker member variable.
- *os << be_uidt_nl << be_nl
- << "private:" << be_idt_nl
- << "TAO::Collocation_Proxy_Broker *"
- << "the" << node->base_proxy_broker_name ()
- << "_;";
- }
-
*os << be_uidt_nl << be_nl
<< "protected:" << be_idt_nl;
@@ -209,18 +183,6 @@ be_visitor_interface_ch::visit_interface (be_interface *node)
<< node->local_name () << " (void);"
<< be_nl_2;
}
-
- if (be_global->gen_direct_collocation()
- || be_global->gen_thru_poa_collocation ())
- {
- *os << "// These methods traverse the "
- << "inheritance tree and set the"
- << be_nl
- << "// parents piece of the given class in the right mode."
- << be_nl
- << "virtual void " << node->flat_name ()
- << "_setup_collocation (void);" << be_nl_2;
- }
}
if (node->is_abstract () || node->is_local ())
@@ -263,8 +225,6 @@ be_visitor_interface_ch::visit_interface (be_interface *node)
{
// Friends declarations, component only.
*os << be_nl_2
- << "friend class " << node->remote_proxy_impl_name ()
- << ";" << be_nl
<< "friend class " << node->direct_proxy_impl_name ()
<< ";";
}
@@ -296,9 +256,6 @@ be_visitor_interface_ch::visit_interface (be_interface *node)
// Don't support smart proxies for local interfaces.
if (! node->is_local ())
{
- // List that generates proxy broker factory function pointer.
- be_global->non_local_interfaces.enqueue_tail (node);
-
if (be_global->gen_smart_proxies ())
{
*os << be_nl_2;
diff --git a/TAO/TAO_IDL/be/be_visitor_interface/interface_ci.cpp b/TAO/TAO_IDL/be/be_visitor_interface/interface_ci.cpp
index 75a3f3b0ef7..e4944a84974 100644
--- a/TAO/TAO_IDL/be/be_visitor_interface/interface_ci.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_interface/interface_ci.cpp
@@ -93,13 +93,6 @@ be_visitor_interface_ci::visit_interface (be_interface *node)
<< "TAO_ORB_Core *oc)" << be_uidt_nl;
*os << ": ::CORBA::Object (ior, oc)" << be_idt_nl;
- if (be_global->gen_direct_collocation()
- || be_global->gen_thru_poa_collocation ())
- {
- *os << ", the" << node->base_proxy_broker_name ()
- << "_ (0)";
- }
-
*os << be_uidt << be_uidt_nl
<< "{" << be_nl
<< "}" ;
diff --git a/TAO/TAO_IDL/be/be_visitor_interface/interface_cs.cpp b/TAO/TAO_IDL/be/be_visitor_interface/interface_cs.cpp
index e5036e6ee9c..0680d6e970b 100644
--- a/TAO/TAO_IDL/be/be_visitor_interface/interface_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_interface/interface_cs.cpp
@@ -149,22 +149,6 @@ be_visitor_interface_cs::visit_interface (be_interface *node)
<< "}";
}
- if (!node->is_local () &&
- (be_global->gen_direct_collocation() || be_global->gen_thru_poa_collocation ()))
- {
- // Generate the proxy broker factory function pointer definition.
- *os << be_nl_2
- << "// Function pointer for collocation factory initialization."
- << be_nl
- << "TAO::Collocation_Proxy_Broker * " << be_nl
- << "(*" << node->flat_client_enclosing_scope ()
- << node->base_proxy_broker_name ()
- << "_Factory_function_pointer) ("
- << be_idt << be_idt_nl
- << "::CORBA::Object_ptr obj) = 0;" << be_uidt
- << be_uidt;
- }
-
// Generate code for the elements of the interface.
if (this->visit_scope (node) == -1)
{
@@ -189,80 +173,15 @@ be_visitor_interface_cs::visit_interface (be_interface *node)
<< node->name () << "::" << node->local_name ()
<< " (void)" << be_nl;
- if (be_global->gen_direct_collocation() || be_global->gen_thru_poa_collocation ())
- {
- *os << " : the" << node->base_proxy_broker_name () << "_ (0)" << be_nl;
- }
-
- *os << "{" << be_idt_nl;
+ *os << "{" << be_nl;
- if (be_global->gen_direct_collocation() || be_global->gen_thru_poa_collocation ())
- {
- *os << "this->" << node->flat_name ()
- << "_setup_collocation ();" << be_uidt_nl;
- }
- *os << be_uidt << "}";
- }
-
- if (! node->is_local () &&
- (be_global->gen_direct_collocation()
- || be_global->gen_thru_poa_collocation ()))
- {
- *os << be_nl_2
- << "void" << be_nl
- << node->name () << "::" << node->flat_name ()
- << "_setup_collocation ()" << be_nl
- << "{" << be_idt_nl
- << "if (" << "::"
- << node->flat_client_enclosing_scope ()
- << node->base_proxy_broker_name ()
- << "_Factory_function_pointer";
-
- // Right now (29-01-04) we don't support collocation for
- // abstract interfaces, and the 'collocated' arg will always
- // be 0. However, just to be safe, we add a
- // check for non-zero collocation factory function pointer
- // (which at present is also 0 for abstract interfaces),
- // in case the logic is changed in the future.
- if (node->is_abstract ())
- {
- *os << " && " << node->flat_client_enclosing_scope ()
- << node->base_proxy_broker_name ()
- << "_Factory_function_pointer";
- }
-
- *os << ")" << be_idt_nl
- << "{" << be_idt_nl
- << "this->the" << node->base_proxy_broker_name ()
- << "_ =" << be_idt_nl
- << "::" << node->flat_client_enclosing_scope ()
- << node->base_proxy_broker_name ()
- << "_Factory_function_pointer (";
-
- if (node->is_abstract ())
- {
- *os << be_idt << be_idt_nl
- << "this->equivalent_objref ()" << be_uidt_nl
- << ");" << be_uidt;
- }
- else
- {
- *os << "this);";
- }
-
- *os << be_uidt << be_uidt_nl
- << "}" << be_uidt;
-
- // Now we setup the immediate parents.
- node->gen_parent_collocation (os);
-
- *os << be_uidt_nl << "}";
+ *os << "}";
}
*os << be_nl_2
<< node->name () << "::~" << node->local_name ()
<< " (void)" << be_nl;
- *os << "{}" << be_nl_2;
+ *os << "{" << be_nl << "}" << be_nl_2;
bool gen_any_destructor =
be_global->any_support ()
@@ -271,7 +190,7 @@ be_visitor_interface_cs::visit_interface (be_interface *node)
if (gen_any_destructor)
{
- *os << "void " << be_nl
+ *os << "void" << be_nl
<< node->name ()
<< "::_tao_any_destructor (void *_tao_void_pointer)" << be_nl
<< "{" << be_idt_nl
@@ -330,7 +249,7 @@ be_visitor_interface_cs::visit_interface (be_interface *node)
<< "if (! ::CORBA::is_nil (obj))" << be_idt_nl
<< "{" << be_idt_nl
<< "obj->_add_ref ();" << be_uidt_nl
- << "}" << be_uidt_nl << be_nl
+ << "}" << be_uidt_nl
<< "return obj;" << be_uidt_nl
<< "}" << be_nl_2;
@@ -488,22 +407,18 @@ be_visitor_interface_cs::gen_xxx_narrow (const char *pre,
<< "proxy = TAO::Narrow_Utils<"
<< node->local_name () << ">::" << pre << " (";
- *os << be_idt << be_idt_nl
- << "_tao_objref," << be_nl
- << "\"" << node->repoID () << "\"," << be_nl;
+ *os << be_idt << be_idt_nl;
- if (be_global->gen_direct_collocation()
- || be_global->gen_thru_poa_collocation ())
+ *os << "_tao_objref";
+ if (ACE_OS::strcmp (pre, "narrow") == 0)
{
- *os << node->flat_client_enclosing_scope ()
- << node->base_proxy_broker_name ()
- << "_Factory_function_pointer" << be_uidt_nl;
+ *os << "," << be_nl
+ << "\"" << node->repoID () << "\"";
}
- else
- {
- *os << "0" << be_uidt_nl;
- }
- *os << ");" << be_uidt << be_nl
+
+ *os << ");";
+
+ *os << be_uidt << be_uidt << be_nl
<< "return TAO_" << node->flat_name ()
<< "_PROXY_FACTORY_ADAPTER::instance ()->create_proxy (proxy);"
<< be_uidt << be_uidt_nl
@@ -525,21 +440,17 @@ be_visitor_interface_cs::gen_xxx_narrow (const char *pre,
}
*os << be_idt << be_idt_nl
- << "_tao_objref," << be_nl
- << "\"" << node->repoID () << "\"," << be_nl;
+ << "_tao_objref";
- if (be_global->gen_direct_collocation()
- || be_global->gen_thru_poa_collocation ())
- {
- *os << node->flat_client_enclosing_scope ()
- << node->base_proxy_broker_name ()
- << "_Factory_function_pointer" << be_uidt_nl;
- }
- else
+ if (ACE_OS::strcmp (pre, "narrow") == 0)
{
- *os << "0" << be_uidt_nl;
+ *os << "," << be_nl
+ << "\"" << node->repoID () << "\"";
}
- *os << ");" << be_uidt << be_uidt << be_uidt_nl
+
+ *os << ");";
+
+ *os << be_uidt << be_uidt << be_uidt << be_uidt_nl
<< "}" << be_nl_2;
}
diff --git a/TAO/TAO_IDL/be/be_visitor_interface/interface_ih.cpp b/TAO/TAO_IDL/be/be_visitor_interface/interface_ih.cpp
index 0e2e2990c0a..0effcf0bf15 100644
--- a/TAO/TAO_IDL/be/be_visitor_interface/interface_ih.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_interface/interface_ih.cpp
@@ -77,7 +77,7 @@ be_visitor_interface_ih::visit_interface (be_interface *node)
*os << be_uidt_nl
<< "{" << be_nl
<< "public:" << be_idt_nl
- << "// Constructor " << be_nl
+ << "// Constructor" << be_nl
<< be_global->impl_class_prefix () << namebuf
<< be_global->impl_class_suffix () << " (void);" << be_nl_2;
@@ -100,7 +100,7 @@ be_visitor_interface_ih::visit_interface (be_interface *node)
}
- *os << "// Destructor " << be_nl
+ *os << "// Destructor" << be_nl
<< "virtual " << "~" << be_global->impl_class_prefix () << namebuf
<< be_global->impl_class_suffix () << " (void);";
diff --git a/TAO/TAO_IDL/be/be_visitor_interface/interface_sh.cpp b/TAO/TAO_IDL/be/be_visitor_interface/interface_sh.cpp
index ab11005da9b..ece9840819c 100644
--- a/TAO/TAO_IDL/be/be_visitor_interface/interface_sh.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_interface/interface_sh.cpp
@@ -90,8 +90,6 @@ be_visitor_interface_sh::visit_interface (be_interface *node)
{
*os << be_nl_2
<< "class " << node->direct_proxy_impl_name ()
- << ";" << be_nl
- << "class " << node->strategized_proxy_broker_name ()
<< ";";
}
@@ -224,25 +222,7 @@ be_visitor_interface_sh::visit_interface (be_interface *node)
be_visitor_context ctx (*this->ctx_);
- if (be_global->gen_direct_collocation ())
- {
- ctx = *this->ctx_;
- // Generate strategized proxy broker.
- be_visitor_interface_strategized_proxy_broker_sh ispb_visitor (&ctx);
-
- if (node->accept (&ispb_visitor) == -1)
- {
- ACE_ERROR_RETURN ((LM_ERROR,
- ACE_TEXT ("be_visitor_interface_sh::")
- ACE_TEXT ("visit_interface - ")
- ACE_TEXT ("codegen for strategized ")
- ACE_TEXT ("proxy broker class failed\n")),
- -1);
- }
- }
-
// Generate the collocated class.
-
ctx = *this->ctx_;
if (be_global->gen_direct_collocation ())
diff --git a/TAO/TAO_IDL/be/be_visitor_interface/interface_si.cpp b/TAO/TAO_IDL/be/be_visitor_interface/interface_si.cpp
index f3a13665ef4..465650b6dc1 100644
--- a/TAO/TAO_IDL/be/be_visitor_interface/interface_si.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_interface/interface_si.cpp
@@ -78,8 +78,7 @@ be_visitor_interface_si::visit_interface (be_interface *node)
status =
node->traverse_inheritance_graph (
be_interface::gen_colloc_op_defn_helper,
- os
- );
+ os);
if (status == -1)
{
diff --git a/TAO/TAO_IDL/be/be_visitor_interface/interface_ss.cpp b/TAO/TAO_IDL/be/be_visitor_interface/interface_ss.cpp
index 5d212d693ee..4298c71e52f 100644
--- a/TAO/TAO_IDL/be/be_visitor_interface/interface_ss.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_interface/interface_ss.cpp
@@ -93,7 +93,7 @@ be_visitor_interface_ss::visit_interface (be_interface *node)
*os << be_nl_2;
- *os << "// TAO_IDL - Generated from " << be_nl
+ *os << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__;
*os << be_nl_2;
@@ -166,7 +166,7 @@ be_visitor_interface_ss::visit_interface (be_interface *node)
*os << be_nl_2;
- *os << "// TAO_IDL - Generated from " << be_nl
+ *os << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__;
*os << be_nl_2;
@@ -213,7 +213,7 @@ be_visitor_interface_ss::visit_interface (be_interface *node)
*os << be_nl_2
<< "void " << full_skel_name
<< "::_is_a_skel (" << be_idt << be_idt_nl
- << "TAO_ServerRequest & server_request, " << be_nl
+ << "TAO_ServerRequest & server_request," << be_nl
<< "void * TAO_INTERCEPTOR (servant_upcall)," << be_nl
<< "void * servant)" << be_uidt << be_uidt_nl
<< "{" << be_idt;
@@ -323,7 +323,7 @@ be_visitor_interface_ss::visit_interface (be_interface *node)
*os << be_nl_2
<< "void " << full_skel_name
<< "::_non_existent_skel (" << be_idt << be_idt_nl
- << "TAO_ServerRequest & server_request, " << be_nl
+ << "TAO_ServerRequest & server_request," << be_nl
<< "void * TAO_INTERCEPTOR (servant_upcall)," << be_nl
<< "void * servant)" << be_uidt << be_uidt_nl
<< "{" << be_idt;
@@ -437,7 +437,7 @@ be_visitor_interface_ss::visit_interface (be_interface *node)
*os << be_nl_2
<< "void " << full_skel_name
<< "::_repository_id_skel (" << be_idt << be_idt_nl
- << "TAO_ServerRequest & server_request, " << be_nl
+ << "TAO_ServerRequest & server_request," << be_nl
<< "void * TAO_INTERCEPTOR (servant_upcall)," << be_nl
<< "void * servant)" << be_uidt << be_uidt_nl
<< "{" << be_idt;
@@ -521,22 +521,22 @@ be_visitor_interface_ss::visit_interface (be_interface *node)
{
*os << be_nl_2;
- *os << "// TAO_IDL - Generated from " << be_nl
+ *os << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__;
*os << be_nl_2
<< "void " << full_skel_name
<< "::_interface_skel (" << be_idt << be_idt_nl
- << "TAO_ServerRequest & server_request, " << be_nl
+ << "TAO_ServerRequest & server_request," << be_nl
<< "void * /* servant_upcall */," << be_nl
<< "void * servant)" << be_uidt << be_uidt_nl;
*os << "{" << be_idt_nl;
*os << "TAO_IFR_Client_Adapter *_tao_adapter =" << be_idt_nl
<< "ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance ("
<< be_idt << be_idt_nl
- << "TAO_ORB_Core::ifr_client_adapter_name ()"
- << be_uidt_nl
- << ");" << be_uidt_nl << be_uidt_nl;
+ << "TAO_ORB_Core::ifr_client_adapter_name ());"
+ << be_uidt
+ << be_uidt_nl << be_uidt_nl;
*os << "if (!_tao_adapter)" << be_idt_nl
<< "{" << be_idt_nl
<< "throw ::CORBA::INTF_REPOS (::CORBA::OMGVMCID | 1, ::CORBA::COMPLETED_NO);"
@@ -603,7 +603,7 @@ be_visitor_interface_ss::visit_interface (be_interface *node)
*os << be_nl_2
<< "void " << full_skel_name
<< "::_component_skel (" << be_idt << be_idt_nl
- << "TAO_ServerRequest & server_request, " << be_nl
+ << "TAO_ServerRequest & server_request," << be_nl
<< "void * TAO_INTERCEPTOR (servant_upcall)," << be_nl
<< "void * servant" << be_uidt_nl
<< ")" << be_uidt_nl
@@ -899,30 +899,19 @@ be_visitor_interface_ss::this_method (be_interface *node)
*os << "::CORBA::Object_ptr tmp = CORBA::Object_ptr ();"
<< be_nl_2;
- if (be_global->gen_direct_collocation() || be_global->gen_thru_poa_collocation ())
- {
- *os << "::CORBA::Boolean const _tao_opt_colloc ="
- << be_idt_nl
- << "stub->servant_orb_var ()->orb_core ()->"
- << "optimize_collocation_objects ();" << be_uidt_nl << be_nl;
- }
+ *os << "::CORBA::Boolean const _tao_opt_colloc ="
+ << be_idt_nl
+ << "stub->servant_orb_var ()->orb_core ()->"
+ << "optimize_collocation_objects ();" << be_uidt_nl << be_nl;
+
*os << "ACE_NEW_RETURN (" << be_idt << be_idt_nl
<< "tmp," << be_nl
<< "::CORBA::Object (stub, ";
- if (be_global->gen_direct_collocation()
- || be_global->gen_thru_poa_collocation ())
- {
- *os << "_tao_opt_colloc";
- }
- else
- {
- *os << "false";
- }
+ *os << "_tao_opt_colloc";
*os << ", this)," << be_nl
- << "0" << be_uidt_nl
- << ");" << be_uidt_nl << be_nl;
+ << "0);" << be_uidt << be_uidt_nl << be_nl;
*os << "::CORBA::Object_var obj = tmp;" << be_nl
<< "(void) safe_stub.release ();" << be_nl_2
@@ -931,21 +920,9 @@ be_visitor_interface_ss::this_method (be_interface *node)
<< "return" << be_idt_nl
<< "TAO::Narrow_Utils<STUB_SCOPED_NAME>::unchecked_narrow ("
<< be_idt << be_idt_nl
- << "obj.in ()," << be_nl;
-
- if (be_global->gen_direct_collocation()
- || be_global->gen_thru_poa_collocation ())
- {
- *os << node->flat_client_enclosing_scope ()
- << node->base_proxy_broker_name ()
- << "_Factory_function_pointer" << be_uidt_nl;
- }
- else
- {
- *os << "0" << be_uidt_nl;
- }
+ << "obj.in ());";
- *os << ");" << be_uidt << be_uidt << be_uidt_nl
+ *os << be_uidt << be_uidt << be_uidt << be_uidt_nl
<< "}";
}
@@ -994,110 +971,8 @@ be_visitor_interface_ss::generate_amh_classes (be_interface *node)
int
be_visitor_interface_ss::generate_proxy_classes (be_interface *node)
{
- TAO_OutStream *os = this->ctx_->stream ();
be_visitor_context ctx = *this->ctx_;
- // Strategized Proxy Broker Implementation.
- if (be_global->gen_thru_poa_collocation ()
- || be_global->gen_direct_collocation ())
- {
-
- // Do not generate strategized proxy broker for thru-POA case.
- // It isn't necessary.
- if (be_global->gen_direct_collocation ())
- {
- ctx = *this->ctx_;
- be_visitor_interface_strategized_proxy_broker_ss ispb_visitor (&ctx);
-
- if (node->accept (&ispb_visitor) == -1)
- {
- ACE_ERROR_RETURN ((LM_ERROR,
- ACE_TEXT ("be_visitor_interface_ss::")
- ACE_TEXT ("generate_proxy_classes - ")
- ACE_TEXT ("codegen for Base Proxy Broker ")
- ACE_TEXT ("class failed\n")),
- -1);
- }
- }
-
- if (be_global->gen_direct_collocation()
- || be_global->gen_thru_poa_collocation ())
- {
- *os << be_nl_2;
-
- *os << "// TAO_IDL - Generated from" << be_nl
- << "// " << __FILE__ << ":" << __LINE__;
-
- // Proxy Broker Factory Function.
- *os << be_nl_2
- << "TAO::Collocation_Proxy_Broker *" << be_nl
- << node->flat_client_enclosing_scope ()
- << node->base_proxy_broker_name ()
- << "_Factory_function ( ::CORBA::Object_ptr)"
- << be_nl
- << "{" << be_idt_nl
- << "return";
-
- if (be_global->gen_direct_collocation ())
- {
- *os << be_idt_nl
- << "::"
- << node->full_strategized_proxy_broker_name ()
- << "::" <<"the"
- << node->strategized_proxy_broker_name ()
- << " ();" << be_uidt;
- }
- else
- {
- // @@ HACK!
-
- // Dummy function pointer for the thru-POA case. It isn't
- // used to call a function but it is used to determine if
- // collocation is available.
-
- // @todo Change the way TAO's ORB_Core detects collocation,
- // or at least augment it so that we don't have to
- // resort this hack.
- *os << " reinterpret_cast<TAO::Collocation_Proxy_Broker *> (0xdead);"
- << " // Dummy";
- }
-
- *os << be_uidt_nl
- << "}" << be_nl_2;
-
- // Proxy Broker Function Pointer Initializer.
- *os << "int" << be_nl
- << node->flat_client_enclosing_scope ()
- << node->base_proxy_broker_name ()
- << "_Factory_Initializer (size_t)" << be_nl
- << "{" << be_idt_nl
- << node->flat_client_enclosing_scope ()
- << node->base_proxy_broker_name ()
- << "_Factory_function_pointer = "
- << be_idt_nl
- << node->flat_client_enclosing_scope ()
- << node->base_proxy_broker_name ()
- << "_Factory_function;"
- << be_uidt_nl
- << be_nl
- << "return 0;" << be_uidt_nl
- << "}" << be_nl_2;
-
- *os << "static int" << be_nl
- << node->flat_client_enclosing_scope ()
- << node->base_proxy_broker_name ()
- << "_Stub_Factory_Initializer_Scarecrow ="
- << be_idt_nl
- << node->flat_client_enclosing_scope ()
- << node->base_proxy_broker_name ()
- << "_Factory_Initializer (" << be_idt << be_idt_nl
- << "reinterpret_cast<size_t> ("
- << node->flat_client_enclosing_scope ()
- << node->base_proxy_broker_name ()
- << "_Factory_Initializer));" << be_uidt << be_uidt << be_uidt_nl;
- }
- }
-
if (be_global->gen_direct_collocation ())
{
ctx = *this->ctx_;
diff --git a/TAO/TAO_IDL/be/be_visitor_interface/smart_proxy_cs.cpp b/TAO/TAO_IDL/be/be_visitor_interface/smart_proxy_cs.cpp
index 38ff9db58bd..8b9d22c767d 100644
--- a/TAO/TAO_IDL/be/be_visitor_interface/smart_proxy_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_interface/smart_proxy_cs.cpp
@@ -216,7 +216,7 @@ int be_visitor_interface_smart_proxy_cs::visit_interface (be_interface *node)
<< "ACE_MT (ACE_GUARD_RETURN ("
<< "TAO_SYNCH_RECURSIVE_MUTEX, ace_mon," << be_idt_nl
<< "this->lock_, 0));" << be_uidt_nl << be_nl
- << "// To take care of those <unchecked_narrow> methods where we " << be_nl
+ << "// To take care of those <unchecked_narrow> methods where we" << be_nl
<< "// want to override the smart proxy factory if there exists one." << be_nl
<< "if (this->disable_factory_)" << be_idt_nl
<< "{" << be_idt_nl
@@ -229,7 +229,7 @@ int be_visitor_interface_smart_proxy_cs::visit_interface (be_interface *node)
<< "ACE_NEW_RETURN ("
<< "this->proxy_factory_," << be_idt << be_idt_nl
<< "TAO_" << node->flat_name ()
- << "_Default_Proxy_Factory (0), " << be_nl
+ << "_Default_Proxy_Factory (0)," << be_nl
<< " 0);" << be_uidt_nl << be_uidt_nl << be_uidt_nl
<< "return "
<< "this->proxy_factory_->create_proxy (proxy);"
diff --git a/TAO/TAO_IDL/be/be_visitor_interface/strategized_proxy_broker_sh.cpp b/TAO/TAO_IDL/be/be_visitor_interface/strategized_proxy_broker_sh.cpp
deleted file mode 100644
index 8dddfb293be..00000000000
--- a/TAO/TAO_IDL/be/be_visitor_interface/strategized_proxy_broker_sh.cpp
+++ /dev/null
@@ -1,89 +0,0 @@
-//
-// $Id$
-//
-
-be_visitor_interface_strategized_proxy_broker_sh::
-be_visitor_interface_strategized_proxy_broker_sh (be_visitor_context *ctx)
- : be_visitor_interface (ctx)
-{
- // No-Op.
-}
-
-be_visitor_interface_strategized_proxy_broker_sh::
-~be_visitor_interface_strategized_proxy_broker_sh (void)
-{
- // No-Op.
-}
-
-int
-be_visitor_interface_strategized_proxy_broker_sh::visit_interface (
- be_interface *node
- )
-{
- TAO_OutStream *os = this->ctx_->stream ();
-
- *os << be_nl_2
- << "///////////////////////////////////////////////////////////////////////"
- << be_nl
- << "// Strategized Proxy Broker Declaration " << be_nl
- << "//" << be_nl_2;
-
- *os << "// TAO_IDL - Generated from" << be_nl
- << "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
-
- *os << "class " << be_global->skel_export_macro () << " "
- << node->strategized_proxy_broker_name () << be_idt_nl
- << ": public virtual "
- << "TAO::Collocation_Proxy_Broker" << be_uidt_nl << "{"
- << be_nl
- << "public: " << be_idt;
-
- // Destructor
- *os << be_nl
- << "virtual ~" << node->strategized_proxy_broker_name () << " (void);";
-
- *os << be_nl_2
- << "TAO::Collocation_Strategy "
- << "get_strategy (::CORBA::Object_ptr obj);" << be_nl;
-
- *os << be_nl
- << "void" << be_nl
- << "dispatch (" << be_idt << be_idt_nl
- << "::CORBA::Object_ptr obj," << be_nl
- << "::CORBA::Object_out forward_obj," << be_nl
- << "bool &is_forwarded," << be_nl
- << "TAO::Argument ** args," << be_nl
- << "int num_args," << be_nl
- << "const char * op," << be_nl
- << "size_t op_len," << be_nl
- << "TAO::Collocation_Strategy strategy" << be_uidt_nl
- << ");" << be_uidt_nl;
-
- *os << be_nl
- << "static " << node->strategized_proxy_broker_name ()
- << " *" << be_nl
- << "the" << node->strategized_proxy_broker_name ()
- << " (void);" << be_uidt_nl;
-
- *os << "};";
-
- *os << be_nl_2
- << "//" << be_nl
- << "// End Strategized Proxy Broker Declaration " << be_nl
- << "///////////////////////////////////////////////////////////////////////"
- << be_nl_2;
-
- return 0;
-}
-
-int be_visitor_interface_strategized_proxy_broker_sh::visit_component (
- be_component *node)
-{
- return this->visit_interface (node);
-}
-
-int be_visitor_interface_strategized_proxy_broker_sh::visit_connector (
- be_connector *node)
-{
- return this->visit_component (node);
-}
diff --git a/TAO/TAO_IDL/be/be_visitor_interface/strategized_proxy_broker_ss.cpp b/TAO/TAO_IDL/be/be_visitor_interface/strategized_proxy_broker_ss.cpp
deleted file mode 100644
index 5aafa765692..00000000000
--- a/TAO/TAO_IDL/be/be_visitor_interface/strategized_proxy_broker_ss.cpp
+++ /dev/null
@@ -1,121 +0,0 @@
-//
-// $Id$
-
-be_visitor_interface_strategized_proxy_broker_ss::
-be_visitor_interface_strategized_proxy_broker_ss (be_visitor_context *ctx)
- : be_visitor_interface (ctx)
-{
- // No-Op.
-}
-
-
-be_visitor_interface_strategized_proxy_broker_ss::
-~be_visitor_interface_strategized_proxy_broker_ss (void)
-{
- // No-Op.
-}
-
-int
-be_visitor_interface_strategized_proxy_broker_ss::visit_interface (
- be_interface *node
- )
-{
- TAO_OutStream *os = this->ctx_->stream ();
-
- // Generate the class declaration.
- os->indent ();
-
- *os << be_nl
- << "///////////////////////////////////////////////////////////////////////"
- << be_nl
- << "// Strategized Proxy Broker Implementation" << be_nl
- << "//" << be_nl_2;
-
- *os << "// TAO_IDL - Generated from" << be_nl
- << "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
-
- *os << "// Global static proxy broker." << be_nl
- << "static " << node->full_strategized_proxy_broker_name () << be_nl
- << "tao_" << node->flat_client_enclosing_scope ()
- << node->base_proxy_broker_name ()
- << ";" << be_nl_2;
-
- *os << "// Factory function Implementation." << be_nl
- << node->full_strategized_proxy_broker_name ()
- << " *" << be_nl
- << node->full_strategized_proxy_broker_name () << "::the"
- << node->strategized_proxy_broker_name ()
- << " (void)" << be_nl
- << "{" << be_idt_nl
- << "return &" << "tao_" << node->flat_client_enclosing_scope ()
- << node->base_proxy_broker_name () << ";" << be_uidt_nl
- << "}" << be_nl_2;
-
- // Destructor Implementation.
- *os << node->full_strategized_proxy_broker_name () << "::~"
- << node->strategized_proxy_broker_name () << " (void)" << be_nl
- << "{" << be_nl
- << "}" << be_nl_2;
-
- // get_strategy() impementation.
- *os << "TAO::Collocation_Strategy" << be_nl
- << node->full_strategized_proxy_broker_name () << "::"
- << "get_strategy (" << be_idt << be_idt_nl
- << "::CORBA::Object_ptr obj)" << be_uidt << be_uidt_nl
- << "{" << be_idt_nl
- << "return TAO_ORB_Core::collocation_strategy (obj);" << be_uidt_nl
- << "}" << be_nl_2;
-
- // create_proxy implementation
- *os << "void" << be_nl
- << node->full_strategized_proxy_broker_name () << "::"
- << "dispatch (" << be_idt << be_idt_nl
- << "::CORBA::Object_ptr obj," << be_nl
- << "::CORBA::Object_out forward_obj," << be_nl
- << "bool & is_forwarded," << be_nl
- << "TAO::Argument ** args," << be_nl
- << "int num_args," << be_nl
- << "const char * op," << be_nl
- << "size_t op_len," << be_nl
- << "TAO::Collocation_Strategy strategy)" << be_uidt << be_uidt_nl
- << "{" << be_idt_nl
- << "TAO::Direct_Collocation_Upcall_Wrapper collocation_upcall_wrapper;" << be_nl
- << "collocation_upcall_wrapper.upcall (" << be_idt_nl
- << "obj," << be_nl
- << "forward_obj," << be_nl
- << "is_forwarded," << be_nl
- << "args," << be_nl
- << "num_args," << be_nl
- << "op," << be_nl
- << "op_len," << be_nl
- << "strategy);" << be_uidt << be_uidt_nl
- << "}";
-
- *os << be_nl_2
- << "//" << be_nl
- << "// End Strategized Proxy Broker Implementation" << be_nl
- << "///////////////////////////////////////////////////////////////////////";
-
- return 0;
-}
-
-int
-be_visitor_interface_strategized_proxy_broker_ss::visit_component (
- be_component *node)
-{
- return this->visit_interface (node);
-}
-
-int
-be_visitor_interface_strategized_proxy_broker_ss::visit_connector (
- be_connector *node)
-{
- return this->visit_component (node);
-}
-
-void
-be_visitor_interface_strategized_proxy_broker_ss::gen_direct_operations (
- be_interface *,
- TAO_OutStream *)
-{
-}
diff --git a/TAO/TAO_IDL/be/be_visitor_interface/tie_ss.cpp b/TAO/TAO_IDL/be/be_visitor_interface/tie_ss.cpp
index 041bc2101d8..24e2d765a07 100644
--- a/TAO/TAO_IDL/be/be_visitor_interface/tie_ss.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_interface/tie_ss.cpp
@@ -86,35 +86,35 @@ be_visitor_interface_tie_ss::visit_interface (be_interface *node)
<< "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
*os << "template <class T>" << be_nl
- << fulltiename << "<T>::" << localtiename << " (T &t)" << be_nl
- << "\t: ptr_ (&t)," << be_nl
- << "\t poa_ ( ::PortableServer::POA::_nil ())," << be_nl
- << "\t rel_ (false)" << be_nl
+ << fulltiename << "<T>::" << localtiename << " (T &t)" << be_idt_nl
+ << ": ptr_ (&t)," << be_idt_nl
+ << "poa_ ( ::PortableServer::POA::_nil ())," << be_nl
+ << "rel_ (false)" << be_uidt << be_uidt_nl
<< "{}" << be_nl_2;
- *os << "template <class T> " << be_nl
+ *os << "template <class T>" << be_nl
<< fulltiename << "<T>::" << localtiename
- << " (T &t, ::PortableServer::POA_ptr poa)" << be_nl
- << "\t: ptr_ (&t)," << be_nl
- << "\t poa_ ( ::PortableServer::POA::_duplicate (poa))," << be_nl
- << "\t rel_ (false)" << be_nl
+ << " (T &t, ::PortableServer::POA_ptr poa)" << be_idt_nl
+ << ": ptr_ (&t)," << be_idt_nl
+ << "poa_ ( ::PortableServer::POA::_duplicate (poa))," << be_nl
+ << "rel_ (false)" << be_uidt << be_uidt_nl
<< "{}" << be_nl_2;
*os << "template <class T>" << be_nl
<< fulltiename << "<T>::" << localtiename
- << " (T *tp, ::CORBA::Boolean release)" << be_nl
- << "\t: ptr_ (tp)," << be_nl
- << "\t poa_ ( ::PortableServer::POA::_nil ())," << be_nl
- << "\t rel_ (release)" << be_nl
+ << " (T *tp, ::CORBA::Boolean release)" << be_idt_nl
+ << ": ptr_ (tp)," << be_idt_nl
+ << "poa_ ( ::PortableServer::POA::_nil ())," << be_nl
+ << "rel_ (release)" << be_uidt << be_uidt_nl
<< "{}" << be_nl_2;
*os << "template <class T>" << be_nl
<< fulltiename << "<T>::" << localtiename
<< " (T *tp, ::PortableServer::POA_ptr poa, ::CORBA::Boolean release)"
- << be_nl
- << "\t: ptr_ (tp)," << be_nl
- << "\t poa_ ( ::PortableServer::POA::_duplicate (poa))," << be_nl
- << "\t rel_ (release)" << be_nl
+ << be_idt_nl
+ << ": ptr_ (tp)," << be_idt_nl
+ << "poa_ ( ::PortableServer::POA::_duplicate (poa))," << be_nl
+ << "rel_ (release)" << be_uidt << be_uidt_nl
<< "{}" << be_nl_2;
*os << "template <class T>" << be_nl
diff --git a/TAO/TAO_IDL/be/be_visitor_operation/amh_rh_ss.cpp b/TAO/TAO_IDL/be/be_visitor_operation/amh_rh_ss.cpp
index 28e70e58e7c..f503eff6c6e 100644
--- a/TAO/TAO_IDL/be/be_visitor_operation/amh_rh_ss.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_operation/amh_rh_ss.cpp
@@ -74,7 +74,7 @@ be_visitor_amh_rh_operation_ss::visit_operation (be_operation *node)
buf = 0;
// Step 1 : Generate return type: always void
- *os << be_nl_2 << "// TAO_IDL - Generated from " << be_nl
+ *os << be_nl_2 << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
*os << "void" << be_nl
diff --git a/TAO/TAO_IDL/be/be_visitor_operation/amh_sh.cpp b/TAO/TAO_IDL/be/be_visitor_operation/amh_sh.cpp
index d5269a02b8d..58125600147 100644
--- a/TAO/TAO_IDL/be/be_visitor_operation/amh_sh.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_operation/amh_sh.cpp
@@ -130,7 +130,7 @@ be_visitor_amh_operation_sh::generate_shared_prologue (
const char *skel_prefix
)
{
- *os << be_nl_2 << "// TAO_IDL - Generated from " << be_nl
+ *os << be_nl_2 << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
*os << "static void " << skel_prefix
diff --git a/TAO/TAO_IDL/be/be_visitor_operation/amh_ss.cpp b/TAO/TAO_IDL/be/be_visitor_operation/amh_ss.cpp
index da66afebb59..da9362998b9 100644
--- a/TAO/TAO_IDL/be/be_visitor_operation/amh_ss.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_operation/amh_ss.cpp
@@ -302,7 +302,7 @@ be_visitor_amh_operation_ss::generate_shared_prologue (be_decl *node,
TAO_OutStream *os,
const char *skel_prefix)
{
- *os << be_nl_2 << "// TAO_IDL - Generated from " << be_nl
+ *os << be_nl_2 << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
// We need the interface node in which this operation was defined. However,
diff --git a/TAO/TAO_IDL/be/be_visitor_operation/ami_cs.cpp b/TAO/TAO_IDL/be/be_visitor_operation/ami_cs.cpp
index 1edecc7e41c..948d44f0d4a 100644
--- a/TAO/TAO_IDL/be/be_visitor_operation/ami_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_operation/ami_cs.cpp
@@ -131,17 +131,6 @@ be_visitor_operation_ami_cs::visit_operation (be_operation *node)
<< "::CORBA::Object::tao_object_initialize (this);"
<< be_uidt_nl
<< "}" << be_uidt_nl << be_nl;
-
- if (be_global->gen_direct_collocation()
- || be_global->gen_thru_poa_collocation ())
- {
- *os << "if (this->the_TAO_" << parent->local_name ()
- << "_Proxy_Broker_ == 0)" << be_idt_nl
- << "{" << be_idt_nl
- << parent->flat_name () << "_setup_collocation ("
- << ");" << be_uidt_nl
- << "}" << be_uidt;
- }
}
// Includes the reply handler, but we have to add 1 for the retval anyway.
@@ -192,8 +181,6 @@ be_visitor_operation_ami_cs::visit_operation (be_operation *node)
<< "};" << be_uidt;
}
- be_interface *intf = be_interface::narrow_from_decl (parent);
-
ACE_CString base (node->local_name ()->get_string ());
/// The sendc_* operation makes the invocation with the
@@ -216,13 +203,14 @@ be_visitor_operation_ami_cs::visit_operation (be_operation *node)
<< "\"" << op_name << "\"," << be_nl
<< len << "," << be_nl;
- if (be_global->gen_direct_collocation() || be_global->gen_thru_poa_collocation ())
+ *os << "TAO::TAO_CO_NONE";
+ if (be_global->gen_direct_collocation())
{
- *os << "this->the" << intf->base_proxy_broker_name () << "_";
+ *os << " | TAO::TAO_CO_DIRECT_STRATEGY";
}
- else
+ if (be_global->gen_thru_poa_collocation())
{
- *os << "0";
+ *os << " | TAO::TAO_CO_THRU_POA_STRATEGY";
}
*os << be_uidt_nl
diff --git a/TAO/TAO_IDL/be/be_visitor_operation/ami_handler_reply_stub_operation_cs.cpp b/TAO/TAO_IDL/be/be_visitor_operation/ami_handler_reply_stub_operation_cs.cpp
index 09cbabefdf2..7323f35f509 100644
--- a/TAO/TAO_IDL/be/be_visitor_operation/ami_handler_reply_stub_operation_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_operation/ami_handler_reply_stub_operation_cs.cpp
@@ -100,7 +100,7 @@ be_visitor_operation_ami_handler_reply_stub_operation_cs::visit_operation (
*os << this->ctx_->port_prefix ().c_str ()
<< node->local_name () << "_reply_stub (" << be_idt_nl
- << "TAO_InputCDR &_tao_in, " << be_nl
+ << "TAO_InputCDR &_tao_in," << be_nl
<< "::Messaging::ReplyHandler_ptr _tao_reply_handler," << be_nl
<< "::CORBA::ULong reply_status"
<< ")" << be_uidt << be_uidt_nl
@@ -156,7 +156,7 @@ be_visitor_operation_ami_handler_reply_stub_operation_cs::visit_operation (
// Don't do anything if the exception list is empty.
if (node->exceptions ())
{
- *os << be_nl << "static TAO::Exception_Data " << "exceptions_data [] = " << be_nl;
+ *os << be_nl << "static TAO::Exception_Data " << "exceptions_data [] =" << be_nl;
*os << "{" << be_idt_nl;
int excep_count = 0;
diff --git a/TAO/TAO_IDL/be/be_visitor_operation/base_proxy_impl_ch.cpp b/TAO/TAO_IDL/be/be_visitor_operation/base_proxy_impl_ch.cpp
deleted file mode 100644
index 2b2aa030fd0..00000000000
--- a/TAO/TAO_IDL/be/be_visitor_operation/base_proxy_impl_ch.cpp
+++ /dev/null
@@ -1,68 +0,0 @@
-// $Id$
-
-be_visitor_operation_base_proxy_impl_ch::
-be_visitor_operation_base_proxy_impl_ch (be_visitor_context *ctx)
- : be_visitor_scope (ctx)
-{
-}
-
-be_visitor_operation_base_proxy_impl_ch::
-~be_visitor_operation_base_proxy_impl_ch (void)
-{
-}
-
-int be_visitor_operation_base_proxy_impl_ch::visit_operation (be_operation *node)
-{
- TAO_OutStream *os = this->ctx_->stream ();
- this->ctx_->node (node);
-
- *os << be_nl_2 << "// TAO_IDL - Generated from" << be_nl
- << "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
-
- *os << "virtual ";
-
- // STEP I: generate the return type.
- be_type *bt = be_type::narrow_from_decl (node->return_type ());
-
- if (!bt)
- {
- ACE_ERROR_RETURN ((LM_ERROR,
- "(%N:%l) be_visitor_operation_sh::"
- "visit_operation - "
- "Bad return type\n"),
- -1);
- }
-
- be_visitor_context ctx (*this->ctx_);
- be_visitor_operation_rettype oro_visitor (&ctx);
-
- if (bt->accept (&oro_visitor) == -1)
- {
- ACE_ERROR_RETURN ((LM_ERROR,
- "(%N:%l) be_visitor_operation_sh::"
- "visit_operation - "
- "codegen for return type failed\n"),
- -1);
- }
-
- // STEP 2: generate the operation name
- *os << this->ctx_->port_prefix ().c_str ()
- << " " << node->local_name ();
-
- // STEP 3: generate the argument list with the appropriate mapping. For these
- // we grab a visitor that generates the parameter listing
- ctx = *this->ctx_;
- ctx.state (TAO_CodeGen::TAO_OPERATION_ARGLIST_BASE_PROXY_IMPL_CH);
- be_visitor_operation_arglist oabpi_visitor (&ctx);
-
- if (node->accept (&oabpi_visitor) == -1)
- {
- ACE_ERROR_RETURN ((LM_ERROR,
- "(%N:%l) be_visitor_operation_sh::"
- "visit_operation - "
- "codegen for argument list failed\n"),
- -1);
- }
-
- return 0;
-}
diff --git a/TAO/TAO_IDL/be/be_visitor_operation/direct_proxy_impl_ss.cpp b/TAO/TAO_IDL/be/be_visitor_operation/direct_proxy_impl_ss.cpp
index b62d7224634..c69901bbc09 100644
--- a/TAO/TAO_IDL/be/be_visitor_operation/direct_proxy_impl_ss.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_operation/direct_proxy_impl_ss.cpp
@@ -53,8 +53,8 @@ be_visitor_operation_direct_proxy_impl_ss::visit_operation (
}
}
- *os << "// TAO_IDL - Generated from " << be_nl
- << "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
+ *os << "// TAO_IDL - Generated from" << be_nl
+ << "// " << __FILE__ << ":" << __LINE__ << be_nl;
*os << "void" << be_nl
<< intf->full_direct_proxy_impl_name () << "::";
@@ -83,21 +83,11 @@ be_visitor_operation_direct_proxy_impl_ss::visit_operation (
*os << " args";
}
- *os << "," << be_nl
- << "int)" << be_uidt_nl;
+ *os << ")" << be_uidt_nl;
*os << be_uidt_nl
<< "{" << be_idt_nl;
-#if 0
- << "TAO::Portable_Server::Servant_Upcall servant_upcall ("
- << be_idt << be_idt_nl
- << "obj->_stubobj ()"
- << "->servant_orb_var ()->orb_core ()"
- << be_uidt_nl
- << ");" << be_uidt_nl << be_nl;
-#endif /*if 0*/
-
if (!node->void_return_type ())
{
*os << "((TAO::Arg_Traits< ";
@@ -125,10 +115,9 @@ be_visitor_operation_direct_proxy_impl_ss::visit_operation (
*os << be_uidt;
}
- *os << be_uidt << be_uidt_nl;
+ *os << be_uidt << be_uidt << be_uidt_nl;
- *os << be_uidt_nl
- << "}" << be_nl;
+ *os << "}" << be_nl << be_nl;
return 0;
}
diff --git a/TAO/TAO_IDL/be/be_visitor_operation/operation.cpp b/TAO/TAO_IDL/be/be_visitor_operation/operation.cpp
index bf7102103a5..fe40b0d6b14 100644
--- a/TAO/TAO_IDL/be/be_visitor_operation/operation.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_operation/operation.cpp
@@ -168,8 +168,7 @@ be_visitor_operation::gen_stub_operation_body (
if (node->has_native ()) // native exists => no stub
{
- if (this->gen_raise_exception ("::CORBA::MARSHAL",
- "") == -1)
+ if (this->gen_raise_exception ("::CORBA::MARSHAL", "") == -1)
{
ACE_ERROR_RETURN ((
LM_ERROR,
@@ -195,16 +194,6 @@ be_visitor_operation::gen_stub_operation_body (
<< "::CORBA::Object::tao_object_initialize (this);"
<< be_uidt_nl
<< "}" << be_uidt_nl << be_nl;
-
- if (be_global->gen_direct_collocation() || be_global->gen_thru_poa_collocation ())
- {
- *os << "if (this->the" << intf->base_proxy_broker_name () << "_ == 0)"
- << be_idt_nl
- << "{" << be_idt_nl
- << intf->flat_name () << "_setup_collocation ();"
- << be_uidt_nl
- << "}" << be_uidt_nl << be_nl;
- }
}
// Declare return type helper class.
@@ -291,13 +280,14 @@ be_visitor_operation::gen_stub_operation_body (
*os << lname << "\"," << be_nl
<< len << "," << be_nl;
- if (be_global->gen_direct_collocation() || be_global->gen_thru_poa_collocation ())
+ *os << "TAO::TAO_CO_NONE";
+ if (be_global->gen_direct_collocation())
{
- *os << "this->the" << intf->base_proxy_broker_name () << "_";
+ *os << " | TAO::TAO_CO_DIRECT_STRATEGY";
}
- else
+ if (be_global->gen_thru_poa_collocation())
{
- *os << "0";
+ *os << " | TAO::TAO_CO_THRU_POA_STRATEGY";
}
if (node->flags () == AST_Operation::OP_oneway)
diff --git a/TAO/TAO_IDL/be/be_visitor_operation/operation_ch.cpp b/TAO/TAO_IDL/be/be_visitor_operation/operation_ch.cpp
index 769362a8d7f..965d7c0418a 100644
--- a/TAO/TAO_IDL/be/be_visitor_operation/operation_ch.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_operation/operation_ch.cpp
@@ -97,7 +97,7 @@ be_visitor_operation_ch::visit_operation (be_operation *node)
&& !node->has_native ())
{
*os << be_nl_2
- << "static void " << be_nl
+ << "static void" << be_nl
<< node->local_name () << "_reply_stub (" << be_idt_nl
<< "TAO_InputCDR &_tao_reply_cdr," << be_nl
<< "::Messaging::ReplyHandler_ptr _tao_reply_handler,"
diff --git a/TAO/TAO_IDL/be/be_visitor_operation/operation_ss.cpp b/TAO/TAO_IDL/be/be_visitor_operation/operation_ss.cpp
index 54363971d8b..2903992ecba 100644
--- a/TAO/TAO_IDL/be/be_visitor_operation/operation_ss.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_operation/operation_ss.cpp
@@ -169,7 +169,7 @@ be_visitor_operation_ss::gen_skel_operation_body (be_operation * node,
intf->full_skel_name (),
upcall_command_name.c_str ());
- *os << be_nl_2 << "// TAO_IDL - Generated from " << be_nl
+ *os << be_nl_2 << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
*os << "void " << intf->full_skel_name () << "::";
diff --git a/TAO/TAO_IDL/be/be_visitor_operation/proxy_impl_xh.cpp b/TAO/TAO_IDL/be/be_visitor_operation/proxy_impl_xh.cpp
index 711b4abb1b0..d2c9175b538 100644
--- a/TAO/TAO_IDL/be/be_visitor_operation/proxy_impl_xh.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_operation/proxy_impl_xh.cpp
@@ -45,8 +45,8 @@ int be_visitor_operation_proxy_impl_xh::visit_operation (be_operation *node)
*os << this->ctx_->port_prefix ().c_str ()
<< node->local_name () << " (" << be_idt_nl
<< "TAO_Abstract_ServantBase *servant, "
- << "TAO::Argument **args, "
- << "int num_args);" << be_uidt_nl;
+ << "TAO::Argument **args);"
+ << be_uidt_nl;
return 0;
}
diff --git a/TAO/TAO_IDL/be/be_visitor_operation/remote_proxy_impl_cs.cpp b/TAO/TAO_IDL/be/be_visitor_operation/remote_proxy_impl_cs.cpp
deleted file mode 100644
index 81436f6c775..00000000000
--- a/TAO/TAO_IDL/be/be_visitor_operation/remote_proxy_impl_cs.cpp
+++ /dev/null
@@ -1,140 +0,0 @@
-// $Id$
-
-// ************************************************************
-// Operation visitor for client stubs
-// ************************************************************
-
-be_visitor_operation_remote_proxy_impl_cs::
-be_visitor_operation_remote_proxy_impl_cs (be_visitor_context *ctx)
- : be_visitor_operation (ctx)
-{
-}
-
-be_visitor_operation_remote_proxy_impl_cs::
-~be_visitor_operation_remote_proxy_impl_cs (void)
-{
-}
-
-// Processing to be done after every element in the scope is processed.
-int
-be_visitor_operation_remote_proxy_impl_cs::post_process (be_decl *bd)
-{
- // All we do here is to insert a comma and a newline.
- TAO_OutStream *os = this->ctx_->stream ();
-
- if (!this->last_node (bd))
- {
- *os << "," << be_nl;
- }
-
- return 0;
-}
-
-int
-be_visitor_operation_remote_proxy_impl_cs::visit_operation (
- be_operation *node
- )
-{
- if (node->is_local ())
- {
- return 0;
- }
-
- TAO_OutStream *os = this->ctx_->stream ();
- this->ctx_->node (node);
-
- // Retrieve the operation return type.
- be_type *bt = be_type::narrow_from_decl (node->return_type ());
-
- if (!bt)
- {
- ACE_ERROR_RETURN ((LM_ERROR,
- "(%N:%l) be_visitor_operation_remote_proxy_impl_cs::"
- "visit_operation - "
- "Bad return type\n"),
- -1);
- }
-
- *os << be_nl_2 << "// TAO_IDL - Generated from" << be_nl
- << "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
-
- // Generate the return type mapping (same as in the header file)
- be_visitor_context ctx = *this->ctx_;
- be_visitor_operation_rettype ort_visitor (&ctx);
-
- if (bt->accept (&ort_visitor) == -1)
- {
- ACE_ERROR_RETURN ((LM_ERROR,
- "(%N:%l) be_visitor_operation_remote_proxy_impl_cs::"
- "visit_operation - "
- "codegen for return type failed\n"),
- -1);
- }
-
- // Generate the operation name
- be_decl* scope = be_scope::narrow_from_scope (node->defined_in ())->decl ();
- be_interface *interface = be_interface::narrow_from_decl (scope);
-
- *os <<" " << interface->full_remote_proxy_impl_name ()
- << "::" << node->local_name ();
-
- // Generate the argument list with the appropriate mapping (same as
- // in the header file).
- ctx = *this->ctx_;
- ctx.state (TAO_CodeGen::TAO_OPERATION_ARGLIST_PROXY_IMPL_XS);
- be_visitor_operation_arglist arglist_visitor (&ctx);
-
- if (node->accept (&arglist_visitor) == -1)
- {
- ACE_ERROR_RETURN ((LM_ERROR,
- "(%N:%l) be_visitor_operation_remote_proxy_impl_cs::"
- "visit_operation - "
- "codegen for argument list failed\n"),
- -1);
- }
-
- // Generate the code for the operation body.
- return this->gen_stub_operation_body (node,
- bt);
-}
-
-int
-be_visitor_operation_remote_proxy_impl_cs::visit_argument (be_argument *node)
-{
- // This method is used to generate the ParamData table entry.
-
- TAO_OutStream *os = this->ctx_->stream ();
- be_type *bt = 0;
-
- // Retrieve the type for this argument.
- bt = be_type::narrow_from_decl (node->field_type ());
-
- if (!bt)
- {
- ACE_ERROR_RETURN ((LM_ERROR,
- "(%N:%l) be_visitor_operation_remote_proxy_impl_cs::"
- "visit_argument - "
- "Bad argument type\n"),
- -1);
- }
-
- os->indent ();
- *os << "{" << bt->tc_name () << ", ";
-
- switch (node->direction ())
- {
- case AST_Argument::dir_IN:
- *os << "PARAM_IN, ";
- break;
- case AST_Argument::dir_INOUT:
- *os << "PARAM_INOUT, ";
- break;
- case AST_Argument::dir_OUT:
- *os << "PARAM_OUT, ";
- break;
- }
- *os << "0}";
-
- return 0;
-}
-
diff --git a/TAO/TAO_IDL/be/be_visitor_operation/tie_ss.cpp b/TAO/TAO_IDL/be/be_visitor_operation/tie_ss.cpp
index 597475cbe94..964921a0797 100644
--- a/TAO/TAO_IDL/be/be_visitor_operation/tie_ss.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_operation/tie_ss.cpp
@@ -94,7 +94,7 @@ int be_visitor_operation_tie_ss::visit_operation (be_operation *node)
}
}
- *os << be_nl_2 << "// TAO_IDL - Generated from " << be_nl
+ *os << be_nl_2 << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
*os << "template <class " << template_name.c_str () << ">" << be_nl;
diff --git a/TAO/TAO_IDL/be/be_visitor_root/root_ch.cpp b/TAO/TAO_IDL/be/be_visitor_root/root_ch.cpp
index ed167664904..bd821693e32 100644
--- a/TAO/TAO_IDL/be/be_visitor_root/root_ch.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_root/root_ch.cpp
@@ -59,8 +59,6 @@ be_visitor_root_ch::visit_root (be_root *node)
}
}
- this->gen_proxy_broker_factory_pointers ();
-
this->gen_ref_counting_overrides ();
this->gen_static_corba_overrides ();
@@ -153,12 +151,10 @@ be_visitor_root_ch::gen_arg_traits (be_root *node)
void
be_visitor_root_ch::gen_fwd_decls (void)
{
- // If this IDL file contains an non local interface declaration, generate a
- // forward declaration of the proxy broker for a possible collocated call.
if (idl_global->non_local_iface_seen_)
{
*o_ << be_nl_2
- << "// TAO_IDL - Generated from " << be_nl
+ << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__;
*o_ << be_global->core_versioning_begin () << be_nl;
@@ -167,11 +163,6 @@ be_visitor_root_ch::gen_fwd_decls (void)
<< "namespace TAO" << be_nl
<< "{" << be_idt_nl;
- if (be_global->gen_direct_collocation () || be_global->gen_thru_poa_collocation ())
- {
- *o_ << "class Collocation_Proxy_Broker;" << be_nl;
- }
-
if (idl_global->abstract_iface_seen_)
{
*o_ << "template<typename T> class AbstractBase_Narrow_Utils;" << be_nl;
@@ -185,43 +176,6 @@ be_visitor_root_ch::gen_fwd_decls (void)
}
void
-be_visitor_root_ch::gen_proxy_broker_factory_pointers (void)
-{
- size_t size = be_global->non_local_interfaces.size ();
-
- if (size == 0)
- {
- return;
- }
-
- size_t index = 0;
- be_interface *i = 0;
-
- *o_ << be_nl_2
- << "// Proxy Broker Factory function pointer declarations."
- << be_nl_2
- << "// TAO_IDL - Generated from" << be_nl
- << "// " << __FILE__ << ":" << __LINE__;
-
- for (index = 0; index < size; ++index)
- {
- be_global->non_local_interfaces.dequeue_head (i);
-
- if (be_global->gen_direct_collocation() || be_global->gen_thru_poa_collocation ())
- {
- *o_ << be_nl_2
- << "extern " << be_global->stub_export_macro () << be_nl
- << "TAO::Collocation_Proxy_Broker *" << be_nl
- << "(*" << i->flat_client_enclosing_scope ()
- << i->base_proxy_broker_name ()
- << "_Factory_function_pointer) ("
- << be_idt << be_idt_nl
- << "::CORBA::Object_ptr obj);" << be_uidt << be_uidt;
- }
- }
-}
-
-void
be_visitor_root_ch::gen_ref_counting_overrides (void)
{
size_t size = be_global->non_defined_interfaces.size ();
diff --git a/TAO/TAO_IDL/be/be_visitor_root/root_sth.cpp b/TAO/TAO_IDL/be/be_visitor_root/root_sth.cpp
index e5f4588ef89..b6127ffc509 100644
--- a/TAO/TAO_IDL/be/be_visitor_root/root_sth.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_root/root_sth.cpp
@@ -66,7 +66,7 @@ be_visitor_root_sth::visit_module (be_module *node)
// Generate the skeleton class name.
- *os << be_nl_2 << "// TAO_IDL - Generated from " << be_nl
+ *os << be_nl_2 << "// TAO_IDL - Generated from" << be_nl
<< "// " __FILE__ << ":" << __LINE__ << be_nl_2;
// Now generate the class definition. The prefix POA_ is prepended to our
diff --git a/TAO/TAO_IDL/be/be_visitor_sequence/any_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_sequence/any_op_cs.cpp
index 4cd24333daa..7ba6d4d7885 100644
--- a/TAO/TAO_IDL/be/be_visitor_sequence/any_op_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_sequence/any_op_cs.cpp
@@ -42,7 +42,7 @@ be_visitor_sequence_any_op_cs::visit_sequence (be_sequence *node)
TAO_OutStream *os = this->ctx_->stream ();
*os << be_nl_2
- << "// TAO_IDL - Generated from " << be_nl
+ << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
*os << be_global->core_versioning_begin () << be_nl;
@@ -241,8 +241,8 @@ be_visitor_sequence_any_op_cs::visit_sequence (be_sequence *node)
*os << "// Non-copying insertion." << be_nl
<< "void operator<<= (" << be_idt << be_idt_nl
<< "::CORBA::Any &_tao_any," << be_nl
- << "::" << node->name () << " *_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << "::" << node->name () << " *_tao_elem)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "TAO::Any_Dual_Impl_T< ::" << node->name () << ">::insert ("
<< be_idt << be_idt_nl
@@ -257,8 +257,8 @@ be_visitor_sequence_any_op_cs::visit_sequence (be_sequence *node)
*os << "// Extraction to non-const pointer (deprecated)." << be_nl
<< "::CORBA::Boolean operator>>= (" << be_idt << be_idt_nl
<< "const ::CORBA::Any &_tao_any," << be_nl
- << "::" << node->name () << " *&_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << "::" << node->name () << " *&_tao_elem)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "return _tao_any >>= const_cast<" << be_idt << be_idt_nl
<< "const ::" << node->name () << " *&> (" << be_nl
@@ -270,8 +270,8 @@ be_visitor_sequence_any_op_cs::visit_sequence (be_sequence *node)
*os << "// Extraction to const pointer." << be_nl
<< "::CORBA::Boolean operator>>= (" << be_idt << be_idt_nl
<< "const ::CORBA::Any &_tao_any," << be_nl
- << "const ::" << node->name () << " *&_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << "const ::" << node->name () << " *&_tao_elem)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "return" << be_idt_nl
<< "TAO::Any_Dual_Impl_T< ::" << node->name () << ">::extract ("
@@ -298,8 +298,8 @@ be_visitor_sequence_any_op_cs::visit_sequence (be_sequence *node)
<< "// Copying insertion." << be_nl
<< "void operator<<= (" << be_idt << be_idt_nl
<< "::CORBA::Any &_tao_any," << be_nl
- << "const " << node->name () << " &_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << "const " << node->name () << " &_tao_elem)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "if (0 == &_tao_elem) // Trying to de-reference NULL object"
@@ -321,8 +321,8 @@ be_visitor_sequence_any_op_cs::visit_sequence (be_sequence *node)
*os << "// Non-copying insertion." << be_nl
<< "void operator<<= (" << be_idt << be_idt_nl
<< "::CORBA::Any &_tao_any," << be_nl
- << node->name () << " *_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << node->name () << " *_tao_elem)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "TAO::Any_Dual_Impl_T<" << node->name () << ">::insert ("
<< be_idt << be_idt_nl
@@ -337,8 +337,8 @@ be_visitor_sequence_any_op_cs::visit_sequence (be_sequence *node)
*os << "// Extraction to non-const pointer (deprecated)." << be_nl
<< "::CORBA::Boolean operator>>= (" << be_idt << be_idt_nl
<< "const ::CORBA::Any &_tao_any," << be_nl
- << node->name () << " *&_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << node->name () << " *&_tao_elem)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "return _tao_any >>= const_cast<" << be_idt << be_idt_nl
<< "const " << node->name () << " *&> (" << be_nl
@@ -350,8 +350,8 @@ be_visitor_sequence_any_op_cs::visit_sequence (be_sequence *node)
*os << "// Extraction to const pointer." << be_nl
<< "::CORBA::Boolean operator>>= (" << be_idt << be_idt_nl
<< "const ::CORBA::Any &_tao_any," << be_nl
- << "const " << node->name () << " *&_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << "const " << node->name () << " *&_tao_elem)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "return" << be_idt_nl
<< "TAO::Any_Dual_Impl_T<" << node->name () << ">::extract ("
@@ -359,8 +359,8 @@ be_visitor_sequence_any_op_cs::visit_sequence (be_sequence *node)
<< "_tao_any," << be_nl
<< node->name () << "::_tao_any_destructor," << be_nl
<< (td != 0 ? td->tc_name () : node->tc_name ()) << "," << be_nl
- << "_tao_elem" << be_uidt_nl
- << ");" << be_uidt << be_uidt << be_uidt_nl
+ << "_tao_elem);" << be_uidt
+ << be_uidt << be_uidt << be_uidt_nl
<< "}";
*os << be_global->core_versioning_end () << be_nl;
diff --git a/TAO/TAO_IDL/be/be_visitor_sequence/sequence_ch.cpp b/TAO/TAO_IDL/be/be_visitor_sequence/sequence_ch.cpp
index e30ec8af9a8..d725973763d 100644
--- a/TAO/TAO_IDL/be/be_visitor_sequence/sequence_ch.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_sequence/sequence_ch.cpp
@@ -208,7 +208,7 @@ int be_visitor_sequence_ch::visit_sequence (be_sequence *node)
-1);
}
- *os << "* buffer, " << be_nl
+ *os << "* buffer," << be_nl
<< "::CORBA::Boolean release = false);" << be_uidt;
}
diff --git a/TAO/TAO_IDL/be/be_visitor_sequence/sequence_cs.cpp b/TAO/TAO_IDL/be/be_visitor_sequence/sequence_cs.cpp
index db044c11ea0..655fdfcedba 100644
--- a/TAO/TAO_IDL/be/be_visitor_sequence/sequence_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_sequence/sequence_cs.cpp
@@ -61,7 +61,7 @@ int be_visitor_sequence_cs::visit_sequence (be_sequence *node)
*os << be_nl_2;
- *os << "// TAO_IDL - Generated from " << be_nl
+ *os << "// TAO_IDL - Generated from" << be_nl
<< "// "__FILE__ << ":" << __LINE__;
os->gen_ifdef_macro (node->flat_name ());
diff --git a/TAO/TAO_IDL/be/be_visitor_structure/any_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_structure/any_op_cs.cpp
index d64029fdd43..65732497637 100644
--- a/TAO/TAO_IDL/be/be_visitor_structure/any_op_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_structure/any_op_cs.cpp
@@ -41,7 +41,7 @@ be_visitor_structure_any_op_cs::visit_structure (be_structure *node)
TAO_OutStream *os = this->ctx_->stream ();
*os << be_nl_2
- << "// TAO_IDL - Generated from " << be_nl
+ << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
// Since we don't generate CDR stream operators for types that
@@ -108,11 +108,11 @@ be_visitor_structure_any_op_cs::visit_structure (be_structure *node)
be_util::gen_nested_namespace_begin (os, module);
// Copying insertion.
- *os << "// Copying insertion." << be_nl
+ *os << "/// Copying insertion." << be_nl
<< "void operator<<= (" << be_idt << be_idt_nl
<< "::CORBA::Any &_tao_any," << be_nl
- << "const ::" << node->name () << " &_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << "const ::" << node->name () << " &_tao_elem)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "if (0 == &_tao_elem) // Trying to de-reference NULL object" << be_idt_nl
@@ -125,45 +125,45 @@ be_visitor_structure_any_op_cs::visit_structure (be_structure *node)
<< "_tao_any," << be_nl
<< "::" << node->name () << "::_tao_any_destructor," << be_nl
<< "::" << node->tc_name () << "," << be_nl
- << "_tao_elem" << be_uidt_nl
- << ");" << be_uidt << be_uidt << be_uidt_nl
+ << "_tao_elem);" << be_uidt
+ << be_uidt << be_uidt << be_uidt_nl
<< "}" << be_nl_2;
// Non-copying insertion.
- *os << "// Non-copying insertion." << be_nl
+ *os << "/// Non-copying insertion." << be_nl
<< "void operator<<= (" << be_idt << be_idt_nl
<< "::CORBA::Any &_tao_any, ::" << be_nl
- << node->name () << " *_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << node->name () << " *_tao_elem)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "TAO::Any_Dual_Impl_T< ::" << node->name () << ">::insert ("
<< be_idt << be_idt_nl
<< "_tao_any," << be_nl
<< "::" << node->name () << "::_tao_any_destructor," << be_nl
<< "::" << node->tc_name () << "," << be_nl
- << "_tao_elem" << be_uidt_nl
- << ");" << be_uidt << be_uidt_nl
+ << "_tao_elem);" << be_uidt
+ << be_uidt << be_uidt_nl
<< "}" << be_nl_2;
// Extraction to non-const pointer (deprecated, just calls the other).
- *os << "// Extraction to non-const pointer (deprecated)." << be_nl
+ *os << "/// Extraction to non-const pointer (deprecated)." << be_nl
<< "::CORBA::Boolean operator>>= (" << be_idt << be_idt_nl
<< "const ::CORBA::Any &_tao_any," << be_nl
- << "::" << node->name () << " *&_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << "::" << node->name () << " *&_tao_elem)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "return _tao_any >>= const_cast<" << be_idt << be_idt_nl
<< "const ::" << node->name () << " *&> (" << be_nl
- << "_tao_elem" << be_uidt_nl
- << ");" << be_uidt << be_uidt_nl
+ << "_tao_elem);" << be_uidt
+ << be_uidt << be_uidt_nl
<< "}" << be_nl_2;
// Extraction to const pointer.
- *os << "// Extraction to const pointer." << be_nl
+ *os << "/// Extraction to const pointer." << be_nl
<< "::CORBA::Boolean operator>>= (" << be_idt << be_idt_nl
<< "const ::CORBA::Any &_tao_any," << be_nl
- << "const ::" << node->name () << " *&_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << "const ::" << node->name () << " *&_tao_elem)" << be_uidt
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "return" << be_idt_nl
<< "TAO::Any_Dual_Impl_T< ::" << node->name () << ">::extract ("
@@ -186,11 +186,11 @@ be_visitor_structure_any_op_cs::visit_structure (be_structure *node)
*os << be_global->core_versioning_begin () << be_nl;
// Copying insertion.
- *os << "// Copying insertion." << be_nl
- << "void operator<<= (" << be_idt << be_idt_nl
+ *os << "/// Copying insertion." << be_nl
+ << "void operator<<= (" << be_idt_nl
<< "::CORBA::Any &_tao_any," << be_nl
- << "const " << node->name () << " &_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << "const " << node->name () << " &_tao_elem)"
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "if (0 == &_tao_elem) // Trying to de-reference NULL object" << be_idt_nl
@@ -198,58 +198,58 @@ be_visitor_structure_any_op_cs::visit_structure (be_structure *node)
<< "else" << be_idt_nl
<< "TAO::Any_Dual_Impl_T<" << node->name () << ">::insert_copy ("
- << be_idt << be_idt_nl
+ << be_idt_nl
<< "_tao_any," << be_nl
<< node->name () << "::_tao_any_destructor," << be_nl
<< node->tc_name () << "," << be_nl
- << "_tao_elem" << be_uidt_nl
- << ");" << be_uidt << be_uidt << be_uidt_nl
+ << "_tao_elem);"
+ << be_uidt << be_uidt << be_uidt_nl
<< "}" << be_nl_2;
// Non-copying insertion.
- *os << "// Non-copying insertion." << be_nl
- << "void operator<<= (" << be_idt << be_idt_nl
+ *os << "/// Non-copying insertion." << be_nl
+ << "void operator<<= (" << be_idt_nl
<< "::CORBA::Any &_tao_any," << be_nl
- << node->name () << " *_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << node->name () << " *_tao_elem)"
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "TAO::Any_Dual_Impl_T<" << node->name () << ">::insert ("
- << be_idt << be_idt_nl
+ << be_idt_nl
<< "_tao_any," << be_nl
<< node->name () << "::_tao_any_destructor," << be_nl
<< node->tc_name () << "," << be_nl
- << "_tao_elem" << be_uidt_nl
- << ");" << be_uidt << be_uidt_nl
+ << "_tao_elem);"
+ << be_uidt << be_uidt_nl
<< "}" << be_nl_2;
// Extraction to non-const pointer (deprecated, just calls the other).
- *os << "// Extraction to non-const pointer (deprecated)." << be_nl
- << "::CORBA::Boolean operator>>= (" << be_idt << be_idt_nl
+ *os << "/// Extraction to non-const pointer (deprecated)." << be_nl
+ << "::CORBA::Boolean operator>>= (" << be_idt_nl
<< "const ::CORBA::Any &_tao_any," << be_nl
- << node->name () << " *&_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << node->name () << " *&_tao_elem)"
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "return _tao_any >>= const_cast<" << be_idt << be_idt_nl
<< "const " << node->name () << " *&> (" << be_nl
- << "_tao_elem" << be_uidt_nl
- << ");" << be_uidt << be_uidt_nl
+ << "_tao_elem);" << be_uidt
+ << be_uidt << be_uidt_nl
<< "}" << be_nl_2;
// Extraction to const pointer.
- *os << "// Extraction to const pointer." << be_nl
- << "::CORBA::Boolean operator>>= (" << be_idt << be_idt_nl
+ *os << "/// Extraction to const pointer." << be_nl
+ << "::CORBA::Boolean operator>>= (" << be_idt_nl
<< "const ::CORBA::Any &_tao_any," << be_nl
- << "const " << node->name () << " *&_tao_elem" << be_uidt_nl
- << ")" << be_uidt_nl
+ << "const " << node->name () << " *&_tao_elem)"
+ << be_uidt_nl
<< "{" << be_idt_nl
<< "return" << be_idt_nl
<< "TAO::Any_Dual_Impl_T<" << node->name () << ">::extract ("
- << be_idt << be_idt_nl
+ << be_idt_nl
<< "_tao_any," << be_nl
<< node->name () << "::_tao_any_destructor," << be_nl
<< node->tc_name () << "," << be_nl
- << "_tao_elem" << be_uidt_nl
- << ");" << be_uidt << be_uidt << be_uidt_nl
+ << "_tao_elem);"
+ << be_uidt << be_uidt << be_uidt_nl
<< "}";
*os << be_global->core_versioning_end () << be_nl;
diff --git a/TAO/TAO_IDL/be/be_visitor_structure/structure_cs.cpp b/TAO/TAO_IDL/be/be_visitor_structure/structure_cs.cpp
index 2e8723d799c..652ea6ac139 100644
--- a/TAO/TAO_IDL/be/be_visitor_structure/structure_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_structure/structure_cs.cpp
@@ -54,10 +54,10 @@ be_visitor_structure_cs::visit_structure (be_structure *node)
TAO_OutStream *os = this->ctx_->stream ();
*os << be_nl_2;
- *os << "// TAO_IDL - Generated from " << be_nl
+ *os << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
- *os << "void " << be_nl
+ *os << "void" << be_nl
<< node->name ()
<< "::_tao_any_destructor (" << be_idt << be_idt_nl
<< "void *_tao_void_pointer)" << be_uidt
diff --git a/TAO/TAO_IDL/be/be_visitor_template_export.cpp b/TAO/TAO_IDL/be/be_visitor_template_export.cpp
index bee0c3db328..f0f9229c053 100644
--- a/TAO/TAO_IDL/be/be_visitor_template_export.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_template_export.cpp
@@ -36,7 +36,7 @@ be_visitor_template_export::visit_root (be_root *node)
{
TAO_OutStream *os = this->ctx_->stream ();
- *os << "// TAO_IDL - Generated from " << be_nl
+ *os << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
*os << "#if defined ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION_EXPORT";
diff --git a/TAO/TAO_IDL/be/be_visitor_typedef/typedef_ci.cpp b/TAO/TAO_IDL/be/be_visitor_typedef/typedef_ci.cpp
index d7965f5ddee..97631bd0f08 100644
--- a/TAO/TAO_IDL/be/be_visitor_typedef/typedef_ci.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_typedef/typedef_ci.cpp
@@ -170,7 +170,7 @@ be_visitor_typedef_ci::visit_array (be_array *node)
// alloc method
*os << be_nl
- << "ACE_INLINE " << be_nl
+ << "ACE_INLINE" << be_nl
<< tdef->name () << "_slice *" << be_nl;
*os << tdef->name () << "_alloc (void)" << be_nl;
*os << "{" << be_idt_nl;
@@ -178,7 +178,7 @@ be_visitor_typedef_ci::visit_array (be_array *node)
*os << "}" << be_nl_2;
// dup method
- *os << "ACE_INLINE " << be_nl
+ *os << "ACE_INLINE" << be_nl
<< tdef->name () << "_slice *" << be_nl;
*os << tdef->name () << "_dup (" << be_idt << be_idt_nl
<< "const " << tdef->name ()
diff --git a/TAO/TAO_IDL/be/be_visitor_union/any_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_union/any_op_cs.cpp
index 48c76f9ee74..ddfc261bf6b 100644
--- a/TAO/TAO_IDL/be/be_visitor_union/any_op_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_union/any_op_cs.cpp
@@ -41,7 +41,7 @@ be_visitor_union_any_op_cs::visit_union (be_union *node)
TAO_OutStream *os = this->ctx_->stream ();
*os << be_nl_2
- << "// TAO_IDL - Generated from " << be_nl
+ << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
*os << be_global->core_versioning_begin () << be_nl;
diff --git a/TAO/TAO_IDL/be/be_visitor_union/discriminant_ci.cpp b/TAO/TAO_IDL/be/be_visitor_union/discriminant_ci.cpp
index 171d016df82..c7d97c83456 100644
--- a/TAO/TAO_IDL/be/be_visitor_union/discriminant_ci.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_union/discriminant_ci.cpp
@@ -65,7 +65,7 @@ be_visitor_union_discriminant_ci::visit_enum (be_enum *node)
// Only if all cases are not covered AND there is no explicit
// default, we get the _default () method.
*os << "ACE_INLINE" << be_nl
- << "void " << be_nl
+ << "void" << be_nl
<< bu->name () << "::_default ()" << be_nl
<< "{" << be_idt_nl
<< "this->_reset ();" << be_nl
@@ -156,7 +156,7 @@ be_visitor_union_discriminant_ci::visit_predefined_type (
// default, we get the _default () method.
*os << "ACE_INLINE" << be_nl
- << "void " << be_nl
+ << "void" << be_nl
<< bu->name () << "::_default ()" << be_nl
<< "{" << be_idt_nl
<< "this->_reset ();" << be_nl
diff --git a/TAO/TAO_IDL/be/be_visitor_union_branch/public_ci.cpp b/TAO/TAO_IDL/be/be_visitor_union_branch/public_ci.cpp
index 04e9d050ed5..db9d86d3770 100644
--- a/TAO/TAO_IDL/be/be_visitor_union_branch/public_ci.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_union_branch/public_ci.cpp
@@ -347,7 +347,7 @@ be_visitor_union_branch_public_ci::visit_interface (be_interface *node)
// Get method.
*os << "/// Retrieve the member." << be_nl
<< "ACE_INLINE" << be_nl
- << bt->name () << "_ptr " << be_nl
+ << bt->name () << "_ptr" << be_nl
<< bu->name () << "::" << ub->local_name () << " (void) const" << be_nl
<< "{" << be_idt_nl
<< "return this->u_." << ub->local_name () << "_->in ();" << be_uidt_nl
@@ -437,7 +437,7 @@ be_visitor_union_branch_public_ci::visit_interface_fwd (be_interface_fwd *node)
// Get method.
*os << "/// Retrieve the member." << be_nl
<< "ACE_INLINE" << be_nl
- << bt->name () << "_ptr " << be_nl
+ << bt->name () << "_ptr" << be_nl
<< bu->name () << "::" << ub->local_name () << " (void) const" << be_nl
<< "{" << be_idt_nl
<< "return this->u_." << ub->local_name () << "_->in ();" << be_uidt_nl
@@ -532,7 +532,7 @@ be_visitor_union_branch_public_ci::emit_valuetype_common (be_type *node)
// Get method.
*os << "/// Retrieve the member." << be_nl
<< "ACE_INLINE" << be_nl
- << bt->name () << "* " << be_nl
+ << bt->name () << "*" << be_nl
<< bu->name () << "::" << ub->local_name () << " (void) const" << be_nl
<< "{" << be_idt_nl
<< "return this->u_." << ub->local_name () << "_->in ();" << be_uidt_nl
diff --git a/TAO/TAO_IDL/be/be_visitor_valuebox/cdr_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_valuebox/cdr_op_cs.cpp
index a01faeb9dab..a4906eab431 100644
--- a/TAO/TAO_IDL/be/be_visitor_valuebox/cdr_op_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_valuebox/cdr_op_cs.cpp
@@ -49,7 +49,7 @@ be_visitor_valuebox_cdr_op_cs::visit_valuebox (be_valuebox *node)
*os << "::CORBA::Boolean" << be_nl
<< "operator<< (" << be_idt << be_idt_nl
- << "TAO_OutputCDR &strm, " << be_nl
+ << "TAO_OutputCDR &strm," << be_nl
<< "const " << node->full_name ()
<< " *_tao_valuebox" << be_uidt_nl
<< ")" << be_uidt_nl
diff --git a/TAO/TAO_IDL/be/be_visitor_valuebox/valuebox_ci.cpp b/TAO/TAO_IDL/be/be_visitor_valuebox/valuebox_ci.cpp
index 748e9bba6c1..d7df831d39e 100644
--- a/TAO/TAO_IDL/be/be_visitor_valuebox/valuebox_ci.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_valuebox/valuebox_ci.cpp
@@ -50,7 +50,7 @@ be_visitor_valuebox_ci::visit_valuebox (be_valuebox *node)
*os << be_nl_2 << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__ << be_nl;
- *os << "ACE_INLINE const char* " << be_nl
+ *os << "ACE_INLINE const char*" << be_nl
<< node->name () << "::_tao_obv_static_repository_id ()" << be_nl
<< "{" << be_idt_nl
<< "return \"" << node->repoID () << "\";" << be_uidt_nl
@@ -229,21 +229,21 @@ be_visitor_valuebox_ci::visit_sequence (be_sequence *node)
this->emit_boxed_access(node, "*");
// Generate maximum() accessor
- *os << "ACE_INLINE ::CORBA::ULong " << be_nl
+ *os << "ACE_INLINE ::CORBA::ULong" << be_nl
<< vb_node->name () << "::maximum (void) const" << be_nl
<< "{" << be_idt_nl
<< "return this->_pd_value->maximum ();" << be_uidt_nl
<< "}" << be_nl_2;
// Generate length() accessor
- *os << "ACE_INLINE ::CORBA::ULong " << be_nl
+ *os << "ACE_INLINE ::CORBA::ULong" << be_nl
<< vb_node->name () << "::length (void) const" << be_nl
<< "{" << be_idt_nl
<< "return this->_pd_value->length ();" << be_uidt_nl
<< "}" << be_nl_2;
// Generate length() setter
- *os << "ACE_INLINE void " << be_nl
+ *os << "ACE_INLINE void" << be_nl
<< vb_node->name () << "::length ( ::CORBA::ULong length)" << be_nl
<< "{" << be_idt_nl
<< "this->_pd_value->length (length);" << be_uidt_nl
@@ -289,7 +289,7 @@ be_visitor_valuebox_ci::visit_string (be_string *node)
this->emit_assignment (node, "");
// Public constructor with one const argument of underlying type
- *os << "ACE_INLINE " << be_nl
+ *os << "ACE_INLINE" << be_nl
<< vb_node->name () << "::" << vb_node->local_name () << " (const "
<< node->full_name () << " val)" << be_nl
<< "{" << be_idt_nl
@@ -549,7 +549,7 @@ be_visitor_valuebox_ci::visit_union (be_union *node)
// Generate modifier and accessor for discriminant
- *os << "ACE_INLINE void " << be_nl
+ *os << "ACE_INLINE void" << be_nl
<< vb_node->name () << "::_d (" << bt->nested_type_name (node) << " val)"
<< be_nl
<< "{" << be_idt_nl
@@ -662,7 +662,7 @@ be_visitor_valuebox_ci::emit_default_constructor_alloc (be_decl *node)
be_type::narrow_from_decl (node)->size_type () == AST_Type::VARIABLE;
// Public default constructor
- *os << "ACE_INLINE " << be_nl
+ *os << "ACE_INLINE" << be_nl
<< vb_node->name () << "::" << vb_node->local_name () << " (void)"
<< be_nl << "{" << be_idt_nl
<< node->full_name () << "* p = 0;" << be_nl
@@ -684,7 +684,7 @@ be_visitor_valuebox_ci::emit_constructor_one_arg (be_decl *node,
be_decl * vb_node = this->ctx_->node ();
// Public constructor with one argument of underlying type
- *os << "ACE_INLINE " << be_nl
+ *os << "ACE_INLINE" << be_nl
<< vb_node->name () << "::" << vb_node->local_name () << " ("
<< node->full_name () << type_suffix << " val)" << be_nl
<< "{" << be_idt_nl
@@ -701,7 +701,7 @@ be_visitor_valuebox_ci::emit_constructor_one_arg_alloc (be_decl *node)
be_decl * vb_node = this->ctx_->node ();
// Public constructor with single argument of type const T&
- *os << "ACE_INLINE " << be_nl
+ *os << "ACE_INLINE" << be_nl
<< vb_node->name () << "::" << vb_node->local_name ()
<< " (const " << node->full_name () << "& value)" << be_nl
<< "{" << be_idt_nl
@@ -722,7 +722,7 @@ be_visitor_valuebox_ci::emit_copy_constructor (void)
be_decl * vb_node = this->ctx_->node ();
// Public Copy constructor
- *os << "ACE_INLINE " << be_nl
+ *os << "ACE_INLINE" << be_nl
<< vb_node->name () << "::" << vb_node->local_name ()
<< " (const " << vb_node->full_name () << "& val)" << be_idt_nl
<< ": ::CORBA::ValueBase (val)," << be_nl
@@ -742,7 +742,7 @@ be_visitor_valuebox_ci::emit_copy_constructor_alloc (be_decl *node)
be_decl * vb_node = this->ctx_->node ();
// Public copy constructor
- *os << "ACE_INLINE " << be_nl
+ *os << "ACE_INLINE" << be_nl
<< vb_node->name () << "::" << vb_node->local_name () << " (const "
<< vb_node->full_name () << "& val)" << be_idt_nl
<< ": ::CORBA::ValueBase (val)," << be_nl
diff --git a/TAO/TAO_IDL/be/be_visitor_valuebox/valuebox_cs.cpp b/TAO/TAO_IDL/be/be_visitor_valuebox/valuebox_cs.cpp
index 9e7f86080e6..bf581441f95 100644
--- a/TAO/TAO_IDL/be/be_visitor_valuebox/valuebox_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_valuebox/valuebox_cs.cpp
@@ -125,7 +125,7 @@ be_visitor_valuebox_cs::visit_valuebox (be_valuebox *node)
// _tao_match_formal_type method. Generated because ValueBase interface
// requires it. Since value boxes do not support inheritence, this can
// simply return true.
- *os << "::CORBA::Boolean " << be_nl
+ *os << "::CORBA::Boolean" << be_nl
<< node->name ()
<< "::_tao_match_formal_type (ptrdiff_t ) const" << be_nl
<< "{" << be_idt_nl
@@ -227,7 +227,7 @@ be_visitor_valuebox_cs::visit_valuebox (be_valuebox *node)
}
// The _tao_unmarshal method.
- *os << "::CORBA::Boolean " << be_nl
+ *os << "::CORBA::Boolean" << be_nl
<< node->name () << "::_tao_unmarshal (" << be_idt << be_idt_nl
<< "TAO_InputCDR &strm," << be_nl
<< node->local_name () << " *&vb_object" << be_uidt_nl
@@ -238,7 +238,7 @@ be_visitor_valuebox_cs::visit_valuebox (be_valuebox *node)
<< "TAO_InputCDR indrected_strm ((size_t) 0);" << be_nl
<< "if ( ::CORBA::ValueBase::_tao_validate_box_type (" << be_idt
<< be_idt << be_idt_nl
- << "strm, indrected_strm, " << be_nl
+ << "strm, indrected_strm," << be_nl
<< node->local_name () << "::_tao_obv_static_repository_id (),"
<< be_nl
<< "is_null_object, is_indirected"
@@ -300,7 +300,7 @@ be_visitor_valuebox_cs::visit_valuebox (be_valuebox *node)
// _tao_unmarshal_v method. Generated because ValueBase interface
// requires it. But there is nothing for it to do in the valuebox
// case.
- *os << "::CORBA::Boolean " << be_nl
+ *os << "::CORBA::Boolean" << be_nl
<< node->name ()
<< "::_tao_unmarshal_v (TAO_InputCDR &)" << be_nl
<< "{" << be_idt_nl
@@ -337,7 +337,7 @@ be_visitor_valuebox_cs::visit_array (be_array * node)
this->emit_destructor ();
// _tao_marshal_v method
- os << "::CORBA::Boolean " << be_nl
+ os << "::CORBA::Boolean" << be_nl
<< vb_node->name ()
<< "::_tao_marshal_v (TAO_OutputCDR & strm) const" << be_nl
<< "{" << be_idt_nl
@@ -365,7 +365,7 @@ be_visitor_valuebox_cs::visit_enum (be_enum *)
static char const marshal_arg[] = "this->_pd_value";
// _tao_marshal_v method
- os << "::CORBA::Boolean " << be_nl
+ os << "::CORBA::Boolean" << be_nl
<< vb_node->name ()
<< "::_tao_marshal_v (TAO_OutputCDR & strm) const" << be_nl
<< "{" << be_idt_nl
@@ -490,7 +490,7 @@ be_visitor_valuebox_cs::visit_sequence (be_sequence *node)
*os << be_nl << "::CORBA::ULong max,";
}
- *os << be_nl << "::CORBA::ULong length, " << be_nl;
+ *os << be_nl << "::CORBA::ULong length," << be_nl;
if (bt->accept (&bt_visitor) == -1)
@@ -533,7 +533,7 @@ be_visitor_valuebox_cs::visit_sequence (be_sequence *node)
-1);
}
- *os << " & " << be_nl
+ *os << " &" << be_nl
<< vb_node->name () << "::operator[] ( ::CORBA::ULong index)"
<< be_nl
<< "{" << be_idt_nl
@@ -572,13 +572,13 @@ be_visitor_valuebox_cs::visit_sequence (be_sequence *node)
{
case AST_Decl::NT_wstring:
*os << "TAO_SeqElem_WString_Manager mgr = this->_pd_value->operator[] "
- "(index); " << be_nl
+ "(index);" << be_nl
<< "return mgr._retn ();" << be_uidt_nl;
break;
case AST_Decl::NT_string:
*os << "TAO_SeqElem_String_Manager mgr = this->_pd_value->operator[] "
- "(index); " << be_nl
+ "(index);" << be_nl
<< "return mgr._retn ();" << be_uidt_nl;
break;
@@ -600,7 +600,7 @@ be_visitor_valuebox_cs::visit_sequence (be_sequence *node)
*os << "}" << be_nl_2;
// _tao_marshal_v method
- *os << "::CORBA::Boolean " << be_nl
+ *os << "::CORBA::Boolean" << be_nl
<< vb_node->name ()
<< "::_tao_marshal_v (TAO_OutputCDR & strm) const" << be_nl
<< "{" << be_idt_nl
@@ -624,7 +624,7 @@ be_visitor_valuebox_cs::visit_string (be_string *str)
this->emit_destructor ();
// _tao_marshal_v method
- os << "::CORBA::Boolean " << be_nl
+ os << "::CORBA::Boolean" << be_nl
<< vb_node->name ()
<< "::_tao_marshal_v (TAO_OutputCDR & strm) const" << be_nl
<< "{" << be_idt_nl
@@ -670,7 +670,7 @@ be_visitor_valuebox_cs::visit_structure (be_structure *)
this->emit_destructor ();
// _tao_marshal_v method
- os << "::CORBA::Boolean " << be_nl
+ os << "::CORBA::Boolean" << be_nl
<< vb_node->name ()
<< "::_tao_marshal_v (TAO_OutputCDR & strm) const" << be_nl
<< "{" << be_idt_nl
@@ -712,7 +712,7 @@ be_visitor_valuebox_cs::visit_union (be_union *)
this->emit_destructor ();
// _tao_marshal_v method
- os << "::CORBA::Boolean " << be_nl
+ os << "::CORBA::Boolean" << be_nl
<< vb_node->name ()
<< "::_tao_marshal_v (TAO_OutputCDR & strm) const" << be_nl
<< "{" << be_idt_nl
@@ -749,7 +749,7 @@ be_visitor_valuebox_cs::emit_for_predef_enum (char const * marshal_arg)
this->emit_destructor ();
// _tao_marshal_v method
- os << "::CORBA::Boolean " << be_nl
+ os << "::CORBA::Boolean" << be_nl
<< vb_node->name ()
<< "::_tao_marshal_v (TAO_OutputCDR & strm) const" << be_nl
<< "{" << be_idt_nl
diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/cdr_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/cdr_op_cs.cpp
index e2c6ce33998..5ba2439fe90 100644
--- a/TAO/TAO_IDL/be/be_visitor_valuetype/cdr_op_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_valuetype/cdr_op_cs.cpp
@@ -68,7 +68,7 @@ be_visitor_valuetype_cdr_op_cs::visit_valuetype (be_valuetype *node)
*os << "::CORBA::Boolean" << be_nl
<< "operator<< (" << be_idt << be_idt_nl
- << "TAO_OutputCDR &strm, " << be_nl
+ << "TAO_OutputCDR &strm," << be_nl
<< "const " << node->full_name ()
<< " *_tao_valuetype" << be_uidt_nl
<< ")" << be_uidt_nl
diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/field_cdr_cs.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/field_cdr_cs.cpp
index 3e977050961..145e054099c 100644
--- a/TAO/TAO_IDL/be/be_visitor_valuetype/field_cdr_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_valuetype/field_cdr_cs.cpp
@@ -255,7 +255,7 @@ be_visitor_valuetype_field_cdr_cs::visit_interface (be_interface *node)
*os << "TAO::Objref_Traits< ::" << node->name ()
<< ">::marshal (" << be_idt << be_idt_nl
<< this->pre_ << f->local_name ()
- << this->post_ << ".in (), " << be_nl
+ << this->post_ << ".in ()," << be_nl
<< "strm" << be_uidt_nl
<< ")" << be_uidt;
break;
@@ -305,7 +305,7 @@ be_visitor_valuetype_field_cdr_cs::visit_interface_fwd (be_interface_fwd *node)
*os << "TAO::Objref_Traits< ::" << node->name ()
<< ">::marshal (" << be_idt << be_idt_nl
<< this->pre_ << f->local_name ()
- << this->post_ << ".in (), " << be_nl
+ << this->post_ << ".in ()," << be_nl
<< "strm" << be_uidt_nl
<< ")" << be_uidt;
break;
diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/field_cs.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/field_cs.cpp
index dac42b42556..5c78a4feb29 100644
--- a/TAO/TAO_IDL/be/be_visitor_valuetype/field_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_valuetype/field_cs.cpp
@@ -307,7 +307,7 @@ be_visitor_valuetype_field_cs::visit_interface (be_interface *node)
*os << "}" << be_nl_2;
*os << "/// Retrieve the member." << be_nl
- << this->pre_op () << bt->name () << "_ptr " << be_nl;
+ << this->pre_op () << bt->name () << "_ptr" << be_nl;
this->op_name (bu,
os);
@@ -375,7 +375,7 @@ be_visitor_valuetype_field_cs::visit_interface_fwd (be_interface_fwd *node)
*os << "}" << be_nl_2;
*os << "/// Retrieve the member" << be_nl
- << this->pre_op () << bt->name () << "_ptr " << be_nl;
+ << this->pre_op () << bt->name () << "_ptr" << be_nl;
this->op_name (bu,
os);
diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype.cpp
index 370f72e5712..09db8aea597 100644
--- a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype.cpp
@@ -879,7 +879,7 @@ be_visitor_valuetype::gen_init_impl (be_valuetype *node)
*os << fname << "::~" << lname << " (void)" << be_nl
<< "{" << be_nl << "}\n\n";
- *os << "const char* " << be_nl
+ *os << "const char*" << be_nl
<< fname << "::tao_repository_id (void)" << be_nl
<< "{" << be_idt_nl
<< "return " << node->local_name ()
diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ci.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ci.cpp
index e8a581f08a5..41e89cc2e49 100644
--- a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ci.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ci.cpp
@@ -42,7 +42,7 @@ be_visitor_valuetype_ci::visit_valuetype (be_valuetype *node)
TAO_OutStream *os = this->ctx_->stream ();
- *os << be_nl_2 << "// TAO_IDL - Generated from " << be_nl
+ *os << be_nl_2 << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
*os << "ACE_INLINE" << be_nl;
@@ -65,7 +65,7 @@ be_visitor_valuetype_ci::visit_valuetype (be_valuetype *node)
}
- *os << "ACE_INLINE const char* " << be_nl
+ *os << "ACE_INLINE const char*" << be_nl
<< node->name () << "::_tao_obv_static_repository_id ()" << be_nl
<< "{" << be_idt_nl
<< "return \"" << node->repoID () << "\";" << be_uidt_nl
diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_cs.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_cs.cpp
index 2183de6ee02..5a2e38ac9c7 100644
--- a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_cs.cpp
@@ -174,7 +174,7 @@ be_visitor_valuetype_cs::visit_valuetype (be_valuetype *node)
if (!node->is_abstract () && !is_an_amh_exception_holder)
{
// The virtual _tao_marshal_v method.
- *os << "::CORBA::Boolean " << be_nl
+ *os << "::CORBA::Boolean" << be_nl
<< node->name ()
<< "::_tao_marshal_v (TAO_OutputCDR & strm) const" << be_nl
<< "{" << be_idt_nl
@@ -200,7 +200,7 @@ be_visitor_valuetype_cs::visit_valuetype (be_valuetype *node)
*os << "}" << be_nl_2;
// The virtual _tao_unmarshal_v method.
- *os << "::CORBA::Boolean " << be_nl
+ *os << "::CORBA::Boolean" << be_nl
<< node->name ()
<< "::_tao_unmarshal_v (TAO_InputCDR & strm)"
<< be_nl
@@ -226,7 +226,7 @@ be_visitor_valuetype_cs::visit_valuetype (be_valuetype *node)
*os << "}" << be_nl_2;
- *os << "::CORBA::Boolean " << be_nl
+ *os << "::CORBA::Boolean" << be_nl
<< node->name ()
<< "::_tao_match_formal_type (ptrdiff_t formal_type_id) const"
<< be_nl
@@ -260,7 +260,7 @@ be_visitor_valuetype_cs::visit_valuetype (be_valuetype *node)
<< "}" << be_nl_2;
// The virtual _tao_match_formal_type method.
- *os << "::CORBA::Boolean " << be_nl
+ *os << "::CORBA::Boolean" << be_nl
<< node->name ()
<< "::_tao_match_formal_type (ptrdiff_t ) const"
<< be_nl
@@ -306,7 +306,7 @@ be_visitor_valuetype_cs::visit_valuetype (be_valuetype *node)
// The static T::_tao_unmarshal method
- *os << "::CORBA::Boolean " << be_nl << node->name()
+ *os << "::CORBA::Boolean" << be_nl << node->name()
<< "::_tao_unmarshal (" << be_idt << be_idt_nl
<< "TAO_InputCDR &strm," << be_nl
<< node->local_name () << " *&new_object" << be_uidt_nl
diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_init_cs.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_init_cs.cpp
index 0e7cb2a5d37..2c98b145e2f 100644
--- a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_init_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_init_cs.cpp
@@ -95,7 +95,7 @@ be_visitor_valuetype_init_cs::visit_valuetype (be_valuetype *node)
// tao_repository_id
*os << be_nl_2
- << "const char* " << be_nl
+ << "const char*" << be_nl
<< fname << "::tao_repository_id (void)" << be_nl
<< "{" << be_idt_nl
<< "return ::" << node->full_name ()
diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_sh.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_sh.cpp
index a7b20bd1351..29ed2af7efc 100644
--- a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_sh.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_sh.cpp
@@ -78,12 +78,6 @@ be_visitor_valuetype_sh::visit_valuetype (be_valuetype *node)
*os << "class " << node->direct_proxy_impl_name () << ";" << be_nl;
}
- if (be_global->gen_direct_collocation ())
- {
- *os << "class " << node->strategized_proxy_broker_name ()
- << ";" << be_nl;
- }
-
*os << be_nl;
// Now generate the class definition.
diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ss.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ss.cpp
index e813b7b2190..788c4c58bb1 100644
--- a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ss.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ss.cpp
@@ -58,7 +58,7 @@ be_visitor_valuetype_ss::visit_valuetype (be_valuetype *node)
ACE_CString flat_name_holder =
this->generate_flat_name (node);
- *os << be_nl << "// TAO_IDL - Generated from " << be_nl
+ *os << be_nl << "// TAO_IDL - Generated from" << be_nl
<< "// " << __FILE__ << ":" << __LINE__ << be_nl_2;
// Find if we are at the top scope or inside some module,
diff --git a/TAO/TAO_IDL/be_include/be_component.h b/TAO/TAO_IDL/be_include/be_component.h
index 0122cdb0f15..07a91da0ed4 100644
--- a/TAO/TAO_IDL/be_include/be_component.h
+++ b/TAO/TAO_IDL/be_include/be_component.h
@@ -77,9 +77,6 @@ public:
/// Generate the string compares for ancestors in _is_a().
virtual int gen_is_a_ancestors (TAO_OutStream *os);
- /// Generate setup_collocation() for base component, if any.
- virtual void gen_parent_collocation (TAO_OutStream *os);
-
// Narrowing.
DEF_NARROW_FROM_DECL (be_component);
diff --git a/TAO/TAO_IDL/be_include/be_global.h b/TAO/TAO_IDL/be_include/be_global.h
index cdb382f7526..4838d0b77ff 100644
--- a/TAO/TAO_IDL/be_include/be_global.h
+++ b/TAO/TAO_IDL/be_include/be_global.h
@@ -766,10 +766,6 @@ public:
/// Cleanup function.
void destroy (void);
- /// Used in the generation of declarations for
- /// xxx_Proxy_Broker_Factory_function_pointer.
- ACE_Unbounded_Queue<be_interface *> non_local_interfaces;
-
/// Used in the generation of extern function declarations so we
/// can use non-defined interfaces as members and parameters.
ACE_Unbounded_Queue<be_interface_fwd *> non_defined_interfaces;
diff --git a/TAO/TAO_IDL/be_include/be_interface.h b/TAO/TAO_IDL/be_include/be_interface.h
index 2591251a3b8..ca64c76bdfd 100644
--- a/TAO/TAO_IDL/be_include/be_interface.h
+++ b/TAO/TAO_IDL/be_include/be_interface.h
@@ -69,20 +69,6 @@ public:
/// Retrieve the fully qualified collocated class name.
const char *local_coll_name (int);
- /// retrieve the name of the base proxy implementation.
- virtual const char *base_proxy_impl_name (void);
-
- /// retrieve the fully qualified name of the base proxy
- /// implementation.
- virtual const char *full_base_proxy_impl_name (void);
-
- /// retrieve the name of the remote proxy implementation.
- virtual const char *remote_proxy_impl_name (void);
-
- /// retrieve the fully qualified name of the remote
- /// proxy implementation.
- virtual const char *full_remote_proxy_impl_name (void);
-
/// retrieve the name of the direct proxy implementation.
virtual const char *direct_proxy_impl_name (void);
@@ -90,26 +76,6 @@ public:
/// implementation.
virtual const char *full_direct_proxy_impl_name (void);
- /// retrieve the name of the base proxy broker.
- virtual const char *base_proxy_broker_name (void);
-
- /// retrieve the fully qualified name of the base proxy broker.
- virtual const char *full_base_proxy_broker_name (void);
-
- /// retrieve the name of the remote proxy broker implementation.
- virtual const char *remote_proxy_broker_name (void);
-
- /// retrieve the fully qualified name of the remote proxy broker
- /// implementation.
- virtual const char *full_remote_proxy_broker_name (void);
-
- /// retrieve the name of the strategized proxy broker implementation.
- virtual const char *strategized_proxy_broker_name (void);
-
- /// retrieve the fully qualified name of the strategized proxy broker
- /// implementation.
- virtual const char *full_strategized_proxy_broker_name (void);
-
/// Return the client scope that encloses the interface.
virtual const char *client_enclosing_scope (void);
@@ -344,9 +310,6 @@ public:
/// Generate the string compares for ancestors in _is_a().
virtual int gen_is_a_ancestors (TAO_OutStream *os);
- /// Generate setup_collocation() for base component, if any.
- virtual void gen_parent_collocation (TAO_OutStream *os);
-
protected:
/**
* CDreate a new string made by the concatenation
@@ -361,17 +324,13 @@ protected:
protected:
enum Suffix_Code
{
- PROXY_IMPL = 0,
- PROXY_BROKER = 1
+ PROXY_IMPL = 0
};
enum Tag_Code
{
- THRU_POA = 0,
- DIRECT = 1,
- REMOTE = 2,
- STRATEGIZED = 3,
- GC_PREFIX = 4 // Prefix used for the generated class
+ DIRECT = 0,
+ GC_PREFIX = 1 // Prefix used for the generated class
// This prefix is used to avoid name conflicts
// with the user classes.
};
@@ -380,23 +339,10 @@ protected:
static const char *tag_table_[];
// Proxy Implementation names.
- char *base_proxy_impl_name_;
- char *remote_proxy_impl_name_;
char *direct_proxy_impl_name_;
- char *full_base_proxy_impl_name_;
- char *full_remote_proxy_impl_name_;
char *full_direct_proxy_impl_name_;
- // Proxy Broker Names.
- char *base_proxy_broker_;
- char *remote_proxy_broker_;
- char *strategized_proxy_broker_;
-
- char *full_base_proxy_broker_name_;
- char *full_remote_proxy_broker_name_;
- char *full_strategized_proxy_broker_name_;
-
char *client_scope_;
char *flat_client_scope_;
diff --git a/TAO/TAO_IDL/be_include/be_valuetype.h b/TAO/TAO_IDL/be_include/be_valuetype.h
index c92b4952dcd..ae090cbc735 100644
--- a/TAO/TAO_IDL/be_include/be_valuetype.h
+++ b/TAO/TAO_IDL/be_include/be_valuetype.h
@@ -126,12 +126,6 @@ public:
be_interface *base,
TAO_OutStream *os);
- /// Helper method to generate *_skel operations for the concrete
- /// interface that we support (if any) and those of its base classes.
- static int gen_skel_helper (be_interface *node,
- be_interface *base,
- TAO_OutStream *os);
-
/// Accessor to the member.
const char *fwd_helper_name (void) const;
diff --git a/TAO/TAO_IDL/be_include/be_visitor_interface.h b/TAO/TAO_IDL/be_include/be_visitor_interface.h
index 516196294a6..740fa08dcae 100644
--- a/TAO/TAO_IDL/be_include/be_visitor_interface.h
+++ b/TAO/TAO_IDL/be_include/be_visitor_interface.h
@@ -42,10 +42,6 @@
#include "be_visitor_interface/smart_proxy_ch.h"
#include "be_visitor_interface/smart_proxy_cs.h"
-// Proxy Brokers
-#include "be_visitor_interface/strategized_proxy_broker_sh.h"
-#include "be_visitor_interface/strategized_proxy_broker_ss.h"
-
// Proxy Impls
#include "be_visitor_interface/direct_proxy_impl_sh.h"
#include "be_visitor_interface/direct_proxy_impl_ss.h"
diff --git a/TAO/TAO_IDL/be_include/be_visitor_interface/amh_si.h b/TAO/TAO_IDL/be_include/be_visitor_interface/amh_si.h
index bbd8e6723c4..77eb09dc377 100644
--- a/TAO/TAO_IDL/be_include/be_visitor_interface/amh_si.h
+++ b/TAO/TAO_IDL/be_include/be_visitor_interface/amh_si.h
@@ -21,11 +21,11 @@ public:
int visit_interface (be_interface *node);
+ // Helper method passed to the template method to generate code for the
+ // AMH skeletons in the inline files.
static int gen_skel_helper (be_interface *,
be_interface *,
TAO_OutStream *);
- // Helper method passed to the template method to generate code for the
- // AMH skeletons in the inline files.
};
#endif /* AMH_SH_I_ */
diff --git a/TAO/TAO_IDL/be_include/be_visitor_interface/strategized_proxy_broker_sh.h b/TAO/TAO_IDL/be_include/be_visitor_interface/strategized_proxy_broker_sh.h
deleted file mode 100644
index 36d89682895..00000000000
--- a/TAO/TAO_IDL/be_include/be_visitor_interface/strategized_proxy_broker_sh.h
+++ /dev/null
@@ -1,47 +0,0 @@
-//=============================================================================
-/**
- * @file strategized_proxy_broker_sh.h
- *
- * $Id$
- *
- * Concrete visitor for the Interface node. This
- * visitor generates the declaration for the strategized
- * ProxyBroker class.
- *
- *
- * @author Angelo Corsaro <corsaro@cs.wustl.edu>
- */
-//=============================================================================
-
-
-#ifndef BE_STRATEGIZED_PROXY_BROKER_SH_H_
-#define BE_STRATEGIZED_PROXY_BROKER_SH_H_
-
-/**
- * @class be_visitor_interface_strategized_proxy_broker_sh
- *
- * @brief Generates the declaration for the base proxy
- * broker class.
- */
-class be_visitor_interface_strategized_proxy_broker_sh : public be_visitor_interface
-{
-
-public:
- // -- Ctor/Dtor Decl. --
- be_visitor_interface_strategized_proxy_broker_sh (be_visitor_context *ctx);
-
- virtual ~be_visitor_interface_strategized_proxy_broker_sh (void);
-
- /// visit an interface
- virtual int visit_interface (be_interface *node);
-
- /// This will just call the above method - no need to create
- /// another set of visitors for this stuff.
- virtual int visit_component (be_component *node);
-
- /// This will just call the above method - no need to create
- /// another set of visitors for this stuff.
- virtual int visit_connector (be_connector *node);
-};
-
-#endif /* BE_STRATEGIZED_PROXY_BROKER_SH_H_ */
diff --git a/TAO/TAO_IDL/be_include/be_visitor_interface/strategized_proxy_broker_ss.h b/TAO/TAO_IDL/be_include/be_visitor_interface/strategized_proxy_broker_ss.h
deleted file mode 100644
index 8962eed07f8..00000000000
--- a/TAO/TAO_IDL/be_include/be_visitor_interface/strategized_proxy_broker_ss.h
+++ /dev/null
@@ -1,49 +0,0 @@
-//=============================================================================
-/**
- * @file strategized_proxy_broker_ss.h
- *
- * $Id$
- *
- * Concrete visitor for the Interface node. This
- * visitor generates the declaration for the strategized
- * ProxyBroker class.
- *
- *
- * @author Angelo Corsaro <corsaro@cs.wustl.edu>
- */
-//=============================================================================
-
-#ifndef BE_STRATEGIZED_PROXY_BROKER_SS_H_
-#define BE_STRATEGIZED_PROXY_BROKER_SS_H_
-
-/**
- * @class be_visitor_interface_direct_proxy_impl_ss
- *
- * @brief Generates the implementation for the base proxy
- * broker class.
- */
-class be_visitor_interface_strategized_proxy_broker_ss
- : public be_visitor_interface
-{
-public:
- // -- Ctor/Dtor Decl. --
- be_visitor_interface_strategized_proxy_broker_ss (be_visitor_context *ctx);
-
- virtual ~be_visitor_interface_strategized_proxy_broker_ss (void);
-
- /// visit an interface
- virtual int visit_interface (be_interface *node);
-
- /// This will just call the above method - no need to create
- /// another set of visitors for this stuff.
- virtual int visit_component (be_component *node);
-
- /// This will just call the above method - no need to create
- /// another set of visitors for this stuff.
- virtual int visit_connector (be_connector *node);
-
-private:
- void gen_direct_operations (be_interface *node, TAO_OutStream *os);
-};
-
-#endif /* BE_STRATEGIZED_PROXY_BROKER_SS_H_ */
diff --git a/TAO/TAO_IDL/be_include/be_visitor_operation/base_proxy_impl_ch.h b/TAO/TAO_IDL/be_include/be_visitor_operation/base_proxy_impl_ch.h
deleted file mode 100644
index 6634ce65a66..00000000000
--- a/TAO/TAO_IDL/be_include/be_visitor_operation/base_proxy_impl_ch.h
+++ /dev/null
@@ -1,40 +0,0 @@
-//=============================================================================
-/**
- * @file base_proxy_impl_ch.h
- *
- * $Id$
- *
- * Visitor for generating code for proxy implementations.
- *
- *
- * @author Angelo Corsaro
- */
-//=============================================================================
-
-
-#ifndef _BE_VISITOR_OPERATION_BASE_PROXY_IMPL_CH_H_
-#define _BE_VISITOR_OPERATION_BASE_PROXY_IMPL_CH_H_
-
-
-/**
- * @class be_visitor_operation_base_proxy_impl_ch
- *
- * @brief be_visitor_operation_base_proxy_impl_ch
- *
- * Concrete visitor that generates the code for the base class
- * of Proxy Impls.
- */
-class be_visitor_operation_base_proxy_impl_ch : public be_visitor_scope
-{
-public:
- /// constructor
- be_visitor_operation_base_proxy_impl_ch (be_visitor_context *ctx);
-
- /// destructor
- ~be_visitor_operation_base_proxy_impl_ch (void);
-
- /// visit operation.
- virtual int visit_operation (be_operation *node);
-};
-
-#endif /* _BE_VISITOR_OPERATION_BASE_PROXY_IMPL_CH_H_ */
diff --git a/TAO/TAO_IDL/be_include/be_visitor_operation/remote_proxy_impl_cs.h b/TAO/TAO_IDL/be_include/be_visitor_operation/remote_proxy_impl_cs.h
deleted file mode 100644
index cbc22ba84d7..00000000000
--- a/TAO/TAO_IDL/be_include/be_visitor_operation/remote_proxy_impl_cs.h
+++ /dev/null
@@ -1,54 +0,0 @@
-//=============================================================================
-/**
- * @file remote_proxy_impl_cs.h
- *
- * $Id$
- *
- * Visitor for generating code for remote proxy impls
- * in client stubs.
- *
- *
- *
- * @author Aniruddha Gokhale & Angelo Corsaro
- */
-//=============================================================================
-
-
-#ifndef _BE_VISITOR_OPERATION_REMOTE_PROXY_IMPL_OPERATION_REMOTE_PROXY_IMPL_CS_H_
-#define _BE_VISITOR_OPERATION_REMOTE_PROXY_IMPL_OPERATION_REMOTE_PROXY_IMPL_CS_H_
-
-// ************************************************************
-// Operation_Remote_Proxy_Impl visitor for client stubs
-// ************************************************************
-
-/**
- * @class be_visitor_operation_remote_proxy_impl_cs
- *
- * @brief be_visitor_operation_remote_proxy_impl_cs
- *
- * This is a concrete visitor to generate the client invocation
- * code for the Remote Proxy Implementation.
- */
-class be_visitor_operation_remote_proxy_impl_cs : public be_visitor_operation
-{
-public:
- /// constructor
- be_visitor_operation_remote_proxy_impl_cs (be_visitor_context *ctx);
-
- /// destructor
- ~be_visitor_operation_remote_proxy_impl_cs (void);
-
- /// visit operation_remote_proxy_impl.
- virtual int visit_operation (be_operation *node);
-
- /// visit argument to generate ParamData entries
- virtual int visit_argument (be_argument *node);
-
- // = template methods
-
- // =helper
- /// stuff to output after every member of the scope is handled
- virtual int post_process (be_decl *);
-};
-
-#endif /* _BE_VISITOR_OPERATION_REMOTE_PROXY_IMPL_OPERATION_REMOTE_PROXY_IMPL_CS_H_ */
diff --git a/TAO/TAO_IDL/be_include/be_visitor_root/root_ch.h b/TAO/TAO_IDL/be_include/be_visitor_root/root_ch.h
index 8bf913f21db..14ac16e5a56 100644
--- a/TAO/TAO_IDL/be_include/be_visitor_root/root_ch.h
+++ b/TAO/TAO_IDL/be_include/be_visitor_root/root_ch.h
@@ -44,7 +44,6 @@ private:
/// the main scope traversal.
int gen_arg_traits (be_root *node);
void gen_fwd_decls (void);
- void gen_proxy_broker_factory_pointers (void);
void gen_ref_counting_overrides (void);
void gen_static_corba_overrides (void);
int gen_obv_decls (be_root *node);
diff --git a/TAO/TAO_IDL/docs/README b/TAO/TAO_IDL/docs/README
index 6d73554acce..feada1f8026 100644
--- a/TAO/TAO_IDL/docs/README
+++ b/TAO/TAO_IDL/docs/README
@@ -1,3 +1,5 @@
+$Id$
+
INTERFACE DEFINITION LANGUAGE COMPILER FRONT END
-==============================================-
@@ -223,8 +225,8 @@ Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR
Sun, Sun Microsystems and the Sun logo are trademarks or registered
trademarks of Sun Microsystems, Inc.
-SunSoft, Inc.
-2550 Garcia Avenue
+SunSoft, Inc.
+2550 Garcia Avenue
Mountain View, California 94043
NOTE:
diff --git a/TAO/VERSION b/TAO/VERSION
index 4aed53847c3..766b958c9ec 100644
--- a/TAO/VERSION
+++ b/TAO/VERSION
@@ -1,4 +1,4 @@
-This is TAO version 2.0.4, released Tue Aug 23 19:01:44 CEST 2011
+This is TAO version 2.0.5, released Mon Oct 10 08:48:51 CEST 2011
If you have any problems with or questions about TAO, please send
e-mail to the TAO mailing list (tao-bugs@list.isis.vanderbilt.edu),
diff --git a/TAO/bin/tao_orb_tests.lst b/TAO/bin/tao_orb_tests.lst
index 9fd01633c5f..260dbb7cd5f 100644
--- a/TAO/bin/tao_orb_tests.lst
+++ b/TAO/bin/tao_orb_tests.lst
@@ -34,6 +34,13 @@ TAO/tests/AMH_Exceptions/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !
TAO/tests/AMH_Oneway/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !DISABLE_ToFix_LynxOS_x86 !ACE_FOR_TAO
TAO/tests/CORBA_e_Implicit_Activation/run_test.pl: CORBA_E_COMPACT
TAO/tests/Collocation/run_test.pl: !ACE_FOR_TAO
+TAO/tests/Collocated_NoColl/run_test.pl: !ST
+TAO/tests/Collocated_DerivedIF/run_test.pl: !ST
+TAO/tests/Collocated_Best/Collocated_Best_Direct/run_test.pl: !ST
+TAO/tests/Collocated_Best/Collocated_Best_NoColl/run_test.pl: !ST
+TAO/tests/Collocated_Best/Collocated_Best_ThuP/run_test.pl: !ST
+TAO/tests/Collocated_ThruP_Sp/run_test.pl: !ST
+TAO/tests/Collocated_ThruP_Sp_Gd/run_test.pl: !ST
TAO/tests/Collocation_Tests/run_test.pl: !ST
TAO/tests/Collocation_Opportunities/run_test.pl: !ST !CORBA_E_MICRO
TAO/tests/Collocation_Oneway_Tests/run_test.pl: !ST !NO_MESSAGING !CORBA_E_MICRO
@@ -144,8 +151,8 @@ TAO/tests/Bug_3481_Regression/run_test.pl: !FIXED_BUGS_ONLY
TAO/tests/Bug_3499_Regression/run_test.pl: !STATIC
TAO/tests/Bug_3506_Regression/run_test.pl:
TAO/tests/Bug_3524_Regression/run_test.pl: !CORBA_E_MICRO
-TAO/tests/Bug_3531_Regression/run_test.pl: !ST !NO_MESSAGING !CORBA_E_MICRO !FIXED_BUGS_ONLY
-TAO/tests/Bug_3531b_Regression/run_test.pl: !ST !FIXED_BUGS_ONLY
+TAO/tests/Bug_3531_Regression/run_test.pl: !ST !NO_MESSAGING !CORBA_E_MICRO
+TAO/tests/Bug_3531b_Regression/run_test.pl: !ST
TAO/tests/Bug_3542_Regression/run_test.pl: !STATIC !ST !NO_MESSAGING !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO
#TAO/tests/Bug_3543_Regression/run_test.pl: !ST
TAO/tests/Bug_3548_Regression/run_test.pl:
@@ -184,6 +191,7 @@ TAO/tests/Bug_3755_Ext_Regression/run_test.pl -messaging: !STATIC !NO_MESSAGING
TAO/tests/Bug_3755_Ext_Regression/run_test.pl -csd: !STATIC !ST !CORBA_E_MICRO !LynxOS
TAO/tests/Bug_3755_Ext_Regression/run_test.pl -ziop: !STATIC ZIOP ZLIB !LynxOS
TAO/tests/Bug_3766_Regression/run_test.pl:
+TAO/tests/Bug_3768_Regression/run_test.pl: !ST !NO_MESSAGING !CORBA_E_MICRO
TAO/tests/Bug_3790_Regression/run_test.pl:
TAO/tests/Bug_3821_Regression/run_test.pl:
TAO/tests/Bug_3826_Regression/run_test.pl:
@@ -304,6 +312,7 @@ TAO/tests/POA/Default_Servant2/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_M
TAO/tests/POA/Explicit_Activation/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO
TAO/tests/POA/FindPOA/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO
TAO/tests/POA/NewPOA/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO
+TAO/tests/POA/On_Demand_Act_Direct_Coll/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC !ACE_FOR_TAO
TAO/tests/POA/On_Demand_Activation/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC !ACE_FOR_TAO
TAO/tests/POA/On_Demand_Loading/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !STATIC !KCC_Linux !ACE_FOR_TAO
TAO/tests/POA/Reference_Counted_Servant/run_test.pl: !MINIMUM !CORBA_E_COMPACT !CORBA_E_MICRO !ACE_FOR_TAO
diff --git a/TAO/docs/Options.html b/TAO/docs/Options.html
index fd8b5147c48..40995028e39 100644
--- a/TAO/docs/Options.html
+++ b/TAO/docs/Options.html
@@ -385,17 +385,20 @@ treated as collocated. When <em>no</em> is specified, no objects are
treated as collocated. </td>
</tr>
<tr>
- <td><code>-ORBCollocationStrategy</code> <em>thru_poa/direct</em>
+ <td><code>-ORBCollocationStrategy</code> <em>thru_poa/direct/best</em>
</td>
- <td>Specifies what type of collocated object to use. If the <code>thru_poa</code>
-(default) strategy is used, TAO uses the collocation object
+ <td>Specifies what type of collocated object to use. If not specified
+the TAO_DEFAULT_COLLOCATION_STRATEGY default (default on thru_poa) is used.
+If the <code>thru_poa</code> strategy is used, TAO uses the collocation object
implementation that respects POA's current state and policies. When
using the <code>direct</code> strategy, method invocations on
collocated objects become direct calls to servant without checking
POA's status, which can increase performance. If you use the <code>direct</code>
strategy, your interfaces must be compiled with the <code><a
href="compiler.html#collocation-stubs">-Gd</a></code> IDL <a
- href="compiler.html">compiler option</a>. </td>
+ href="compiler.html">compiler option</a>. If you choose for the <code>best</code> strategy,
+ TAO tries to perform the best possible collocation, first <code>direct</code> collocation if possible,
+else <code>thru_poa</code> collocation if possible and otherwise no collocation. </td>
</tr>
<tr>
<td><code>-ORBAMICollocation</code> <em>1|0</em>
diff --git a/TAO/docs/PP_Memory_Management.txt b/TAO/docs/PP_Memory_Management.txt
index f9516139582..fbf506c2b9b 100644
--- a/TAO/docs/PP_Memory_Management.txt
+++ b/TAO/docs/PP_Memory_Management.txt
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page PP_Memory_Management Memory Management Rules for TAO's Pluggable Protocol Framework
@section background Background
diff --git a/TAO/docs/tutorials/Quoter/Event_Service/stock_list.txt b/TAO/docs/tutorials/Quoter/Event_Service/stock_list.txt
index d30a0c0255a..33dc54dc782 100644
--- a/TAO/docs/tutorials/Quoter/Event_Service/stock_list.txt
+++ b/TAO/docs/tutorials/Quoter/Event_Service/stock_list.txt
@@ -1,3 +1,4 @@
+$Id$
MSFT
Microsoft Inc.
91
diff --git a/TAO/docs/tutorials/Quoter/Event_Service/stock_list1.txt b/TAO/docs/tutorials/Quoter/Event_Service/stock_list1.txt
index 183bd57af64..2dc00d31a8e 100644
--- a/TAO/docs/tutorials/Quoter/Event_Service/stock_list1.txt
+++ b/TAO/docs/tutorials/Quoter/Event_Service/stock_list1.txt
@@ -1,3 +1,4 @@
+$Id$
RHAT
RedHat Inc.
210
diff --git a/TAO/docs/tutorials/Quoter/Event_Service/stock_list2.txt b/TAO/docs/tutorials/Quoter/Event_Service/stock_list2.txt
index 2592fdbc073..d87bfd12122 100644
--- a/TAO/docs/tutorials/Quoter/Event_Service/stock_list2.txt
+++ b/TAO/docs/tutorials/Quoter/Event_Service/stock_list2.txt
@@ -1,3 +1,4 @@
+$Id$
MSFT
Microsoft Inc.
91
diff --git a/TAO/docs/tutorials/Quoter/RTCORBA/Broker.cpp b/TAO/docs/tutorials/Quoter/RTCORBA/Broker.cpp
index e3aa2a1a293..ee2cb97d618 100644
--- a/TAO/docs/tutorials/Quoter/RTCORBA/Broker.cpp
+++ b/TAO/docs/tutorials/Quoter/RTCORBA/Broker.cpp
@@ -196,7 +196,7 @@ ACE_TMAIN(int argc, ACE_TCHAR *argv[])
// Run the event loop.
ACE_DEBUG ((LM_DEBUG,
"running the event loop:\n"
- "*** message: ready to receieve stock information...\n\n"));
+ "*** message: ready to receive stock information...\n\n"));
orb->run ();
// Cleanup the POA and ORB.
diff --git a/TAO/docs/tutorials/Quoter/RTCORBA/docs/distributor.html b/TAO/docs/tutorials/Quoter/RTCORBA/docs/distributor.html
index 8738fbe78a0..64525c7cdf9 100644
--- a/TAO/docs/tutorials/Quoter/RTCORBA/docs/distributor.html
+++ b/TAO/docs/tutorials/Quoter/RTCORBA/docs/distributor.html
@@ -32,7 +32,7 @@ which is a subclass of POA_Stock::StockQuoter class. <P>
<hr><h3>Implementation of StockDistributorHome interface</h3>
-This interface is used to register the necessary factories and mappings with the specified orb and
+This interface is used to register the necessary factories and mappings with the specified orb and
create StockDistributor objects. <P>
The Stock_StockDistributorHome_i class is generated automatically by the IDL compiler (using the -GI flag),
@@ -48,7 +48,7 @@ The main steps of this function are described as follows: <P>
<PRE>
if (orb_->orb_core ()->reactor ()->register_handler (SIGINT, this) == -1)
- ACE_DEBUG ((LM_DEBUG, "ERROR: Failed to register as a signal handler: %p\n",
+ ACE_DEBUG ((LM_DEBUG, "ERROR: Failed to register as a signal handler: %p\n",
"register_handler\n"));
</PRE>
@@ -76,7 +76,7 @@ The main steps of this function are described as follows: <P>
<li>Create a CORBA::PolicyList for the child POA.</li>
-This step include several sub-stpes:
+This step include several sub-steps:
<OL>
<li> Get a reference to the RTORB.</li>
<li> Initialize a CORBA::PolicyList object.</li>
@@ -90,38 +90,38 @@ create a lane for each priority.</li>
<PRE>
CORBA::Object_var obj = orb_->resolve_initial_references ("RTORB");
RTCORBA::RTORB_var rt_orb = RTCORBA::RTORB::_narrow (obj.in ());
-
+
TAO::Utils::PolicyList_Destroyer policies (2);
policies.length (2);
-
+
policies[0] =
rt_orb->create_priority_model_policy (RTCORBA::SERVER_DECLARED,
Stock::Priority_Mapping::VERY_LOW);
-
+
RTCORBA::ThreadpoolLanes lanes (5); lanes.length (5);
-
- for (CORBA::ULong i = 0; i < lanes.length (); ++i)
+
+ for (CORBA::ULong i = 0; i < lanes.length (); ++i)
{
lanes[i].lane_priority = static_cast<RTCORBA::Priority> (i);
lanes[i].static_threads = 5;
lanes[i].dynamic_threads = 0;
}
-
- RTCORBA::ThreadpoolId threadpool_id =
+
+ RTCORBA::ThreadpoolId threadpool_id =
rt_orb->create_threadpool_with_lanes (1024*1024,
lanes,
false, false, 0, 0);
-
+
policies[1] = rt_orb->create_threadpool_policy (threadpool_id);
PortableServer::POA_var poa = this->_default_POA ();
PortableServer::POAManager_var poa_mgr = poa->the_POAManager ();
-
+
PortableServer::POA_var child_poa =
- poa->create_POA ("StockDistributor_POA",
+ poa->create_POA ("StockDistributor_POA",
poa_mgr.in (),
policies);
-
+
this->rt_poa_ = RTPortableServer::POA::_narrow (child_poa.in ());
</PRE>
@@ -133,7 +133,7 @@ create a lane for each priority.</li>
<h4>Implementing the create_distributor () member function</h4>
-<li>Create a new instance of the StockDistributor_i. Then activate it under the located POA.
+<li>Create a new instance of the StockDistributor_i. Then activate it under the located POA.
This will cause the object to have the CLIENT_PROPAGATED policies. </li>
<PRE>
@@ -179,7 +179,7 @@ which is a subclass of POA_Stock::StockDistributor class. <P>
orb_ (CORBA::ORB::_duplicate (poa->_get_orb ()))
</PRE>
-The "rate_" and "active_" are two private members of the Stock_StockDistributor_i class. They stand
+The "rate_" and "active_" are two private members of the Stock_StockDistributor_i class. They stand
for the notification rate and the active state of the StockDistributor object. <P>
<h4>Implementing the subscribe_notifier () member function</h4>
@@ -190,7 +190,7 @@ The main steps of this function are described as follows: <P>
<li>Generate an unique id for the cookie and use it to create a new Cookie object.</li> <P>
-<li>Insert the StockNameConsumer object and its priority into the StockDistributor object's subscriber map,
+<li>Insert the StockNameConsumer object and its priority into the StockDistributor object's subscriber map,
using the cookie id as the key.</li> <P>
<li>Return the Cookie object.</li> <P>
@@ -202,7 +202,7 @@ The main steps of this function are described as follows: <P>
<li>Check the value of the Cookie object.</li> <P>
<li>Get the write thread mutex of the subscriber map.</li> <P>
-
+
<li>Search for the Cookie object in the argument in the StockDistributor object's subscriber map.</li> <P>
<li>Erase the Cookie object from the StockDistributor object's subscribers' map.</li> <P>
@@ -212,7 +212,7 @@ The main steps of this function are described as follows: <P>
<h4>Implementing the provide_quoter_info () member function</h4>
<li>Get the read thread mutex of the subscriber map.</li> <P>
-
+
<li>Search for the Cookie object in the argument in the StockDistributor object's subscriber map.</li> <P>
<PRE>
@@ -224,11 +224,11 @@ The main steps of this function are described as follows: <P>
<PRE>
Stock_StockQuoter_i *quoter = new Stock_StockQuoter_i;
PortableServer::ServantBase_var owner_transfer (quoter);
-
- PortableServer::ObjectId *oid =
+
+ PortableServer::ObjectId *oid =
this->rt_poa_->activate_object_with_priority (quoter,
iter->second.second);
-
+
CORBA::Object_var obj = rt_poa_->id_to_reference (*oid);
Stock::StockQuoter_var quoter_var = ::Stock::StockQuoter::_narrow (obj.in ());
</PRE>
@@ -257,12 +257,12 @@ While the state of the StockDistributor object is active, continue the following
CORBA::Object_var obj = orb_->resolve_initial_references ("RTCurrent");
RTCORBA::Current_var rt_current =
RTCORBA::Current::_narrow (obj);
-
+
rt_current->the_priority (iter->second.second);
// Tell the database to push its information to the
// <consumer>, which passes along the CORBA priority
- // in the service_context list of the GIOP message.
+ // in the service_context list of the GIOP message.
STOCK_DATABASE->publish_stock_info (iter->second.first);
}
catch (CORBA::Exception &ex)
@@ -288,10 +288,10 @@ While the state of the StockDistributor object is active, continue the following
<li>Deactivate the StockDistributor object.</li>
-<PRE>
+<PRE>
::Stock::StockDistributor_var dist = this->_this ();
PortableServer::ObjectId_var oid = this->rt_poa_->reference_to_id (dist.in ());
-
+
this->rt_poa_->deactivate_object (oid.in ());
</PRE>
diff --git a/TAO/docs/tutorials/Quoter/Simple/ImprovedServer/stock_list.txt b/TAO/docs/tutorials/Quoter/Simple/ImprovedServer/stock_list.txt
index d30a0c0255a..bcf9fde521d 100644
--- a/TAO/docs/tutorials/Quoter/Simple/ImprovedServer/stock_list.txt
+++ b/TAO/docs/tutorials/Quoter/Simple/ImprovedServer/stock_list.txt
@@ -1,3 +1,5 @@
+$Id$
+
MSFT
Microsoft Inc.
91
diff --git a/TAO/examples/AMH/Sink_Server/README b/TAO/examples/AMH/Sink_Server/README
index a7d020ef6f1..9313466070d 100644
--- a/TAO/examples/AMH/Sink_Server/README
+++ b/TAO/examples/AMH/Sink_Server/README
@@ -1,3 +1,5 @@
+$Id$
+
Files:
------
AMH_Servant.h/cpp : AMH Servant that implements the Test interface
@@ -21,7 +23,7 @@ Multi Threaded Server: make mt_server
Running the servers:
--------------------
Single threaded AMH Sink Server:
-st_server -ORBsvcconf st_server.conf -o <ior_output_file> -s <sleep_time (in microseconds)>
+st_server -ORBsvcconf st_server.conf -o <ior_output_file> -s <sleep_time (in microseconds)>
e.g.: st_server -o test.ior -s 20000
to delay a reply to the client by 20 milliseconds.
@@ -40,7 +42,7 @@ necessary and there are no defaults
How the server works:
---------------------
- Each client request is 'timed' (with the sleep_time) and registered
-in the ORB's reactor.
+in the ORB's reactor.
- Upon expiration of the timer, the reactor fires the timer_handler
and the AMH RH servant method is called to send the reply to the
diff --git a/TAO/examples/AMI/FL_Callback/README b/TAO/examples/AMI/FL_Callback/README
index 59c3cd0ba9a..88e92aa70d6 100644
--- a/TAO/examples/AMI/FL_Callback/README
+++ b/TAO/examples/AMI/FL_Callback/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
A demo of the AMI callback model, using the FL toolkit for the
GUI components.
diff --git a/TAO/examples/Advanced/README b/TAO/examples/Advanced/README
index 89a3212d3b7..dc61d9bfa52 100644
--- a/TAO/examples/Advanced/README
+++ b/TAO/examples/Advanced/README
@@ -10,7 +10,7 @@ We've also integrated the examples into the ACE+TAO Makefile scheme.
Each directory contains a file CHANGES which describes all
modifications, as well as a README file documenting its use.
-The original source distribution can be found at the Addison-Wesley
+The original source distribution can be found at the Addison-Wesley
homepage:
http://cseng.aw.com/bookdetail.qry?ISBN=0-201-37927-9&ptype=0
diff --git a/TAO/examples/Advanced/ch_12/README b/TAO/examples/Advanced/ch_12/README
index d099fbc905c..c2741364efe 100644
--- a/TAO/examples/Advanced/ch_12/README
+++ b/TAO/examples/Advanced/ch_12/README
@@ -2,38 +2,38 @@ $Id$
Chapter 12 example.
______________________________________________________________________________
-This example been taken from the book "Advanced CORBA Programming with C++"
-by Michi Henning and Steve Vinoski. Copyright 1999. Addison-Wesley, Reading,
-MA. To make the examples work with TAO, some minor modifications to the
+This example been taken from the book "Advanced CORBA Programming with C++"
+by Michi Henning and Steve Vinoski. Copyright 1999. Addison-Wesley, Reading,
+MA. To make the examples work with TAO, some minor modifications to the
source code have been made, with permission, by Mike Moran <mm4@cs.wustl.edu>.
All of these changes are documented in the file CHANGES, in this directory.
______________________________________________________________________________
Summary:
- This example builds on the climate control system presented in chapters 8
- and 10. The added use of customized POA policies including the use of a
- servant manager is discussed in chapter 11. The example also incorporates
- a simulated ICP network within the server process with code from Appendix
+ This example builds on the climate control system presented in chapters 8
+ and 10. The added use of customized POA policies including the use of a
+ servant manager is discussed in chapter 11. The example also incorporates
+ a simulated ICP network within the server process with code from Appendix
A. The simulated network loads it's devices from
-
+
Building:
- This example must be built with native C++ exceptions, and with an ACE/TAO
- build with exceptions. Make sure to use TAO_FLAG Ge=0 to ensure that the
- IDL generated code uses c++ exceptions rather than creating
+ This example must be built with native C++ exceptions, and with an ACE/TAO
+ build with exceptions. Make sure to use TAO_FLAG Ge=0 to ensure that the
+ IDL generated code uses c++ exceptions rather than creating
CORBA_Environment variables.
- With GNU make, simply type
+ With GNU make, simply type
% make exceptions=1
to create the executable server and client
server:
- The server takes no parameters nor command line options and returns an
+ The server takes no parameters nor command line options and returns an
IOR to stdout. The server then waits infinitely for clients requests.
client:
- The client takes an IOR from the command line, narrows this to a
- controller reference, makes several remote calls on this controller, and
+ The client takes an IOR from the command line, narrows this to a
+ controller reference, makes several remote calls on this controller, and
finally terminates.
run_test.pl:
diff --git a/TAO/examples/Advanced/ch_18/README b/TAO/examples/Advanced/ch_18/README
index 7bf75c2a070..3d7d481c55c 100644
--- a/TAO/examples/Advanced/ch_18/README
+++ b/TAO/examples/Advanced/ch_18/README
@@ -2,42 +2,42 @@ $Id$
Chapter 18 example
______________________________________________________________________________
-This example been taken from the book "Advanced CORBA Programming with C++"
-by Michi Henning and Steve Vinoski. Copyright 1999. Addison-Wesley, Reading,
-MA. To make the examples work with TAO, some minor modifications to the
+This example been taken from the book "Advanced CORBA Programming with C++"
+by Michi Henning and Steve Vinoski. Copyright 1999. Addison-Wesley, Reading,
+MA. To make the examples work with TAO, some minor modifications to the
source code have been made, with permission, by Mike Moran <mm4@cs.wustl.edu>.
All of these changes are documented in the file CHANGES, in this directory.
______________________________________________________________________________
Summary:
- This example adds the use of the Naming Service to the climate control
+ This example adds the use of the Naming Service to the climate control
system of chapter 12.
Building:
- This example must be built with native C++ exceptions, and with an ACE/TAO
- build with exceptions. Make sure to use TAO_FLAG Ge=0 to ensure that the
- IDL generated code uses c++ exceptions rather than creating
+ This example must be built with native C++ exceptions, and with an ACE/TAO
+ build with exceptions. Make sure to use TAO_FLAG Ge=0 to ensure that the
+ IDL generated code uses c++ exceptions rather than creating
CORBA_Environment variables.
- With GNU make, simply type
+ With GNU make, simply type
% make exceptions=1
to create the executable server and client.
- Also, make sure that the Naming Service executable has been built at
+ Also, make sure that the Naming Service executable has been built at
$TAO_ROOT/orbsvcs/Naming_Service/Naming_Service.
server:
- The server takes no parameters nor command line options and registers the
- controller object with the naming service. The server then waits
+ The server takes no parameters nor command line options and registers the
+ controller object with the naming service. The server then waits
infinitely for clients requests.
client:
- The client gets reference to the controller through the naming service,
+ The client gets reference to the controller through the naming service,
makes several remote calls on this controller, and terminates.
run_test.pl:
- The script starts up a new Naming Service, starts thc server and client,
+ The script starts up a new Naming Service, starts thc server and client,
and when the client has completed terminates the server and NamingService.
Running:
diff --git a/TAO/examples/Advanced/ch_21/README b/TAO/examples/Advanced/ch_21/README
index 43b39ab46d3..11bd84a06e0 100644
--- a/TAO/examples/Advanced/ch_21/README
+++ b/TAO/examples/Advanced/ch_21/README
@@ -2,9 +2,9 @@ $Id$
Chapter 21 example.
______________________________________________________________________________
-This example been taken from the book "Advanced CORBA Programming with C++"
-by Michi Henning and Steve Vinoski. Copyright 1999. Addison-Wesley, Reading,
-MA. To make the examples work with TAO, some minor modifications to the
+This example been taken from the book "Advanced CORBA Programming with C++"
+by Michi Henning and Steve Vinoski. Copyright 1999. Addison-Wesley, Reading,
+MA. To make the examples work with TAO, some minor modifications to the
source code have been made, with permission, by Mike Moran <mm4@cs.wustl.edu>.
All of these changes are documented in the file CHANGES, in this directory.
______________________________________________________________________________
@@ -12,26 +12,26 @@ ______________________________________________________________________________
Summary:
This is example modifies the climate control system of chapter 12 to have
- a multithreaded server. The client included here has been taken
+ a multithreaded server. The client included here has been taken
from chapter 12.
Building:
- This example must be built with native C++ exceptions, and with an
- ACE/TAO build with exceptions. Make sure to use TAO_FLAG Ge=0 to
- ensure that the IDL generated code uses c++ exceptions rather than
+ This example must be built with native C++ exceptions, and with an
+ ACE/TAO build with exceptions. Make sure to use TAO_FLAG Ge=0 to
+ ensure that the IDL generated code uses c++ exceptions rather than
creating CORBA_Environment variables.
- With GNU make, simply type
+ With GNU make, simply type
% make exceptions=1
to create the executable server and client.
server:
- The server takes no parameters nor command line options and returns an
+ The server takes no parameters nor command line options and returns an
IOR to stdout. The server then waits infinatly for clients requests.
client:
- The client takes an IOR from the command line, narrows this to a
- controller reference, makes several remote calls on this controller, and
+ The client takes an IOR from the command line, narrows this to a
+ controller reference, makes several remote calls on this controller, and
finally terminates.
run_test.pl:
diff --git a/TAO/examples/Advanced/ch_3/README b/TAO/examples/Advanced/ch_3/README
index e74eeb9bdf1..9d87f6affd2 100644
--- a/TAO/examples/Advanced/ch_3/README
+++ b/TAO/examples/Advanced/ch_3/README
@@ -2,9 +2,9 @@ $Id$
Chapter 3 example.
______________________________________________________________________________
-This example been taken from the book "Advanced CORBA Programming with C++"
-by Michi Henning and Steve Vinoski. Copyright 1999. Addison-Wesley, Reading,
-MA. To make the examples work with TAO, some minor modifications to the
+This example been taken from the book "Advanced CORBA Programming with C++"
+by Michi Henning and Steve Vinoski. Copyright 1999. Addison-Wesley, Reading,
+MA. To make the examples work with TAO, some minor modifications to the
source code have been made, with permission, by Mike Moran <mm4@cs.wustl.edu>.
All of these changes are documented in the file CHANGES, in this directory.
______________________________________________________________________________
@@ -12,28 +12,28 @@ ______________________________________________________________________________
Summary:
This is the simple time server given in chapter 3 of the book.
- There is a server process which holds a servant object which can return
- the current Greenwich time, and a client process which can acess this
+ There is a server process which holds a servant object which can return
+ the current Greenwich time, and a client process which can acess this
object.
Building:
- This example must be built with native C++ exceptions, and with an ACE/TAO
+ This example must be built with native C++ exceptions, and with an ACE/TAO
build with exceptions. Make sure to use TAO_FLAG Ge=0 to ensure
- that CORBA::Environment variables are not created in the IDL generated
+ that CORBA::Environment variables are not created in the IDL generated
stubs and skeletons.
- With GNU make, simply type
-
+ With GNU make, simply type
+
% make exceptions=1
to create the executable server and client
server:
- The server takes no parameters nor command line options and returns an
+ The server takes no parameters nor command line options and returns an
IOR to stdout. The server then waits infinitely for clients requests.
client:
- The client takes an IOR from the command line, prints out the current
+ The client takes an IOR from the command line, prints out the current
time, and terminates.
run_test.pl:
diff --git a/TAO/examples/Advanced/ch_8_and_10/README b/TAO/examples/Advanced/ch_8_and_10/README
index 6b44902f1f6..d072d1c32f8 100644
--- a/TAO/examples/Advanced/ch_8_and_10/README
+++ b/TAO/examples/Advanced/ch_8_and_10/README
@@ -2,23 +2,23 @@ $Id$
Chapters 8 and 10 example.
______________________________________________________________________________
-This example been taken from the book "Advanced CORBA Programming with C++"
-by Michi Henning and Steve Vinoski. Copyright 1999. Addison-Wesley, Reading,
-MA. To make the examples work with TAO, some minor modifications to the
+This example been taken from the book "Advanced CORBA Programming with C++"
+by Michi Henning and Steve Vinoski. Copyright 1999. Addison-Wesley, Reading,
+MA. To make the examples work with TAO, some minor modifications to the
source code have been made, with permission, by Mike Moran <mm4@cs.wustl.edu>.
All of these changes are documented in the file CHANGES, in this directory.
______________________________________________________________________________
Summary:
- This is the most basic version of the climate control system presented
+ This is the most basic version of the climate control system presented
throughout the book. The client is presented in chapter 8 and the
server in chapter 10.
Building:
- This example must be built with native C++ exceptions, and with an ACE/TAO
+ This example must be built with native C++ exceptions, and with an ACE/TAO
build with exceptions. Make sure to use TAO_FLAG Ge=0 to ensure
- that the IDL generated code uses c++ exceptions rather than creating
+ that the IDL generated code uses c++ exceptions rather than creating
CORBA_Environment variables.
With GNU make, simply type
@@ -26,12 +26,12 @@ Building:
to create the executable server and client.
server:
- The server takes no parameters nor command line options and returns an
+ The server takes no parameters nor command line options and returns an
IOR to stdout. The server then waits infinitely for clients requests.
client:
- The client takes an IOR from the command line, narrows this to a
- controller reference, makes several remote calls on this controller, and
+ The client takes an IOR from the command line, narrows this to a
+ controller reference, makes several remote calls on this controller, and
finally terminates.
run_test.pl:
diff --git a/TAO/examples/Buffered_AMI/README b/TAO/examples/Buffered_AMI/README
index e073c2ea40d..a5235b67266 100644
--- a/TAO/examples/Buffered_AMI/README
+++ b/TAO/examples/Buffered_AMI/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
diff --git a/TAO/examples/Buffered_Oneways/README b/TAO/examples/Buffered_Oneways/README
index 986359e3bee..4177d4a4874 100644
--- a/TAO/examples/Buffered_Oneways/README
+++ b/TAO/examples/Buffered_Oneways/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
diff --git a/TAO/examples/CSD_Strategy/README b/TAO/examples/CSD_Strategy/README
index 05a14e7af7e..b1f6953bb03 100644
--- a/TAO/examples/CSD_Strategy/README
+++ b/TAO/examples/CSD_Strategy/README
@@ -1,7 +1,9 @@
-The example ThreadPool, ThreadPool2 and ThreadPool3 use the same idl file which
+$Id$
+
+The example ThreadPool, ThreadPool2 and ThreadPool3 use the same idl file which
defines some twoway calls and a simple oneway call and they are different just
-because of their configurations such as the number of servants, the number of
-ORB threads and the number of csd threads.
+because of their configurations such as the number of servants, the number of
+ORB threads and the number of csd threads.
ThreadPool - 1 servant, 1 ORB theread (main thread), 1 csd thread.
ThreadPool2 - multiple servants, 1 ORB theread (main thread), multiple
@@ -12,9 +14,9 @@ csd threads.
The example 6 is simply a copy of the threadpool example, the only difference
is it uses the TIE approach.
-The example ThreadPool4 and ThreadPool5 use the same idl file which includes
-the operations defined in example ThreadPool, ThreadPool2 and ThreadPool3 in
-addition of callbacks and the oneway "IN" argument test. The ThreadPool4 is
+The example ThreadPool4 and ThreadPool5 use the same idl file which includes
+the operations defined in example ThreadPool, ThreadPool2 and ThreadPool3 in
+addition of callbacks and the oneway "IN" argument test. The ThreadPool4 is
a collocated test. The ThreadPool5 combines all other test cases together except
the ThreadPool6 example.
diff --git a/TAO/examples/CSD_Strategy/ThreadPool/README b/TAO/examples/CSD_Strategy/ThreadPool/README
index 76a46ba103f..d0a662d016b 100644
--- a/TAO/examples/CSD_Strategy/ThreadPool/README
+++ b/TAO/examples/CSD_Strategy/ThreadPool/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
diff --git a/TAO/examples/CSD_Strategy/ThreadPool2/README b/TAO/examples/CSD_Strategy/ThreadPool2/README
index 4c770475642..1cc9a915bc9 100644
--- a/TAO/examples/CSD_Strategy/ThreadPool2/README
+++ b/TAO/examples/CSD_Strategy/ThreadPool2/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
diff --git a/TAO/examples/CSD_Strategy/ThreadPool3/README b/TAO/examples/CSD_Strategy/ThreadPool3/README
index ebad7aba505..55615300283 100644
--- a/TAO/examples/CSD_Strategy/ThreadPool3/README
+++ b/TAO/examples/CSD_Strategy/ThreadPool3/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
diff --git a/TAO/examples/CSD_Strategy/ThreadPool4/README b/TAO/examples/CSD_Strategy/ThreadPool4/README
index 923174c8d78..59d647ee330 100644
--- a/TAO/examples/CSD_Strategy/ThreadPool4/README
+++ b/TAO/examples/CSD_Strategy/ThreadPool4/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
diff --git a/TAO/examples/CSD_Strategy/ThreadPool5/README b/TAO/examples/CSD_Strategy/ThreadPool5/README
index 29b72f8a861..234c4fab331 100644
--- a/TAO/examples/CSD_Strategy/ThreadPool5/README
+++ b/TAO/examples/CSD_Strategy/ThreadPool5/README
@@ -1,8 +1,8 @@
-# $Id$
+$Id$
Description:
-This test is a combination of other tests and has also added some
+This test is a combination of other tests and has also added some
other test cases such as cancel_servant. It uses the command
line options for the number of orb threads, number of servants,
collocated test options, etc.
@@ -18,15 +18,15 @@ $ ./run_test.pl
$ ./run_test.pl collocated
- This runs the collocated test.
+ This runs the collocated test.
- The server application creates one servant, runs one orb
- thread, runs two custom dispatching threads and one client
+ The server application creates one servant, runs one orb
+ thread, runs two custom dispatching threads and one client
thread to invoke the operations.
- Running two custom dispatching threads instead of one is
+ Running two custom dispatching threads instead of one is
required to avoid deadlock.
-
+
$ ./run_test.pl multiple_servants
This test is similar to the "ThreadPool2" test.
@@ -41,7 +41,7 @@ $ ./run_test.pl cancel_servant
cancelled when a servant is deactivated.
The client invokes multiple two-way operations and catches the
- OBJECT_NOT_EXIST or NO_IMPLEMENTATION exception after the servant
+ OBJECT_NOT_EXIST or NO_IMPLEMENTATION exception after the servant
is deactivated - this is what it is supposed to do - the exceptions
are expected.
diff --git a/TAO/examples/CSD_Strategy/ThreadPool6/README b/TAO/examples/CSD_Strategy/ThreadPool6/README
index 5c90da80c6b..3e123bb5a43 100644
--- a/TAO/examples/CSD_Strategy/ThreadPool6/README
+++ b/TAO/examples/CSD_Strategy/ThreadPool6/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
diff --git a/TAO/examples/Callback_Quoter/README b/TAO/examples/Callback_Quoter/README
index 201c39fb56b..8a7b079afa0 100644
--- a/TAO/examples/Callback_Quoter/README
+++ b/TAO/examples/Callback_Quoter/README
@@ -1,3 +1,5 @@
+$Id$
+
******************************************************************************
CALLBACK QUOTER TEST EXAMPLE -- Kirthika Parameswaran
<kirthika@cs.wustl.edu>
@@ -5,7 +7,7 @@ CALLBACK QUOTER TEST EXAMPLE -- Kirthika Parameswaran
This is an distributed application which highlights the importance
of the callback feature in helping meet the demands of various clients
-without them having to poll continously for input from the server.
+without them having to poll continuously for input from the server.
There are three parts to the Callback Quoter Example.
@@ -13,10 +15,10 @@ There are three parts to the Callback Quoter Example.
2) Notifier
3) Consumer
-
+
In detail:
_________
-
+
1) Supplier
--is the market feed daemon who keeps feeding the current stock
information to the Notifier periodically.
@@ -26,9 +28,9 @@ the Notifier.
2) Notifier
-- On getting information form the supplier, it checks whether there are
-any consumers ineterested in the information and accordingly sends it to
+any consumers interested in the information and accordingly sends it to
them. The consumer object is registered with the notifier and the data
-is pushed to the consumer usoing this refernce.
+is pushed to the consumer using this reference.
3) Consumer
-- He is the stock broker interested in the stock values in the market.
@@ -76,7 +78,7 @@ You can unregister by typing 'u' and quit by typing 'q'.
./supplier -ifilename
The -i option simply tells the daemon where to pick information from.
-TIP:: the contents of the input file per line should be: stockname and its price.
+TIP:: the contents of the input file per line should be: stockname and its price.
Sample: ./example.stocks
The other option includes setting the period for the stock feed.
@@ -111,7 +113,7 @@ You can unregister by typing 'u' and quit by typing 'q'.
./supplier -ifilename -fior_file -s
The -i option simply tells the daemon where to pick information from.
-TIP:: the contents of the input file per line should be: stockname and its price.
+TIP:: the contents of the input file per line should be: stockname and its price.
Sample: ./example.stocks
The other option includes setting the period for the stock feed.
diff --git a/TAO/examples/Content_Server/AMI_Iterator/README b/TAO/examples/Content_Server/AMI_Iterator/README
index eaca92782ab..c20e3ff5b64 100644
--- a/TAO/examples/Content_Server/AMI_Iterator/README
+++ b/TAO/examples/Content_Server/AMI_Iterator/README
@@ -1,3 +1,5 @@
+$Id$
+
This program illustrates how to implement a simple client and server
using CORBA, IIOP, and asynchronous method invocations (AMI). Client
applications can use this service to download and display files from a
@@ -15,9 +17,9 @@ is as follows:
* The CORBA Naming Service is used to bind and resolve object
references, rather than using a file.
-
+
The client program performs the following activities:
-
+
1. From the command-line, it reads the name of the pathname
you want to download. It then initializes the client-side
ORB and uses resolve_initial_references() to obtain a
@@ -29,7 +31,7 @@ The client program performs the following activities:
interface, the get_iterator() operation is called via the
object reference to obtain the Chunk_Iterator, which is
used to download the file.
-
+
2. The client invokes the sendc_next_chunk() method on the
iterator, passing in the offset and the object reference to
the client's reply handler. Only one pending call at a
@@ -37,14 +39,14 @@ The client program performs the following activities:
some type of offset parameter to the next_chunk() callback
to perform reassembly if chunks for the same file arrived
out of order.
-
+
3. When next_chunk() returns a chunk of the file, the contents
are written into a temporary file created in your a cache
(e.g., /tmp/yourloginname) on the local host. Then, an
external viewer is spawned to display the file. The type
of viewer to spawn is determined by examining the the
content_type_ metadata returned by the server.
-
+
The example can be run as follows:
1. Start the Name Service:
diff --git a/TAO/examples/Content_Server/AMI_Observer/README b/TAO/examples/Content_Server/AMI_Observer/README
index f9e4de33b5d..10d91d298f7 100644
--- a/TAO/examples/Content_Server/AMI_Observer/README
+++ b/TAO/examples/Content_Server/AMI_Observer/README
@@ -1,3 +1,5 @@
+$Id$
+
This program illustrates how to implement a simple client and server
using CORBA, IIOP, and asynchronous method invocations (AMI). Client
applications can use this service to download and display files from a
@@ -8,7 +10,7 @@ is as follows:
the Observer pattern. The server will ``push'' chunks of
data to the client. Thus, the client will play the role of
a ``server,'' as well.
-
+
* Operations in the IDL interface will use exceptions to propagate
problems back to clients.
@@ -75,7 +77,7 @@ the client receives all chunks of data in the proper order.
The client program performs the following activities:
-
+
1. From the command-line, it reads the name of the pathname
you want to download. It then initializes the client-side
ORB and uses resolve_initial_references() to obtain a
@@ -88,10 +90,10 @@ The client program performs the following activities:
called via the object reference to pass asynchronously pass
the Callback interface from the client to the server, which
then uses AMI to push chunks of the file to the client.
-
+
2. The server calls the sendc_next_chunk() method on the
- callback, passing in the offset and the next chunk.
-
+ callback, passing in the offset and the next chunk.
+
3. When the client receives the next_chunk() callback that
contains a chunk of the file, the contents are written into
a temporary file created in your a cache (e.g.,
@@ -99,8 +101,8 @@ The client program performs the following activities:
viewer is spawned to display the file. The type of viewer
to spawn is determined by examining the the content_type_
metadata returned by the server.
-
-
+
+
The example can be run as follows:
1. Start the Name Service:
diff --git a/TAO/examples/Content_Server/README b/TAO/examples/Content_Server/README
index f31aab9d754..81cf35573eb 100644
--- a/TAO/examples/Content_Server/README
+++ b/TAO/examples/Content_Server/README
@@ -1,3 +1,5 @@
+$Id$
+
This directory contains a number of example applications that
illustrate how to transmit large files using standard CORBA and TAO.
The individual directories contain READMEs on how to run the following
diff --git a/TAO/examples/Content_Server/SMI_Iterator/README b/TAO/examples/Content_Server/SMI_Iterator/README
index f89a45e7747..d6fea3f7e52 100644
--- a/TAO/examples/Content_Server/SMI_Iterator/README
+++ b/TAO/examples/Content_Server/SMI_Iterator/README
@@ -1,3 +1,5 @@
+$Id$
+
This program illustrates how to implement a simple client and server
using CORBA, IIOP, and synchronous method invocations (SMI). Client
applications can use this service to download and display files from a
@@ -14,9 +16,9 @@ is as follows:
* The CORBA Naming Service is used to bind and resolve object
references, rather than using a file.
-
+
The client program performs the following activities:
-
+
1. From the command-line, it reads the name of the pathname
you want to download. It then initializes the client-side
ORB and uses resolve_initial_references() to obtain a
@@ -28,7 +30,7 @@ The client program performs the following activities:
interface, the get_iterator() operation is called via the
object reference to obtain the Chunk_Iterator, which is
used to download the file.
-
+
2. When next_chunk() returns a chunk of the file, the contents
are written into a temporary file created in your a cache
(e.g., /tmp/yourloginname) on the local host. Then, an
diff --git a/TAO/examples/Event_Comm/README b/TAO/examples/Event_Comm/README
index fbb34bdf132..b9882fc0b11 100644
--- a/TAO/examples/Event_Comm/README
+++ b/TAO/examples/Event_Comm/README
@@ -1,3 +1,5 @@
+$Id$
+
OVERVIEW
This directory contains source code for a prototype CORBA-based
diff --git a/TAO/examples/Kokyu_dsrt_schedulers/README b/TAO/examples/Kokyu_dsrt_schedulers/README
index e2e4c5ee040..dcd17a977ea 100644
--- a/TAO/examples/Kokyu_dsrt_schedulers/README
+++ b/TAO/examples/Kokyu_dsrt_schedulers/README
@@ -1,32 +1,34 @@
+$Id$
+
Design approaches for the Kokyu based DSRT scheduler/dispatcher
--------------------------------------------------------
The DSRT schedulers in this directory use the Kokyu DSRT
dispatching classes present in $ACE_ROOT/Kokyu. These
-act as wrappers/adapters around the Kokyu DSRT dispatcher.
+act as wrappers/adapters around the Kokyu DSRT dispatcher.
The Kokyu DSRT dispatcher is responsible for scheduling
threads which ask the dispatcher to schedule themselves.
Currently there are two implementations for the Kokyu
DSRT dispatcher. One uses a condition-variable based
approach for scheduling threads and the other manipulates
priorities of threads and relies on the OS scheduler for
-dispatching the threads appropriately.
+dispatching the threads appropriately.
CV-based approach
-----------------
In this approach, it is assumed that the threads "yield"
-on a regular basis to the scheduler by calling
+on a regular basis to the scheduler by calling
update_scheduling_segment. Only one thread is running at
-any point in time. All the other threads are blocked
+any point in time. All the other threads are blocked
on a condition variable. When the currently running
-thread yields, it will cause the condition variable
+thread yields, it will cause the condition variable
to be signalled. All the eligible threads are stored
-in a scheduler queue (rbtree), the most eligible thread
+in a scheduler queue (rbtree), the most eligible thread
determined by the scheduling discipline. This approach
-has the drawback that it requires a cooperative
-threading model, where threads yield voluntarily
-on a regular basis. The application threads are
-responsible for doing this voluntary yielding.
+has the drawback that it requires a cooperative
+threading model, where threads yield voluntarily
+on a regular basis. The application threads are
+responsible for doing this voluntary yielding.
OS-based approach
-----------------
@@ -43,29 +45,29 @@ while bumping down the priority of the currently running
thread, if it is not the most eligible. There are four
priority levels required for this mechanism to work,
listed in descending order of priorities. For example,
-a thread running at Active priority will preempt a
-thread running at Inactive priority level.
+a thread running at Active priority will preempt a
+thread running at Inactive priority level.
-1. Executive priority - priority at which the scheduler
+1. Executive priority - priority at which the scheduler
executive thread runs.
-2. Blocked priority - this is the priority to which
+2. Blocked priority - this is the priority to which
threads about to block on remote calls will be bumped
up to.
-3. Active priority - this is the priority to which
+3. Active priority - this is the priority to which
the most eligible thread is set to.
4. Inactive priority - this is the priority to which
all threads except the most eligible thread is set
to.
-As soon as a thread asks to be scheduled, a
+As soon as a thread asks to be scheduled, a
wrapper object is created and inserted into the queue.
This object carries the qos (sched params) associated
with that thread. A condition variable is signalled
-to inform the executive thread that the queue is
-"dirty". The scheduler thread picks up the most
+to inform the executive thread that the queue is
+"dirty". The scheduler thread picks up the most
eligble one and sets its priority to "active" and
-sets the currently running thread priority to
-"inactive".
+sets the currently running thread priority to
+"inactive".
The drawback to this approach is that it relies on
the OS scheduler to dispatch the threads. Also,
@@ -79,10 +81,10 @@ threads and this could cause priority inversions.
How to write a new DSRT scheduler using Kokyu
---------------------------------------------
One can use one of the schedulers as a starting
-point. The variation points are
+point. The variation points are
1. The scheduler parameters that need to be propagated
- along with the service context.
+ along with the service context.
2. The QoS comparison function, that determines which
thread is more eligible.
@@ -90,13 +92,13 @@ To aid (1), we have created a Svc_Ctxt_DSRT_QoS idl
interface (see ./Kokyu_qos.pidl). This interface
currently has the necessary things to be propagated
for FP, MIF and MUF schedulers. This can be altered
-if necessary to accomodate new sched params. The
+if necessary to accomodate new sched params. The
idea here is to let the IDL compiler generate the
marshalling code (including Any operators) so that
-these parameters can be shipped across in the
-service context in an encapsulated CDR.
+these parameters can be shipped across in the
+service context in an encapsulated CDR.
-To create customized QoS comparator functions, we
+To create customized QoS comparator functions, we
used the idea of C++ traits to let the user define
customized comparator functions. For example, the
MIF scheduler uses the following traits class.
@@ -130,12 +132,12 @@ MIF scheduler uses the following traits class.
The idea of traits makes the Kokyu dispatcher more flexible
in terms of creating new schedulers. For example, the
-Kokyu classes do not care about what concrete type
+Kokyu classes do not care about what concrete type
Guid is. It could be an OctetSequence for some applications,
whereas it could be an int for some others. The exact type
is defined by the application (in this case, the MIF scheduler)
using the traits class. In the above traits class the
-Guid's type is defined to be an octet sequence (indirectly).
+Guid's type is defined to be an octet sequence (indirectly).
The Kokyu dispatcher expects the following typedef's to
be present in the traits class:
diff --git a/TAO/examples/Kokyu_dsrt_schedulers/fp_example/README b/TAO/examples/Kokyu_dsrt_schedulers/fp_example/README
index 951fdfa0e2b..5b2874a0d06 100644
--- a/TAO/examples/Kokyu_dsrt_schedulers/fp_example/README
+++ b/TAO/examples/Kokyu_dsrt_schedulers/fp_example/README
@@ -1,16 +1,18 @@
+$Id$
+
This example illustrates the working of a Kokyu
based DSRT scheduler. There are 2 threads waiting
for requests on the server side. Two threads are
-started on the client side. The main thread as
+started on the client side. The main thread as
well as the worker threads are given the maximum
priority so that their "release" happen immediately.
Each of the worker threads make a remote two-way
-call to the server. The two requests are processed
-in different threads on the server side.
+call to the server. The two requests are processed
+in different threads on the server side.
-On the client side, the first thread is given lesser
-priority than the second thread and the second thread
-is started a little later than the first. It is
+On the client side, the first thread is given lesser
+priority than the second thread and the second thread
+is started a little later than the first. It is
expected that, on the server side, the first request
is processed by one of the two threads. When the
second request comes in, the other thread that processes
@@ -19,11 +21,11 @@ second request carries more importance than the first.
A timeline is generated which shows the sequence of
execution of the two different threads on the server.
-Make sure that you run in privileged mode.
+Make sure that you run in privileged mode.
To run the test using the CV-based approach (see ../README),
-./server -d
+./server -d
./client -d -x
To run the test using the OS-based approach (see ../README),
diff --git a/TAO/examples/Kokyu_dsrt_schedulers/mif_example/README b/TAO/examples/Kokyu_dsrt_schedulers/mif_example/README
index 5499ca9e937..c22e5080f79 100644
--- a/TAO/examples/Kokyu_dsrt_schedulers/mif_example/README
+++ b/TAO/examples/Kokyu_dsrt_schedulers/mif_example/README
@@ -1,16 +1,18 @@
+$Id$
+
This example illustrates the working of a Kokyu
based DSRT scheduler. There are 2 threads waiting
for requests on the server side. Two threads are
-started on the client side. The main thread as
+started on the client side. The main thread as
well as the worker threads are given the maximum
priority so that their "release" happen immediately.
Each of the worker threads make a remote two-way
-call to the server. The two requests are processed
-in different threads on the server side.
+call to the server. The two requests are processed
+in different threads on the server side.
-On the client side, the first thread is given lesser
-importance than the second thread and the second thread
-is started a little later than the first. It is
+On the client side, the first thread is given lesser
+importance than the second thread and the second thread
+is started a little later than the first. It is
expected that, on the server side, the first request
is processed by one of the two threads. When the
second request comes in, the other thread that processes
@@ -19,11 +21,11 @@ second request carries more importance than the first.
A timeline is generated which shows the sequence of
execution of the two different threads on the server.
-Make sure that you run in privileged mode.
+Make sure that you run in privileged mode.
To run the test using the CV-based approach (see ../README),
-./server -d
+./server -d
./client -d -x
To run the test using the OS-based approach (see ../README),
diff --git a/TAO/examples/Load_Balancing/README b/TAO/examples/Load_Balancing/README
index dbb8c30e665..2a31ac83f68 100644
--- a/TAO/examples/Load_Balancing/README
+++ b/TAO/examples/Load_Balancing/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
CONTENT:
diff --git a/TAO/examples/Load_Balancing_persistent/README b/TAO/examples/Load_Balancing_persistent/README
index df36a00bb81..8f9e669dfd7 100644
--- a/TAO/examples/Load_Balancing_persistent/README
+++ b/TAO/examples/Load_Balancing_persistent/README
@@ -1,3 +1,5 @@
+$Id$
+
AIM:
---
diff --git a/TAO/examples/Logging/README b/TAO/examples/Logging/README
index 685d2d9d7ae..8185016d254 100644
--- a/TAO/examples/Logging/README
+++ b/TAO/examples/Logging/README
@@ -1,4 +1,4 @@
-$ID$
+$Id$
This example implements and tests runs a simple logging service using
TAO. You can either run the client and server as seperate processes
@@ -20,10 +20,10 @@ in the run_test.pl script.
The client program will generate 4 logging messages which will be
logged to the screen. The first message will be in the "verbose_lite"
format. The rest will be fully verbose messages. Successful output is:
-LM_DEBUG@::log() test (1)
-Mar 8 16:31:06.000 1999@128.252.165.142@822@LM_EMERGENCY@::log() test (2)
-Mar 8 16:31:06.000 1999@128.252.165.142@822@LM_INFO@::logv() test (3)
-Mar 8 16:31:06.000 1999@128.252.165.142@822@LM_EMERGENCY@::log2() test (4)
+LM_DEBUG@::log() test (1)
+Mar 8 16:31:06.000 1999@128.252.165.142@822@LM_EMERGENCY@::log() test (2)
+Mar 8 16:31:06.000 1999@128.252.165.142@822@LM_INFO@::logv() test (3)
+Mar 8 16:31:06.000 1999@128.252.165.142@822@LM_EMERGENCY@::log2() test (4)
server: ------
diff --git a/TAO/examples/OBV/Typed_Events/README b/TAO/examples/OBV/Typed_Events/README
index effdc9c9a7e..6d31b99f4c4 100644
--- a/TAO/examples/OBV/Typed_Events/README
+++ b/TAO/examples/OBV/Typed_Events/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Typed Events
============
diff --git a/TAO/examples/Persistent_Grid/README b/TAO/examples/Persistent_Grid/README
index ea5b1771acf..20daff85a28 100644
--- a/TAO/examples/Persistent_Grid/README
+++ b/TAO/examples/Persistent_Grid/README
@@ -21,7 +21,7 @@ Options:
-o Outputs the ior to the file
The ior is the reference using which the client can interact with
the target server object.
--m Name of the memory pool.
+-m Name of the memory pool.
When the server is started, you should see as the first line of output
@@ -50,7 +50,7 @@ Options:
-w Width of the grid
-h Height of the grid
-v Value that needs to be the starting point for storage. The value
- that is stored will be this value + location id.
+ that is stored will be this value + location id.
persistent_client:
-----------------
diff --git a/TAO/examples/PluggableUDP/DIOP/README b/TAO/examples/PluggableUDP/DIOP/README
index b1522ddd5c3..4ff672dab49 100644
--- a/TAO/examples/PluggableUDP/DIOP/README
+++ b/TAO/examples/PluggableUDP/DIOP/README
@@ -1,3 +1,5 @@
+$Id$
+
DIOP - UDP Based Pluggable Protocol
===================================
@@ -30,7 +32,7 @@ Notes on the DIOP implementation:
TAO Connector. It installs a connection handler on the first
invocation on a remote CORBA object.
-DIOP Installation
+DIOP Installation
- The application using DIOP should have a svc.conf file with the
following entry:
diff --git a/TAO/examples/PluggableUDP/README b/TAO/examples/PluggableUDP/README
index 36e7ebae3d6..0258935c821 100644
--- a/TAO/examples/PluggableUDP/README
+++ b/TAO/examples/PluggableUDP/README
@@ -1,3 +1,5 @@
+$Id$
+
This directory contains code for a pluggable UDP protocol for TAO.
The individual directories contain READMEs on how to run the following
examples:
diff --git a/TAO/examples/PluggableUDP/tests/Performance/README b/TAO/examples/PluggableUDP/tests/Performance/README
index 9f3e318ce64..923c74e97a7 100644
--- a/TAO/examples/PluggableUDP/tests/Performance/README
+++ b/TAO/examples/PluggableUDP/tests/Performance/README
@@ -1,17 +1,18 @@
+$Id$
Performance tests for the performance of the DIOP
implementation using oneways in a roundtrip manor.
This means that the client sends a request to the server,
-which in turn sends a request to the client.
+which in turn sends a request to the client.
-1000 oneway requests containing a sequence of 256 chars are
+1000 oneway requests containing a sequence of 256 chars are
performed and the average time per call is measured.
To execute the test either
- use run_test.pl, or
-- start
+- start
server -o ior -ORBendpoint diop://:12345
diff --git a/TAO/examples/PluggableUDP/tests/Performance/svc.conf.xml b/TAO/examples/PluggableUDP/tests/Performance/svc.conf.xml
index 63bbeb081b2..aa5446671c3 100644
--- a/TAO/examples/PluggableUDP/tests/Performance/svc.conf.xml
+++ b/TAO/examples/PluggableUDP/tests/Performance/svc.conf.xml
@@ -1,5 +1,8 @@
<?xml version='1.0'?>
<!-- Converted from ./examples/PluggableUDP/tests/Performance/svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<static id="Advanced_Resource_Factory" params="-ORBProtocolFactory DIOP_Factory -ORBReactorType tp"/>
</ACE_Svc_Conf>
diff --git a/TAO/examples/PluggableUDP/tests/SimplePerformance/README b/TAO/examples/PluggableUDP/tests/SimplePerformance/README
index 578bdc972b9..07e027ebd6f 100644
--- a/TAO/examples/PluggableUDP/tests/SimplePerformance/README
+++ b/TAO/examples/PluggableUDP/tests/SimplePerformance/README
@@ -1,8 +1,9 @@
+$Id$
Performance tests for the performance of the DIOP
-implementation using oneways.
+implementation using oneways.
-1000 oneway requests containing a sequence of 256 chars are
+1000 oneway requests containing a sequence of 256 chars are
performed and the average time per call is measured.
To execute the test either
diff --git a/TAO/examples/PluggableUDP/tests/SimplePerformance/svc.conf.xml b/TAO/examples/PluggableUDP/tests/SimplePerformance/svc.conf.xml
index 92362bacdf0..00ab337953a 100644
--- a/TAO/examples/PluggableUDP/tests/SimplePerformance/svc.conf.xml
+++ b/TAO/examples/PluggableUDP/tests/SimplePerformance/svc.conf.xml
@@ -1,5 +1,8 @@
<?xml version='1.0'?>
<!-- Converted from ./examples/PluggableUDP/tests/SimplePerformance/svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<static id="Advanced_Resource_Factory" params="-ORBProtocolFactory DIOP_Factory -ORBReactorType tp"/>
</ACE_Svc_Conf>
diff --git a/TAO/examples/Quoter/README b/TAO/examples/Quoter/README
index 35bddc465a8..f9ce6d4a829 100644
--- a/TAO/examples/Quoter/README
+++ b/TAO/examples/Quoter/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Here is a Stock Quoter example that features the use of the TAO IDL
compiler, the different types of configuration settings (global vs
@@ -20,25 +20,25 @@ Note: Moving the Quoter object is no longer available!
to use a servant locator on the POA managing the Quoter object.
Context: The Quoter example serves several tests, the first is the test
- of several multithreading policies and the second is showing the
- use of the Life Cycle Service as it is defined in the
+ of several multithreading policies and the second is showing the
+ use of the Life Cycle Service as it is defined in the
CORBA Common Object Services specification.
Life Cycle Service use-case:
-several processes exist: server,
- Factory_Finder,
+several processes exist: server,
+ Factory_Finder,
Generic_Factory,
Life_Cycle_Service
client
-several object exist: Quoter,
- Quoter_Factory,
- Quoter_Factory_Finder,
+several object exist: Quoter,
+ Quoter_Factory,
+ Quoter_Factory_Finder,
Quoter_Generic_Factory,
Quoter_Life_Cycle_Service
-server: The server process contains two kind of objects: Quoter and
+server: The server process contains two kind of objects: Quoter and
Quoter_Factory's. A Quoter is a very simple Object supporting
only one method. The focus is not on a sophisticated object
but on showing how policies work.
@@ -46,26 +46,26 @@ server: The server process contains two kind of objects: Quoter and
Factory_Finder: The COS spec. introduces the concept of a Factory Finder
which is capable to find proper factories. The Naming
- Service is used as lookup-mechanism. A reference to
+ Service is used as lookup-mechanism. A reference to
the Factory_Finder is passed as parameter of any copy
- or move request.
+ or move request.
-Generic_Factory: This process supports the object Quoter_Generic_Factory (QGF).
+Generic_Factory: This process supports the object Quoter_Generic_Factory (QGF).
The QGF supports the GenericFactory interface introduced by
- the COS specification. It forwards create_object requests to
- more concrete factories, e.g. the Quoter_Factory. The
+ the COS specification. It forwards create_object requests to
+ more concrete factories, e.g. the Quoter_Factory. The
concrete factories are found via the Naming Service.
-Life_Cycle_Service: This process is very similar to the Generic_Factory
+Life_Cycle_Service: This process is very similar to the Generic_Factory
proocess. It also supports an Object, which conforms to
the GenericFactory interface. The Quoter_Life_Cycle_Service
- conforms to the idea of a life cycle service as it is
+ conforms to the idea of a life cycle service as it is
introduced by the COS specification. The Quoter_Life_Cycle_Service
is neutral against the Quoter example. It is not dependent
on it. Only interfaces defined by the CosLifeCycle.idl file
- are used. The implemenation uses the COS Trading Service
- manage registered Generic Factories, as the Quoter_Generic_Factory
- for example. A lookup on the Trading Service is performed
+ are used. The implemenation uses the COS Trading Service
+ manage registered Generic Factories, as the Quoter_Generic_Factory
+ for example. A lookup on the Trading Service is performed
when a create_object request is invoked on it.
client: Creates one Quoter through using the Quoter_Factory_Finder. After that
diff --git a/TAO/examples/README b/TAO/examples/README
index 4eef85060cd..f0d23599d55 100644
--- a/TAO/examples/README
+++ b/TAO/examples/README
@@ -1,22 +1,24 @@
+$Id$
+
This directory contains a number of example applications that
illustrate how to program with standard CORBA using TAO. The
individual directories contain READMEs on how to run the following
examples:
- . Advanced
+ . Advanced
- Contains example code from "Advanced CORBA Programming with
- C++" by Michi Henning and Steve Vinoski with slight
+ Contains example code from "Advanced CORBA Programming with
+ C++" by Michi Henning and Steve Vinoski with slight
adaptations for TAO.
. AMH
Example code that illustrates working of a simple AMH 'Sink-Server'
and a more sophisticated AMH 'Middle-Sever' that uses both
- AMH and AMI. Sample 'one-button' perl scripts are provided that
+ AMH and AMI. Sample 'one-button' perl scripts are provided that
show how to run the servers.
- . Borland
+ . Borland
This directory illustrates how to write a Borland C++
Builder application using ACE+TAO.
@@ -41,7 +43,7 @@ examples:
TAO.
. Content_Server
-
+
Three examples that illustrate how to program client/server
applications for downloading large file content via SMI,
AMI, and the Iterator and Observer patterns.
@@ -58,11 +60,11 @@ examples:
distributed load balancing.
. Load_Balancing_persistent
-
+
A variant of the preceding example that keeps the state of
the load balancer persistent.
- . Logging
+ . Logging
This example implements a simple logging service using TAO.
@@ -82,7 +84,7 @@ examples:
persistent memory.
. PluggableUDP
-
+
This example tests the UDP Pluggable Protocol (DIOP) implementation by
sending oneway requests to a server.
@@ -92,13 +94,13 @@ examples:
the OMG POA specification.
. Quoter
-
+
Illustrates how to use the Global POA options with multiple
threads. This example also shows how to use the Lifecycle
- service.
-
+ service.
+
. Simple
-
+
Contains a number of simple CORBA examples, which also
illustrate how to write canonical Orbix/VisiBroker/OmniORB
examples in TAO using standard CORBA features rather than
diff --git a/TAO/examples/RTCORBA/Activity/README b/TAO/examples/RTCORBA/Activity/README
index 4b43ffb98f3..5471e6dea31 100644
--- a/TAO/examples/RTCORBA/Activity/README
+++ b/TAO/examples/RTCORBA/Activity/README
@@ -1,4 +1,4 @@
-//$Id$
+$Id$
=================== RT CORBA capabilities demo ===================
Table of contents
diff --git a/TAO/examples/RTScheduling/Fixed_Priority_Scheduler/README b/TAO/examples/RTScheduling/Fixed_Priority_Scheduler/README
index 41ea051f14d..1f0c6f0b8fc 100644
--- a/TAO/examples/RTScheduling/Fixed_Priority_Scheduler/README
+++ b/TAO/examples/RTScheduling/Fixed_Priority_Scheduler/README
@@ -1,3 +1,5 @@
+$Id$
+
Fixed Priority Scheduler
========================
diff --git a/TAO/examples/RTScheduling/MIF_Scheduler/README b/TAO/examples/RTScheduling/MIF_Scheduler/README
index f01d0702f54..8ede5f9dba3 100644
--- a/TAO/examples/RTScheduling/MIF_Scheduler/README
+++ b/TAO/examples/RTScheduling/MIF_Scheduler/README
@@ -1,3 +1,5 @@
+$Id$
+
Most Important First (MIF) Scheduler
====================================
@@ -16,7 +18,7 @@ any given time the scheduler dequeues the DT at the head of the queue,
that corresponds to the most important thread, and signals the thread
to activate it. The service context is used to send the importance and
GUID of the DT across hosts it spans so the DT can be scheduled
-accordingly on the remote host.
+accordingly on the remote host.
In this experiment we show how dynamic scheduling is done using the
Dynamic Scheduling framework with the MIF Scheduler as the pluggable
diff --git a/TAO/examples/RTScheduling/README b/TAO/examples/RTScheduling/README
index a60f9938819..ecae2eb0792 100644
--- a/TAO/examples/RTScheduling/README
+++ b/TAO/examples/RTScheduling/README
@@ -1,3 +1,5 @@
+$Id$
+
Pluggable Schedulers
=====================
diff --git a/TAO/examples/Simple/README b/TAO/examples/Simple/README
index d753ece9ea5..fab2e136df6 100644
--- a/TAO/examples/Simple/README
+++ b/TAO/examples/Simple/README
@@ -7,22 +7,22 @@ features. The individual directories contain READMEs on how to run
the following tests:
. bank
-
+
This directory implements the canonical VisiBroker
test.
. chat
-
+
This directory implements an ORBacus test.
. echo
-
+
This directory implements the canonical omniORB test.
. grid
-
+
This directory implements the canonical Orbix test.
. time
-
+
This directory implements a simple time/date test.
diff --git a/TAO/examples/Simple/time-date/client.conf.xml b/TAO/examples/Simple/time-date/client.conf.xml
index 7864e7bebae..313f97e2ebf 100644
--- a/TAO/examples/Simple/time-date/client.conf.xml
+++ b/TAO/examples/Simple/time-date/client.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from ./examples/Simple/time-date/client.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- $Id$ -->
<!-- Empty configuration file, the default configuration works just fine -->
<!-- for the client, but the svc.conf file (or -ORBSkipServiceConfigOpen) -->
diff --git a/TAO/examples/Simple/time-date/svc.conf.xml b/TAO/examples/Simple/time-date/svc.conf.xml
index 70390a8d042..977ebe28e49 100644
--- a/TAO/examples/Simple/time-date/svc.conf.xml
+++ b/TAO/examples/Simple/time-date/svc.conf.xml
@@ -1,7 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from ./examples/Simple/time-date/svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
<!-- $Id$ -->
+ <!-- -->
<!-- Define a special Reactor for single-threaded configurations. Refer -->
<!-- to README for details. -->
<dynamic id="Resource_Factory" type="Service_Object">
diff --git a/TAO/examples/Simulator/README b/TAO/examples/Simulator/README
index 6467abb9637..d463a1b622b 100644
--- a/TAO/examples/Simulator/README
+++ b/TAO/examples/Simulator/README
@@ -3,7 +3,7 @@ $Id$
Documentation for the Simulator/DOVE demo
Purposes: 1) To show how the event service can be used to as a medium to
- transport monitoring events including data.
+ transport monitoring events including data.
2) To show how objects implemented in Java can access/can be accessed
by TAO objects.
3) To show the feasability of the DOVE framework as mentioned in
@@ -19,7 +19,7 @@ Application: Using the Event Service as distribution media, event
consumers. Filtering can be activated.
The mapping to DOVE is the following:
Event Channel - DOVE Agent
- DOVE Browser
+ DOVE Browser
and/or DOVE MIB - Monitor/Event Consumer
Event Supplier - Monitored Application (here
an object supplying recorded scheduling
@@ -40,7 +40,7 @@ Implementation:
They are generated by the monitored application and are
consumed by the DOVE Browser, a JAVA applet or application running
on a different machine and/or location. The collected metrics are
- displayed in the Browser.
+ displayed in the Browser.
When an event arrives from the event supplier, a consumer inspects
the data field in the event. The field is a CORBA::Any, so
@@ -80,7 +80,7 @@ Requirements:
make realclean - updates idl files, does a make clean
make vb - makes the browser, using visibroker for java
make vbjava - remakes only the java files using vbjc
- make jdk - makes the browser, using jdk
+ make jdk - makes the browser, using jdk
(the demo does not currently work with jdk)
Parts of the Demo:
@@ -107,7 +107,7 @@ Files:
NavWeap.idl - IDL definition of the Weapons and Navigation structures
README - this readme file
- Event Supplier:
+ Event Supplier:
(in directory $TAO_ROOT/orbsvcs/tests/Simulator/Event_Supplier/)
DualEC_Sup.cpp - Dual EC Event Supplier
DualEC_Sup.h - Dual EC Event Supplier class definitions
@@ -119,31 +119,31 @@ Files:
(Event_Con.cpp, Event_Con.h - Event Consumer for testing)
svc.conf - helper file
- DOVEBrowswer:
+ DOVEBrowswer:
(in directory $TAO_ROOT/orbsvcs/tests/Simulator/DOVEBrowser/)
AnswerEvent.java - Having my own Events
AnswerListener.java - Listener for these Events
DataHandler.java - Base class for all Data Handlers
- DemoCore.java - Core of the Demo to connect Observables
+ DemoCore.java - Core of the Demo to connect Observables
with Observers
DemoObservable.java - Base class for Observables
- DoubleVisComp.java - Visualization Component
+ DoubleVisComp.java - Visualization Component
(will be a JavaBean) for Doubles
DOVEBrowser.java - Wrapper around DemoCore
DOVEBrowserApplet.java - Applet wrapper around DemoCore
MTQueue.java - synchronized queue for multi-threaded access
- MTDataHandlerAdapter.java - uses the Adapter and Active Object
+ MTDataHandlerAdapter.java - uses the Adapter and Active Object
patterns to provide early demuxing
of ORB upcalls onto multiple
synchronized queues managed by
data handler threads
- NS_Resolve.java - Resolving the inital reference
+ NS_Resolve.java - Resolving the inital reference
to the Naming Service
- NavWeapDataHandler.java - Specialized Data Handler for
+ NavWeapDataHandler.java - Specialized Data Handler for
Navigation and Weapons data
- NavigationVisComp.java - Visualization Component
+ NavigationVisComp.java - Visualization Component
(... JavaBean) for Navigation data
- ObservablesDialog.java - Dialog window for connecting
+ ObservablesDialog.java - Dialog window for connecting
Observables with OBservers
Properties.java - constant definitons
PushConsumer.java - Event Service Push Consumer
@@ -153,15 +153,15 @@ Files:
WeaponsVisComp.java - Visualization Component for Weapons
- DOVE MIB:
+ DOVE MIB:
(in directory $TAO_ROOT/orbsvcs/tests/Simulator/DOVEMIB/)
- DOVEMIB.[cpp,h] - Core routines, connection to the
+ DOVEMIB.[cpp,h] - Core routines, connection to the
Event Channel
Node.[cpp,h] - Nodes used by the AnyAnalyser
- AnyAnalyser.[cpp,h] - Anaylser for CORBA anys, storing the
+ AnyAnalyser.[cpp,h] - Anaylser for CORBA anys, storing the
contained types in persistent storage
NodeVisitor.h - base class definition of a Visitor
- PrintVisistor.[cpp,h] - Able to print a given tree
+ PrintVisistor.[cpp,h] - Able to print a given tree
of type nodes, which is
generated by the Any analyser
@@ -191,11 +191,11 @@ Compiling:
NT:
Open the Event_Sup.dsw workspace found in the
- Event_Supplier directory in MSVC++ 5.0+ and build
+ Event_Supplier directory in MSVC++ 5.0+ and build
the Event_Sup, Logging_Sup, and DualEC_Sup projects.
- From a console window, change to the DOVEBrowser
- directory and run "make vb" to build the browser using
+ From a console window, change to the DOVEBrowser
+ directory and run "make vb" to build the browser using
Visibroker. The first time you do this, you will need to
run "make setup" to copy the correct files into the directory.
You may also want to do a "make realclean" each time you
@@ -232,7 +232,7 @@ Starting:
DOVE Browser:
vbj DOVEBrowser
- (also supported: vbj DOVEBrowser -nameserviceior <IOR>
+ (also supported: vbj DOVEBrowser -nameserviceior <IOR>
vbj DOVEBrowser -nameserviceport <port>
vbj DOVEBrowser -dualECdemo)
diff --git a/TAO/examples/TypeCode_Creation/README b/TAO/examples/TypeCode_Creation/README
index 04cd9437900..ec5cc1926c4 100644
--- a/TAO/examples/TypeCode_Creation/README
+++ b/TAO/examples/TypeCode_Creation/README
@@ -1,20 +1,20 @@
$Id$
-Normally, a typecode is created at compile time by the
-IDL compiler for each declaration in an IDL file, or at
-runtime by the Interface Repository. However, in some
-situations, such as a bridge between ORBs, a typecode may
+Normally, a typecode is created at compile time by the
+IDL compiler for each declaration in an IDL file, or at
+runtime by the Interface Repository. However, in some
+situations, such as a bridge between ORBs, a typecode may
have to be created without any knowledge of the IDL and outside
any Interface Repository. In such cases, the typecode
creation methods of the pseudo-object CORBA::ORB are used.
-This program is a simple example of the use of the
+This program is a simple example of the use of the
CORBA::ORB::create_*_tc methods. It does not require any
queries to the Interface Repository (although for a more
elaborate example, this may be necessary). It does, however,
use IFR data types, so the program must be linked to the
IFR_Client library. For examples of queries on the Interface
-Repository, see the tests in
+Repository, see the tests in
ACE_ROOT/TAO/orbsvcs/tests/InterfaceRepo/IFR_Test and
ACE_ROOT/TAO/orbsvcs/tests/InterfaceRepo/Application_Test.
@@ -22,7 +22,7 @@ These typecode creation methods make use of the functions
of the same name in TypeCodeFactory (proposed, but not yet
officially part of the CORBA spec). The TAO_TypeCodeFactory
library is found in ACE_ROOT/TAO/tao/TypeCodeFactory, and
-is used by the Interface Repository as well as by
+is used by the Interface Repository as well as by
CORBA::ORB::create_*_tc to create typecodes. This library
may be compiled, but, to keep dependencies and footprint
to a minimum, it is not linked and loaded automatically.
diff --git a/TAO/examples/ior_corbaloc/README b/TAO/examples/ior_corbaloc/README
index a2214a052ae..2474569b1d8 100644
--- a/TAO/examples/ior_corbaloc/README
+++ b/TAO/examples/ior_corbaloc/README
@@ -1,6 +1,6 @@
-// $Id$
+$Id$
-This is test to exercise the corbaloc: and corbaname: style URL.
+This is test to exercise the corbaloc: and corbaname: style URL.
The simple way to test is to run the run_test.pl.
The corbaloc: and corbaname: URL syntax is documented in Chapter
@@ -23,12 +23,12 @@ To test manually:
3. The client takes in a corbaloc style URL for the CORBA
- Naming Service on the command-line. The client will
+ Naming Service on the command-line. The client will
first try to resolve the Naming Service using this corbaloc URL.
- The client will then try to resolve a corbaloc::Status object
+ The client will then try to resolve a corbaloc::Status object
(see corbaloc.idl) named "STATUS".
The client will then try to invoke the print_status() method
- on this object.
+ on this object.
Run the client as one of these:
@@ -76,6 +76,6 @@ To test manually:
c) ./corbaname_client corbaname:rir:#STATUS
- - Determine where the Naming Service is by using
+ - Determine where the Naming Service is by using
orb->resolve_initial_references("NameService")
- Resolve an object reference of name "STATUS"
diff --git a/TAO/examples/mfc/README b/TAO/examples/mfc/README
index 73dd767c5d4..a2ce4f60a29 100644
--- a/TAO/examples/mfc/README
+++ b/TAO/examples/mfc/README
@@ -1,3 +1,5 @@
+$Id$
+
This is an short example to show how to integrate TAO and MFC base GUI
applications. The server is an MFC-based GUI application, which
spawns an additional thread to invoke the ORBs event queue. The
@@ -9,13 +11,13 @@ and TAO by adding an additional thread for the ORB:
Step 1: Creating a MFC-Application wizard-based project
Step 2: Set the following project settings
-
+
- C++ Settings / Preprocessor
-
+
ACE_HAS_DLL=1, ACE_HAS_MFC=1
-
+
- Use the MFC-based librarys of ACE & TAO
-
+
e.g. link acemfcd.lib TAOmfcd.lib for the Debug-version!
Step 3: Add a threadfunction for the ORB
@@ -26,15 +28,15 @@ Step 3: Add a threadfunction for the ORB
the necessary stuff to start an ORB!
Step 4: Add the thread invocation in the Application
-
+
- Initialize ACE
-
+
- Spawn the thread for the ORB
-
+
At first you have to initialize ACE by calling
-
+
ACE::init()
-
+
as soon as possible in your application. Good places are in
the constructor or in the InitInstance() memberfunction of the
application-calls. In addition you have to spawn the thread
@@ -42,15 +44,15 @@ Step 4: Add the thread invocation in the Application
(spawn_my_orb_thread);
Step 5: Overwrite the default destructor of the Application-Class
-
+
- Get a reference to the ORB use in the thread
-
+
- Shut down the ORB
-
+
- Wait for the shutdown of the ORB-thread
-
+
- Call ACE::fini() to close the ACE::init()-call
-
+
To shut down the ORB in it's separate thread you need to call
the ORB::shutdown() method of the ORB references in the
thread. To get an reference to this special ORB create an
diff --git a/TAO/interop-tests/wchar/README b/TAO/interop-tests/wchar/README
index 3e9e71d873c..13bee0083f0 100644
--- a/TAO/interop-tests/wchar/README
+++ b/TAO/interop-tests/wchar/README
@@ -1,3 +1,5 @@
+$Id$
+
Test for passing wchar data between TAO and JacORB processes.
This test may also be run for tao-tao on different platforms.
diff --git a/TAO/interop-tests/wchar/build.xml b/TAO/interop-tests/wchar/build.xml
index f948d0a5939..ee57ed6e5ec 100644
--- a/TAO/interop-tests/wchar/build.xml
+++ b/TAO/interop-tests/wchar/build.xml
@@ -1,5 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
+<!-- -->
+<!-- $Id$ -->
+<!-- -->
+
<!--
/*
*
diff --git a/TAO/orbsvcs/Concurrency_Service/svc.conf.xml b/TAO/orbsvcs/Concurrency_Service/svc.conf.xml
index ac491a2ce35..8efd955f7c3 100644
--- a/TAO/orbsvcs/Concurrency_Service/svc.conf.xml
+++ b/TAO/orbsvcs/Concurrency_Service/svc.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from ./orbsvcs/Concurrency_Service/svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- This service must use a thread-per-connection model to enable the -->
<!-- server to block in a dedicated thread, i.e., one for each client. -->
<!-- The concurrency service will not run in the reactive model. -->
diff --git a/TAO/orbsvcs/CosEvent_Service/README b/TAO/orbsvcs/CosEvent_Service/README
index 448f3d47dda..19c004cfe45 100644
--- a/TAO/orbsvcs/CosEvent_Service/README
+++ b/TAO/orbsvcs/CosEvent_Service/README
@@ -1,3 +1,5 @@
+$Id$
+
CORBA COS Event Service
-----------------------
@@ -82,10 +84,10 @@ $TAO_ROOT/docs/cec_options.html
Note:
====
- By default, the Naming Service disables multicast discovery.
+ By default, the Naming Service disables multicast discovery.
The "-m 1" option enables the Naming Service to be resolved via
- multicast.
-
+ multicast.
+
If you do not wish to do this, then use the
-ORBInitRef option in which case the Naming Service should be started
as:
diff --git a/TAO/orbsvcs/DevGuideExamples/EventServices/OMG_Basic/README b/TAO/orbsvcs/DevGuideExamples/EventServices/OMG_Basic/README
index 42db0c2a7c1..0a8cc0eaeaa 100644
--- a/TAO/orbsvcs/DevGuideExamples/EventServices/OMG_Basic/README
+++ b/TAO/orbsvcs/DevGuideExamples/EventServices/OMG_Basic/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
OMG Event Service
@@ -28,7 +28,7 @@ EchoEventSupplerMain.cpp
Main program for a PushSupplier.
EchoEventSupplier -ORBInitRef NameService=file://ns.ior
-
+
It will publish an event to the event channel every second.
Use Control-C to kill the process.
diff --git a/TAO/orbsvcs/DevGuideExamples/EventServices/OMG_SupplierSideEC/README b/TAO/orbsvcs/DevGuideExamples/EventServices/OMG_SupplierSideEC/README
index a4db5d42ba2..906df6e99db 100644
--- a/TAO/orbsvcs/DevGuideExamples/EventServices/OMG_SupplierSideEC/README
+++ b/TAO/orbsvcs/DevGuideExamples/EventServices/OMG_SupplierSideEC/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
OMG Event Service
@@ -29,8 +29,8 @@ EchoEventSupplerMain.cpp
Main program for a PushSupplier.
EchoEventSupplier -ORBInitRef NameService=file://ns.ior
-
- It will create an event channel and publish an event to it every
+
+ It will create an event channel and publish an event to it every
second.
Use Control-C to kill the process.
diff --git a/TAO/orbsvcs/DevGuideExamples/EventServices/OMG_TypedEC/README b/TAO/orbsvcs/DevGuideExamples/EventServices/OMG_TypedEC/README
index abeca498b09..d1e38a23cbe 100644
--- a/TAO/orbsvcs/DevGuideExamples/EventServices/OMG_TypedEC/README
+++ b/TAO/orbsvcs/DevGuideExamples/EventServices/OMG_TypedEC/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
$TAO_ROOT/DevGuideExamples/EventServices/OMG_TypedEC
diff --git a/TAO/orbsvcs/DevGuideExamples/EventServices/RTEC_Basic/README b/TAO/orbsvcs/DevGuideExamples/EventServices/RTEC_Basic/README
index e2c3aae04e1..02443ec0be9 100644
--- a/TAO/orbsvcs/DevGuideExamples/EventServices/RTEC_Basic/README
+++ b/TAO/orbsvcs/DevGuideExamples/EventServices/RTEC_Basic/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Real-Time Event Service
@@ -26,7 +26,7 @@ EchoEventSupplerMain.cpp
Main program for a PushSupplier.
EchoEventSupplier -ORBInitRef NameService=file://ns.ior
-
+
It will publish an event to the event channel every 1 second.
Use Control-C to kill the process.
diff --git a/TAO/orbsvcs/DevGuideExamples/EventServices/RTEC_Federated/README b/TAO/orbsvcs/DevGuideExamples/EventServices/RTEC_Federated/README
index f905a2717da..081b978498b 100644
--- a/TAO/orbsvcs/DevGuideExamples/EventServices/RTEC_Federated/README
+++ b/TAO/orbsvcs/DevGuideExamples/EventServices/RTEC_Federated/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Real-Time Event Service
@@ -44,7 +44,7 @@ EchoEventSupplerMain.cpp
it locates the remote event channel, initialize the gateway,
and then publish an event to the local event channel every 10
milliseconds. This event will contain the string <name> in the
- any_value field. When the gateway is initialized, you'll see a
+ any_value field. When the gateway is initialized, you'll see a
message stating "Gateway initialized". If you pass the -iorfile
parameter, this server also writes the EC's IOR to <file> when
the gateway is initialized.
diff --git a/TAO/orbsvcs/DevGuideExamples/EventServices/RTEC_Filter/README b/TAO/orbsvcs/DevGuideExamples/EventServices/RTEC_Filter/README
index 74f2f79cd5a..ddf2d5379d2 100644
--- a/TAO/orbsvcs/DevGuideExamples/EventServices/RTEC_Filter/README
+++ b/TAO/orbsvcs/DevGuideExamples/EventServices/RTEC_Filter/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Real-Time Event Service
@@ -26,7 +26,7 @@ EchoEventSupplerMain.cpp
Main program for a PushSupplier.
EchoEventSupplier -ORBInitRef NameService=file://ns.ior
-
+
It will publish an event to the event channel every 1 second.
Use Control-C to kill the process.
diff --git a/TAO/orbsvcs/DevGuideExamples/EventServices/RTEC_MCast_Federated/README b/TAO/orbsvcs/DevGuideExamples/EventServices/RTEC_MCast_Federated/README
index c1540c193f3..2d513409c80 100644
--- a/TAO/orbsvcs/DevGuideExamples/EventServices/RTEC_MCast_Federated/README
+++ b/TAO/orbsvcs/DevGuideExamples/EventServices/RTEC_MCast_Federated/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Real-Time Event Service
diff --git a/TAO/orbsvcs/DevGuideExamples/ImplRepo/README b/TAO/orbsvcs/DevGuideExamples/ImplRepo/README
index 99a264e11a9..3d5ffa5bdd9 100644
--- a/TAO/orbsvcs/DevGuideExamples/ImplRepo/README
+++ b/TAO/orbsvcs/DevGuideExamples/ImplRepo/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
DevGuideExamples/ImplRepo/README
@@ -11,7 +11,7 @@ How to Run
Start the Implementation Repository (ImplRepo) server:
------------------------------------------------------
-$TAO_ROOT/orbsvcs/ImplRepo_Service/ImplRepo_Service -o implrepo.ior
+$TAO_ROOT/orbsvcs/ImplRepo_Service/ImplRepo_Service -o implrepo.ior
Register the server's POA name and start-up command with the ImplRepo:
----------------------------------------------------------------------
@@ -26,4 +26,4 @@ $TAO_ROOT/orbsvcs/ImplRepo_Service/tao_imr -ORBInitRef \
Run the client (ImplRepo should automatically start the server):
----------------------------------------------------------------
-./MessengerClient
+./MessengerClient
diff --git a/TAO/orbsvcs/DevGuideExamples/NamingService/Messenger/README b/TAO/orbsvcs/DevGuideExamples/NamingService/Messenger/README
index 68eec11fbc1..602cd43c143 100644
--- a/TAO/orbsvcs/DevGuideExamples/NamingService/Messenger/README
+++ b/TAO/orbsvcs/DevGuideExamples/NamingService/Messenger/README
@@ -1,13 +1,13 @@
-// $Id$
+$Id$
OMG Naming Service
File: DevGuideExamples/NamingService/Messenger/README
-The Original Messenger example, introduced in Chapters 4 and 5
-(GettingStartedUNIX and GettingStartedVC), is modified to utilize the
-Naming Service. The client now uses the Naming Service rather than
+The Original Messenger example, introduced in Chapters 4 and 5
+(GettingStartedUNIX and GettingStartedVC), is modified to utilize the
+Naming Service. The client now uses the Naming Service rather than
reading the server object's IOR as a string from a file.
The Client code is stored in:
diff --git a/TAO/orbsvcs/DevGuideExamples/NamingService/Naming_Client/README b/TAO/orbsvcs/DevGuideExamples/NamingService/Naming_Client/README
index d3b94d1a528..1e1bfae434e 100644
--- a/TAO/orbsvcs/DevGuideExamples/NamingService/Naming_Client/README
+++ b/TAO/orbsvcs/DevGuideExamples/NamingService/Naming_Client/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
OMG Naming Service
@@ -6,8 +6,8 @@ File: DevGuideExamples/NamingService/Naming_Client/README
The example in this directory is a modification of the code given
-in the NamingService/Messenger example. It illustrates how to use the
-TAO_Naming_Client class for accessing the Naming Service. This class
+in the NamingService/Messenger example. It illustrates how to use the
+TAO_Naming_Client class for accessing the Naming Service. This class
simplifies the interface for accessing and using the Naming Service.
The TAO_Naming_Client class is used by both the Client and
Server to access the Naming Service.
diff --git a/TAO/orbsvcs/DevGuideExamples/NamingService/Naming_Context_Ext/README b/TAO/orbsvcs/DevGuideExamples/NamingService/Naming_Context_Ext/README
index e2466608fcf..56e4300529a 100644
--- a/TAO/orbsvcs/DevGuideExamples/NamingService/Naming_Context_Ext/README
+++ b/TAO/orbsvcs/DevGuideExamples/NamingService/Naming_Context_Ext/README
@@ -1,15 +1,15 @@
-// $Id$
+$Id$
DevGuideExamples/NamingService/Naming_Context_Ext/README
-The example in this directory illustratues how to convert between CosNames,
-Stringified Names, and URLs.
+The example in this directory illustratues how to convert between CosNames,
+Stringified Names, and URLs.
-A Name can be converted to a stringified Name by to_string operation. A stringified
-Name can be converted to a Name by to_name operation. The resolve_str operation
-resolves an object by passing a strigified Name.
+A Name can be converted to a stringified Name by to_string operation. A stringified
+Name can be converted to a Name by to_name operation. The resolve_str operation
+resolves an object by passing a strigified Name.
-The MessengerServer writes its corbaname URL to a file by calling to_url and
+The MessengerServer writes its corbaname URL to a file by calling to_url and
the MessengerClient reads the URL file to get the MessengerServer object reference.
diff --git a/TAO/orbsvcs/DevGuideExamples/NamingService/Naming_Server/README b/TAO/orbsvcs/DevGuideExamples/NamingService/Naming_Server/README
index b98ba3a2ee3..7e9a6570c66 100644
--- a/TAO/orbsvcs/DevGuideExamples/NamingService/Naming_Server/README
+++ b/TAO/orbsvcs/DevGuideExamples/NamingService/Naming_Server/README
@@ -1,14 +1,14 @@
-// $Id$
+$Id$
OMG Naming Service
File: DevGuideExamples/NamingService/Naming_Server/README
-The example in NamingService/Naming_Client is modified to utilize
-the TAO_Naming_Server class. This class enables the Naming Service
-to easily be collocated within an application. In this example,
-the Naming Service is collocated with a server that supports the
-Messenger Interface described in GettingStartedUNIX (or GettingStartedVC).
+The example in NamingService/Naming_Client is modified to utilize
+the TAO_Naming_Server class. This class enables the Naming Service
+to easily be collocated within an application. In this example,
+the Naming Service is collocated with a server that supports the
+Messenger Interface described in GettingStartedUNIX (or GettingStartedVC).
The Server code is stored in:
diff --git a/TAO/orbsvcs/DevGuideExamples/NamingService/corbaloc_Messenger/README b/TAO/orbsvcs/DevGuideExamples/NamingService/corbaloc_Messenger/README
index 414445658a0..4c2536dc7fa 100644
--- a/TAO/orbsvcs/DevGuideExamples/NamingService/corbaloc_Messenger/README
+++ b/TAO/orbsvcs/DevGuideExamples/NamingService/corbaloc_Messenger/README
@@ -1,13 +1,12 @@
-// $Id$
+$Id$
DevGuideExamples/NamingService/corbaloc_Messenger/README
-// $Id$
-The example in this directory extends the example in GettingStartedUNIX
-(or GettingStartedVC) to use the Naming_Service
-and calling string_to_object instead of calling resolve_initial_references
+The example in this directory extends the example in GettingStartedUNIX
+(or GettingStartedVC) to use the Naming_Service
+and calling string_to_object instead of calling resolve_initial_references
to get the NameService object reference.
-
+
This example only differs from the NamingService/Messenger example by a few lines
in the MessengerClient.cpp. (All other source files should be the same.)
@@ -17,18 +16,18 @@ To start the Naming_Service:
----------------------------
$TAO_ROOT/orbsvcs/Naming_Service/Naming_Service -m 1 &
-Note: Must start the Naming_Service using multicast (-m 1)
+Note: Must start the Naming_Service using multicast (-m 1)
for the default initial reference for NameService to work.
To start the server:
------------------
-./MessengerServer
+./MessengerServer
To start the client:
------------------
./MessengerClient
-This MessengerClient will optionally take parameter that is a URL (corbaloc:)
+This MessengerClient will optionally take parameter that is a URL (corbaloc:)
that addresses the Naming_Service.
The MessengerServer and MessengerClient may also take an -ORBInitRef option
diff --git a/TAO/orbsvcs/DevGuideExamples/NamingService/corbaname_Messenger/README b/TAO/orbsvcs/DevGuideExamples/NamingService/corbaname_Messenger/README
index 4486d3b9da4..aa9482f1f21 100644
--- a/TAO/orbsvcs/DevGuideExamples/NamingService/corbaname_Messenger/README
+++ b/TAO/orbsvcs/DevGuideExamples/NamingService/corbaname_Messenger/README
@@ -2,14 +2,14 @@
DevGuideExamples/NamingService/corbaname_Messenger/README
-The example in this directory extends the example in GettingStartedUNIX
+The example in this directory extends the example in GettingStartedUNIX
(or GettingStartedVC) to use the Naming_Service
-and calling string_to_object instead of calling resolve_initial_references
+and calling string_to_object instead of calling resolve_initial_references
to get the NameService object reference and look up the service in the Naming_Service.
This example only differs from the NamingService/Messenger example by a few lines
in the MessengerClient.cpp. (All other source files should be the same.)
-
+
How to Run:
-----------
To start the Naming_Service:
@@ -25,7 +25,7 @@ To start the client:
./MessengerClient
-This MessengerClient will optionally take parameter that is a URL (corbaname:)
+This MessengerClient will optionally take parameter that is a URL (corbaname:)
that addresses the Naming_Service and the MessengerServer within it.
The MessengerServer and MessengerClient may also take an -ORBInitRef option
@@ -50,7 +50,7 @@ REM start the client
cd/d %EXAMPLES%\NamingService\corbaname_Messenger\Debug
title client
-REM use a corbaname that does not require -ORBDefaultInitRef
+REM use a corbaname that does not require -ORBDefaultInitRef
MessengerClient corbaname:iiop:localhost:2809#example/Messenger
REM defaults to iiop protocol
@@ -61,5 +61,5 @@ MessengerClient corbaname::localhost#example/Messenger
-REM use RIR
+REM use RIR
MessengerClient -ORBInitRef NameService=iiop://localhost:2809/NameService corbaname:rir:#example/Messenger
diff --git a/TAO/orbsvcs/DevGuideExamples/NotifyService/EventSequence/README b/TAO/orbsvcs/DevGuideExamples/NotifyService/EventSequence/README
index 4a60c213d06..0a31c28f632 100644
--- a/TAO/orbsvcs/DevGuideExamples/NotifyService/EventSequence/README
+++ b/TAO/orbsvcs/DevGuideExamples/NotifyService/EventSequence/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Event Notification Service
@@ -7,12 +7,12 @@ File: examples/NotifyService/EventSequence/README
This directory contains an example which transmits an EventBatch using the Notification Service.
-This example extends the Messenger example in GettingStarted directory
-to illustrate how the Notification channel can be used to push event batches
+This example extends the Messenger example in GettingStarted directory
+to illustrate how the Notification channel can be used to push event batches
from the supplier to the consumer. The example uses the push/push model.
The MessengerServer in this example plays the role of a server for
-the MessengerClient and the role of a supplier for the MessengerConsumer.
+the MessengerClient and the role of a supplier for the MessengerConsumer.
The flow of messages is shown below:
MessengerClient->MessengerSupplier->NotificationChannel->MessengerConsumer.
diff --git a/TAO/orbsvcs/DevGuideExamples/NotifyService/Filtering/README b/TAO/orbsvcs/DevGuideExamples/NotifyService/Filtering/README
index c91cd77888d..89d2f08987b 100644
--- a/TAO/orbsvcs/DevGuideExamples/NotifyService/Filtering/README
+++ b/TAO/orbsvcs/DevGuideExamples/NotifyService/Filtering/README
@@ -1,19 +1,17 @@
-// $Id$
+$Id$
Event Notification Service
-
File: DevGuideExamples/NotifyService/Filtering/README
-
This example extends the NotifyService/Messenger example by
-demonstrating how filtering can be incorporated into the utilization
+demonstrating how filtering can be incorporated into the utilization
of the Notification channel. Supplier-side, and consumer-side
-filtering can be implemented, but only consumer_side filtering is
+filtering can be implemented, but only consumer_side filtering is
demonstrated in this example.
-Filters are configured to guarantee that only certain events are
-passed to the consumer. The criteria is specified by imposing constraints
+Filters are configured to guarantee that only certain events are
+passed to the consumer. The criteria is specified by imposing constraints
on the appropriate fields of a structured event.
diff --git a/TAO/orbsvcs/DevGuideExamples/NotifyService/Messenger/README b/TAO/orbsvcs/DevGuideExamples/NotifyService/Messenger/README
index 29688714703..c060e8ae5ba 100644
--- a/TAO/orbsvcs/DevGuideExamples/NotifyService/Messenger/README
+++ b/TAO/orbsvcs/DevGuideExamples/NotifyService/Messenger/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Event Notification Service
@@ -7,13 +7,13 @@ File: examples/NotifyService/Messenger/README
This directory contains a simple example of using the Notification Service.
-This example extends the Messenger example in GettingStarted directory
+This example extends the Messenger example in GettingStarted directory
to illustrate how the Notification channel can be used to push messages
from the supplier to the consumer. Structured events are used to demonstrate
the operation of the channel. The example uses the push/push model.
The MessengerServer in this example plays the role of a server for
-the MessengerClient and the role of a supplier for the MessengerConsumer.
+the MessengerClient and the role of a supplier for the MessengerConsumer.
The flow of messages is shown below:
MessengerClient->MessengerSupplier->NotificationChannel->MessengerConsumer.
diff --git a/TAO/orbsvcs/DevGuideExamples/NotifyService/OfferSubscriptions/README b/TAO/orbsvcs/DevGuideExamples/NotifyService/OfferSubscriptions/README
index 90edd9fa6a0..74677214de7 100644
--- a/TAO/orbsvcs/DevGuideExamples/NotifyService/OfferSubscriptions/README
+++ b/TAO/orbsvcs/DevGuideExamples/NotifyService/OfferSubscriptions/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Event Notification Service
diff --git a/TAO/orbsvcs/DevGuideExamples/NotifyService/QoSProperties/README b/TAO/orbsvcs/DevGuideExamples/NotifyService/QoSProperties/README
index d35c3106746..6ea7691214e 100644
--- a/TAO/orbsvcs/DevGuideExamples/NotifyService/QoSProperties/README
+++ b/TAO/orbsvcs/DevGuideExamples/NotifyService/QoSProperties/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Event Notification Service
@@ -7,7 +7,7 @@ File: DevGuideExamples/NotifyService/QoSProperties/README
This example extends the NotifyService/Messenger example by
-demonstrating how QoS features can be incorporated into the utilization
+demonstrating how QoS features can be incorporated into the utilization
of the Notification channel.
The Client code is stored in:
diff --git a/TAO/orbsvcs/DevGuideExamples/NotifyService/RTNotify/README b/TAO/orbsvcs/DevGuideExamples/NotifyService/RTNotify/README
index b2308f5b781..93c3e772027 100644
--- a/TAO/orbsvcs/DevGuideExamples/NotifyService/RTNotify/README
+++ b/TAO/orbsvcs/DevGuideExamples/NotifyService/RTNotify/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Event Notification Service
@@ -8,7 +8,7 @@ File: examples/NotifyService/RTNotify/README
This directory contains a simple example of using the Notification Service
with Real-Time CORBA.
-This example extends the basic Messenger notify service example to illustrate
+This example extends the basic Messenger notify service example to illustrate
how the Notification channel can be used with RT CORBA features. The supplier
and consumer both set up their proxies to use a thread pool with lanes and
the Notify_Service executable is configured to load the RT_Notification library
@@ -16,7 +16,7 @@ and associated features. A priority is set in the supplier and propagetd throug
the channel into the consumer.
The MessengerServer in this example plays the role of a server for
-the MessengerClient and the role of a supplier for the MessengerConsumer.
+the MessengerClient and the role of a supplier for the MessengerConsumer.
The flow of messages is shown below:
MessengerClient->MessengerSupplier->NotificationChannel->MessengerConsumer.
diff --git a/TAO/orbsvcs/DevGuideExamples/NotifyService/SupplierSideNC/README b/TAO/orbsvcs/DevGuideExamples/NotifyService/SupplierSideNC/README
index 74ca8f88ca8..705a495aed0 100644
--- a/TAO/orbsvcs/DevGuideExamples/NotifyService/SupplierSideNC/README
+++ b/TAO/orbsvcs/DevGuideExamples/NotifyService/SupplierSideNC/README
@@ -1,22 +1,22 @@
-// $Id$
+$Id$
examples/NotifyService/SupplierSideNC/README
This directory contains a simple example of using the Notification Service.
-This example extends the Messenger example in Filtering directory
+This example extends the Messenger example in Filtering directory
to illustrate how the Notification channel can be used to push messages
from the supplier to the consumer. Furthermore, this example shows
-how you could set up filters so that only a certain events are
+how you could set up filters so that only a certain events are
passed to the consumer.
-
+
This example uses the push/push model.
-In this example, the Notify Service initiation is incorporated into the
+In this example, the Notify Service initiation is incorporated into the
MessengerServer.
The MessengerSupplier in this example plays the role of a server for
-the MessengerClient and the role of a supplier for the MessengerConsumer.
+the MessengerClient and the role of a supplier for the MessengerConsumer.
The flow of messages is shown below:
MessengerClient->(MessengerSupplier->NotificationChannel)->MessengerConsumer.
diff --git a/TAO/orbsvcs/DevGuideExamples/PortableInterceptors/PICurrent_NameService/README b/TAO/orbsvcs/DevGuideExamples/PortableInterceptors/PICurrent_NameService/README
index bce171848f2..596a9a8c0e9 100644
--- a/TAO/orbsvcs/DevGuideExamples/PortableInterceptors/PICurrent_NameService/README
+++ b/TAO/orbsvcs/DevGuideExamples/PortableInterceptors/PICurrent_NameService/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Portable Interceptors
@@ -7,14 +7,14 @@ File: DevGuideExamples/PortableInterceptor/PICurrent_NameService/README
This directory contains an example that shows how the PICurrent can
-be used to stop client-side interceptor recursions. This example is
+be used to stop client-side interceptor recursions. This example is
identical to the ../PICurrent example but uses the Naming Service.
-This example is based on the Messenger example in GettingStarted
-directory. A message is send by MessengerClient and displayed by
+This example is based on the Messenger example in GettingStarted
+directory. A message is send by MessengerClient and displayed by
MessengerServer. When the client receives a reply, it asks the server
for the current time. This causes a recursive call at the receive_reply()
-interception point. A flag is passed in the PICurrent to let the client
+interception point. A flag is passed in the PICurrent to let the client
know the call is recursive.
How to Run
diff --git a/TAO/orbsvcs/DevGuideExamples/Security/ParticipatingApp/README b/TAO/orbsvcs/DevGuideExamples/Security/ParticipatingApp/README
index 5d001721f0b..b8f0e65a85f 100644
--- a/TAO/orbsvcs/DevGuideExamples/Security/ParticipatingApp/README
+++ b/TAO/orbsvcs/DevGuideExamples/Security/ParticipatingApp/README
@@ -1,3 +1,5 @@
+$Id$
+
TAO Security
DevGuideExamples/Security/ParticipatingApp/README
diff --git a/TAO/orbsvcs/DevGuideExamples/Security/PolicyControllingApp/README b/TAO/orbsvcs/DevGuideExamples/Security/PolicyControllingApp/README
index bf3b57390a4..8c31bd6a747 100644
--- a/TAO/orbsvcs/DevGuideExamples/Security/PolicyControllingApp/README
+++ b/TAO/orbsvcs/DevGuideExamples/Security/PolicyControllingApp/README
@@ -1,3 +1,5 @@
+$Id$
+
TAO Security
DevGuideExamples/Security/PolicyControllingApp/README
diff --git a/TAO/orbsvcs/DevGuideExamples/Security/SecurityUnawareApp/README b/TAO/orbsvcs/DevGuideExamples/Security/SecurityUnawareApp/README
index 7eebb03ebfb..e7fd62370c4 100644
--- a/TAO/orbsvcs/DevGuideExamples/Security/SecurityUnawareApp/README
+++ b/TAO/orbsvcs/DevGuideExamples/Security/SecurityUnawareApp/README
@@ -1,3 +1,5 @@
+$Id$
+
TAO Security
DevGuideExamples/Security/SecurityUnawareApp/README
diff --git a/TAO/orbsvcs/DevGuideExamples/ValueTypes/Notify/readme.txt b/TAO/orbsvcs/DevGuideExamples/ValueTypes/Notify/readme.txt
index 8d158eb573a..53a239f70a9 100644
--- a/TAO/orbsvcs/DevGuideExamples/ValueTypes/Notify/readme.txt
+++ b/TAO/orbsvcs/DevGuideExamples/ValueTypes/Notify/readme.txt
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This test uses valuetypes within simple CosEC::Any events passed through the
notification service.
diff --git a/TAO/orbsvcs/DevGuideExamples/readme.txt b/TAO/orbsvcs/DevGuideExamples/readme.txt
index 40a511ea8b2..42cd18d925b 100644
--- a/TAO/orbsvcs/DevGuideExamples/readme.txt
+++ b/TAO/orbsvcs/DevGuideExamples/readme.txt
@@ -1,3 +1,5 @@
+$Id$
+
"These examples were developed by and are included in this
distribution with the permission of Object Computing, Inc. (OCI)
for the purpose of illustrating the usage of certain features of
diff --git a/TAO/orbsvcs/FT_ReplicationManager/README b/TAO/orbsvcs/FT_ReplicationManager/README
index 6308eaea08d..5653ff85eec 100644
--- a/TAO/orbsvcs/FT_ReplicationManager/README
+++ b/TAO/orbsvcs/FT_ReplicationManager/README
@@ -1,12 +1,11 @@
+$Id$
Run FT_ReplicationManager as follows:
FT_ReplicationManager -o <file1.ior>
Starts the replication manager and writes in ior
- to the specified file.
+ to the specified file.
FT_ReplicationManager
Starts the replication manager and registers it
with the naming service.
-
-s \ No newline at end of file
diff --git a/TAO/orbsvcs/IFR_Service/README b/TAO/orbsvcs/IFR_Service/README
index c846bdde6f1..98d84c6f321 100644
--- a/TAO/orbsvcs/IFR_Service/README
+++ b/TAO/orbsvcs/IFR_Service/README
@@ -1,14 +1,13 @@
$Id$
-
Interface Repository -------
Required libraries (in addition to ACE and TAO):
- ACE_ROOT/TAO/tao/IFR_CLient/TAO_IFR_CLient.(lib-ext)
- ACE_ROOT/TAO/tao/TypeCodeFactory/TAO_TypeCodeFactory.(lib-ext)
- ACE_ROOT/TAO/tao/PortableServer/TAO_PortableServer.(lib-ext)
- ACE_ROOT/TAO/tao/IORTable/TAO_IORTable.(lib-ext)
- ACE_ROOT/TAO/orbsvcs/orbsvcs/TAO_Svc_Utils.(lib-ext)
+ ACE_ROOT/TAO/tao/IFR_CLient/TAO_IFR_CLient.(lib-ext)
+ ACE_ROOT/TAO/tao/TypeCodeFactory/TAO_TypeCodeFactory.(lib-ext)
+ ACE_ROOT/TAO/tao/PortableServer/TAO_PortableServer.(lib-ext)
+ ACE_ROOT/TAO/tao/IORTable/TAO_IORTable.(lib-ext)
+ ACE_ROOT/TAO/orbsvcs/orbsvcs/TAO_Svc_Utils.(lib-ext)
Executable name is IFR_Service.
@@ -16,7 +15,7 @@ Command line options are:
-p Makes the Interface Repository persistent.
- -b <filename> Overrides the default filename used for
+ -b <filename> Overrides the default filename used for
persistent storage. The default filename
is "ifr_default_backing_store".
@@ -34,8 +33,8 @@ Command line options are:
If the platform is not win32, an error
message is output.
- -o <filename> Overrides the default filename used for
- outputting the Interface Repository IOR.
+ -o <filename> Overrides the default filename used for
+ outputting the Interface Repository IOR.
The default filename is "if_repo.ior".
Test code for the Interface Repository can be found in
@@ -54,12 +53,12 @@ the IFR service, plus the IFR_Service executable itself.
Test code for tao_ifr can be found in
ACE_ROOT/TAO/orbsvcs/tests/InterfaceRepo/Application_Test.
-tao_ifr can also handle the -ORBxxx parameters. The one most
-frequently used would probably be
+tao_ifr can also handle the -ORBxxx parameters. The one most
+frequently used would probably be
'-ORBInitRef InterfaceRepository=file://<filename>'
-which will enable the IFR service to be resolved by getting
+which will enable the IFR service to be resolved by getting
its IOR from <filename>. By default, the IFR service stores
its IOR in the file 'if_repo.ior', but that can be modified
by starting the IFR service using the -o option (see above).
@@ -70,10 +69,10 @@ tao_ifr can process multiple IDL files in one execution. As
long as the filenames come after any -ORB options that may
be present, they may come mixed in any order with the other
command line options. The tao_ifr command line parser will
-treat any option (or option pair) that doesn't begin with
+treat any option (or option pair) that doesn't begin with
'-' as a filename.
-More information about the Interface Repository and tao_ifr can
+More information about the Interface Repository and tao_ifr can
be found in ACE_ROOT/TAO/docs/releasenotes/index.html.
diff --git a/TAO/orbsvcs/ImplRepo_Service/ImplRepo_Service.mpc b/TAO/orbsvcs/ImplRepo_Service/ImplRepo_Service.mpc
index 0c7770da4e6..910ccb62870 100644
--- a/TAO/orbsvcs/ImplRepo_Service/ImplRepo_Service.mpc
+++ b/TAO/orbsvcs/ImplRepo_Service/ImplRepo_Service.mpc
@@ -21,7 +21,6 @@ project(ImR_Locator_IDL) : orbsvcslib, orbsvcs_output, conv_lib, valuetype, port
after += ImR_Activator_IDL
libs += TAO_ImR_Activator_IDL
// Dont try to build this project if ImR_Activator_IDL is not built
- requires += corba_messaging
dynamicflags += LOCATOR_IDL_BUILD_DLL
idlflags += -Wb,export_macro=LocatorIDL_Export -Wb,export_include=locator_idl_export.h
@@ -51,7 +50,6 @@ project(ImR_Activator) : orbsvcslib, orbsvcs_output, conv_lib, acexml, avoids_mi
after += ImR_Activator_IDL ImR_Locator_IDL
libs += TAO_ImR_Activator_IDL TAO_ImR_Locator_IDL
// Dont try to build this project if ImR_Activator_IDL is not built
- requires += corba_messaging
Source_Files {
ImR_Activator_i.cpp
diff --git a/TAO/orbsvcs/ImplRepo_Service/README.txt b/TAO/orbsvcs/ImplRepo_Service/README.txt
index 9579012f2d7..a83e9e5dbe6 100644
--- a/TAO/orbsvcs/ImplRepo_Service/README.txt
+++ b/TAO/orbsvcs/ImplRepo_Service/README.txt
@@ -1,5 +1,7 @@
/** -*- HTML-Helper -*- $Id$
+$Id$
+
@mainpage Implementation Repository
@section intro Introduction
diff --git a/TAO/orbsvcs/ImplRepo_Service/repository.xml b/TAO/orbsvcs/ImplRepo_Service/repository.xml
index d6b5ab4638a..d30518f9236 100644
--- a/TAO/orbsvcs/ImplRepo_Service/repository.xml
+++ b/TAO/orbsvcs/ImplRepo_Service/repository.xml
@@ -1,8 +1,11 @@
<?xml version="1.0"?>
<ImplementationRepository>
- <Servers name="test" activator="MYHOST" command_line="mysrv" working_dir="mydir" activation_mode="NORMAL" start_limit="1" partial_ior="" ior="">
- </Servers>
- <Servers name="test2" activator="MYHOST" command_line="" working_dir="" activation_mode="NORMAL" start_limit="1" partial_ior="" ior="">
- </Servers>
- <Activators name="MYHOST" token="1610927480" ior="IOR:010000002b00000049444c3a496d706c656d656e746174696f6e5265706f7369746f72792f416374697661746f723a312e300000010000000000000090000000010102cd150000004a555354414c49454e2e6f63697765622e636f6d00cd1f083900000014010f004e555000000017000000000100000000496d525f416374697661746f7200000000000100000054414f496d52416374697661746f7200000002000000000000000800000001cdcdcd004f4154010000001400000001cdcdcd01000100000000000901010000000000"/>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
+ <Servers name="test" activator="MYHOST" command_line="mysrv" working_dir="mydir" activation_mode="NORMAL" start_limit="1" partial_ior="" ior="">
+ </Servers>
+ <Servers name="test2" activator="MYHOST" command_line="" working_dir="" activation_mode="NORMAL" start_limit="1" partial_ior="" ior="">
+ </Servers>
+ <Activators name="MYHOST" token="1610927480" ior="IOR:010000002b00000049444c3a496d706c656d656e746174696f6e5265706f7369746f72792f416374697661746f723a312e300000010000000000000090000000010102cd150000004a555354414c49454e2e6f63697765622e636f6d00cd1f083900000014010f004e555000000017000000000100000000496d525f416374697661746f7200000000000100000054414f496d52416374697661746f7200000002000000000000000800000001cdcdcd004f4154010000001400000001cdcdcd01000100000000000901010000000000"/>
</ImplementationRepository>
diff --git a/TAO/orbsvcs/LoadBalancer/README b/TAO/orbsvcs/LoadBalancer/README
index 04de23e0fb8..bb2ef543799 100644
--- a/TAO/orbsvcs/LoadBalancer/README
+++ b/TAO/orbsvcs/LoadBalancer/README
@@ -1,11 +1,9 @@
-#
-# $Id$
-#
+$Id$
This directory contains the sources for two binaries:
- 1) LoadManager
- 2) LoadMonitor
+ 1) LoadManager
+ 2) LoadMonitor
Descriptions of each follow.
@@ -178,6 +176,6 @@ The LoadManager object's IOR must be made available to the
"LoadMonitor" binary. This can be done using the standard
Interoperable Naming Service "-ORBInitRef" option. For example, the
following will work if LoadManager IOR is available in the file
-`lm.ior'
+`lm.ior'
LoadMonitor -ORBInitRef LoadManager=file://lm.ior
diff --git a/TAO/orbsvcs/Logging_Service/Basic_Logging_Service/README b/TAO/orbsvcs/Logging_Service/Basic_Logging_Service/README
index 5288ca240e1..70cb854f11c 100644
--- a/TAO/orbsvcs/Logging_Service/Basic_Logging_Service/README
+++ b/TAO/orbsvcs/Logging_Service/Basic_Logging_Service/README
@@ -1,5 +1,7 @@
+$Id$
+
The service is registered with the naming service with the name
-"BasicLogFactory" .
+"BasicLogFactory" .
To run the Basic Logging Service:
------------------------
diff --git a/TAO/orbsvcs/Logging_Service/Event_Logging_Service/README b/TAO/orbsvcs/Logging_Service/Event_Logging_Service/README
index 4977a7bac72..415127ddbfd 100644
--- a/TAO/orbsvcs/Logging_Service/Event_Logging_Service/README
+++ b/TAO/orbsvcs/Logging_Service/Event_Logging_Service/README
@@ -1,5 +1,7 @@
+$Id$
+
The service is registered with the naming service with the name
-"EventLogFactory" .
+"EventLogFactory" .
To run the Event Logging Service:
------------------------
diff --git a/TAO/orbsvcs/Logging_Service/Notify_Logging_Service/README b/TAO/orbsvcs/Logging_Service/Notify_Logging_Service/README
index 282768d11e9..d185cca92e0 100644
--- a/TAO/orbsvcs/Logging_Service/Notify_Logging_Service/README
+++ b/TAO/orbsvcs/Logging_Service/Notify_Logging_Service/README
@@ -1,5 +1,7 @@
+$Id$
+
The service is registered with the naming service with the name
-"NotifyLogFactory" .
+"NotifyLogFactory" .
To run the Notify Logging Service:
------------------------
diff --git a/TAO/orbsvcs/Logging_Service/README b/TAO/orbsvcs/Logging_Service/README
index e3bcce3a3f8..9c502e53aaa 100644
--- a/TAO/orbsvcs/Logging_Service/README
+++ b/TAO/orbsvcs/Logging_Service/README
@@ -1,4 +1,4 @@
-// README v 1.3 dhanvey <d.hanvey@qub.ac.uk> 14:43 30/05/02
+$Id$
Telecom Log Service
-------------------
@@ -20,7 +20,7 @@ The Logging Service is comprised of 3 separate services ...
There is also a RTEvent Logging Service available ...
-4. The RTEvent Logging Service
+4. The RTEvent Logging Service
$TAO_ROOT/orbsvcs/orbsvcs/Logging_Service/RTEvent_Logging_Service
Please see the README documents in each of the above folders for
diff --git a/TAO/orbsvcs/Logging_Service/RTEvent_Logging_Service/README b/TAO/orbsvcs/Logging_Service/RTEvent_Logging_Service/README
index 9f49da0c078..ff438e480e2 100644
--- a/TAO/orbsvcs/Logging_Service/RTEvent_Logging_Service/README
+++ b/TAO/orbsvcs/Logging_Service/RTEvent_Logging_Service/README
@@ -1,5 +1,7 @@
+$Id$
+
The service is registered with the naming service with the name
-"RTEventLogFactory" .
+"RTEventLogFactory" .
To run the RTEvent Logging Service:
------------------------
diff --git a/TAO/orbsvcs/Naming_Service/README b/TAO/orbsvcs/Naming_Service/README
index 9cc96f8575d..c6f84e5ddf6 100644
--- a/TAO/orbsvcs/Naming_Service/README
+++ b/TAO/orbsvcs/Naming_Service/README
@@ -1,4 +1,4 @@
-// README,v 1.19 2001/02/02 20:21:38 schmidt Exp
+$Id$
This directory contains files that implement a server for the TAO
Naming Service. In addition, it contains files that run the TAO
@@ -81,21 +81,21 @@ The following describes how to run the TAO Naming Service.
timing out and throwing a 'Cannot proceed' exception
to the client. If no value is set this will never occur.
- -d
+ -d
Provides Naming Service specific debug information. By default
- no diagnostics are given.
+ no diagnostics are given.
-u directory
Use a flat-file persistence implementation that stores object
- reference information in a file per context. Each context file
+ reference information in a file per context. Each context file
is placed in the directory specified.
-
+
-r directory
Use redundant flat-file persistnece; same as the -u option,
except more than one instance of the TAO Naming Service server
- can run, each using the same set of disk files, to achieve a
- degree of fault tolerence (as long as directory is accessible
- to both servers).
+ can run, each using the same set of disk files, to achieve a
+ degree of fault tolerence (as long as directory is accessible
+ to both servers).
3. Environment Variables
diff --git a/TAO/orbsvcs/Notify_Service/README b/TAO/orbsvcs/Notify_Service/README
index bf5387008f2..595b87edcaf 100644
--- a/TAO/orbsvcs/Notify_Service/README
+++ b/TAO/orbsvcs/Notify_Service/README
@@ -70,7 +70,7 @@ Command line arguments:
Notify_Service, which is on by default.
"-LoggingInterval seconds" : Sets up a logging interval timer for the ORB's
- reactor. This is required to use the ACE
+ reactor. This is required to use the ACE
Logging Service features such as file sizing
and rotation. See the example below.
diff --git a/TAO/orbsvcs/Notify_Service/svc.conf.xml b/TAO/orbsvcs/Notify_Service/svc.conf.xml
index 237d7598804..32497124772 100644
--- a/TAO/orbsvcs/Notify_Service/svc.conf.xml
+++ b/TAO/orbsvcs/Notify_Service/svc.conf.xml
@@ -1,5 +1,8 @@
<?xml version='1.0'?>
<!-- Converted from ./orbsvcs/Notify_Service/svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<static id="Notify_Default_Event_Manager_Objects_Factory" params="-DispatchingThreads 1"/>
</ACE_Svc_Conf>
diff --git a/TAO/orbsvcs/TAO_Service/README b/TAO/orbsvcs/TAO_Service/README
index 799c4d1cb2f..a52c26e3eea 100644
--- a/TAO/orbsvcs/TAO_Service/README
+++ b/TAO/orbsvcs/TAO_Service/README
@@ -1,7 +1,7 @@
-// $Id$
+$Id$
-This directory has a generic server which opens and reads the svc.conf file in
-the directory and dynamically loads and unloads the various ORB services as per
+This directory has a generic server which opens and reads the svc.conf file in
+the directory and dynamically loads and unloads the various ORB services as per
the entries made in the svc.conf file.
To Load a Service Dynamically:
@@ -9,12 +9,12 @@ To Load a Service Dynamically:
1. Add an entry to the svc.conf which specifies the service name that you wish to
load dynamically.
-
+
The syntax for loading a service dynamically is:
dynamic < Service name i.e. name that you want the Service Repository to
use to identify the dynamically linked Service_Object
- so that you can look it up later via,
+ so that you can look it up later via,
e.g., ACE_Dynamic_Service::instance () > \
< The type of the service > \
< The shared DLL that has the function
@@ -25,7 +25,7 @@ To Load a Service Dynamically:
To load Naming Service dynamically :
----------------------------------
-
+
dynamic TAO_Naming_Loader Service_Object * \
TAO_CosNaming_Serv:_make_TAO_Naming_Loader () "dummy -o ns.ior"
@@ -36,7 +36,7 @@ To load Naming Service dynamically :
To load Event Service dynamically:
---------------------------------
-
+
In the case of Event Service, we also want to load the default
Event Service Factory in addition to the Event Service. So, we need to
add these two entries when we want to load the event service.
@@ -59,7 +59,7 @@ dynamic TAO_Trading_Loader Service_Object * \
To Remove a Service
*******************
- The directive for removing a service is <remove>. Removing a
+ The directive for removing a service is <remove>. Removing a
service is simpler. Add the following entry to the same svc.conf file
after commenting the entry for loading the same service, so that
the service is not loaded again.
@@ -92,9 +92,9 @@ To Run TAO_Service :
1. Start with a empty svc.conf file. Run the TAO_Service. Make sure
that you start with an empty svc.conf file because the ORB_init () and
-the service configurator get pretty confused.
+the service configurator get pretty confused.
-In detail, the svc.conf file is read and services loaded when
+In detail, the svc.conf file is read and services loaded when
ORB_init () is called in the main (). But, to load any service, we
need to initialize the ORB. Here, it gets confused. To avoid this,
run the TAO_Service with no entries in the svc.conf file.
@@ -109,7 +109,7 @@ entry, send a SIGHUP signal:
svc.conf file again and reconfigures the services.
3. If you want to test if the service is loaded successfully, run the
-generic client program < tests_svc_loader.cpp > located in
+generic client program < tests_svc_loader.cpp > located in
orbsvcs/tests/tests_svc_loader. For more details about the
tests_svc_loader.cpp, read the README in the same directory.
diff --git a/TAO/orbsvcs/TAO_Service/svc.conf.xml b/TAO/orbsvcs/TAO_Service/svc.conf.xml
index 6601b96b6ee..cc955f4885e 100644
--- a/TAO/orbsvcs/TAO_Service/svc.conf.xml
+++ b/TAO/orbsvcs/TAO_Service/svc.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from ./orbsvcs/TAO_Service/svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Dynamically configure the naming service into the application process. -->
<!-- dynamic TAO_Naming_Loader Service_Object * TAO_CosNaming:_make_TAO_Naming_Loader () "dummy -o ns.ior" -->
<!-- Dynamically configure the default Event Service Factory -->
diff --git a/TAO/orbsvcs/Time_Service/README b/TAO/orbsvcs/Time_Service/README
index 2ca9f457b45..0acd0f1f722 100644
--- a/TAO/orbsvcs/Time_Service/README
+++ b/TAO/orbsvcs/Time_Service/README
@@ -1,4 +1,4 @@
-$Id $
+$Id$
============================ TAO Time Service==============================
@@ -8,7 +8,7 @@ client. The Time Service interface has been implemented as two servants:
the clerk and the server. Clients who wish to use the service talk to
clerks and the clerks in turn keep their time synchronized
globally. The clerks do this by talking to the servers running on
-different machines.
+different machines.
There needs to be at least one time server running in the network. The Clerks
update their time periodically from the servers. The servers and clerks
@@ -73,12 +73,12 @@ more elaborate distributed time synchronization algorithm.
Version Updates : (10th March, 1999)
-----------------
-The TAO Time Service has been updated to include the timezone information
-in the Universal Time Object. This object now also has an inaccuracy estimate
-in it. The inaccuracy is a measure of the skew in the synchronization of
+The TAO Time Service has been updated to include the timezone information
+in the Universal Time Object. This object now also has an inaccuracy estimate
+in it. The inaccuracy is a measure of the skew in the synchronization of
the clerks time. It is the difference between the highest and the lowest times
-from the servers that the clerk synchronizes its time with. The high-inaccuracy
-and the low-inaccuracy fields are also being calculated from the inaccuracy as
+from the servers that the clerk synchronizes its time with. The high-inaccuracy
+and the low-inaccuracy fields are also being calculated from the inaccuracy as
follows :
Inaccuracy 64-bits
diff --git a/TAO/orbsvcs/examples/CosEC/Factory/README b/TAO/orbsvcs/examples/CosEC/Factory/README
index 29104ea2b9f..5c21326b4f8 100644
--- a/TAO/orbsvcs/examples/CosEC/Factory/README
+++ b/TAO/orbsvcs/examples/CosEC/Factory/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
CosEventChannelFactory
======================================================
diff --git a/TAO/orbsvcs/examples/CosEC/RtEC_Based/README b/TAO/orbsvcs/examples/CosEC/RtEC_Based/README
index a90ec511868..00327ff0719 100644
--- a/TAO/orbsvcs/examples/CosEC/RtEC_Based/README
+++ b/TAO/orbsvcs/examples/CosEC/RtEC_Based/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This directory contains a partial implementation of the COS
Event Service, using TAO's RT Event Service as the backend. It is
diff --git a/TAO/orbsvcs/examples/CosEC/RtEC_Based/bin/README b/TAO/orbsvcs/examples/CosEC/RtEC_Based/bin/README
index 9f9ac585a75..e5f7eaa5a84 100644
--- a/TAO/orbsvcs/examples/CosEC/RtEC_Based/bin/README
+++ b/TAO/orbsvcs/examples/CosEC/RtEC_Based/bin/README
@@ -1,3 +1,5 @@
+$Id$
+
CORBA COS Event Service
-----------------------
diff --git a/TAO/orbsvcs/examples/CosEC/RtEC_Based/tests/Multiple/README b/TAO/orbsvcs/examples/CosEC/RtEC_Based/tests/Multiple/README
index 6b6d90cb706..390b6b6665c 100644
--- a/TAO/orbsvcs/examples/CosEC/RtEC_Based/tests/Multiple/README
+++ b/TAO/orbsvcs/examples/CosEC/RtEC_Based/tests/Multiple/README
@@ -1,3 +1,5 @@
+$Id$
+
CosEC_Multiple
------------------------------------------------------------------------
This test for the Cos Event Service has 2 executables - one for suppliers
diff --git a/TAO/orbsvcs/examples/CosEC/Simple/README b/TAO/orbsvcs/examples/CosEC/Simple/README
index 6090cd7419e..09e8c51f103 100644
--- a/TAO/orbsvcs/examples/CosEC/Simple/README
+++ b/TAO/orbsvcs/examples/CosEC/Simple/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This directory contains what possibly is the simplest example
for a COS Event Service. It contains three executables; a consumer,
diff --git a/TAO/orbsvcs/examples/CosEC/TypedSimple/README b/TAO/orbsvcs/examples/CosEC/TypedSimple/README
index d722b0a9e0c..99d74a87b64 100644
--- a/TAO/orbsvcs/examples/CosEC/TypedSimple/README
+++ b/TAO/orbsvcs/examples/CosEC/TypedSimple/README
@@ -1,7 +1,7 @@
-# $Id$
+$Id$
- This directory contains an example for a COS Event Service,
-using a typed channel.
+ This directory contains an example for a COS Event Service,
+using a typed channel.
It contains two executables; a consumer and a supplier.
To test it use :
@@ -9,7 +9,7 @@ It contains two executables; a consumer and a supplier.
# rm Country.ifr
# IFR_Service -p -b Country.ifr -ORBEndPoint iiop://localhost:12345
# tao_ifr -ORBInitRef InterfaceRepository=corbaloc:iiop:localhost:12345/InterfaceRepository -I$TAO_ROOT/orbsvcs Country.idl
-# Naming_Service -ORBEndPoint iiop://localhost:8000
+# Naming_Service -ORBEndPoint iiop://localhost:8000
# CosEvent_Service -n CountryEventChannel -r -t -d -ORBInitRef InterfaceRepository=corbaloc:iiop:localhost:12345/InterfaceRepository -ORBInitRef NameService=corbaloc:iiop:localhost:8000/NameService
# consumer -ORBInitRef NameService=corbaloc:iiop:localhost:8000/NameService
# supplier -ORBInitRef NameService=corbaloc:iiop:localhost:8000/NameService
diff --git a/TAO/orbsvcs/examples/FaultTolerance/RolyPoly/README b/TAO/orbsvcs/examples/FaultTolerance/RolyPoly/README
index 786b42a81d9..0a19d5285f3 100644
--- a/TAO/orbsvcs/examples/FaultTolerance/RolyPoly/README
+++ b/TAO/orbsvcs/examples/FaultTolerance/RolyPoly/README
@@ -1,14 +1,14 @@
-
+$Id$
Overview
-RolyPoly is a simple example that shows how to increase application
-reliability by using replication to tolerate faults. It allows you
+RolyPoly is a simple example that shows how to increase application
+reliability by using replication to tolerate faults. It allows you
to start two replicas of the same object which are logically seen as
one object by a client. Furthermore, you can terminate one of the
replicas without interrupting the service provided by the object.
-RolyPoly is using request/reply logging to suppress repeated
+RolyPoly is using request/reply logging to suppress repeated
requests (thus guaranteeing exactly-once semantic) and state
synchronization (to ensure all replicas are in a consistent
state). Since replicas are generally distributed across multiple
@@ -27,7 +27,7 @@ following crash point numbers are defined:
returning reply to the client.
Essential difference between crash point 1 and 2 is that in
-the second case there should be reply replay while in the
+the second case there should be reply replay while in the
first case request is simply re-executed (this can be observed
in the trace messages of the replicas).
@@ -35,27 +35,27 @@ in the trace messages of the replicas).
Execution Scenario
In this example scenario we will start three replicas. For one
-of them (let us call it primary) we will specify a crash point
-other than 0. Then we will start a client to execute requests
-on the resulting object. After a few requests, primary will
-fail and we will be able to observe transparent shifting of
-client to the other replica. Also we will be able to make sure
-that, after this shifting, object is still in expected state
-(i.e. the sequence of returned numbers is not interrupted and
+of them (let us call it primary) we will specify a crash point
+other than 0. Then we will start a client to execute requests
+on the resulting object. After a few requests, primary will
+fail and we will be able to observe transparent shifting of
+client to the other replica. Also we will be able to make sure
+that, after this shifting, object is still in expected state
+(i.e. the sequence of returned numbers is not interrupted and
that, in case of the crash point 2, request is not re-executed).
Note, due to the underlying group communication architecture,
the group with only one member (replica in our case) can only
-exist for a very short period of time. This, in turn, means
-that we need to start first two replicas virtually at the same
-time. This is also a reason why we need three replicas instead
-of two - if one replica is going to fail then the other one
-won't live very long alone. For more information on the reasons
-why it works this way please see documentation for TMCast
+exist for a very short period of time. This, in turn, means
+that we need to start first two replicas virtually at the same
+time. This is also a reason why we need three replicas instead
+of two - if one replica is going to fail then the other one
+won't live very long alone. For more information on the reasons
+why it works this way please see documentation for TMCast
available at $(ACE_ROOT)/ace/TMCast/README.
-Suppose we have node0, node1 and node2 on which we are going
-to start our replicas (it could be the same node). Then, to
+Suppose we have node0, node1 and node2 on which we are going
+to start our replicas (it could be the same node). Then, to
start our replicas we can execute the following commands:
node0$ ./server -o replica-0.ior -c 2
@@ -66,7 +66,7 @@ When all replicas are up we can start the client:
$ ./client -k file://replica-0.ior -k file://replica-1.ior
-In this scenario, after executing a few requests, replica-0
+In this scenario, after executing a few requests, replica-0
will fail in crash point 2. After that, replica-1 will continue
executing client requests. You can see what's going on with
replicas by looking at various trace messages printed during
@@ -76,7 +76,7 @@ execution.
Architecture
The biggest part of the replication logic is carried out by
-the ReplicaController. In particular it performs the
+the ReplicaController. In particular it performs the
following tasks:
* management of distributed request/reply log
@@ -97,9 +97,9 @@ ReplicaController:
implemented by the servant.
This two model can be used simultaneously. In RolyPoly interface
-implementation you can comment out corresponding piece of code to
+implementation you can comment out corresponding piece of code to
chose one of the strategies.
---
+--
Boris Kolpackov <boris@dre.vanderbilt.edu>
diff --git a/TAO/orbsvcs/examples/ImR/Advanced/README b/TAO/orbsvcs/examples/ImR/Advanced/README
index 08a1a004523..af0cb940210 100644
--- a/TAO/orbsvcs/examples/ImR/Advanced/README
+++ b/TAO/orbsvcs/examples/ImR/Advanced/README
@@ -1,3 +1,5 @@
+$Id$
+
This example tests several uses of the Implementation Repository.
How to Run
@@ -9,7 +11,7 @@ Driver files are stored in the drivers directory.
Each file contains a set of parameters for each execution of the
test.
-Each line item in the file has one of the follow forms.
+Each line item in the file has one of the follow forms.
Empty lines are ignored.
# <Comment>
@@ -33,5 +35,5 @@ Empty lines are ignored.
Execute the example script
----------------------------------------------------------------------
-The run_test.pl script reads the driver file and executes each line.
+The run_test.pl script reads the driver file and executes each line.
Simply execute run_test.pl to run all test in the drivers directory.
diff --git a/TAO/orbsvcs/examples/ImR/Combined_Service/readme b/TAO/orbsvcs/examples/ImR/Combined_Service/readme
index e10a95336ef..6a4a7db34cd 100644
--- a/TAO/orbsvcs/examples/ImR/Combined_Service/readme
+++ b/TAO/orbsvcs/examples/ImR/Combined_Service/readme
@@ -1,28 +1,30 @@
+$Id$
+
Test Description:
-The test consists of several processes and the usual run_test.pl script.
+The test consists of several processes and the usual run_test.pl script.
-controller.exe -- This is a simple corba wrapper around the ServiceConfigurator
- which takes -c <cmd> and -r options to run a command and
- reload the conf file respectively.
+controller.exe -- This is a simple corba wrapper around the ServiceConfigurator
+ which takes -c <cmd> and -r options to run a command and
+ reload the conf file respectively.
-combined_service.exe -- It combines the tao imr locator, activator, and a dynamic
- server in a single process. You can use any service
- configurator command line options, and it also writes
- out a combined.ior file that can be use d with the controller above.
+combined_service.exe -- It combines the tao imr locator, activator, and a dynamic
+ server in a single process. You can use any service
+ configurator command line options, and it also writes
+ out a combined.ior file that can be use d with the controller above.
-test_server.exe -- This is a simple tao server that exposes two imr-ified objects
- called TestObject1 and TestObject2. You must start it with
- -orbuseimr 1 as usual.
+test_server.exe -- This is a simple tao server that exposes two imr-ified objects
+ called TestObject1 and TestObject2. You must start it with
+ -orbuseimr 1 as usual.
-dynserver.dll -- This is the same server as above, except for use with the ServiceConfigurator.
- It exposes DynObject1 and DynObject2. This program is not currently used as
+dynserver.dll -- This is the same server as above, except for use with the ServiceConfigurator.
+ It exposes DynObject1 and DynObject2. This program is not currently used as
part of the run_test.pl
-test.exe -- This is a simple client that invokes the test() operation on the Test object.
- Start it with -orbinitref Test=... It can be used against any of the
- four objects above.
+test.exe -- This is a simple client that invokes the test() operation on the Test object.
+ Start it with -orbinitref Test=... It can be used against any of the
+ four objects above.
-There are also comments within the run_test.pl that describe the
-test and expected results at various stages.
+There are also comments within the run_test.pl that describe the
+test and expected results at various stages.
diff --git a/TAO/orbsvcs/examples/Log/Basic/README b/TAO/orbsvcs/examples/Log/Basic/README
index 573d86b75cb..8feda778bf4 100644
--- a/TAO/orbsvcs/examples/Log/Basic/README
+++ b/TAO/orbsvcs/examples/Log/Basic/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Telecom Log Service (TLS) Client example
----------------------------------------
diff --git a/TAO/orbsvcs/examples/Log/Event/README b/TAO/orbsvcs/examples/Log/Event/README
index ab49cd6d438..07afb62c617 100644
--- a/TAO/orbsvcs/examples/Log/Event/README
+++ b/TAO/orbsvcs/examples/Log/Event/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Telecom Log Service (TLS) Client example
----------------------------------------
diff --git a/TAO/orbsvcs/examples/Log/Notify/README b/TAO/orbsvcs/examples/Log/Notify/README
index 9de15b27dae..d85f0946aeb 100644
--- a/TAO/orbsvcs/examples/Log/Notify/README
+++ b/TAO/orbsvcs/examples/Log/Notify/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Telecom Log Service (TLS) Client example
----------------------------------------
diff --git a/TAO/orbsvcs/examples/Log/README b/TAO/orbsvcs/examples/Log/README
index aa5579fff01..b9284cf35dc 100644
--- a/TAO/orbsvcs/examples/Log/README
+++ b/TAO/orbsvcs/examples/Log/README
@@ -1,3 +1,5 @@
+$Id$
+
Logging Service
===============
diff --git a/TAO/orbsvcs/examples/Log/RTEvent/README b/TAO/orbsvcs/examples/Log/RTEvent/README
index 103bab83664..26d68359271 100644
--- a/TAO/orbsvcs/examples/Log/RTEvent/README
+++ b/TAO/orbsvcs/examples/Log/RTEvent/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Telecom Log Service (TLS) Client example
----------------------------------------
diff --git a/TAO/orbsvcs/examples/Notify/Federation/Agent/README b/TAO/orbsvcs/examples/Notify/Federation/Agent/README
index 53f999666f6..6f613db7763 100644
--- a/TAO/orbsvcs/examples/Notify/Federation/Agent/README
+++ b/TAO/orbsvcs/examples/Notify/Federation/Agent/README
@@ -1,3 +1,5 @@
+$Id$
+
Agent is a simple application which sends and receives discovery messages
via multicast-based federation of Notification Service. To run the example
you don't need to start Notification Service; each agent process will create
diff --git a/TAO/orbsvcs/examples/Notify/Federation/SpaceCraft/README b/TAO/orbsvcs/examples/Notify/Federation/SpaceCraft/README
index 3be18eaa394..2e26efa47f0 100644
--- a/TAO/orbsvcs/examples/Notify/Federation/SpaceCraft/README
+++ b/TAO/orbsvcs/examples/Notify/Federation/SpaceCraft/README
@@ -1,3 +1,5 @@
+$Id$
+
This example simulates spacecraft constellation. Each spacecraft
connects to a constellation-wide multicast group to which it
forwards pre-filtered messages on behalf of its agents. To run
diff --git a/TAO/orbsvcs/examples/Notify/Filter/README b/TAO/orbsvcs/examples/Notify/Filter/README
index ddc5af0fca2..9326161c075 100644
--- a/TAO/orbsvcs/examples/Notify/Filter/README
+++ b/TAO/orbsvcs/examples/Notify/Filter/README
@@ -1,3 +1,5 @@
+$Id$
+
Filter example:
This example shows how to filter structured events in the Notification Service.
diff --git a/TAO/orbsvcs/examples/Notify/Lanes/README b/TAO/orbsvcs/examples/Notify/Lanes/README
index f08b653ab39..91d0f3c6bc4 100644
--- a/TAO/orbsvcs/examples/Notify/Lanes/README
+++ b/TAO/orbsvcs/examples/Notify/Lanes/README
@@ -1,3 +1,4 @@
+$Id$
Lanes example
=============
diff --git a/TAO/orbsvcs/examples/Notify/MC/TkMonitor/README b/TAO/orbsvcs/examples/Notify/MC/TkMonitor/README
index 0af58a9b919..1c9fa6ae613 100644
--- a/TAO/orbsvcs/examples/Notify/MC/TkMonitor/README
+++ b/TAO/orbsvcs/examples/Notify/MC/TkMonitor/README
@@ -1,3 +1,5 @@
+$Id$
+
This Tk interface to the Notify Service Monitor requires opalORB v0.0.3 or
later which can be downloaded from http://sourceforge.net/projects/opalorb/
diff --git a/TAO/orbsvcs/examples/Notify/MC/TkMonitor/modules/GeometryStore.pm b/TAO/orbsvcs/examples/Notify/MC/TkMonitor/modules/GeometryStore.pm
index ca25280b1b7..8521b664c69 100644
--- a/TAO/orbsvcs/examples/Notify/MC/TkMonitor/modules/GeometryStore.pm
+++ b/TAO/orbsvcs/examples/Notify/MC/TkMonitor/modules/GeometryStore.pm
@@ -4,6 +4,7 @@ package GeometryStore;
# Description : Store and retrieve geometry
# Author : Chad Elliott
# Create Date : 1/5/2006
+# $Id$
# ******************************************************************
# ******************************************************************
diff --git a/TAO/orbsvcs/examples/Notify/MC/TkMonitor/modules/MonitorControl.pm b/TAO/orbsvcs/examples/Notify/MC/TkMonitor/modules/MonitorControl.pm
index ecc31284f6a..e4602236597 100644
--- a/TAO/orbsvcs/examples/Notify/MC/TkMonitor/modules/MonitorControl.pm
+++ b/TAO/orbsvcs/examples/Notify/MC/TkMonitor/modules/MonitorControl.pm
@@ -4,6 +4,7 @@ package MonitorControl;
# Description : Graphical interface for the Notify Service Monitor
# Author : Chad Elliott
# Create Date : 7/17/2007
+# $Id$
# ************************************************************
# ************************************************************
diff --git a/TAO/orbsvcs/examples/Notify/README b/TAO/orbsvcs/examples/Notify/README
index 7028c60fe5d..172dc7643a2 100644
--- a/TAO/orbsvcs/examples/Notify/README
+++ b/TAO/orbsvcs/examples/Notify/README
@@ -1,3 +1,4 @@
+$Id$
Notification Service examples:
diff --git a/TAO/orbsvcs/examples/Notify/Subscribe/README b/TAO/orbsvcs/examples/Notify/Subscribe/README
index 8dc7fac8cb6..b264146b48a 100644
--- a/TAO/orbsvcs/examples/Notify/Subscribe/README
+++ b/TAO/orbsvcs/examples/Notify/Subscribe/README
@@ -1,3 +1,5 @@
+$Id$
+
Subscribe example:
----------------
Note: This example is under construction.
diff --git a/TAO/orbsvcs/examples/Notify/ThreadPool/README b/TAO/orbsvcs/examples/Notify/ThreadPool/README
index f02bd65b73c..271a959e682 100644
--- a/TAO/orbsvcs/examples/Notify/ThreadPool/README
+++ b/TAO/orbsvcs/examples/Notify/ThreadPool/README
@@ -1,3 +1,4 @@
+$Id$
ThreadPool example for RT-Notification
======================================
diff --git a/TAO/orbsvcs/examples/RtEC/IIOPGateway/README b/TAO/orbsvcs/examples/RtEC/IIOPGateway/README
index 501bc694e31..9e35d7ba7bb 100644
--- a/TAO/orbsvcs/examples/RtEC/IIOPGateway/README
+++ b/TAO/orbsvcs/examples/RtEC/IIOPGateway/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This directory contains an example of the real-time event service
and the IIOP Gateway. There are four executables, the consumer, supplier,
diff --git a/TAO/orbsvcs/examples/RtEC/IIOPGateway/RtEC_IIOPGateway.mpc b/TAO/orbsvcs/examples/RtEC/IIOPGateway/RtEC_IIOPGateway.mpc
index 2671b2a5ed7..281f4775ed1 100644
--- a/TAO/orbsvcs/examples/RtEC/IIOPGateway/RtEC_IIOPGateway.mpc
+++ b/TAO/orbsvcs/examples/RtEC/IIOPGateway/RtEC_IIOPGateway.mpc
@@ -2,44 +2,28 @@
// $Id$
project(*Consumer): messaging, rteventexe, naming {
-
exename = Consumer
-
- requires += corba_messaging
-
Source_Files {
Consumer.cpp
}
}
project(*Supplier): messaging, rteventexe, naming {
-
exename = Supplier
-
- requires += corba_messaging
-
Source_Files {
Supplier.cpp
}
}
project(*): messaging, rteventexe, rtevent_serv, naming {
-
exename = Gateway
-
- requires += corba_messaging
-
Source_Files {
Gateway.cpp
}
}
project(*EC): messaging, rteventexe, rtevent_serv, naming {
-
exename = EC
-
- requires += corba_messaging
-
Source_Files {
EC.cpp
}
diff --git a/TAO/orbsvcs/examples/RtEC/Kokyu/README b/TAO/orbsvcs/examples/RtEC/Kokyu/README
index f7a98f7acc7..ee61b15e3ef 100644
--- a/TAO/orbsvcs/examples/RtEC/Kokyu/README
+++ b/TAO/orbsvcs/examples/RtEC/Kokyu/README
@@ -1,13 +1,13 @@
-# $Id$
+$Id$
Shows how to use the scheduling service in conjunction with
the real-time event channel. The test also uses the Kokyu
-dispatching module within the RTEC, which provides the
-dispatching queues for the isolation of events based on
-their preemption priority generated by the scheduler. The
-test has two consumers and two suppliers. The test also
-demonstrates how to use timers in the EC to trigger timeout
-events for timeout consumers which inturn act as suppliers
+dispatching module within the RTEC, which provides the
+dispatching queues for the isolation of events based on
+their preemption priority generated by the scheduler. The
+test has two consumers and two suppliers. The test also
+demonstrates how to use timers in the EC to trigger timeout
+events for timeout consumers which inturn act as suppliers
to other consumers. The following shows the test setup.
@@ -21,10 +21,10 @@ HI_CRIT |-----|
The event-channel cooperates with the scheduling service to
compute a schedule and assign priorities to each event. The event
channel will use different queues for those events, each queue
-serviced by threads at different priorities. In the above
+serviced by threads at different priorities. In the above
test case, there will be two dispatching queues, one for each
flow. The 1Hz flow will have higher priority than the 1/3Hz flow
-wirh plain RMS scheduling. With MUF scheduling, the HI_CRIT
+wirh plain RMS scheduling. With MUF scheduling, the HI_CRIT
flow will have higher priority than the LO_CRIT flow.
The example can be run as follows:
@@ -35,8 +35,8 @@ Please make sure you run the example with root privileges.
Expected output for RMS
-----------------------
-You should see the 1Hz events dispatched by a higher priority
-thread than the 1/3Hz events. Sample output is shown below. Here
+You should see the 1Hz events dispatched by a higher priority
+thread than the 1/3Hz events. Sample output is shown below. Here
2051 is the thread id of the thread dispatching 1/3Hz events
and 1026 is the thread id of the thread dispatching 1Hz events.
The latter runs at a higher real-time thread priority than the
@@ -50,9 +50,9 @@ Consumer (27703|2051) we received event type 17
Expected output for MUF
-----------------------
-You should see the 1/3Hz events dispatched by a higher priority
+You should see the 1/3Hz events dispatched by a higher priority
thread than the 1Hz events since the former is more critical
-than the latter. Sample output is shown below. Here
+than the latter. Sample output is shown below. Here
2051 is the thread id of the thread dispatching 1Hz events
and 1026 is the thread id of the thread dispatching 1/3Hz events.
The latter runs at a higher real-time thread priority than the
diff --git a/TAO/orbsvcs/examples/RtEC/MCast/README b/TAO/orbsvcs/examples/RtEC/MCast/README
index 55aad804e20..1c5de10eabd 100644
--- a/TAO/orbsvcs/examples/RtEC/MCast/README
+++ b/TAO/orbsvcs/examples/RtEC/MCast/README
@@ -1,6 +1,6 @@
-# $Id$
+$Id$
- This directory contains a very simple example of a
+ This directory contains a very simple example of a
multicast-based federation of event services.
The example is a single process that contains:
@@ -18,7 +18,7 @@ $ MCast
If you need to set the multicast group and port you can use
the -m option:
-$ MCast -m 224.100.2.1:12345
+$ MCast -m 224.100.2.1:12345
Run the test in multiple machines on the same network. If
there is only one process you should only receive 1000 events in the
diff --git a/TAO/orbsvcs/examples/RtEC/Schedule/README b/TAO/orbsvcs/examples/RtEC/Schedule/README
index 8435319a51b..d449e10e6d2 100644
--- a/TAO/orbsvcs/examples/RtEC/Schedule/README
+++ b/TAO/orbsvcs/examples/RtEC/Schedule/README
@@ -1,10 +1,10 @@
-# $Id$
+$Id$
- Shows how to use the scheduling service in conjunction with
+ Shows how to use the scheduling service in conjunction with
the real-time event channel. The test has a single consumer that
subscribes for two event types, using different RT_Infos for each. A
supplier pushes those events also using different RT_Infos.
- The event-channel cooperates with the scheduling service to
+ The event-channel cooperates with the scheduling service to
compute a schedule and assign priorities to each event. The event
channel will use different queues for those events, each queue
serviced by threads at different priorities.
diff --git a/TAO/orbsvcs/examples/RtEC/Simple/README b/TAO/orbsvcs/examples/RtEC/Simple/README
index 96dae4b1cca..59cb1931655 100644
--- a/TAO/orbsvcs/examples/RtEC/Simple/README
+++ b/TAO/orbsvcs/examples/RtEC/Simple/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This directory contains possibly the most simple example of
the real-time event service. It contains three executables; a
diff --git a/TAO/orbsvcs/examples/Security/README b/TAO/orbsvcs/examples/Security/README
index db13c886738..6d8824bf0eb 100644
--- a/TAO/orbsvcs/examples/Security/README
+++ b/TAO/orbsvcs/examples/Security/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
TAO CORBA Security Service Examples
===================================
diff --git a/TAO/orbsvcs/examples/Security/SecurityLevel1/README b/TAO/orbsvcs/examples/Security/SecurityLevel1/README
index a29c58d2ee7..1a3bb544ef2 100644
--- a/TAO/orbsvcs/examples/Security/SecurityLevel1/README
+++ b/TAO/orbsvcs/examples/Security/SecurityLevel1/README
@@ -3,7 +3,7 @@ $Id$
* README *
- In this example, the server will have some (or may be just
+In this example, the server will have some (or may be just
one, if that will serve the purpose .. anyways since these will be
just simple dummy methods, it shouldnt matter) methods with different
levels of authorization. When a client wants to invoke any of these
@@ -11,11 +11,11 @@ methods, it has to be authenticated first(I am not sure, as of now,
the way for authenticating or the fact if this is really needed
.. well for starters, I will leave authentication). Then based on the
principals privilege attributes, the invocation will be
-successful or denied.
+successful or denied.
This test makes use of the Current::get_attributes to get the
attributes of the prinicipal which are used to provide or deny
-access.
+access.
We will check the values for all the possible attribute types that a
server could check in the remote case. And, as in the example, run
@@ -26,7 +26,7 @@ returning the correct credentials and not garbling or giving some
random values.
This will prove that
-
+
1. Authorization is working.
2. All the attribute types which are supposed to work are working
properly.
@@ -37,7 +37,7 @@ This will prove that
Since, the only thing that the SecurityLevel1 does is to get the
credentials of the initiating principal, to test the implementation,
-in my view,
+in my view,
1. We need to see if the method is returning the correct credentials.
2. If all the attribute types are working... ie.. show what are the
diff --git a/TAO/orbsvcs/examples/Security/Send_File/README b/TAO/orbsvcs/examples/Security/Send_File/README
index c02ca187f21..41ebd561bc8 100644
--- a/TAO/orbsvcs/examples/Security/Send_File/README
+++ b/TAO/orbsvcs/examples/Security/Send_File/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
@@ -58,7 +58,7 @@ $ client -k file://test.ior < certificate.pem
======= Testing failed authentications:
- To test failed server authentications we simply run the client
+ To test failed server authentications we simply run the client
and server as indicated below, but we enter invalid pass phrases in
the client and/or server.
diff --git a/TAO/orbsvcs/orbsvcs/AV/README b/TAO/orbsvcs/orbsvcs/AV/README
index e3482716a80..62959f92f2f 100644
--- a/TAO/orbsvcs/orbsvcs/AV/README
+++ b/TAO/orbsvcs/orbsvcs/AV/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
TAO Audio/Video Streaming service
---------------------------------
@@ -11,7 +11,7 @@ interfaces for controlling multimedia streams.
This directory contains the following files
AVStreams_i.{h,cpp}: Implementation of the A/V handshake specification, as well
- as base classes for the various interfaces defined in the spec.
+ as base classes for the various interfaces defined in the spec.
Endpoint_Strategy.{h,cpp}: Implementation of various multimedia endpoint activation strategies.
diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedProxyPushConsumer.cpp b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedProxyPushConsumer.cpp
index 95841b71732..c99dbc35ce9 100644
--- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedProxyPushConsumer.cpp
+++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedProxyPushConsumer.cpp
@@ -380,7 +380,7 @@ TAO_CEC_TypedProxyPushConsumer_Guard::
return;
this->locked_ = 1;
- this->refcount_++;
+ ++this->refcount_;
}
TAO_CEC_TypedProxyPushConsumer_Guard::
diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedProxyPushConsumer.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedProxyPushConsumer.h
index 547df4ccbfd..31720a9b33e 100644
--- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedProxyPushConsumer.h
+++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedProxyPushConsumer.h
@@ -146,7 +146,7 @@ private:
* @brief A Guard for the TypedProxyPushConsumer reference count
*
* This is a helper class used in the implementation of
- * TypedProxyPushConumer. It provides a Guard mechanism to increment
+ * TypedProxyPushConsumer. It provides a Guard mechanism to increment
* the reference count on the proxy, eliminating the need to hold
* mutexes during long operations.
*/
diff --git a/TAO/orbsvcs/orbsvcs/HTIOP/README.txt b/TAO/orbsvcs/orbsvcs/HTIOP/README.txt
index 567e302009e..380644fae9e 100644
--- a/TAO/orbsvcs/orbsvcs/HTIOP/README.txt
+++ b/TAO/orbsvcs/orbsvcs/HTIOP/README.txt
@@ -1,4 +1,6 @@
- HTTP Tunneling Inter-ORB Protocol
+$Id$
+
+ HTTP Tunneling Inter-ORB Protocol
Introduction
Components
diff --git a/TAO/orbsvcs/orbsvcs/LoadBalancing/README b/TAO/orbsvcs/orbsvcs/LoadBalancing/README
index 175e8e074fd..c3f19704e52 100644
--- a/TAO/orbsvcs/orbsvcs/LoadBalancing/README
+++ b/TAO/orbsvcs/orbsvcs/LoadBalancing/README
@@ -1,3 +1,5 @@
+$Id$
+
This directory contains the implementations of the TAO Load Balancing
service, which is called as Cygnus.
diff --git a/TAO/orbsvcs/orbsvcs/Naming/README b/TAO/orbsvcs/orbsvcs/Naming/README
index 5145337c611..2b301e48f13 100644
--- a/TAO/orbsvcs/orbsvcs/Naming/README
+++ b/TAO/orbsvcs/orbsvcs/Naming/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
CONTENT
=======
diff --git a/TAO/orbsvcs/orbsvcs/Notify/README b/TAO/orbsvcs/orbsvcs/Notify/README
index c30991c4c95..66e8f899f6b 100644
--- a/TAO/orbsvcs/orbsvcs/Notify/README
+++ b/TAO/orbsvcs/orbsvcs/Notify/README
@@ -1,4 +1,4 @@
-README,v 1.5 2000/12/07 05:56:27 pradeep Exp
+$Id$
README for the Notification Service
-----------------------------------
@@ -31,7 +31,7 @@ another we can deploy dispatching threads using this option.
-SourceThreads
Deploys a thread pool after event receipt from the supplier. All subsequent
notification channel processing can happen on this thread and the original
-publishing push() can be ended. Separates server side processing of the
+publishing push() can be ended. Separates server side processing of the
event from the supplier's publication.
diff --git a/TAO/orbsvcs/orbsvcs/PortableGroup/README b/TAO/orbsvcs/orbsvcs/PortableGroup/README
index 7faf4cd6e46..9e1bb9f038c 100644
--- a/TAO/orbsvcs/orbsvcs/PortableGroup/README
+++ b/TAO/orbsvcs/orbsvcs/PortableGroup/README
@@ -12,7 +12,7 @@ For examples on how to use MIOP, see $TAO_ROOT/orbsvcs/tests/Miop.
Compilation Note:
The PortableGroup library requires the CosNaming library due to references
-to it in the IDL from the MIOP specification. It is not really used in
+to it in the IDL from the MIOP specification. It is not really used in
actual implementation.
Implementation Notes:
@@ -26,14 +26,14 @@ to the final MIOP specification. The following are current limitations:
2. Disassociating a group reference from a servant is not implemented.
If interested in fixing this, be aware of the race conditions if a
- servant disassociates during an upcall. The TAO event services all
+ servant disassociates during an upcall. The TAO event services all
have code to handle this issue.
3. Clients must call _unchecked_narrow to narrow any group references
since a multicast group manager isn't supported yet (and UIPMC does
not support twoway invocations)
- 4. TAO does not have a multicast group manager, so groups must be
+ 4. TAO does not have a multicast group manager, so groups must be
assigned by creating a MIOP CORBALOC formatted reference. See
the tests or the MIOP specification for example group references.
diff --git a/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_acc.sh b/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_acc.sh
index 52fd2b14d3b..560742a1c28 100644
--- a/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_acc.sh
+++ b/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_acc.sh
@@ -1,4 +1,5 @@
#!/bin/sh
+# $Id$
. parameters
diff --git a/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_cmp.sh b/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_cmp.sh
index f45666db5a0..a69404c0e96 100755
--- a/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_cmp.sh
+++ b/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_cmp.sh
@@ -1,4 +1,5 @@
#/bin/sh
+# $Id$
for i in $TYPES; do
echo $i ;
diff --git a/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_compared_histo.sh b/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_compared_histo.sh
index 8f6a821b27d..a68c977ef90 100644
--- a/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_compared_histo.sh
+++ b/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_compared_histo.sh
@@ -1,6 +1,5 @@
#!/bin/sh
-#
-#
+# $Id$
. parameters
diff --git a/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_histo.sh b/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_histo.sh
index 68a239db84a..78e6a3e03eb 100755
--- a/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_histo.sh
+++ b/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_histo.sh
@@ -1,4 +1,5 @@
#/bin/sh
+# $Id$
. parameters
diff --git a/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_percentiles.sh b/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_percentiles.sh
index 1ee71321146..4c22a8b0d08 100755
--- a/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_percentiles.sh
+++ b/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_percentiles.sh
@@ -1,4 +1,5 @@
#/bin/sh
+# $Id$
. parameters
diff --git a/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_stat.sh b/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_stat.sh
index f0fc96aed6c..a7fc05d4a16 100755
--- a/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_stat.sh
+++ b/TAO/orbsvcs/performance-tests/RTEvent/Colocated_Roundtrip/generate_stat.sh
@@ -1,4 +1,5 @@
#/bin/sh
+# $Id$
for i in $*; do
echo $i
diff --git a/TAO/orbsvcs/performance-tests/RTEvent/RTCORBA_Baseline/generate_cmp.sh b/TAO/orbsvcs/performance-tests/RTEvent/RTCORBA_Baseline/generate_cmp.sh
index 2c7c555e9e8..cabac7e569e 100755
--- a/TAO/orbsvcs/performance-tests/RTEvent/RTCORBA_Baseline/generate_cmp.sh
+++ b/TAO/orbsvcs/performance-tests/RTEvent/RTCORBA_Baseline/generate_cmp.sh
@@ -1,4 +1,5 @@
#/bin/sh
+# $Id$
for i in reactive rtcorba; do
echo $i ;
diff --git a/TAO/orbsvcs/performance-tests/RTEvent/RTCORBA_Baseline/generate_histo.sh b/TAO/orbsvcs/performance-tests/RTEvent/RTCORBA_Baseline/generate_histo.sh
index 9837c080edf..1415315f3d9 100755
--- a/TAO/orbsvcs/performance-tests/RTEvent/RTCORBA_Baseline/generate_histo.sh
+++ b/TAO/orbsvcs/performance-tests/RTEvent/RTCORBA_Baseline/generate_histo.sh
@@ -1,4 +1,5 @@
#/bin/sh
+# $Id$
for i in *.txt; do
b=`basename $i .txt`
diff --git a/TAO/orbsvcs/performance-tests/RTEvent/RTCORBA_Baseline/generate_percentiles.sh b/TAO/orbsvcs/performance-tests/RTEvent/RTCORBA_Baseline/generate_percentiles.sh
index 8d0914a6c16..e38f78a3884 100755
--- a/TAO/orbsvcs/performance-tests/RTEvent/RTCORBA_Baseline/generate_percentiles.sh
+++ b/TAO/orbsvcs/performance-tests/RTEvent/RTCORBA_Baseline/generate_percentiles.sh
@@ -1,4 +1,5 @@
#/bin/sh
+# $Id$
. parameters
diff --git a/TAO/orbsvcs/tests/AVStreams/Asynch_Three_Stage/README b/TAO/orbsvcs/tests/AVStreams/Asynch_Three_Stage/README
index dbe086c6a04..da7327a3545 100644
--- a/TAO/orbsvcs/tests/AVStreams/Asynch_Three_Stage/README
+++ b/TAO/orbsvcs/tests/AVStreams/Asynch_Three_Stage/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Description
-----------
@@ -33,7 +33,7 @@ sender [-f <filename>] [-r <data_rate>] [-s <sender device name>] [-a <address_f
-s sender device name --> This is the name of the sender as it will be
registered with the naming service and which
- receivers connect to.
+ receivers connect to.
-a address_file --> This file contains the sender and receiver
endpoint addressses to be used to set up a
diff --git a/TAO/orbsvcs/tests/AVStreams/Bidirectional_Flows/README b/TAO/orbsvcs/tests/AVStreams/Bidirectional_Flows/README
index c637b2c3b25..2da418d0aff 100644
--- a/TAO/orbsvcs/tests/AVStreams/Bidirectional_Flows/README
+++ b/TAO/orbsvcs/tests/AVStreams/Bidirectional_Flows/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Description
-----------
@@ -23,11 +23,11 @@ receiver -f <input_filename>
sender
------
-sender [-f <filename>] [-p <protocol>] [-r <frame rate>] [-d]
+sender [-f <filename>] [-p <protocol>] [-r <frame rate>] [-d]
-f filename --> The file to be streamed to the receiver (defaults to
- "input").
+ "input").
-p protocol --> The protocol string could be UDP or TCP (defaults to
UDP). But with the multicast address it should be UDP.
diff --git a/TAO/orbsvcs/tests/AVStreams/Component_Switching/README b/TAO/orbsvcs/tests/AVStreams/Component_Switching/README
index df2cefe3967..bb32f7f82ba 100644
--- a/TAO/orbsvcs/tests/AVStreams/Component_Switching/README
+++ b/TAO/orbsvcs/tests/AVStreams/Component_Switching/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Description
-----------
diff --git a/TAO/orbsvcs/tests/AVStreams/Full_Profile/README b/TAO/orbsvcs/tests/AVStreams/Full_Profile/README
index cbbbe9ea837..b4631e7bcbd 100644
--- a/TAO/orbsvcs/tests/AVStreams/Full_Profile/README
+++ b/TAO/orbsvcs/tests/AVStreams/Full_Profile/README
@@ -1,5 +1,7 @@
+$Id$
+
This directory contains a simple file transfer test program for the
-Full Profile in the TAO's Audio/Video Streaming Service.
+Full Profile in the TAO's Audio/Video Streaming Service.
This example follows the sequence of steps for using the Full Profile
as outlined in the following section of the Audio/Video Streams
@@ -11,9 +13,9 @@ This is from Section 2.3.8, The FlowConnection:
===================================================================================
- User A adds some flowendpoints to an instance of a full profile implementation of
- StreamEndPoint_A (myA) by calling myA->add_fep(aFEP);
-- User B adds some FEPs to an instance of a full profile implementation of
- StreamEndPoint_B (theirB).
+ StreamEndPoint_A (myA) by calling myA->add_fep(aFEP);
+- User B adds some FEPs to an instance of a full profile implementation of
+ StreamEndPoint_B (theirB).
User C creates a StreamCtrl and calls aSC->bind(myA,theirB,someQoS,nilflowSpec)
The bind() algorithm will find which pairs of FlowEndPoints are compatible
@@ -49,6 +51,6 @@ In that order:
Run the Naming Service
-server -f <filename>
+server -f <filename>
-ftp -f <filename> -p <TCP/UDP>
+ftp -f <filename> -p <TCP/UDP>
diff --git a/TAO/orbsvcs/tests/AVStreams/Latency/README b/TAO/orbsvcs/tests/AVStreams/Latency/README
index 6a96f8cff60..928bdf731e8 100644
--- a/TAO/orbsvcs/tests/AVStreams/Latency/README
+++ b/TAO/orbsvcs/tests/AVStreams/Latency/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
A simple latency test for the AVStreams pluggable protocol
framework. Run as follows:
diff --git a/TAO/orbsvcs/tests/AVStreams/Modify_QoS/README b/TAO/orbsvcs/tests/AVStreams/Modify_QoS/README
index 51ee6670ddf..47612f52563 100644
--- a/TAO/orbsvcs/tests/AVStreams/Modify_QoS/README
+++ b/TAO/orbsvcs/tests/AVStreams/Modify_QoS/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Description
-----------
@@ -10,8 +10,8 @@ receiver. The test has the following features:
2. Shows a mechanism to pace data.
3. Shows how we can modify the qos of a flow during run-time.
-To demonstrate the qos modification teh receiver calls the modify_qos
-(in this test we are modifying the frame rate of the flow) method after
+To demonstrate the qos modification teh receiver calls the modify_qos
+(in this test we are modifying the frame rate of the flow) method after
receiving 20 frames (a number selected for no good reason!!).
This call in turn is propagated to the sender. The sender then re-initializes
the frame rate to the one requested by the receiver.
@@ -30,11 +30,11 @@ receiver -f <output_filename>
sender
------
-sender [-f <filename>] [-p <protocol>] [-r <frame rate>] [-d]
+sender [-f <filename>] [-p <protocol>] [-r <frame rate>] [-d]
-f filename --> The file to be streamed to the receiver (defaults to
- "input").
+ "input").
-p protocol --> The protocol string could be UDP or TCP (defaults to
UDP). But with the multicast address it should be UDP.
diff --git a/TAO/orbsvcs/tests/AVStreams/Multicast/README b/TAO/orbsvcs/tests/AVStreams/Multicast/README
index 75a2837075e..45c0421fb6a 100644
--- a/TAO/orbsvcs/tests/AVStreams/Multicast/README
+++ b/TAO/orbsvcs/tests/AVStreams/Multicast/README
@@ -1,3 +1,5 @@
+$Id$
+
This directory contains a simple file transfer test program for the
Multicast in the TAO's Audio/Video Streaming Service. This program can
be run using UDP by default
diff --git a/TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/README b/TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/README
index dc6b2b16ea5..752fd6aa08c 100644
--- a/TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/README
+++ b/TAO/orbsvcs/tests/AVStreams/Multicast_Full_Profile/README
@@ -1,3 +1,4 @@
+$Id$
This directory contains a simple file transfer test program for the
Full Profile & Multicast in the TAO's Audio/Video Streaming
diff --git a/TAO/orbsvcs/tests/AVStreams/Multiple_Flows/README b/TAO/orbsvcs/tests/AVStreams/Multiple_Flows/README
index a6deaa1f938..5ccc3d3d823 100644
--- a/TAO/orbsvcs/tests/AVStreams/Multiple_Flows/README
+++ b/TAO/orbsvcs/tests/AVStreams/Multiple_Flows/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Description
-----------
@@ -14,13 +14,13 @@ The sender sets up two data streams:
1. Data_Receiver_One and
2. Data_Receiver_Two
-and sends the data from the input file on both these streams.
+and sends the data from the input file on both these streams.
The receiver creates two output files:
1. Data_Receiver_One and
2. Data_Receiver_Two
-corresponding to the two data streams.
+corresponding to the two data streams.
Running the test
----------------
@@ -35,11 +35,11 @@ receiver
sender
------
-sender [-f <filename>] [-p <protocol>] [-r <frame rate>] [-d]
+sender [-f <filename>] [-p <protocol>] [-r <frame rate>] [-d]
-f filename --> The file to be streamed to the receiver (defaults to
- "input").
+ "input").
-p protocol --> The protocol string could be UDP or TCP (defaults to
UDP). But with the multicast address it should be UDP.
diff --git a/TAO/orbsvcs/tests/AVStreams/Pluggable/README b/TAO/orbsvcs/tests/AVStreams/Pluggable/README
index f5d2725204d..3b1ac2eb1e4 100644
--- a/TAO/orbsvcs/tests/AVStreams/Pluggable/README
+++ b/TAO/orbsvcs/tests/AVStreams/Pluggable/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Description
-----------
@@ -24,7 +24,7 @@ server -f <output_filename>
ftp:
----
-ftp [-f <filename>] [-a <address>] [-p <protocol>] [-s] [-r <frame rate>] [-d]
+ftp [-f <filename>] [-a <address>] [-p <protocol>] [-s] [-r <frame rate>] [-d]
-f filename --> The file to be streamed to the server. It is currently
@@ -33,7 +33,7 @@ ftp [-f <filename>] [-a <address>] [-p <protocol>] [-s] [-r <frame rate>] [-d]
-a address --> Multicast address or the host on which the client is running
Default is multicast address
--p protocol --> The protocol string could be UDP or TCP. But with the
+-p protocol --> The protocol string could be UDP or TCP. But with the
multicast address it should be UDP.
-s --> flag to use SFP. This option cannot be used with -p
diff --git a/TAO/orbsvcs/tests/AVStreams/Pluggable_Flow_Protocol/README b/TAO/orbsvcs/tests/AVStreams/Pluggable_Flow_Protocol/README
index 20365125206..4406e09ce13 100644
--- a/TAO/orbsvcs/tests/AVStreams/Pluggable_Flow_Protocol/README
+++ b/TAO/orbsvcs/tests/AVStreams/Pluggable_Flow_Protocol/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Description
-----------
@@ -9,9 +9,9 @@ receiver. The test has the following features:
1. It tests the AVStreams Pluggable Protocol Framework
2. Shows a mechanism to pace data.
-A new flow protocol called Time Stamp Flow Protocol is plugged into the AV Streams Framework
-using the Pluggable Protocol Framework and the ACE Service Configurator. This new protocol
-is compiled into a library and loaded when the AVStreams framework is initialized. When a
+A new flow protocol called Time Stamp Flow Protocol is plugged into the AV Streams Framework
+using the Pluggable Protocol Framework and the ACE Service Configurator. This new protocol
+is compiled into a library and loaded when the AVStreams framework is initialized. When a
frame is sent this protocol appends a timestamp to the data being sent.
Running the test
@@ -28,11 +28,11 @@ receiver -f <output_filename>
sender
------
-sender [-f <filename>] [-p <protocol>] [-r <frame rate>] [-d]
+sender [-f <filename>] [-p <protocol>] [-r <frame rate>] [-d]
-f filename --> The file to be streamed to the receiver (defaults to
- "input").
+ "input").
-p protocol --> The protocol string could be UDP or TCP (defaults to
UDP). But with the multicast address it should be UDP.
diff --git a/TAO/orbsvcs/tests/AVStreams/Pluggable_Flow_Protocol/svc.conf.xml b/TAO/orbsvcs/tests/AVStreams/Pluggable_Flow_Protocol/svc.conf.xml
index ef8e8645e5b..4baaf351a7f 100644
--- a/TAO/orbsvcs/tests/AVStreams/Pluggable_Flow_Protocol/svc.conf.xml
+++ b/TAO/orbsvcs/tests/AVStreams/Pluggable_Flow_Protocol/svc.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from ./orbsvcs/tests/AVStreams/Pluggable_Flow_Protocol/svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<dynamic id="AV_Default_Resource_Factory" type="Service_Object">
<initializer path="TAO_AV" init="_make_TAO_AV_Default_Resource_Factory"/>
</dynamic>
diff --git a/TAO/orbsvcs/tests/AVStreams/README b/TAO/orbsvcs/tests/AVStreams/README
index 6a6799b4747..85909f85610 100644
--- a/TAO/orbsvcs/tests/AVStreams/README
+++ b/TAO/orbsvcs/tests/AVStreams/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
TAO Audio/Video Streaming service
---------------------------------
diff --git a/TAO/orbsvcs/tests/AVStreams/Simple_Three_Stage/README b/TAO/orbsvcs/tests/AVStreams/Simple_Three_Stage/README
index 1c589048ae7..aebf0f2e3c1 100644
--- a/TAO/orbsvcs/tests/AVStreams/Simple_Three_Stage/README
+++ b/TAO/orbsvcs/tests/AVStreams/Simple_Three_Stage/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Description
-----------
diff --git a/TAO/orbsvcs/tests/AVStreams/Simple_Two_Stage/README b/TAO/orbsvcs/tests/AVStreams/Simple_Two_Stage/README
index b1322064a56..c1dcda9e74f 100644
--- a/TAO/orbsvcs/tests/AVStreams/Simple_Two_Stage/README
+++ b/TAO/orbsvcs/tests/AVStreams/Simple_Two_Stage/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Description
-----------
@@ -31,10 +31,10 @@ receiver -f <output_filename> -s <stats_file>
sender
------
-sender [-f <filename>] [-p <protocol>] [-r <frame rate>] [-l <local_address>] [-a <peer_address>] [-s <# of frames sent>] [-b <frame size>] [-d]
+sender [-f <filename>] [-p <protocol>] [-r <frame rate>] [-l <local_address>] [-a <peer_address>] [-s <# of frames sent>] [-b <frame size>] [-d]
-f filename --> The file to be streamed to the receiver (defaults to
- "input").
+ "input").
-p protocol --> The protocol string could be UDP, TCP, RTP/UDP or SCTP_SEQ (defaults to
UDP). But with the multicast address it should be UDP.
@@ -42,10 +42,10 @@ sender [-f <filename>] [-p <protocol>] [-r <frame rate>] [-l <local_address>] [-
-r framerate--> The rate at which tha data frames need to be sent
(defaults to 30 frames per second).
--l address --> Local address in the format host:port. If protocol is SCTP_SEQ then specify ","
+-l address --> Local address in the format host:port. If protocol is SCTP_SEQ then specify ","
separated secondary addresses.eg. primary_addr:port,sec_addr1,sec_addr2
--a address --> Destination address in the format host:port. If protocol is SCTP_SEQ then specify ","
+-a address --> Destination address in the format host:port. If protocol is SCTP_SEQ then specify ","
separated secondary addresses.eg. primary_addr:port,sec_addr1,sec_addr2
-s frames --> The number of frames to be sent from the sender to the receiver. The
diff --git a/TAO/orbsvcs/tests/AVStreams/Simple_Two_Stage_With_QoS/README b/TAO/orbsvcs/tests/AVStreams/Simple_Two_Stage_With_QoS/README
index 34e15063ddd..79151577011 100644
--- a/TAO/orbsvcs/tests/AVStreams/Simple_Two_Stage_With_QoS/README
+++ b/TAO/orbsvcs/tests/AVStreams/Simple_Two_Stage_With_QoS/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Description
-----------
@@ -8,7 +8,7 @@ receiver. The test has the following features:
1.It tests the AVStreams Integration with the AQoSA API when compiled
and run with rapi=1. The test initiates an RSVP session between the
-sender and receiver.
+sender and receiver.
2.When rapi=0, that is, intserv is not used then it sets the diffserv
codepoint to 0x3f.
@@ -36,11 +36,11 @@ receiver -f <output_filename>
sender
------
-sender [-f <filename>] [-p <protocol>] [-r <frame rate>] [-l <local_address>] [-a <peer_address>] [-d]
+sender [-f <filename>] [-p <protocol>] [-r <frame rate>] [-l <local_address>] [-a <peer_address>] [-d]
-f filename --> The file to be streamed to the receiver (defaults to
- "input").
+ "input").
-p protocol --> The protocol string sould be QoS_UDP if rapi=1 else it
should be UDP,RTP/UDP, SCTP_SEQ (defaults to UDP).
diff --git a/TAO/orbsvcs/tests/AVStreams/mpeg/README.uav b/TAO/orbsvcs/tests/AVStreams/mpeg/README.uav
index c3f7f0135a6..d41cac85743 100644
--- a/TAO/orbsvcs/tests/AVStreams/mpeg/README.uav
+++ b/TAO/orbsvcs/tests/AVStreams/mpeg/README.uav
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
The original MPEG player in this directory has been removed,
since it has been superceded by a better example, developed
diff --git a/TAO/orbsvcs/tests/BiDir_CORBALOC/README b/TAO/orbsvcs/tests/BiDir_CORBALOC/README
index 20bf8b3126c..b4f3395f5a6 100644
--- a/TAO/orbsvcs/tests/BiDir_CORBALOC/README
+++ b/TAO/orbsvcs/tests/BiDir_CORBALOC/README
@@ -1,14 +1,15 @@
/**
+$Id$
+
@page BiDir_CORBALOC README File
-
+
This is a simple test to use BiDirGIOP to work with any corbaloc
URL's, such as the naming service. The test is ultra simple trying to
set BiDir policies and exporting a reference to an object to the name
service. The fun part is trying to contact the name service using
-corbaloc URL's.
+corbaloc URL's.
The test is in the orbsvcs directory because the test uses the
-NameService.
+NameService.
*/
- \ No newline at end of file
diff --git a/TAO/orbsvcs/tests/Bug_1334_Regression/README b/TAO/orbsvcs/tests/Bug_1334_Regression/README
index 8a0897a9fce..2390605d256 100644
--- a/TAO/orbsvcs/tests/Bug_1334_Regression/README
+++ b/TAO/orbsvcs/tests/Bug_1334_Regression/README
@@ -1,3 +1,5 @@
+$Id$
+
This test provides regression for Bug 1334.
It tests that a service initial ref IOR can be specified as an environment property in the form <ServiceName>IOR (in this case it is the NameService) and that the value set has correct precedence vis a vis -ORBInitRef values.
diff --git a/TAO/orbsvcs/tests/Bug_1393_Regression/README b/TAO/orbsvcs/tests/Bug_1393_Regression/README
index 1f95f0d4850..626c875b289 100644
--- a/TAO/orbsvcs/tests/Bug_1393_Regression/README
+++ b/TAO/orbsvcs/tests/Bug_1393_Regression/README
@@ -1,3 +1,5 @@
+$Id$
+
This is the regression test for the fix to Bug #1393.
sm@prismtechnologies.com
diff --git a/TAO/orbsvcs/tests/Bug_1395_Regression/README b/TAO/orbsvcs/tests/Bug_1395_Regression/README
index d1f531018e3..a548f5001e5 100644
--- a/TAO/orbsvcs/tests/Bug_1395_Regression/README
+++ b/TAO/orbsvcs/tests/Bug_1395_Regression/README
@@ -1,3 +1,5 @@
+$Id$
+
This test contains regression tests for fixes to bugs #1394 and #1395.
See the bugzilla records for these bugs for details. \ No newline at end of file
diff --git a/TAO/orbsvcs/tests/Bug_1436_Regression/README b/TAO/orbsvcs/tests/Bug_1436_Regression/README
index c0dbdd71810..0fce5501773 100644
--- a/TAO/orbsvcs/tests/Bug_1436_Regression/README
+++ b/TAO/orbsvcs/tests/Bug_1436_Regression/README
@@ -1,3 +1,5 @@
+$Id$
+
This test contains regression tests for fixes to bugs #1436
See the bugzilla records for these bugs for details.
diff --git a/TAO/orbsvcs/tests/Bug_1437_Regression/README b/TAO/orbsvcs/tests/Bug_1437_Regression/README
index 69f8256d38c..fc3980948a4 100644
--- a/TAO/orbsvcs/tests/Bug_1437_Regression/README
+++ b/TAO/orbsvcs/tests/Bug_1437_Regression/README
@@ -1,3 +1,5 @@
+$Id$
+
This is the regression test for Bug #1437
Please see Bug Tracker for details on this test.
diff --git a/TAO/orbsvcs/tests/Bug_2137_Regression/README b/TAO/orbsvcs/tests/Bug_2137_Regression/README
index 67181578d9e..248e0e4f256 100644
--- a/TAO/orbsvcs/tests/Bug_2137_Regression/README
+++ b/TAO/orbsvcs/tests/Bug_2137_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This test proves that TAOs Fault Tolerant object group equivalence comparison is according to the spec. Any error (assuming the Fault Tolerance orbsvcs library, and all its prerequisites, is available on the test platform) will indicate a regression or some sort of IOR demarshalling problem.
diff --git a/TAO/orbsvcs/tests/Bug_2247_Regression/README b/TAO/orbsvcs/tests/Bug_2247_Regression/README
index b2cda70e18d..deac6d0a7ce 100644
--- a/TAO/orbsvcs/tests/Bug_2247_Regression/README
+++ b/TAO/orbsvcs/tests/Bug_2247_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This program tests the behavior of FT aware client when there
is a fault in the server.
diff --git a/TAO/orbsvcs/tests/Bug_2248_Regression/README b/TAO/orbsvcs/tests/Bug_2248_Regression/README
index 20a95c0bb35..2a1a53898b8 100644
--- a/TAO/orbsvcs/tests/Bug_2248_Regression/README
+++ b/TAO/orbsvcs/tests/Bug_2248_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This test is regression for bug 2248
http://deuce.doc.wustl.edu/bugzilla/show_bug.cgi?id=2248
diff --git a/TAO/orbsvcs/tests/Bug_2285_Regression/README b/TAO/orbsvcs/tests/Bug_2285_Regression/README
index eb174b925d9..24103d8a41f 100644
--- a/TAO/orbsvcs/tests/Bug_2285_Regression/README
+++ b/TAO/orbsvcs/tests/Bug_2285_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
See http://deuce.doc.wustl.edu/bugzilla/show_bug.cgi?id=2285 for more.
diff --git a/TAO/orbsvcs/tests/Bug_2287_Regression/README b/TAO/orbsvcs/tests/Bug_2287_Regression/README
index affa491c70e..be807a127b8 100644
--- a/TAO/orbsvcs/tests/Bug_2287_Regression/README
+++ b/TAO/orbsvcs/tests/Bug_2287_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This test provides regression coverage for bugzilla #2287.
diff --git a/TAO/orbsvcs/tests/Bug_2316_Regression/README b/TAO/orbsvcs/tests/Bug_2316_Regression/README
index 89f1c090651..d9767c986bb 100644
--- a/TAO/orbsvcs/tests/Bug_2316_Regression/README
+++ b/TAO/orbsvcs/tests/Bug_2316_Regression/README
@@ -1,9 +1,9 @@
$Id$
-This client and server in this test both load the UIPMC protocol plug in
+This client and server in this test both load the UIPMC protocol plug in
(see svc.conf).
-The client creates a MIOP object ref and tests that it can be marshalled
+The client creates a MIOP object ref and tests that it can be marshalled
and demarshalled without problems by passing it over the wire to the server.
_Expected successful result_:
diff --git a/TAO/orbsvcs/tests/Bug_2615_Regression/README b/TAO/orbsvcs/tests/Bug_2615_Regression/README
index 7f2a33bcaa9..700f5e36b1f 100644
--- a/TAO/orbsvcs/tests/Bug_2615_Regression/README
+++ b/TAO/orbsvcs/tests/Bug_2615_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This test provides regression coverage for bug tao397.
diff --git a/TAO/orbsvcs/tests/Bug_2709_Regression/README b/TAO/orbsvcs/tests/Bug_2709_Regression/README
index 0f974d4cae2..195faf858cd 100644
--- a/TAO/orbsvcs/tests/Bug_2709_Regression/README
+++ b/TAO/orbsvcs/tests/Bug_2709_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This test checks that the IOGRs are works correctly if non-primary profile is process-local.
diff --git a/TAO/orbsvcs/tests/Bug_2777_Regression/README b/TAO/orbsvcs/tests/Bug_2777_Regression/README
index 22bdc29a667..b462ab40cc6 100755
--- a/TAO/orbsvcs/tests/Bug_2777_Regression/README
+++ b/TAO/orbsvcs/tests/Bug_2777_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This test checks that a shmiop corbaloc reference can be parsed correctly and connected correctly. It uses the NameService and nslist because they are compatible already built pairing of client and server. Their use is not relevent otherwise. This would work just as well with hello world. This is actually a test for TAO/tao/Strategies *not* TAO/orbsvcs but as it uses the NS it's here rather than in TAO/tests.
diff --git a/TAO/orbsvcs/tests/Bug_2925_Regression/README b/TAO/orbsvcs/tests/Bug_2925_Regression/README
index dae972d52fe..57bb002b2c4 100644
--- a/TAO/orbsvcs/tests/Bug_2925_Regression/README
+++ b/TAO/orbsvcs/tests/Bug_2925_Regression/README
@@ -11,9 +11,9 @@ _Expected successful result_:
D:\devel\DOCGroup\check\tao_ipv6\TAO\orbsvcs\tests\Bug_2925_Regression>run_test.pl
Activated as <IOR:00000000000000010000000000000001000000030000004c000102000000000f3233302e3235352e3235352e333300001ce20000000000010000002700000024000100000000000d63646d776674646f6d61696e0033302e000000000000000100000000>
-00<<; 00>>; 01<<; 01>>; 02<<; 02>>; 03<<; 03>>; 04<<; 04>>; 05<<; 05>>; 06<<; 06>>; 07<<; 07>>; 08<<; 09<<; 09>>; 08>>; 10<<; 10>>; 11<<; 11>>; 12<<; 12>>; 13<<; 13>>; 14<<; 14>>; 15<<; 15>>; 16<<; 16>>; 17<<; 17>>; 18<<; 18>>; 19<<; 19>>; 20<<; 20>>; 21<<; 21>>; 23<<; 23>>; 22<<; 22>>; 24<<; 24>>; 25<<; 25>>; 26<<; 26>>; 27<<; 27>>; 28<<; 28>>; 29<<; 29>>; 30<<; 30>>; 32<<; 32>>; 31<<; 31>>; 33<<; 33>>; 34<<; 34>>; 35<<; 35>>; 36<<; 36>>; 37<<; 37>>; 38<<; 38>>; 39<<; 39>>; 41>>; 40>>; 42>>; 43>>; 44>>; 45>>; 46>>; 47>>; 48>>; 49>>; 50>>; 51>>; 52>>; 53>>; 54>>; 55>>; 56>>; 57>>; 58>>; 59>>; 60>>; 61>>; 62>>; 63>>; 64>>; 65>>; 66>>; 67>>; 68>>; 69>>; 70>>; 71>>; 72>>; 73>>; 74>>; 75>>; 76>>; 77>>; 78>>; 79>>; 80>>; 81>>; 82>>; 83>>; 84>>; 85>>; 86>>; 87>>; 88>>; 89>>; 90>>; 91>>; 92>>; 93>>; 94>>; 95>>; 96>>; 97>>; 98>>; 99>>; 40<<; 41<<; 42<<; 43<<; 44<<; 45<<; 46<<; 47<<; 48<<; 49<<; 50<<; 51<<; 52<<; 53<<; 54<<; 55<<; 56<<; 57<<; 58<<; 59<<; 60<<;
+00<<; 00>>; 01<<; 01>>; 02<<; 02>>; 03<<; 03>>; 04<<; 04>>; 05<<; 05>>; 06<<; 06>>; 07<<; 07>>; 08<<; 09<<; 09>>; 08>>; 10<<; 10>>; 11<<; 11>>; 12<<; 12>>; 13<<; 13>>; 14<<; 14>>; 15<<; 15>>; 16<<; 16>>; 17<<; 17>>; 18<<; 18>>; 19<<; 19>>; 20<<; 20>>; 21<<; 21>>; 23<<; 23>>; 22<<; 22>>; 24<<; 24>>; 25<<; 25>>; 26<<; 26>>; 27<<; 27>>; 28<<; 28>>; 29<<; 29>>; 30<<; 30>>; 32<<; 32>>; 31<<; 31>>; 33<<; 33>>; 34<<; 34>>; 35<<; 35>>; 36<<; 36>>; 37<<; 37>>; 38<<; 38>>; 39<<; 39>>; 41>>; 40>>; 42>>; 43>>; 44>>; 45>>; 46>>; 47>>; 48>>; 49>>; 50>>; 51>>; 52>>; 53>>; 54>>; 55>>; 56>>; 57>>; 58>>; 59>>; 60>>; 61>>; 62>>; 63>>; 64>>; 65>>; 66>>; 67>>; 68>>; 69>>; 70>>; 71>>; 72>>; 73>>; 74>>; 75>>; 76>>; 77>>; 78>>; 79>>; 80>>; 81>>; 82>>; 83>>; 84>>; 85>>; 86>>; 87>>; 88>>; 89>>; 90>>; 91>>; 92>>; 93>>; 94>>; 95>>; 96>>; 97>>; 98>>; 99>>; 40<<; 41<<; 42<<; 43<<; 44<<; 45<<; 46<<; 47<<; 48<<; 49<<; 50<<; 51<<; 52<<; 53<<; 54<<; 55<<; 56<<; 57<<; 58<<; 59<<; 60<<;
(28527|1) client finished successfully..
-61<<; 62<<; 63<<; 64<<; 65<<; 66<<; 67<<; 68<<; 69<<; 70<<; 71<<; 72<<; 73<<; 74<<; 75<<; 76<<; 77<<; 78<<; 79<<; 80<<; 81<<; 82<<; 83<<; 84<<; 85<<; 86<<; 87<<; 88<<; 89<<; 90<<; 91<<; 92<<; 93<<; 94<<; 95<<; 96<<; 97<<; 98<<; 99<<;
+61<<; 62<<; 63<<; 64<<; 65<<; 66<<; 67<<; 68<<; 69<<; 70<<; 71<<; 72<<; 73<<; 74<<; 75<<; 76<<; 77<<; 78<<; 79<<; 80<<; 81<<; 82<<; 83<<; 84<<; 85<<; 86<<; 87<<; 88<<; 89<<; 90<<; 91<<; 92<<; 93<<; 94<<; 95<<; 96<<; 97<<; 98<<; 99<<;
(28526|1) server finished successfully..
_Expected regression result_:
diff --git a/TAO/orbsvcs/tests/Bug_3215_Regression/README b/TAO/orbsvcs/tests/Bug_3215_Regression/README
index 05a4a358c40..04fe5f8c227 100644
--- a/TAO/orbsvcs/tests/Bug_3215_Regression/README
+++ b/TAO/orbsvcs/tests/Bug_3215_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
N.B. This test is a rip off of the bug #2287 regression test. The only significant change is that after throwing an
initial location forward perm back to the client, redirecting it to the same server, the server then starts throwing transients up to (or indeed past) the expiration time. At this poin the client ORB should cease retrying and report the transient to the application.
diff --git a/TAO/orbsvcs/tests/Bug_3216_Regression/README b/TAO/orbsvcs/tests/Bug_3216_Regression/README
index 4d2dc9729d4..ad38bd122d3 100644
--- a/TAO/orbsvcs/tests/Bug_3216_Regression/README
+++ b/TAO/orbsvcs/tests/Bug_3216_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This test checks that the -ORBFTSendFullGroupTC property switches between sending only the IOGR group version as an FTGroupVersionServiceContext on requests or instead the complete FTGroupTaggedComponent data.
diff --git a/TAO/orbsvcs/tests/Bug_3387_Regression/README b/TAO/orbsvcs/tests/Bug_3387_Regression/README
index 46dcd2331b8..f85c922f5d2 100644
--- a/TAO/orbsvcs/tests/Bug_3387_Regression/README
+++ b/TAO/orbsvcs/tests/Bug_3387_Regression/README
@@ -1,7 +1,6 @@
-Event Notification Service
-
+$Id$
-File: Bug_3387_Regression test
+Event Notification Service
This directory contains a test for this bug.
@@ -13,7 +12,7 @@ EndPoint, this can occur on embedded system or with ORBEndPoint, and
after connecting, disconnectes then, after rebooting or re-running,
comes back and tries to reconnect. With the bug, the new consumer
receives no events. After fixing the bug the consumer will again
-receive events.
+receive events.
All of the special edge conditions are duplicated in the test.
diff --git a/TAO/orbsvcs/tests/Bug_3444_Regression/README b/TAO/orbsvcs/tests/Bug_3444_Regression/README
index f6bd279783d..8041002f925 100644
--- a/TAO/orbsvcs/tests/Bug_3444_Regression/README
+++ b/TAO/orbsvcs/tests/Bug_3444_Regression/README
@@ -7,7 +7,7 @@ _Expected successful result_:
$>run_test.pl
Starting IIOP test
- server -o /home/vzykov/devel/PrismTech/zbuild/tao161_XXXTAO_gcc423_ipv6-x86_64/tao161/prism/tests/tao690_regression/server.ior
+ server -o /home/vzykov/devel/PrismTech/zbuild/tao161_XXXTAO_gcc423_ipv6-x86_64/tao161/prism/tests/tao690_regression/server.ior
client -k file:///home/vzykov/devel/PrismTech/zbuild/tao161_XXXTAO_gcc423_ipv6-x86_64/tao161/prism/tests/tao690_regression/server.ior -ORBIPHopLimit 1 -ORBDebugLevel 1 -ORBLogFile /home/vzykov/devel/PrismTech/zbuild/tao161_XXXTAO_gcc423_ipv6-x86_64/tao161/prism/tests/tao690_regression/test.log
Client's log:
TAO (22932|140355161454320) Default_Resource_Factory - codeset manager=0x61b7e0
diff --git a/TAO/orbsvcs/tests/Bug_3598b_Regression/README b/TAO/orbsvcs/tests/Bug_3598b_Regression/README
index b2d570b8158..343f8b57a61 100644
--- a/TAO/orbsvcs/tests/Bug_3598b_Regression/README
+++ b/TAO/orbsvcs/tests/Bug_3598b_Regression/README
@@ -2,7 +2,7 @@ $Id$
This test attempts to contact a server IOR with no connectable profile in it (on account of how there is no server running).
-The method invocation should fail but the installed client request interceptor should have its send_request and receive_exception methods invoked regardless.
+The method invocation should fail but the installed client request interceptor should have its send_request and receive_exception methods invoked regardless.
The expected result looks like:
diff --git a/TAO/orbsvcs/tests/CosEvent/Basic/svc.pull.conf.xml b/TAO/orbsvcs/tests/CosEvent/Basic/svc.pull.conf.xml
index 14073ec2a16..79cf07751ca 100644
--- a/TAO/orbsvcs/tests/CosEvent/Basic/svc.pull.conf.xml
+++ b/TAO/orbsvcs/tests/CosEvent/Basic/svc.pull.conf.xml
@@ -1,6 +1,8 @@
<?xml version='1.0'?>
<!-- Converted from ./orbsvcs/tests/CosEvent/Basic/svc.pull.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
<!-- $Id$ -->
+ <!-- -->
<static id="CEC_Factory" params="-CECReactivePullingPeriod 10000"/>
</ACE_Svc_Conf>
diff --git a/TAO/orbsvcs/tests/CosEvent/Timeout/README b/TAO/orbsvcs/tests/CosEvent/Timeout/README
index 6b415c9ba00..22820db4eb2 100644
--- a/TAO/orbsvcs/tests/CosEvent/Timeout/README
+++ b/TAO/orbsvcs/tests/CosEvent/Timeout/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
CosEvent timeout feature test
diff --git a/TAO/orbsvcs/tests/EC_Custom_Marshal/README b/TAO/orbsvcs/tests/EC_Custom_Marshal/README
index d7001b8a7d3..c555647b072 100644
--- a/TAO/orbsvcs/tests/EC_Custom_Marshal/README
+++ b/TAO/orbsvcs/tests/EC_Custom_Marshal/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This example shows how to do custom marshaling of IDL and
non-IDL data structures in TAO, store the resulting CDR stream in an
diff --git a/TAO/orbsvcs/tests/EC_MT_Mcast/README b/TAO/orbsvcs/tests/EC_MT_Mcast/README
index 561d0e39cae..dd0a08b8409 100644
--- a/TAO/orbsvcs/tests/EC_MT_Mcast/README
+++ b/TAO/orbsvcs/tests/EC_MT_Mcast/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This directory contains a regression test for a thread safety problem
in the TAO_ECG_UDP_Receiver class.
diff --git a/TAO/orbsvcs/tests/EC_Mcast/README b/TAO/orbsvcs/tests/EC_Mcast/README
index 9f195081d11..408a848c258 100644
--- a/TAO/orbsvcs/tests/EC_Mcast/README
+++ b/TAO/orbsvcs/tests/EC_Mcast/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This test can be pretty complicated to run, a sample configuration file is
included to help you startup.
diff --git a/TAO/orbsvcs/tests/EC_Multiple/README b/TAO/orbsvcs/tests/EC_Multiple/README
index 14119bdfd87..aaade7980cd 100644
--- a/TAO/orbsvcs/tests/EC_Multiple/README
+++ b/TAO/orbsvcs/tests/EC_Multiple/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This test ilustrates how to connect multiple ECs; it has many
options and can be configured to run a single EC, two ECs connected
diff --git a/TAO/orbsvcs/tests/EC_Throughput/README b/TAO/orbsvcs/tests/EC_Throughput/README
index 1ff4896f5c9..f768cd203ad 100644
--- a/TAO/orbsvcs/tests/EC_Throughput/README
+++ b/TAO/orbsvcs/tests/EC_Throughput/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This test can be used to measure the performance of TAO's
Real-time Event Service. The test can be configured to change:
diff --git a/TAO/orbsvcs/tests/Event/Basic/README b/TAO/orbsvcs/tests/Event/Basic/README
index 26408823b69..941b09931b4 100644
--- a/TAO/orbsvcs/tests/Event/Basic/README
+++ b/TAO/orbsvcs/tests/Event/Basic/README
@@ -1,9 +1,9 @@
-# $Id$
+$Id$
Basic tests for the real-time event channel.
This directory contains several tests to exercise the real-time event
-channel features, debug it and stress test it. The tests are as simple
+channel features, debug it and stress test it. The tests are as simple
as possible, but not simpler.
Here are some canonical test configurations:
diff --git a/TAO/orbsvcs/tests/Event/Basic/control.conf.xml b/TAO/orbsvcs/tests/Event/Basic/control.conf.xml
index 05dd8b01c20..555bb676ccd 100644
--- a/TAO/orbsvcs/tests/Event/Basic/control.conf.xml
+++ b/TAO/orbsvcs/tests/Event/Basic/control.conf.xml
@@ -1,6 +1,8 @@
<?xml version='1.0'?>
<!-- Converted from ./orbsvcs/tests/Event/Basic/control.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
<!-- $Id$ -->
+ <!-- -->
<static id="EC_Factory" params="-ECConsumerControl reactive -ECSupplierControl reactive -ECConsumerControlPeriod 50000 -ECSupplierControlPeriod 50000"/>
</ACE_Svc_Conf>
diff --git a/TAO/orbsvcs/tests/Event/Mcast/AddrServer/README b/TAO/orbsvcs/tests/Event/Mcast/AddrServer/README
index 89d4b2a1155..cc89da0a317 100644
--- a/TAO/orbsvcs/tests/Event/Mcast/AddrServer/README
+++ b/TAO/orbsvcs/tests/Event/Mcast/AddrServer/README
@@ -1,3 +1,5 @@
+$Id$
+
Real-Time Event Service Address Server test
This directory contains a simple test intended to be run manually across
diff --git a/TAO/orbsvcs/tests/Event/Mcast/Complex/README b/TAO/orbsvcs/tests/Event/Mcast/Complex/README
index e0000644dc7..2648cadd5cc 100644
--- a/TAO/orbsvcs/tests/Event/Mcast/Complex/README
+++ b/TAO/orbsvcs/tests/Event/Mcast/Complex/README
@@ -1,10 +1,10 @@
-// $Id$
+$Id$
Goals:
------
This is a step up from the Simple mcast test. There are still two
Event Channels participating: one sends out its events via multicast,
-while the second one listens for events on multicast.
+while the second one listens for events on multicast.
But this test uses ECG_Mcast_Gateway configured with Complex
Address Server and Complex Mcast Handler components. In other words,
@@ -21,7 +21,7 @@ configured to use a different mcast group for each event type.
Supplier pushes 100 events of each of the three event types to its
Event Channel while the consumer waits for events from its EC. Once
the consumer receives 100 events of each of the three types it
-expects, it destroys its EC and exits.
+expects, it destroys its EC and exits.
Command-line Options:
---------------------
@@ -30,9 +30,9 @@ Consumer: $consumer -ORBInitRef Event_Service=<ior>
Supplier: $supplier -ORBInitRef Event_Service=<ior>
Mcast-equipped EC: $gateway_ec -ORBsvcconf <conf_file> -i <ior_file>
-where
+where
<ior_file> is the name of the file to which the ior of the Event
- Channel will be printed
+ Channel will be printed
<conf_file> is a service conf file used to configure the Event Channel
and the multicast components. See consumer-ec.conf or
supplier-ec.conf for examples, or
@@ -41,14 +41,14 @@ where
To run:
-------
-Automagically (runs all executables, processes output):
+Automagically (runs all executables, processes output):
$ run_test.pl
Manually:
$gateway-ec -ORBsvcconf consumer-ec.conf -i consumer-ec.ior
-$consumer -ORBInitRef Event_Service=file://consumer-ec.ior
+$consumer -ORBInitRef Event_Service=file://consumer-ec.ior
$gateway-ec -ORBsvcconf supplier-ec.conf -i supplier-ec.ior
-$supplier -ORBInitRef Event_Service=file://supplier-ec.ior
+$supplier -ORBInitRef Event_Service=file://supplier-ec.ior
diff --git a/TAO/orbsvcs/tests/Event/Mcast/RTEC_MCast_Federated/README b/TAO/orbsvcs/tests/Event/Mcast/RTEC_MCast_Federated/README
index 548f8a03a48..060bc6b0a02 100644
--- a/TAO/orbsvcs/tests/Event/Mcast/RTEC_MCast_Federated/README
+++ b/TAO/orbsvcs/tests/Event/Mcast/RTEC_MCast_Federated/README
@@ -1,3 +1,5 @@
+$Id$
+
Real-Time Event Service
diff --git a/TAO/orbsvcs/tests/Event/Mcast/Simple/README b/TAO/orbsvcs/tests/Event/Mcast/Simple/README
index 14c87028fb3..35722d36e2f 100644
--- a/TAO/orbsvcs/tests/Event/Mcast/Simple/README
+++ b/TAO/orbsvcs/tests/Event/Mcast/Simple/README
@@ -1,16 +1,16 @@
-// $Id$
+$Id$
Goals:
------
This is the most basic test for federating Event Channels via
multicast or udp. Two Event Channels participate: one sends out its events
via multicast (or udp), while the second one listens for events on
-multicast (or udp).
+multicast (or udp).
-This test can be run with two different configurations: multicast is used
+This test can be run with two different configurations: multicast is used
for federating event channels in one and udp is used in another. The
test uses ECG_Mcast_Gateway configured with Simple Address Server and
-Simple Mcast Handler or UDP Handler components.
+Simple Mcast Handler or UDP Handler components.
Description:
------------
@@ -28,9 +28,9 @@ Consumer: $consumer -ORBInitRef Event_Service=<ior>
Supplier: $supplier -ORBInitRef Event_Service=<ior>
Mcast-equipped EC: $gateway_ec -ORBsvcconf <conf_file> -i <ior_file>
-where
+where
<ior_file> is the name of the file to which the ior of the Event
- Channel will be printed
+ Channel will be printed
<conf_file> is a service conf file used to configure the Event Channel
and the multicast components. See consumer-ec.conf or
supplier-ec.conf for examples, or
@@ -39,24 +39,24 @@ where
To run:
-------
-Automagically (runs all executables, processes output):
+Automagically (runs all executables, processes output):
$ run_test.pl
Manually:
-
+
Multicast Federation test
$gateway-ec -ORBsvcconf consumer-ec.conf -i consumer-ec.ior
-$consumer -ORBInitRef Event_Service=file://consumer-ec.ior
+$consumer -ORBInitRef Event_Service=file://consumer-ec.ior
$gateway-ec -ORBsvcconf supplier-ec.conf -i supplier-ec.ior
-$supplier -ORBInitRef Event_Service=file://supplier-ec.ior
+$supplier -ORBInitRef Event_Service=file://supplier-ec.ior
UDP Federation test
$gateway-ec -ORBsvcconf udp-consumer-ec.conf -i consumer-ec.ior
-$consumer -ORBInitRef Event_Service=file://consumer-ec.ior
+$consumer -ORBInitRef Event_Service=file://consumer-ec.ior
$gateway-ec -ORBsvcconf udp-supplier-ec.conf -i supplier-ec.ior
-$supplier -ORBInitRef Event_Service=file://supplier-ec.ior
+$supplier -ORBInitRef Event_Service=file://supplier-ec.ior
diff --git a/TAO/orbsvcs/tests/Event/Mcast/Two_Way/README b/TAO/orbsvcs/tests/Event/Mcast/Two_Way/README
index 33f62b9c323..a03ad31c0c1 100644
--- a/TAO/orbsvcs/tests/Event/Mcast/Two_Way/README
+++ b/TAO/orbsvcs/tests/Event/Mcast/Two_Way/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Goals:
------
diff --git a/TAO/orbsvcs/tests/Event/Performance/README b/TAO/orbsvcs/tests/Event/Performance/README
index 2a62f56080a..fefc7214e88 100644
--- a/TAO/orbsvcs/tests/Event/Performance/README
+++ b/TAO/orbsvcs/tests/Event/Performance/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Performance tests for the real-time event channel.
diff --git a/TAO/orbsvcs/tests/Event/UDP/README b/TAO/orbsvcs/tests/Event/UDP/README
index 55aad804e20..0c99de8bdca 100644
--- a/TAO/orbsvcs/tests/Event/UDP/README
+++ b/TAO/orbsvcs/tests/Event/UDP/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This directory contains a very simple example of a
multicast-based federation of event services.
@@ -18,7 +18,7 @@ $ MCast
If you need to set the multicast group and port you can use
the -m option:
-$ MCast -m 224.100.2.1:12345
+$ MCast -m 224.100.2.1:12345
Run the test in multiple machines on the same network. If
there is only one process you should only receive 1000 events in the
diff --git a/TAO/orbsvcs/tests/Event/UDP/svc.conf.xml b/TAO/orbsvcs/tests/Event/UDP/svc.conf.xml
index 159faa97abc..3e6b6eb22aa 100644
--- a/TAO/orbsvcs/tests/Event/UDP/svc.conf.xml
+++ b/TAO/orbsvcs/tests/Event/UDP/svc.conf.xml
@@ -1,6 +1,8 @@
<?xml version='1.0'?>
<!-- Converted from ./orbsvcs/examples/RtEC/MCast/svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
<!-- $Id$ -->
+ <!-- -->
<static id="EC_Factory" params="-ECObserver basic -ECProxyPushConsumerCollection mt:copy_on_write:list -ECProxyPushSupplierCollection mt:copy_on_write:list -ECDispatching reactive -ECScheduling null -ECFiltering prefix -ECSupplierFilter per-supplier"/>
</ACE_Svc_Conf>
diff --git a/TAO/orbsvcs/tests/Event/lib/README b/TAO/orbsvcs/tests/Event/lib/README
index ead5bcaaacc..4066b9e8a9c 100644
--- a/TAO/orbsvcs/tests/Event/lib/README
+++ b/TAO/orbsvcs/tests/Event/lib/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This directory contains a small framework to write tests for the
real-time event service. Check the Basic or Performance directories
diff --git a/TAO/orbsvcs/tests/FT_App/replica.cmd b/TAO/orbsvcs/tests/FT_App/replica.cmd
index 6c242ad4a00..13797a59811 100755
--- a/TAO/orbsvcs/tests/FT_App/replica.cmd
+++ b/TAO/orbsvcs/tests/FT_App/replica.cmd
@@ -1,3 +1,5 @@
+@REM $Id$
+
@if "%1a" == "a" goto error
@if "%2a" == "a" goto error
release\ft_replica -o %1.ior -q -f none -l %1 -i %2 %3 %4 %5 %6 %7 %8 %9
diff --git a/TAO/orbsvcs/tests/FaultTolerance/GroupRef_Manipulation/README b/TAO/orbsvcs/tests/FaultTolerance/GroupRef_Manipulation/README
index 19cb9b85892..73780e20b50 100644
--- a/TAO/orbsvcs/tests/FaultTolerance/GroupRef_Manipulation/README
+++ b/TAO/orbsvcs/tests/FaultTolerance/GroupRef_Manipulation/README
@@ -1,14 +1,16 @@
/**
+$Id$
+
@page GroupRef_Manipulation Test README File
This is a simple test which tests the following
- If a client receives a location forwarding with a new IOGR version,
the next request from the client should have the new version in the
- FT_GROUP_VERSION context of the GIOP header
+ FT_GROUP_VERSION context of the GIOP header
-- that location forwarding to a FTORB actually works.
+- that location forwarding to a FTORB actually works.
The test creates two IOR's and sets both of them as primaries. The
first IOR is passed to the client for making invocations. After a
@@ -16,6 +18,6 @@ certain number of invocations from the client, the server request
interceptor throw ForwardRequest exception with a reference to the
second IOR which also has new IOGR revision information. The
server side interceptor checks whether the subsequent calls have the
-new version information.
+new version information.
*/
diff --git a/TAO/orbsvcs/tests/FaultTolerance/IOGR/README b/TAO/orbsvcs/tests/FaultTolerance/IOGR/README
index 5c209a35df4..d5be88e22a6 100644
--- a/TAO/orbsvcs/tests/FaultTolerance/IOGR/README
+++ b/TAO/orbsvcs/tests/FaultTolerance/IOGR/README
@@ -1,3 +1,5 @@
+$Id$
+
This program tests the basic FT IOGR implementation. The aim is to set
a primary server and see whether the client gives preference to
contact a primary for its first invocation. When the primary is killed
diff --git a/TAO/orbsvcs/tests/FaultTolerance/IOGR/svc.conf.xml b/TAO/orbsvcs/tests/FaultTolerance/IOGR/svc.conf.xml
index b26c9398b5b..be93f9abea5 100644
--- a/TAO/orbsvcs/tests/FaultTolerance/IOGR/svc.conf.xml
+++ b/TAO/orbsvcs/tests/FaultTolerance/IOGR/svc.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from ./orbsvcs/tests/FaultTolerance/IOGR/svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<dynamic id="FT_ClientService_Activate" type="Service_Object">
<initializer path="TAO_FT_ClientORB" init="_make_TAO_FT_ClientService_Activate"/>
</dynamic>
diff --git a/TAO/orbsvcs/tests/HTIOP/AMI/README b/TAO/orbsvcs/tests/HTIOP/AMI/README
index 04117a71d7d..40368fbdc4a 100644
--- a/TAO/orbsvcs/tests/HTIOP/AMI/README
+++ b/TAO/orbsvcs/tests/HTIOP/AMI/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
This is a simple test for AMI callback model.
@@ -8,7 +8,7 @@ Use TAO_HAS_CORBA_MESSAGING
and TAO_HAS_AMI_CALLBACK
to compile TAO. This enables the AMI code in it.
-Use -GC on the TAO IDL compiler to generate code for AMI callbacks.
+Use -GC on the TAO IDL compiler to generate code for AMI callbacks.
Usage:
=====
diff --git a/TAO/orbsvcs/tests/HTIOP/Hello/README b/TAO/orbsvcs/tests/HTIOP/Hello/README
index 52221e74599..9ac52d04161 100644
--- a/TAO/orbsvcs/tests/HTIOP/Hello/README
+++ b/TAO/orbsvcs/tests/HTIOP/Hello/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Hello Test README File
Simple Test to test the functionality and usage of HTIOP protocol
diff --git a/TAO/orbsvcs/tests/IOR_MCast/README b/TAO/orbsvcs/tests/IOR_MCast/README
index c1ba4a88b3a..24c68f7b043 100644
--- a/TAO/orbsvcs/tests/IOR_MCast/README
+++ b/TAO/orbsvcs/tests/IOR_MCast/README
@@ -1,9 +1,9 @@
-// $Id$
+$Id$
This is a simple test for testing the multicast ior parser with format
mcast://multicast_address:port:nicaddress:ttl
-The Client requests for the IOR of a service that is multicasted.
+The Client requests for the IOR of a service that is multicasted.
The Server helps get this ior with the use of the TAO_IOR_Multicast
class in the libTAO_Svc_Utils library.
diff --git a/TAO/orbsvcs/tests/ImplRepo/Bug_2604_Regression/README b/TAO/orbsvcs/tests/ImplRepo/Bug_2604_Regression/README
index 1d7e4626ed6..11163624b2b 100644
--- a/TAO/orbsvcs/tests/ImplRepo/Bug_2604_Regression/README
+++ b/TAO/orbsvcs/tests/ImplRepo/Bug_2604_Regression/README
@@ -1,3 +1,5 @@
+$Id$
+
Purpose:
This test demonstrates bug 2604 (see Bugzilla for details), which
involves per_client activation failures with the ImR.
diff --git a/TAO/orbsvcs/tests/ImplRepo/NameService/README b/TAO/orbsvcs/tests/ImplRepo/NameService/README
index b89a2d8e93d..071d2b8d417 100644
--- a/TAO/orbsvcs/tests/ImplRepo/NameService/README
+++ b/TAO/orbsvcs/tests/ImplRepo/NameService/README
@@ -1,3 +1,5 @@
+$Id$
+
================================================================================
-Soon there will be a test to show off how the Implementation Repository can
+Soon there will be a test to show off how the Implementation Repository can
automatically activate the NameService and other common services.
diff --git a/TAO/orbsvcs/tests/ImplRepo/README b/TAO/orbsvcs/tests/ImplRepo/README
index 82647bcdb19..d55a9c2f33d 100644
--- a/TAO/orbsvcs/tests/ImplRepo/README
+++ b/TAO/orbsvcs/tests/ImplRepo/README
@@ -31,7 +31,7 @@ services. To do this run:
ImplRepo_Service -c install
ImR_Activator -c install
-If you want to reinstall or change the installed settings then you
+If you want to reinstall or change the installed settings then you
must first use:
ImplRepo_Service -c remove
@@ -53,11 +53,11 @@ copy %tao_root%\orbsvcs\ImplRepo_Service\*.exe .\
ImR_Activator -c install -x activator.xml -t 60 -d 0 -orbinitref ImplRepoService=corbaloc::localhost:8888/ImplRepoService
ImplRepo_Service -c install -d 0 -orbendpoint iiop://:8888
-* Start both services.
+* Start both services.
net start taoimrlocator
net start taoimractivator
-* Register a server
+* Register a server
cd %tao_root%\orbsvcs\tests\ImplRepo
%tao_root%\orbsvcs\ImplRepo_service\tao_imr add airplane_server -orbuseimr 1 -orbinitref ImplRepoService=corbaloc::localhost:8888/ImplRepoService
@@ -70,6 +70,6 @@ airplane_client -k file://airplane.ior
airplane_client -k corbaloc::localhost:8888/airplane_server
-More information about the Implementation Repository can be found in
+More information about the Implementation Repository can be found in
TAO/docs.
diff --git a/TAO/orbsvcs/tests/InterfaceRepo/Application_Test/README b/TAO/orbsvcs/tests/InterfaceRepo/Application_Test/README
index 113da0997f8..ccaf67f4cae 100644
--- a/TAO/orbsvcs/tests/InterfaceRepo/Application_Test/README
+++ b/TAO/orbsvcs/tests/InterfaceRepo/Application_Test/README
@@ -40,15 +40,15 @@ The order of events is as follows:
through the Naming Service, but here the
IOR is read from the file where it was
stored by the server.
-
+
(c) The client then makes several calls to the
- repository, first searching for an object
+ repository, first searching for an object
with the name 'warehouse'. Once this is
found, the client checks to see if 'warehouse'
may contain other objects. If so, it gets a
list of all the objects 'contained' by
warehouse which are interfaces. Each inteface's
- name is checked to find one called 'inventory'.
+ name is checked to find one called 'inventory'.
Then the client gets a list of all inventory's
operations. Each of these is checked to find
one called 'getCDinfo'. The client then gets
@@ -60,7 +60,7 @@ The order of events is as follows:
sets its return type and adds parameters
according to the information extracted from
the operation repository object. Notice that
- the client does not have the correct string for
+ the client does not have the correct string for
the album title, but one that is commonly used
by people when referring to that album. The
server will try to be smart about this, and
@@ -84,7 +84,7 @@ object to get its InterfaceDef from the respository, and then
query the IntefaceDef object to get information about its
operations and their parameters. If the command line option -n
is passed to the client (or to the Perl script), the client will
-resolve the repository by a call to
+resolve the repository by a call to
orb->resolve_initial_references ("InterfaceRepository") and use
information it has (through some unspecified means) about the
local name of the interface and of its containing module,
@@ -103,9 +103,9 @@ included in the application (in test_i.h) and TAO_IFR_Client added to
the list of linked libraries. This will force the static Initializer
function in the library to initialize all the IFR typecodes and to
load the library. Applications that don't need to call _get_interface
-don't need to link this library and can thus keep the server-side
+don't need to link this library and can thus keep the server-side
footprint smaller.
-More information about the Interface Repository can be found in
+More information about the Interface Repository can be found in
TAO/docs/releasenotes/index.html.
diff --git a/TAO/orbsvcs/tests/InterfaceRepo/Bug_2962_Regression/ReadMe.txt b/TAO/orbsvcs/tests/InterfaceRepo/Bug_2962_Regression/ReadMe.txt
index 9ef6800ee4a..5e469087173 100644
--- a/TAO/orbsvcs/tests/InterfaceRepo/Bug_2962_Regression/ReadMe.txt
+++ b/TAO/orbsvcs/tests/InterfaceRepo/Bug_2962_Regression/ReadMe.txt
@@ -1,3 +1,5 @@
+$Id$
+
tao#532 - Bugzilla Bug 2962
The original problem is that asking the IFR for the length of an array doesn't
diff --git a/TAO/orbsvcs/tests/InterfaceRepo/Bug_3155_Regression/ReadMe.txt b/TAO/orbsvcs/tests/InterfaceRepo/Bug_3155_Regression/ReadMe.txt
index 84876c5d797..0dca552e6a5 100644
--- a/TAO/orbsvcs/tests/InterfaceRepo/Bug_3155_Regression/ReadMe.txt
+++ b/TAO/orbsvcs/tests/InterfaceRepo/Bug_3155_Regression/ReadMe.txt
@@ -1,3 +1,5 @@
+$Id$
+
(tao573 Similar to tao567, but not with an abstract base valuetype)
when the describe_ext_value() call is done, this produces
diff --git a/TAO/orbsvcs/tests/InterfaceRepo/Bug_3174_Regression/ReadMe.txt b/TAO/orbsvcs/tests/InterfaceRepo/Bug_3174_Regression/ReadMe.txt
index 5f7f1a6530b..74d3b48cc00 100644
--- a/TAO/orbsvcs/tests/InterfaceRepo/Bug_3174_Regression/ReadMe.txt
+++ b/TAO/orbsvcs/tests/InterfaceRepo/Bug_3174_Regression/ReadMe.txt
@@ -1,3 +1,5 @@
+$Id$
+
The IFR was returning incorrect results for enums:
For m1::c2 the TAO_IFR function type()->kind() of CORBA::ConstantDef was returning 0
diff --git a/TAO/orbsvcs/tests/InterfaceRepo/IDL3_Test/README b/TAO/orbsvcs/tests/InterfaceRepo/IDL3_Test/README
index 98b048231ad..2acbcb5d2a0 100644
--- a/TAO/orbsvcs/tests/InterfaceRepo/IDL3_Test/README
+++ b/TAO/orbsvcs/tests/InterfaceRepo/IDL3_Test/README
@@ -1,7 +1,7 @@
$Id$
This test specializes in the Interface Repository support of
-valuetypes and the IDL extensions that were added to
+valuetypes and the IDL extensions that were added to
support the CORBA Component Model (CCM). Testing of most of
the other IDL types can be found in the nearby IFR_Test
directory.
@@ -25,7 +25,7 @@ and sequence lengths found in test.idl, appear at the top of
idl3_client.cpp. This allows the test to be easily extended
to cover more complicated use cases.
-More information about the Interface Repository can be found in
+More information about the Interface Repository can be found in
TAO/docs/releasenotes/index.html.
diff --git a/TAO/orbsvcs/tests/InterfaceRepo/IDL_Test/README b/TAO/orbsvcs/tests/InterfaceRepo/IDL_Test/README
index ec7af78e229..c3e7be4ef93 100644
--- a/TAO/orbsvcs/tests/InterfaceRepo/IDL_Test/README
+++ b/TAO/orbsvcs/tests/InterfaceRepo/IDL_Test/README
@@ -1,3 +1,5 @@
+$Id$
+
This directory runs the IFR compiler on the various IDL compiler
stress tests found in $TAO_ROOT/tests/IDL_Test. It will automatically
pick up new IDL files as they are added.
@@ -30,7 +32,7 @@ The testing goes in three phases:
skip the IDL file if the IDL file is known to fail in #1
tao_ifr on the IDL file
}
-
+
For each IDL file {
skip the IDL file if the IDL file is known to fail in #1
tao_ifr on the IDL file to remove from the IFR
diff --git a/TAO/orbsvcs/tests/InterfaceRepo/IFR_Inheritance_Test/README b/TAO/orbsvcs/tests/InterfaceRepo/IFR_Inheritance_Test/README
index 5948342f0c9..a1a79808f00 100644
--- a/TAO/orbsvcs/tests/InterfaceRepo/IFR_Inheritance_Test/README
+++ b/TAO/orbsvcs/tests/InterfaceRepo/IFR_Inheritance_Test/README
@@ -25,8 +25,8 @@ problem and providing non-automated test code.
To build this test, the TAO library, the TypeCodeFactory
library, the Interface Repository (the last two found in
-TAO/orbsvcs/IFR_Service), and these test files must all be built.
-In addition, the Interface Repository requires the TAO_Svc_Utils
+TAO/orbsvcs/IFR_Service), and these test files must all be built.
+In addition, the Interface Repository requires the TAO_Svc_Utils
library in TAO/orbsvcs/orbsvcs.
To run this test, either use the Perl script run_test.pl, or
@@ -34,7 +34,7 @@ To run this test, either use the Perl script run_test.pl, or
(Windows)
-start the Interface Repository by typing
+start the Interface Repository by typing
..\..\..\IFR_Service\IFR_Service
@@ -50,7 +50,7 @@ and then
IFR_Inheritance_Test -ORBInitRef InterfaceRepository=file://if_repo.ior
(Unix)
-in this directory, type
+in this directory, type
../../../IFR_Service/IFR_Service &
@@ -68,8 +68,8 @@ and use the default multicast address for the InterfaceRepository.
../../../IFR_Service/IFR_Service -m 1
-and
+and
- ./IFR_Inheritance_Test
+ ./IFR_Inheritance_Test
- Scott Harris <harris_s@ociweb.com> \ No newline at end of file
diff --git a/TAO/orbsvcs/tests/InterfaceRepo/IFR_Self_Recursive_IDL_Test/README b/TAO/orbsvcs/tests/InterfaceRepo/IFR_Self_Recursive_IDL_Test/README
index 04f2bbb0e28..e5e5ecef00a 100644
--- a/TAO/orbsvcs/tests/InterfaceRepo/IFR_Self_Recursive_IDL_Test/README
+++ b/TAO/orbsvcs/tests/InterfaceRepo/IFR_Self_Recursive_IDL_Test/README
@@ -1,14 +1,16 @@
/**
+$Id$
+
This is a regression test to catch incorrect reference
- counting of recursive typecodes.
+counting of recursive typecodes.
If the reference count for recursive structures are not
- incremented then the client will crash.
+incremented then the client will crash.
- To run the test use the run_test.pl script:
+ To run the test use the run_test.pl script:
$ ./run_test.pl
- the script returns 0 if the test was successful.
+ the script returns 0 if the test was successful.
*/
diff --git a/TAO/orbsvcs/tests/InterfaceRepo/IFR_Test/README b/TAO/orbsvcs/tests/InterfaceRepo/IFR_Test/README
index 45898fd7299..2b806522ab3 100644
--- a/TAO/orbsvcs/tests/InterfaceRepo/IFR_Test/README
+++ b/TAO/orbsvcs/tests/InterfaceRepo/IFR_Test/README
@@ -22,8 +22,8 @@ struct_test(), union_test() and exception_test().
To build this test, the TAO library, the TypeCodeFactory
library, the Interface Repository (the last two found in
-TAO/orbsvcs/IFR_Service), and these test files must all be built.
-In addition, the Interface Repository requires the TAO_Svc_Utils
+TAO/orbsvcs/IFR_Service), and these test files must all be built.
+In addition, the Interface Repository requires the TAO_Svc_Utils
library in TAO/orbsvcs/orbsvcs.
To run this test, either use the Perl script run_test.pl, or
@@ -31,7 +31,7 @@ To run this test, either use the Perl script run_test.pl, or
(Windows)
-start the Interface Repository by typing
+start the Interface Repository by typing
..\..\..\IFR_Service\IFR_Service
@@ -40,7 +40,7 @@ in one window, then (in another window)
IFR_Test -ORBInitRef InterfaceRepository=file://if_repo.ior
(Unix)
-in this directory, type
+in this directory, type
../../../IFR_Service/IFR_Service &
@@ -55,12 +55,12 @@ and use the default multicast address for the InterfaceRepository.
../../../IFR_Service/IFR_Service -m 1
-and
+and
./IFR_Test
You may add any of the options below to the IFR_Test command line. Both the
-Perl script and the test executable have the same command line options.
+Perl script and the test executable have the same command line options.
They are:
-d Outputs the results of queries along with a string
@@ -107,7 +107,7 @@ The IFR server is started in this test with locking enabled. Even
though the test itself is single-threaded, using this option will
ensure that future modifications to IFR code don't cause deadlocks.
-More information about the Interface Repository can be found in
+More information about the Interface Repository can be found in
TAO/docs/releasenotes.index.html.
-Jeff Parsons <parsons@cs.wustl.edu> \ No newline at end of file
diff --git a/TAO/orbsvcs/tests/InterfaceRepo/Persistence_Test/README b/TAO/orbsvcs/tests/InterfaceRepo/Persistence_Test/README
index 7eae42fd67c..25e136a5665 100644
--- a/TAO/orbsvcs/tests/InterfaceRepo/Persistence_Test/README
+++ b/TAO/orbsvcs/tests/InterfaceRepo/Persistence_Test/README
@@ -8,8 +8,8 @@ two functions: populate() and query().
To build this test, the TAO library, the TypeCodeFactory
library, the Interface Repository (the last two found in
-TAO/orbsvcs/IFR_Service), must be previously built. In addition,
-the Interface Repository requires the TAO_Svc_Utils library in
+TAO/orbsvcs/IFR_Service), must be previously built. In addition,
+the Interface Repository requires the TAO_Svc_Utils library in
TAO/orbsvcs/orbsvcs.
It is far easier to run the test with the provided Perl script
@@ -20,7 +20,7 @@ run_test.pl, but to do it by hand, first start the IFR with
Then execute the test code with
-Persistence_Test
+Persistence_Test
This will populate the IFR with a few IFR objects.
After the test finishes, stop the IFR. Then start it again
@@ -43,7 +43,7 @@ The query run of the test code will also destroy all IFR objects that were
created - the repository will be left empty except for the primitive kinds
which are always there (and cannot be destroyed).
-If for some reason IP multicast is not available or enabled on your platform,
+If for some reason IP multicast is not available or enabled on your platform,
then add
-ORBInitRef InterfaceRepository=file://if_repo.ior
@@ -63,7 +63,7 @@ destroy() call(s) at the end of the function were not exectuted.
Before running the test again, the Interface Repository process
should be stopped and restarted to avoid a BAD_PARAM exception.
-More information about the Interface Repository can be found in
+More information about the Interface Repository can be found in
TAO/docs/releasenotes.index.html.
-Jeff Parsons <parsons@cs.wustl.edu> \ No newline at end of file
diff --git a/TAO/orbsvcs/tests/InterfaceRepo/Union_Forward_Test/README.txt b/TAO/orbsvcs/tests/InterfaceRepo/Union_Forward_Test/README.txt
index e4551ddd558..c4fc12da6c0 100644
--- a/TAO/orbsvcs/tests/InterfaceRepo/Union_Forward_Test/README.txt
+++ b/TAO/orbsvcs/tests/InterfaceRepo/Union_Forward_Test/README.txt
@@ -1,4 +1,4 @@
-// $Id $
+$Id$
This test illustrates a problem with the IFR service in that it cannot
properly handle forward declared unions.
diff --git a/TAO/orbsvcs/tests/Interoperable_Naming/README b/TAO/orbsvcs/tests/Interoperable_Naming/README
index 81501320d70..9cd08b2e984 100644
--- a/TAO/orbsvcs/tests/Interoperable_Naming/README
+++ b/TAO/orbsvcs/tests/Interoperable_Naming/README
@@ -1,12 +1,12 @@
-// $Id$
+$Id$
-This application tests the implementation of the CosNaming::NamingContextExt
-interface.
+This application tests the implementation of the CosNaming::NamingContextExt
+interface.
-To run the test automatically -
+To run the test automatically -
execute Perl script run_test.pl
-To run tests manually -
+To run tests manually -
start the Naming Service (see
TAO/orbsvcs/Naming_Service/README for valid options),
then run ./client with one of the options below.
@@ -25,13 +25,13 @@ If no option is specified, the test is run and no output is printed.
DESCRIPTION AND EXPECTED OUTPUT
===============================
-Performs the to_string, to_name (), to_url () and resolve_str () methods on
+Performs the to_string, to_name (), to_url () and resolve_str () methods on
the given Name or stringified name.
Expected Output:
- If the -o option is specified, prints out the outputs of the
-to_string (), to_name () and to_url () functions. If no option is specified,
+ If the -o option is specified, prints out the outputs of the
+to_string (), to_name () and to_url () functions. If no option is specified,
completes with no output.
diff --git a/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/README b/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/README
index 107953609c2..3e30d320f34 100644
--- a/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/README
+++ b/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/README
@@ -1,3 +1,5 @@
+$Id$
+
This program tests the application controlled membership support
of the Cygnus load balancer. The aim is to allow the application
to create the replicas and then forcefully add them as the members
diff --git a/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/windows.conf.xml b/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/windows.conf.xml
index 289810f7d22..37af1733d3b 100644
--- a/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/windows.conf.xml
+++ b/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/windows.conf.xml
@@ -1,7 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from windows.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
- <!-- $Id $ -->
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<dynamic id="Advanced_Resource_Factory" type="Service_Object">
<initializer path="TAO_Strategies" init="_make_TAO_Advanced_Resource_Factory" params="-ORBReactorType select_mt"/>
</dynamic>
diff --git a/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/DeadMemberDetection_App_Ctrl/README b/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/DeadMemberDetection_App_Ctrl/README
index 5e68be1e97c..fd5ff66bc49 100755
--- a/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/DeadMemberDetection_App_Ctrl/README
+++ b/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/DeadMemberDetection_App_Ctrl/README
@@ -1,5 +1,7 @@
+$Id$
+
This program tests dead member detection feature on Load Balancer.
-The group uses application controlled membership. Three servers
+The group uses application controlled membership. Three servers
are created and added to the object group. The client use the group
object reference to make invocations.
@@ -7,75 +9,75 @@ The test covers 4 test cases.
1) Dead Member Detection with Round Robin Strategy
- a. Invoke get_string(), the server 1 is active and picked to
- handle request.
+ a. Invoke get_string(), the server 1 is active and picked to
+ handle request.
Invoke exit () to crash server 1.
b. Invoke exit () on crash server 2.
c. Invoke get_string(), the server 3 is picked to handle request.
Invoke exit () to crash server 3.
- d. Invoke get_string(), no active member so client gets OBJECT_NOT_EXIST
+ d. Invoke get_string(), no active member so client gets OBJECT_NOT_EXIST
exception.
-
+
2) Hang Member Detection with Round Robin Strategy
- a. Invoke get_string(), the server 1 is active and picked to
- handle request.
+ a. Invoke get_string(), the server 1 is active and picked to
+ handle request.
Invoke exit () to crash server 1.
b. Invoke get_string(), liveliness check on server 2 and it timed
- out on RECV because _non_existent implementation on server side
- has a delay to similate a hang server. The server 2 is still
- picked. The client request may be delayed but it should still
+ out on RECV because _non_existent implementation on server side
+ has a delay to similate a hang server. The server 2 is still
+ picked. The client request may be delayed but it should still
get reply. Invoke exit on the server 2 and the LB may detect
it's lost.
- c. Invoke get_string(), the server 3 is active and picked to
- handle request.
+ c. Invoke get_string(), the server 3 is active and picked to
+ handle request.
Invoke exit () to crash server 3.
- c. Invoke get_string(), if LB has detected server 2 lost then
+ c. Invoke get_string(), if LB has detected server 2 lost then
client should get OBJECT_NOT_EXIST exception. If not detected
it will return server 2 reference and the client invocation
may get COMM_FAILURE or TRANSIENT exception.
3) Dead Member Detection with Random Strategy
- a. Invoke get_string(), a random server (e.g. 2) is active and picked to
- handle request.
+ a. Invoke get_string(), a random server (e.g. 2) is active and picked to
+ handle request.
Invoke exit () to crash the server.
- b. Invoke get_string(), a random server (e.g. 1) except server picked in
+ b. Invoke get_string(), a random server (e.g. 1) except server picked in
step a) is picked to handle request.
Invoke exit () to crash the server.
c. Invoke get_string(), the last server (e.g. 3) is active and picked to
handle request.
Invoke exit () to crash the server.
- d. Invoke get_string(), no active member so client gets OBJECT_NOT_EXIST
+ d. Invoke get_string(), no active member so client gets OBJECT_NOT_EXIST
exception.
4) Hang Member Detection with Random Strategy
- a. Invoke get_string(), a random server (e.g. 1) is active and picked to
- handle request.
+ a. Invoke get_string(), a random server (e.g. 1) is active and picked to
+ handle request.
Invoke exit () to crash the server.
- b. Invoke get_string(), a random server (e.g. 2) except server picked in
- step a) is picked. Even the server 2 times out on liveliness check
+ b. Invoke get_string(), a random server (e.g. 2) except server picked in
+ step a) is picked. Even the server 2 times out on liveliness check
because of the delay in _non_existent implementation, it can still be
- picked. The client request may be delayed but it should finally
+ picked. The client request may be delayed but it should finally
complete.
Invoke exit () to crash the server.
c. Invoke get_string(), the server not picked (e.g. 3) will be picked
and client get reply from the server.
Invoke exit () to crash the server.
- c. Invoke get_string(), if LB has detected server 2 lost then
+ c. Invoke get_string(), if LB has detected server 2 lost then
client should get OBJECT_NOT_EXIST exception. If not detected
it will return server 2 reference and the client invocation
may get COMM_FAILURE or TRANSIENT exception.
-
+
To run the test use the run_test.pl script:
$ ./run_test.pl
The script returns 0 if the test was successful and each test case
should print out "test passed.".
-
-
-
+
+
+
diff --git a/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/DeadMemberDetection_Inf_Ctrl/README b/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/DeadMemberDetection_Inf_Ctrl/README
index e00f2d1a726..b510dd44279 100755
--- a/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/DeadMemberDetection_Inf_Ctrl/README
+++ b/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/DeadMemberDetection_Inf_Ctrl/README
@@ -1,81 +1,83 @@
+$Id$
+
This program tests dead member detection feature on Load Balancer.
The group uses infrastructure controlled membership. Three factories
-(servers) are created and added to the object group. The client use
+(servers) are created and added to the object group. The client use
the group object reference to make invocations.
The test covers 4 test cases.
1) Dead Member Detection with Round Robin Strategy
- a. Invoke get_string(), the server 1 is active and picked to
- handle request.
+ a. Invoke get_string(), the server 1 is active and picked to
+ handle request.
Invoke exit () to crash server 1.
b. Invoke exit () on crash server 2.
c. Invoke get_string(), the server 3 is picked to handle request.
Invoke exit () to crash server 3.
- d. Invoke get_string(), no active member so client gets OBJECT_NOT_EXIST
+ d. Invoke get_string(), no active member so client gets OBJECT_NOT_EXIST
exception.
-
+
2) Hang Member Detection with Round Robin Strategy
- a. Invoke get_string(), the server 1 is active and picked to
- handle request.
+ a. Invoke get_string(), the server 1 is active and picked to
+ handle request.
Invoke exit () to crash server 1.
b. Invoke get_string(), liveliness check on server 2 and it timed
- out on RECV because _non_existent implementation on server side
- has a delay to similate a hang server. The server 2 is still
- picked. The client request may be delayed but it should still
+ out on RECV because _non_existent implementation on server side
+ has a delay to similate a hang server. The server 2 is still
+ picked. The client request may be delayed but it should still
get reply. Invoke exit on the server 2 and the LB may detect
it's lost.
- c. Invoke get_string(), the server 3 is active and picked to
- handle request.
+ c. Invoke get_string(), the server 3 is active and picked to
+ handle request.
Invoke exit () to crash server 3.
- c. Invoke get_string(), if LB has detected server 2 lost then
+ c. Invoke get_string(), if LB has detected server 2 lost then
client should get OBJECT_NOT_EXIST exception. If not detected
it will return server 2 reference and the client invocation
may get COMM_FAILURE or TRANSIENT exception.
3) Dead Member Detection with Random Strategy
- a. Invoke get_string(), a random server (e.g. 2) is active and picked to
- handle request.
+ a. Invoke get_string(), a random server (e.g. 2) is active and picked to
+ handle request.
Invoke exit () to crash the server.
- b. Invoke get_string(), a random server (e.g. 1) except server picked in
+ b. Invoke get_string(), a random server (e.g. 1) except server picked in
step a) is picked to handle request.
Invoke exit () to crash the server.
c. Invoke get_string(), the last server (e.g. 3) is active and picked to
handle request.
Invoke exit () to crash the server.
- d. Invoke get_string(), no active member so client gets OBJECT_NOT_EXIST
+ d. Invoke get_string(), no active member so client gets OBJECT_NOT_EXIST
exception.
4) Hang Member Detection with Random Strategy
- a. Invoke get_string(), a random server (e.g. 1) is active and picked to
- handle request.
+ a. Invoke get_string(), a random server (e.g. 1) is active and picked to
+ handle request.
Invoke exit () to crash the server.
- b. Invoke get_string(), a random server (e.g. 2) except server picked in
- step a) is picked. Even the server 2 times out on liveliness check
+ b. Invoke get_string(), a random server (e.g. 2) except server picked in
+ step a) is picked. Even the server 2 times out on liveliness check
because of the delay in _non_existent implementation, it can still be
- picked. The client request may be delayed but it should finally
+ picked. The client request may be delayed but it should finally
complete.
Invoke exit () to crash the server.
c. Invoke get_string(), the server not picked (e.g. 3) will be picked
and client get reply from the server.
Invoke exit () to crash the server.
- c. Invoke get_string(), if LB has detected server 2 lost then
+ c. Invoke get_string(), if LB has detected server 2 lost then
client should get OBJECT_NOT_EXIST exception. If not detected
it will return server 2 reference and the client invocation
may get COMM_FAILURE or TRANSIENT exception.
-
+
To run the test use the run_test.pl script:
$ ./run_test.pl
The script returns 0 if the test was successful and each test case
should print out "test passed.".
-
-
-
+
+
+
diff --git a/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/DeadMemberDetection_Inf_Ctrl/windows.conf.xml b/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/DeadMemberDetection_Inf_Ctrl/windows.conf.xml
index 289810f7d22..3f408177e69 100755
--- a/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/DeadMemberDetection_Inf_Ctrl/windows.conf.xml
+++ b/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/DeadMemberDetection_Inf_Ctrl/windows.conf.xml
@@ -1,7 +1,7 @@
<?xml version='1.0'?>
<!-- Converted from windows.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
- <!-- $Id $ -->
+ <!-- $Id$ -->
<dynamic id="Advanced_Resource_Factory" type="Service_Object">
<initializer path="TAO_Strategies" init="_make_TAO_Advanced_Resource_Factory" params="-ORBReactorType select_mt"/>
</dynamic>
diff --git a/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Infrastructure_Controlled/README b/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Infrastructure_Controlled/README
index 679b3d67b4b..51f30154ab8 100644
--- a/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Infrastructure_Controlled/README
+++ b/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Infrastructure_Controlled/README
@@ -1,3 +1,5 @@
+$Id$
+
This program tests the infrastructure controlled membership support
of the Cygnus Load Balancer. The aim is to allow Cygnus to set the
factories needed to create the "replicas", when the object group
diff --git a/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Infrastructure_Controlled/windows.conf.xml b/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Infrastructure_Controlled/windows.conf.xml
index 289810f7d22..37af1733d3b 100644
--- a/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Infrastructure_Controlled/windows.conf.xml
+++ b/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Infrastructure_Controlled/windows.conf.xml
@@ -1,7 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from windows.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
- <!-- $Id $ -->
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<dynamic id="Advanced_Resource_Factory" type="Service_Object">
<initializer path="TAO_Strategies" init="_make_TAO_Advanced_Resource_Factory" params="-ORBReactorType select_mt"/>
</dynamic>
diff --git a/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Manage_Object_Group/windows.conf.xml b/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Manage_Object_Group/windows.conf.xml
index 289810f7d22..37af1733d3b 100644
--- a/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Manage_Object_Group/windows.conf.xml
+++ b/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Manage_Object_Group/windows.conf.xml
@@ -1,7 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from windows.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
- <!-- $Id $ -->
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<dynamic id="Advanced_Resource_Factory" type="Service_Object">
<initializer path="TAO_Strategies" init="_make_TAO_Advanced_Resource_Factory" params="-ORBReactorType select_mt"/>
</dynamic>
diff --git a/TAO/orbsvcs/tests/LoadBalancing/LoadMonitor/CPU/README b/TAO/orbsvcs/tests/LoadBalancing/LoadMonitor/CPU/README
index ee845ff6081..6ce01e03a7f 100644
--- a/TAO/orbsvcs/tests/LoadBalancing/LoadMonitor/CPU/README
+++ b/TAO/orbsvcs/tests/LoadBalancing/LoadMonitor/CPU/README
@@ -1,11 +1,11 @@
-# $Id$
+$Id$
This test verifies that Cygnus' CPU load monitor is working correctly.
Run the test using the `run_test.pl' Perl script. The expected test
output is the following:
==== Running CPU Load Monitor test
-
+
Retrieving loads from LoadManager ...... DONE
Retrieving loads directly from LoadMonitor ... DONE
CPU Load Monitor test passed.
diff --git a/TAO/orbsvcs/tests/Log/Basic_Log_Test/README b/TAO/orbsvcs/tests/Log/Basic_Log_Test/README
index a38bcb3f888..ffca7c6af20 100644
--- a/TAO/orbsvcs/tests/Log/Basic_Log_Test/README
+++ b/TAO/orbsvcs/tests/Log/Basic_Log_Test/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Telecom Log Service (TLS) Client example
----------------------------------------
diff --git a/TAO/orbsvcs/tests/Log/README b/TAO/orbsvcs/tests/Log/README
index 9dae3bd4f90..023abaf9687 100644
--- a/TAO/orbsvcs/tests/Log/README
+++ b/TAO/orbsvcs/tests/Log/README
@@ -1,3 +1,5 @@
+$Id$
+
Telecom Logging Service Tests
=============================
diff --git a/TAO/orbsvcs/tests/Miop/McastHello/README b/TAO/orbsvcs/tests/Miop/McastHello/README
index 2b7205b555d..e0657566917 100644
--- a/TAO/orbsvcs/tests/Miop/McastHello/README
+++ b/TAO/orbsvcs/tests/Miop/McastHello/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page McastHello Test README File
This test verifies basic functionality of the MIOP support in TAO.
@@ -20,7 +22,7 @@ users. Firstly, server.cpp includes MIOP.h, which has some magic for
loading MIOP protocol in static builds. Secondly, the svc.conf has
a directive for loading the right protocol factory. Both of them are
required for static builds in addition to linking with the
-TAO_PortableGroup library.
+TAO_PortableGroup library.
However for dynamic builds things are different
diff --git a/TAO/orbsvcs/tests/Miop/McastHello/client.conf.xml b/TAO/orbsvcs/tests/Miop/McastHello/client.conf.xml
index 17625811005..5e59695a48b 100644
--- a/TAO/orbsvcs/tests/Miop/McastHello/client.conf.xml
+++ b/TAO/orbsvcs/tests/Miop/McastHello/client.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from ./orbsvcs/tests/Miop/McastHello/client.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<dynamic id="UIPMC_Factory" type="Service_Object">
<initializer path="TAO_PortableGroup" init="_make_TAO_UIPMC_Protocol_Factory"/>
</dynamic>
diff --git a/TAO/orbsvcs/tests/Miop/McastHello/client.cpp b/TAO/orbsvcs/tests/Miop/McastHello/client.cpp
index a84044b4085..38b253edba4 100644
--- a/TAO/orbsvcs/tests/Miop/McastHello/client.cpp
+++ b/TAO/orbsvcs/tests/Miop/McastHello/client.cpp
@@ -56,9 +56,7 @@ ACE_TMAIN(int argc, ACE_TCHAR *argv[])
*/
Test::McastHello_var hello =
TAO::Narrow_Utils<Test::McastHello>::unchecked_narrow (
- tmp.in (),
- Test__TAO_McastHello_Proxy_Broker_Factory_function_pointer
- );
+ tmp.in ());
if (CORBA::is_nil (hello.in ()))
{
diff --git a/TAO/orbsvcs/tests/Miop/McastHello/server.conf.xml b/TAO/orbsvcs/tests/Miop/McastHello/server.conf.xml
index 22bb269016c..a7375a33b72 100644
--- a/TAO/orbsvcs/tests/Miop/McastHello/server.conf.xml
+++ b/TAO/orbsvcs/tests/Miop/McastHello/server.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from ./orbsvcs/tests/Miop/McastHello/server.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<dynamic id="UIPMC_Factory" type="Service_Object">
<initializer path="TAO_PortableGroup" init="_make_TAO_UIPMC_Protocol_Factory"/>
</dynamic>
diff --git a/TAO/orbsvcs/tests/Miop/README b/TAO/orbsvcs/tests/Miop/README
index a18f066d6b1..b456d44cfae 100644
--- a/TAO/orbsvcs/tests/Miop/README
+++ b/TAO/orbsvcs/tests/Miop/README
@@ -1,7 +1,7 @@
$Id$
This directory houses a collection of tests that exercise TAO support
-for features defined in the MIOP specification.
+for features defined in the MIOP specification.
Each individual subdirectory contains a README file with more
information on the corresponding test. The list of tests so far
diff --git a/TAO/orbsvcs/tests/Notify/Basic/ConnectDisconnect.cpp b/TAO/orbsvcs/tests/Notify/Basic/ConnectDisconnect.cpp
index 6891dcd7cd1..bb111e54370 100644
--- a/TAO/orbsvcs/tests/Notify/Basic/ConnectDisconnect.cpp
+++ b/TAO/orbsvcs/tests/Notify/Basic/ConnectDisconnect.cpp
@@ -328,6 +328,18 @@ ACE_TMAIN(int argc, ACE_TCHAR *argv[])
return 1;
}
- return client.check_results ();
+ int status = 0;
+
+ try
+ {
+ status = client.check_results ();
+ }
+ catch (const CORBA::Exception& se)
+ {
+ se._tao_print_exception ("Error: ");
+ status = 1;
+ }
+
+ return status;
}
diff --git a/TAO/orbsvcs/tests/Notify/Basic/Events.cpp b/TAO/orbsvcs/tests/Notify/Basic/Events.cpp
index 5ec7883937c..779bde188e6 100644
--- a/TAO/orbsvcs/tests/Notify/Basic/Events.cpp
+++ b/TAO/orbsvcs/tests/Notify/Basic/Events.cpp
@@ -313,5 +313,17 @@ ACE_TMAIN(int argc, ACE_TCHAR *argv[])
return 1;
}
- return events.check_results ();
+ int status = 0;
+
+ try
+ {
+ status = events.check_results ();
+ }
+ catch (const CORBA::Exception& se)
+ {
+ se._tao_print_exception ("Error: ");
+ status = 1;
+ }
+
+ return status;
}
diff --git a/TAO/orbsvcs/tests/Notify/Basic/MultiTypes.cpp b/TAO/orbsvcs/tests/Notify/Basic/MultiTypes.cpp
index 382a27887f1..1db133780ce 100644
--- a/TAO/orbsvcs/tests/Notify/Basic/MultiTypes.cpp
+++ b/TAO/orbsvcs/tests/Notify/Basic/MultiTypes.cpp
@@ -354,5 +354,17 @@ ACE_TMAIN(int argc, ACE_TCHAR *argv[])
return 1;
}
- return client.check_results ();
+ int status = 0;
+
+ try
+ {
+ status = client.check_results ();
+ }
+ catch (const CORBA::Exception& se)
+ {
+ se._tao_print_exception ("Error: ");
+ status = 1;
+ }
+
+ return status;
}
diff --git a/TAO/orbsvcs/tests/Notify/Basic/README b/TAO/orbsvcs/tests/Notify/Basic/README
index ed9a0128716..d79ebc2ecfb 100644
--- a/TAO/orbsvcs/tests/Notify/Basic/README
+++ b/TAO/orbsvcs/tests/Notify/Basic/README
@@ -1,6 +1,7 @@
+$Id$
- Basic Tests
- ===========
+Basic Tests
+===========
Updates:
-------
@@ -16,7 +17,7 @@ Connects/Disconnects consumers and suppliers in a loop to test connect
and disconnect to admin objects.
Command line parameters:
-
+
"-count <testcount>",
"-consumers <number_of_consumers>",
"-suppliers <number_of_suppliers>",
@@ -28,18 +29,18 @@ Creates and destroys EC and Admin objects.
Command line parameters:
"-count testcount"
-where <testcount> is how many times we want to create/destroy.
+where <testcount> is how many times we want to create/destroy.
IdAssignment:
------------
This test exercies Id generation by creating ec and admin objects and
using the assigned ids to lookup these objects and destroy them.
-Command line parameters:
-"-iter <count>", count is how many times to repeat this test.
-"-ec_count <count>", count is number of ec objects to create
-"-ca_count <count>", count is number of consumer admin (ca) objects to create
-"-sa_count <count>\n", count is number of supplier admin (sa) objects to create
+Command line parameters:
+"-iter <count>", count is how many times to repeat this test.
+"-ec_count <count>", count is number of ec objects to create
+"-ca_count <count>", count is number of consumer admin (ca) objects to create
+"-sa_count <count>\n", count is number of supplier admin (sa) objects to create
AdminProperties
@@ -55,17 +56,17 @@ command line parameters:
-consumers [consumers]
-suppliers [suppliers]
-event_count [event_count]
--ConsumerDelay [delay in secs]
+-ConsumerDelay [delay in secs]
// sleep period per push for the consumer created to test MaxQueueLength
-InitialDelay [delay in secs]
Events:
----------
-This test creates 1 structured supplier and 2 structured consumers.
+This test creates 1 structured supplier and 2 structured consumers.
Each consumer should receive all the events send by the supplier.
The uses the default ConsumerAdmin and default Supplier Admin if the
-use_default_admin option is specified.
-
+
command line options:
-use_default_admin
-events [number of events to send]
@@ -73,9 +74,9 @@ command line options:
MultiTypes:
-----------
Creates a Supplier and Consumer each for the 3 Client types that send
-and receive Any, Structured and Sequence event types.
+and receive Any, Structured and Sequence event types.
Each type of the supplier then sends an event each to the Notification
-channel. All 3 types of consumers should receive 3 events each.
+channel. All 3 types of consumers should receive 3 events each.
command line options:
none.
@@ -86,7 +87,7 @@ Creates 1 Any Supplier and 1 Any Consumer. Events received by the
supplier must be equal to the count send.
command line options:
--events [number of events to send]
+-events [number of events to send]
Filter:
------
diff --git a/TAO/orbsvcs/tests/Notify/Basic/Sequence.cpp b/TAO/orbsvcs/tests/Notify/Basic/Sequence.cpp
index 6b345e31871..9d4b0f3768b 100644
--- a/TAO/orbsvcs/tests/Notify/Basic/Sequence.cpp
+++ b/TAO/orbsvcs/tests/Notify/Basic/Sequence.cpp
@@ -349,5 +349,17 @@ ACE_TMAIN(int argc, ACE_TCHAR *argv[])
return 1;
}
- return events.check_results ();
+ int status = 0;
+
+ try
+ {
+ status = events.check_results ();
+ }
+ catch (const CORBA::Exception& se)
+ {
+ se._tao_print_exception ("Error: ");
+ status = 1;
+ }
+
+ return status;
}
diff --git a/TAO/orbsvcs/tests/Notify/Basic/Simple.cpp b/TAO/orbsvcs/tests/Notify/Basic/Simple.cpp
index 5cc9b2df6ec..c27af8a8979 100644
--- a/TAO/orbsvcs/tests/Notify/Basic/Simple.cpp
+++ b/TAO/orbsvcs/tests/Notify/Basic/Simple.cpp
@@ -231,5 +231,17 @@ ACE_TMAIN(int argc, ACE_TCHAR *argv[])
return 1;
}
- return events.check_results ();
+ int status = 0;
+
+ try
+ {
+ status = events.check_results ();
+ }
+ catch (const CORBA::Exception& se)
+ {
+ se._tao_print_exception ("Error: ");
+ status = 1;
+ }
+
+ return status;
}
diff --git a/TAO/orbsvcs/tests/Notify/Blocking/README b/TAO/orbsvcs/tests/Notify/Blocking/README
index caa10b69a6f..a6187afdabe 100644
--- a/TAO/orbsvcs/tests/Notify/Blocking/README
+++ b/TAO/orbsvcs/tests/Notify/Blocking/README
@@ -1,3 +1,5 @@
+$Id$
+
Notification Blocking Policy Test
================================
diff --git a/TAO/orbsvcs/tests/Notify/Bug_2415_Regression/README b/TAO/orbsvcs/tests/Notify/Bug_2415_Regression/README
index 0aac6bd0c6c..5270ee03606 100644
--- a/TAO/orbsvcs/tests/Notify/Bug_2415_Regression/README
+++ b/TAO/orbsvcs/tests/Notify/Bug_2415_Regression/README
@@ -1,12 +1,13 @@
+$Id$
+
Sequence Event ETCL Filter Test
===============================
-
Description
-----------
This test checks push supplier and push consumer ETCL event filter mechanisms.
-The supplier sends a number of events specified by the consumer. The consumer
+The supplier sends a number of events specified by the consumer. The consumer
can filter or not filter the events and can use multiple consumers.
The consumer may specify 'and' and/or 'or' relations on the filterable data
contained within an event.
@@ -18,19 +19,19 @@ Usage
The test consists of a Supplier and Consumer. The usage for each as is
follows:
-$ ./Sequence_Supplier
+$ ./Sequence_Supplier
usage: ./Sequence_Supplier -o <iorfile> -e <# of events>
$ ./Sequence_Consumer -\?
usage: ./Sequence_Consumer -k <ior> -l <low expected events>
-h <high expected events>
-To run this test, run the run_test.pl perl script.
+To run this test, run the run_test.pl perl script.
This script is designed to test various aspects of the filtering
mechanism.
Expected Results
----------------
-The test script will display an error if for any test that fails.
+The test script will display an error if for any test that fails.
Otherwise, the test passed.
diff --git a/TAO/orbsvcs/tests/Notify/Discarding/README b/TAO/orbsvcs/tests/Notify/Discarding/README
index 1b83d695fe7..ef0a54dbde4 100644
--- a/TAO/orbsvcs/tests/Notify/Discarding/README
+++ b/TAO/orbsvcs/tests/Notify/Discarding/README
@@ -1,3 +1,5 @@
+$Id$
+
Notification Discard Policy Test
================================
diff --git a/TAO/orbsvcs/tests/Notify/Lanes/README b/TAO/orbsvcs/tests/Notify/Lanes/README
index 87f6a1a3919..f7e5cddfa38 100644
--- a/TAO/orbsvcs/tests/Notify/Lanes/README
+++ b/TAO/orbsvcs/tests/Notify/Lanes/README
@@ -1,3 +1,5 @@
+$Id$
+
RT Notification test to verify lane support
===========================================
This test makes sure that events are send according to the lanes
diff --git a/TAO/orbsvcs/tests/Notify/MT_Dispatching/README b/TAO/orbsvcs/tests/Notify/MT_Dispatching/README
index 5a2dce02e48..5efc49b0db7 100644
--- a/TAO/orbsvcs/tests/Notify/MT_Dispatching/README
+++ b/TAO/orbsvcs/tests/Notify/MT_Dispatching/README
@@ -1,3 +1,5 @@
+$Id$
+
Notification MT Dispatching Test
================================
diff --git a/TAO/orbsvcs/tests/Notify/Ordering/README b/TAO/orbsvcs/tests/Notify/Ordering/README
index 9df80a17192..c94c46eeb85 100644
--- a/TAO/orbsvcs/tests/Notify/Ordering/README
+++ b/TAO/orbsvcs/tests/Notify/Ordering/README
@@ -1,3 +1,5 @@
+$Id$
+
Notification Ordering Policy Test
================================
diff --git a/TAO/orbsvcs/tests/Notify/Persistent_Filter/README b/TAO/orbsvcs/tests/Notify/Persistent_Filter/README
index c3963500c29..d2a3f480df6 100644
--- a/TAO/orbsvcs/tests/Notify/Persistent_Filter/README
+++ b/TAO/orbsvcs/tests/Notify/Persistent_Filter/README
@@ -1,3 +1,5 @@
+$Id$
+
This test is based on the Filter example.
It tests the persistent filter changes. The filter constraints
are saved to persistent data instead of filter IOR.
@@ -5,6 +7,6 @@ are saved to persistent data instead of filter IOR.
The run_test.pl starts NotificationService, consumer and supplier.
After they complete, restart them again with using the persistent
data. The restarted consumer and supplier will verify the filters
-and modify the constraints. The test finally should pass with no
+and modify the constraints. The test finally should pass with no
errors.
diff --git a/TAO/orbsvcs/tests/Notify/Persistent_POA/README b/TAO/orbsvcs/tests/Notify/Persistent_POA/README
index 02919bb46ea..c0b63fcd711 100644
--- a/TAO/orbsvcs/tests/Notify/Persistent_POA/README
+++ b/TAO/orbsvcs/tests/Notify/Persistent_POA/README
@@ -1,3 +1,5 @@
+$Id$
+
Notification Persistent POA Test
================================
diff --git a/TAO/orbsvcs/tests/Notify/Reconnecting/README b/TAO/orbsvcs/tests/Notify/Reconnecting/README
index 723c0a4f730..496bea91bd8 100644
--- a/TAO/orbsvcs/tests/Notify/Reconnecting/README
+++ b/TAO/orbsvcs/tests/Notify/Reconnecting/README
@@ -31,10 +31,10 @@ This directory contains:
but not event persistence.
ns_st_both.conf -- configures the Notification Service for single
thread operation with support for both topological,
- and event persistence.
+ and event persistence.
ns_mt_both.conf -- configures the Notification Service for multi-
threaded operation with support for both topological,
- and event persistence.
+ and event persistence.
event.conf -- configures the Notification Service for event
persistence without topology persistence. This is
an invalid configuration and should cause the
@@ -67,9 +67,9 @@ the Supplier.
-nonamesvc Don't use the Naming Service to find
EventChannelFactory
- -channel filename Where to store a channel number so the Supplier can
+ -channel filename Where to store a channel number so the Supplier can
find it
- -any or -str or -seq What type of event supplier will send (pick one,
+ -any or -str or -seq What type of event supplier will send (pick one,
default: -any)
-expect n How many events are expected.
-fail n Simulate a recoverable failure every n events.
@@ -77,7 +77,7 @@ the Supplier.
used, then serial number checking is disabled.
This allows testing the consumer with multiple
Suppliers.
- -disconnect Disconnect from notfication service cleanly
+ -disconnect Disconnect from notfication service cleanly
(no reconnect will be possible)
-v Verbose output.
@@ -122,7 +122,7 @@ Service). Structured events and Sequence events are events supported only
by the Notification Service. See the TAO Developer's Guide or the CORBA
specification for more details.
-Only one of these three options should be specified. If none of these
+Only one of these three options should be specified. If none of these
is specified, the default is "-any".
Command line option: -send n
@@ -137,17 +137,17 @@ After it has received that many events, the Consumer will shut down.
Command line option: -fail n
------------------------------
-This Consumer-only option tells the Consumer to throw an exception
+This Consumer-only option tells the Consumer to throw an exception
(CORBA::UNKNOWN) every n events. This simulates a recoverable error in
the consumer. After throwing the exception, the consumer continues
to listen for incoming events. It expects the event it was processing
to be retransmitted.
Because of the retransmission, the use of the -fail option may be
-counterintuitive. If the consumer options are "-expect 10 -fail 4" then
-it will receive events 0, 1, 2, and fail on event 3. It will then
-receive 3, 4, 5, and fail on event 6. Then it will receive 6, 7, 8,
-and fail on event 9. Finally it will receive the retransmission of event
+counterintuitive. If the consumer options are "-expect 10 -fail 4" then
+it will receive events 0, 1, 2, and fail on event 3. It will then
+receive 3, 4, 5, and fail on event 6. Then it will receive 6, 7, 8,
+and fail on event 9. Finally it will receive the retransmission of event
9 and exit.
Command line option: -pause n
@@ -234,7 +234,7 @@ during the test. The default if none of these options is present is "-any".
run_test.pl: command line option -v
--------------------------------------------
This option controls the verbosity of the test script and the Supplier and
-Consumer applications. When it is present, a detailed step-by-step
+Consumer applications. When it is present, a detailed step-by-step
report is produced by the test.
run_test.pl: Test #1: Supplier reconnection.
@@ -246,8 +246,8 @@ The Consumer is configured to receive 20 events. The Supplier is configured
to send ten events.
After sending ten events, the Supplier exits -- simulating a Supplier failure.
-The test script starts a new copy of the Supplier. The new Supplier is
-configured to send ten events starting with event number 10.
+The test script starts a new copy of the Supplier. The new Supplier is
+configured to send ten events starting with event number 10.
It uses information saved by the previous supplier to reconnect to the same
channel, admin, and proxy in the Notification Services.
The Suppler sends the remaining ten events then exists. The Consumer having
@@ -262,9 +262,9 @@ The Notification Service from the previous test is still running and the
saved reconnection information for both the Supplier and Consumer is still
available.
-The test script starts a Consumer configured to receive 20 events and a
+The test script starts a Consumer configured to receive 20 events and a
Supplier configured to send twenty events. Both clients use the reconnection
-information from the previous test to reconnect to the Notification Service.
+information from the previous test to reconnect to the Notification Service.
Twenty events are sent successfully, then both clients exit and the test
is complete.
@@ -292,13 +292,13 @@ run_test.pl: Test #4: The Reconnection Registry
-----------------------------------------------
This test starts with the Notification Service from the previous test.
-The script starts a new Consumer that expects to receive 20 events. The
+The script starts a new Consumer that expects to receive 20 events. The
Consumer reconnects to the Notification Server.
-The script starts a Supplier. It is configured to send 10 events then
-pause waiting for a Notification Service initiated reconnection before
+The script starts a Supplier. It is configured to send 10 events then
+pause waiting for a Notification Service initiated reconnection before
sending the remaining 10 events.
-Both clients register with the Reconnection Registry to receive reconnection
+Both clients register with the Reconnection Registry to receive reconnection
callbacks.
The test script waits for the Supplier to pause. It then kills the
@@ -335,7 +335,7 @@ communication or Consumer failures.
Known Problems as of Feb 2004.
------------------------------
-Sequence events are not working. It is unclear whether this is a problem in
+Sequence events are not working. It is unclear whether this is a problem in
the test or in the Notification Service itself.
Known Problems as of Mar 2004.
diff --git a/TAO/orbsvcs/tests/Notify/Sequence_Multi_ETCL_Filter/README b/TAO/orbsvcs/tests/Notify/Sequence_Multi_ETCL_Filter/README
index 0aac6bd0c6c..d8f94c0e9df 100644
--- a/TAO/orbsvcs/tests/Notify/Sequence_Multi_ETCL_Filter/README
+++ b/TAO/orbsvcs/tests/Notify/Sequence_Multi_ETCL_Filter/README
@@ -1,3 +1,5 @@
+$Id$
+
Sequence Event ETCL Filter Test
===============================
@@ -6,7 +8,7 @@ Description
-----------
This test checks push supplier and push consumer ETCL event filter mechanisms.
-The supplier sends a number of events specified by the consumer. The consumer
+The supplier sends a number of events specified by the consumer. The consumer
can filter or not filter the events and can use multiple consumers.
The consumer may specify 'and' and/or 'or' relations on the filterable data
contained within an event.
@@ -18,19 +20,19 @@ Usage
The test consists of a Supplier and Consumer. The usage for each as is
follows:
-$ ./Sequence_Supplier
+$ ./Sequence_Supplier
usage: ./Sequence_Supplier -o <iorfile> -e <# of events>
$ ./Sequence_Consumer -\?
usage: ./Sequence_Consumer -k <ior> -l <low expected events>
-h <high expected events>
-To run this test, run the run_test.pl perl script.
+To run this test, run the run_test.pl perl script.
This script is designed to test various aspects of the filtering
mechanism.
Expected Results
----------------
-The test script will display an error if for any test that fails.
+The test script will display an error if for any test that fails.
Otherwise, the test passed.
diff --git a/TAO/orbsvcs/tests/Notify/Sequence_Multi_Filter/README b/TAO/orbsvcs/tests/Notify/Sequence_Multi_Filter/README
index 13486ab0797..33fe7f71367 100644
--- a/TAO/orbsvcs/tests/Notify/Sequence_Multi_Filter/README
+++ b/TAO/orbsvcs/tests/Notify/Sequence_Multi_Filter/README
@@ -1,12 +1,13 @@
+$Id$
+
Sequence Event Filter Test
============================
-
Description
-----------
This test checks push supplier and push consumer event filter mechanisms.
-The supplier sends a number of events specified by the consumer. The consumer
+The supplier sends a number of events specified by the consumer. The consumer
can filter or not filter the events and can use multiple consumers.
The consumer may specify 'and' and/or 'or' relations on the filterable data
contained within an event.
@@ -19,7 +20,7 @@ The test consists of a Supplier and Consumer. The usage for each as is
follows:
$ ./Sequence_Supplier -\?
-usage: ./Sequence_Supplier -ORBInitRef <Naming Service Location>
+usage: ./Sequence_Supplier -ORBInitRef <Naming Service Location>
$ ./Sequence_Consumer -\?
usage: ./Sequence_Consumer -l <low> -h high -d <discard policy> -c <constraint string>
@@ -28,12 +29,12 @@ The "low" value specified the number of whole batches of events expected. The "
The "constraint string" allows the TCL filter string to be specified on the command line.
-To run this test, run the run_test.pl perl script.
+To run this test, run the run_test.pl perl script.
This script is designed to test various aspects of the filtering
mechanism.
Expected Results
----------------
-The test script will display an error if for any test that fails.
+The test script will display an error if for any test that fails.
Otherwise, the test passed.
diff --git a/TAO/orbsvcs/tests/Notify/Structured_Filter/README b/TAO/orbsvcs/tests/Notify/Structured_Filter/README
index 879ed382a1c..b25462c995d 100644
--- a/TAO/orbsvcs/tests/Notify/Structured_Filter/README
+++ b/TAO/orbsvcs/tests/Notify/Structured_Filter/README
@@ -1,12 +1,13 @@
+$Id$
+
Structured Event Filter Test
============================
-
Description
-----------
This test checks push supplier and push consumer event filter mechanisms.
-The supplier sends a number of events specified by the consumer. The consumer
+The supplier sends a number of events specified by the consumer. The consumer
can filter or not filter the events and can use multiple consumers.
If filtered, the consumer will receive 1/3 of the total events.
@@ -17,20 +18,20 @@ Usage
The test consists of a Supplier and Consumer. The usage for each as is
follows:
-$ Structured_Supplier
-usage: ./Structured_Supplier -ORBInitRef <Naming Service Location>
+$ Structured_Supplier
+usage: ./Structured_Supplier -ORBInitRef <Naming Service Location>
$ Structured_Consumer -\?
usage: ./Structured_Consumer [-f] -n <num events> -c <num consumers> \
-ORBInitRef <Naming Service Location>
-The -f option applies an event filter to the consumer. The -c option lets
+The -f option applies an event filter to the consumer. The -c option lets
the user specify the number of consumers to use.
-To run this test, run the run_test.pl perl script.
+To run this test, run the run_test.pl perl script.
Expected Results
----------------
-The test script will display an error if for any test that fails.
+The test script will display an error if for any test that fails.
Otherwise, the test passed. \ No newline at end of file
diff --git a/TAO/orbsvcs/tests/Notify/Structured_Multi_Filter/README b/TAO/orbsvcs/tests/Notify/Structured_Multi_Filter/README
index 30fd2d5d9f7..4af5c861fb7 100644
--- a/TAO/orbsvcs/tests/Notify/Structured_Multi_Filter/README
+++ b/TAO/orbsvcs/tests/Notify/Structured_Multi_Filter/README
@@ -1,15 +1,16 @@
+$Id$
+
Structured Event InterFilterGroupOperator Test
==============================================
-
Description
-----------
-This test checks push supplier and push consumer event logical operators
-between the Supplier/Consumer admins and their proxies. The supplier sends
+This test checks push supplier and push consumer event logical operators
+between the Supplier/Consumer admins and their proxies. The supplier sends
a number of events specified by the consumer. The supplier and consumer can
filter or not filter the events, and can AND and OR the proxy and admin
-filters.
+filters.
Usage
@@ -18,22 +19,22 @@ Usage
The test consists of a Supplier and Consumer. The usage for each as is
follows:
-$ Structured_Supplier
+$ Structured_Supplier
usage: ./Structured_Supplier [-f] -o <AND_OP | OR_OP> \
-ORBInitRef <Naming Service Location>
$ Structured_Consumer -\?
-usage: ./Structured_Consumer [-f] [-s] -n <num events> -c <num consumers> \
+usage: ./Structured_Consumer [-f] [-s] -n <num events> -c <num consumers> \
-o <AND_OP | OR_OP> -ORBInitRef <Naming Service Location>
The -f option applies an the event filter to the supplier or consumer.
The -s option alerts the consumer to supplier filtering.
The -c option lets the user specify the number of consumers to use.
-To run this test, run the run_test.pl perl script.
+To run this test, run the run_test.pl perl script.
Expected Results
----------------
-The test script will display an error if for any test that fails.
+The test script will display an error if for any test that fails.
Otherwise, the test passed.
diff --git a/TAO/orbsvcs/tests/Notify/ThreadPool/README b/TAO/orbsvcs/tests/Notify/ThreadPool/README
index d690937f041..0575459a378 100644
--- a/TAO/orbsvcs/tests/Notify/ThreadPool/README
+++ b/TAO/orbsvcs/tests/Notify/ThreadPool/README
@@ -1,3 +1,5 @@
+$Id$
+
ThreadPool test
===============
@@ -19,7 +21,7 @@ supplier.conf:
This creates the following -
- An EventChannel with a threadpool.
-- A SupplierAdmin (SA1)with a threadpool.
+- A SupplierAdmin (SA1)with a threadpool.
- Another SupplierAdmin (SA2) with no threadpool.
- A ProxyConsumer(1) is connected to SA1 with a threadpool.
@@ -33,11 +35,11 @@ consumer.conf:
-------------
This creates:
-- A ConsumerAdmin (CA1)with a threadpool.
+- A ConsumerAdmin (CA1)with a threadpool.
- Another ConsumerAdmin (CA2) with no threadpool.
An RT POA is created in which the ProxySuppliers are activated.
-
+
- A ProxySupplier(1) is connected to CA1 with a threadpool.
- A ProxySupplier(2) is connected to CA1 with no threadpool.
- A ProxySupplier(3) is connected to CA2 with no threadpool.
@@ -49,4 +51,4 @@ Expected Result:
==============
if a request reaches a threadpool that it was not supposed to, an
error message is printed. otherwise some housekeeping messages are
-generated when the test runs. \ No newline at end of file
+generated when the test runs. \ No newline at end of file
diff --git a/TAO/orbsvcs/tests/Notify/Validate_Client/README b/TAO/orbsvcs/tests/Notify/Validate_Client/README
index 4bf085ce6e9..b2f45869cfa 100644
--- a/TAO/orbsvcs/tests/Notify/Validate_Client/README
+++ b/TAO/orbsvcs/tests/Notify/Validate_Client/README
@@ -1,12 +1,14 @@
+$Id$
+
This test is to verify the Notification Service client connection
-validation feature.
+validation feature.
-The test synthesizes a persistency file that points to a dummy
-service. The Notify service is then run so that it uses the
+The test synthesizes a persistency file that points to a dummy
+service. The Notify service is then run so that it uses the
persistency file to restore a topology and eventually reap the
proxies because the "ping" yields an OBJECT_NOT_EXIST exception.
-The result should be that after a few seconds, a new persistence
+The result should be that after a few seconds, a new persistence
file is created that contains no proxy references.
Run ./run_test.pl and it should output "test passed".
diff --git a/TAO/orbsvcs/tests/Notify/lib/README b/TAO/orbsvcs/tests/Notify/lib/README
index 3e8a49d1c22..72dc92be7b0 100644
--- a/TAO/orbsvcs/tests/Notify/lib/README
+++ b/TAO/orbsvcs/tests/Notify/lib/README
@@ -1,4 +1,4 @@
-//$Id$
+$Id$
This directory has the library used by the test examples to test the
Notification Service.
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/Filter/README b/TAO/orbsvcs/tests/Notify/performance-tests/Filter/README
index 0d326588015..3485dac1a4c 100644
--- a/TAO/orbsvcs/tests/Notify/performance-tests/Filter/README
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/Filter/README
@@ -1,3 +1,5 @@
+$Id$
+
Notification Performance Test
================================
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/README b/TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/README
index 88b6a01e03c..7288da498b1 100644
--- a/TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/README
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/README
@@ -1,3 +1,5 @@
+$Id$
+
RedGreen Test
This test will measure throughput in different configurations of the
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/listener.conf.xml b/TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/listener.conf.xml
index 686b6f6e4ba..721457a7d45 100644
--- a/TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/listener.conf.xml
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/listener.conf.xml
@@ -1,5 +1,8 @@
<?xml version='1.0'?>
<!-- Converted from ./orbsvcs/tests/Notify/performance-tests/RedGreen/listener.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<static id="Notify_Default_Event_Manager_Objects_Factory" params="-DispatchingThreads 1"/>
</ACE_Svc_Conf>
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/lookup.conf.xml b/TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/lookup.conf.xml
index f72d4165927..5e3a436e51a 100644
--- a/TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/lookup.conf.xml
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/lookup.conf.xml
@@ -1,5 +1,8 @@
<?xml version='1.0'?>
<!-- Converted from ./orbsvcs/tests/Notify/performance-tests/RedGreen/lookup.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<static id="Notify_Default_Event_Manager_Objects_Factory" params="-AllocateTaskperProxy -SourceThreads 2"/>
</ACE_Svc_Conf>
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/reactive.conf.xml b/TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/reactive.conf.xml
index b8b7e4f8e71..d2e20177daf 100644
--- a/TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/reactive.conf.xml
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/reactive.conf.xml
@@ -1,5 +1,8 @@
<?xml version='1.0'?>
<!-- Converted from ./orbsvcs/tests/Notify/performance-tests/RedGreen/reactive.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<static id="Notify_Default_Event_Manager_Objects_Factory"/>
</ACE_Svc_Conf>
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/svc.conf.xml b/TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/svc.conf.xml
index 0673554e968..fb2f0477d6a 100644
--- a/TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/svc.conf.xml
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/RedGreen/svc.conf.xml
@@ -1,5 +1,8 @@
<?xml version='1.0'?>
<!-- Converted from ./orbsvcs/tests/Notify/performance-tests/RedGreen/svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<static id="Resource_Factory" params="-ORBReactorMaskSignals 0"/>
</ACE_Svc_Conf>
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/Throughput/README b/TAO/orbsvcs/tests/Notify/performance-tests/Throughput/README
index 3b27b5e847e..eca874cda74 100644
--- a/TAO/orbsvcs/tests/Notify/performance-tests/Throughput/README
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/Throughput/README
@@ -1,10 +1,11 @@
+$Id$
Notify Throughput
Test to measure Notify's throughput
Command line options:
---------------------
+--------------------
-collocated_ec,
-consumers [count],
-suppliers [count],
@@ -15,6 +16,6 @@ Command line options:
-EC [Channel Name],
-ExpectedCount [count]
-e.g.
+e.g.
./Throughput -ORBInitRef NameService=file:///naming.ior -consumers 1 -suppliers 1 -burst_size 1000 -burst_count 1 -payload 16384
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/scripts/1_Path_Period_0_Lanes/README b/TAO/orbsvcs/tests/Notify/performance-tests/scripts/1_Path_Period_0_Lanes/README
index ddf54440055..3361cb0b7ed 100644
--- a/TAO/orbsvcs/tests/Notify/performance-tests/scripts/1_Path_Period_0_Lanes/README
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/scripts/1_Path_Period_0_Lanes/README
@@ -1,4 +1,4 @@
-## $Id$
+$Id$
1 Path : Load vs Throughput experiment with period=0
====================================================
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/scripts/3_Path_Period_10ms_Lanes/README b/TAO/orbsvcs/tests/Notify/performance-tests/scripts/3_Path_Period_10ms_Lanes/README
index 55e2003fc75..beb818bb396 100644
--- a/TAO/orbsvcs/tests/Notify/performance-tests/scripts/3_Path_Period_10ms_Lanes/README
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/scripts/3_Path_Period_10ms_Lanes/README
@@ -1,4 +1,4 @@
-## $Id$
+$Id$
3 Paths : Load vs Throughput experiment with period=10ms
========================================================
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/scripts/Max_Throughput/README b/TAO/orbsvcs/tests/Notify/performance-tests/scripts/Max_Throughput/README
index 1bdb2e76d15..171e2bba96f 100644
--- a/TAO/orbsvcs/tests/Notify/performance-tests/scripts/Max_Throughput/README
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/scripts/Max_Throughput/README
@@ -1,4 +1,4 @@
-//$Id$
+$Id$
Max Throughput of various configurations:
=========================================
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/scripts/README b/TAO/orbsvcs/tests/Notify/performance-tests/scripts/README
index 916cae33bba..edb4371f5bd 100644
--- a/TAO/orbsvcs/tests/Notify/performance-tests/scripts/README
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/scripts/README
@@ -1,3 +1,4 @@
+$Id$
This directory contains various experiments for the RT-Notification
and CosNotification Service.
diff --git a/TAO/orbsvcs/tests/Property/README b/TAO/orbsvcs/tests/Property/README
index 6ff16d26744..2b4dbc7381c 100644
--- a/TAO/orbsvcs/tests/Property/README
+++ b/TAO/orbsvcs/tests/Property/README
@@ -1,7 +1,9 @@
+$Id$
+
This tests TAO's CosPropertyService implementation.
Please report bugs/comments to <alex@cs.wustl.edu> and
- <ace-users@cs.wustl.edu>
+ <ace-users@cs.wustl.edu>
To compile:
==========
@@ -33,10 +35,10 @@ Server:
Client:
------
% client [-ORBnameserviceport <portnum>]
-
+
<portnum> is same everywhere.
Expected Result:
----------------
-If everything goes well, client prints "Test Succeeded".
+If everything goes well, client prints "Test Succeeded".
diff --git a/TAO/orbsvcs/tests/Redundant_Naming/README b/TAO/orbsvcs/tests/Redundant_Naming/README
index 85ad95373a1..ee959a2d3f4 100644
--- a/TAO/orbsvcs/tests/Redundant_Naming/README
+++ b/TAO/orbsvcs/tests/Redundant_Naming/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This application tests the redundancy feature of TAO's Naming Service.
diff --git a/TAO/orbsvcs/tests/Sched_Conf/README b/TAO/orbsvcs/tests/Sched_Conf/README
index e787e7d690a..bb932c88e79 100644
--- a/TAO/orbsvcs/tests/Sched_Conf/README
+++ b/TAO/orbsvcs/tests/Sched_Conf/README
@@ -1,34 +1,36 @@
+$Id$
+
Overview:
The scheduling service can run in one of two different modes of
operation, an off-line configuration mode, and a run-time execution mode.
- The application uses the Scheduler_Factory to specify in which mode
+ The application uses the Scheduler_Factory to specify in which mode
it would like to use the scheduling service.
-
+
In the configuration mode, the application registers RT_Infos containing
operation characteristics with the off-line scheduler, and also specifies
operation dependencies. The Event Channel also registers RT_Infos for its
own operations, and specifies any additional dependencies introduced by
- subscription or event correllation.
-
+ subscription or event correllation.
+
Once all operations are registered, the application invokes the
scheduler's compute_scheduling method. The scheduler generates a
"schedule" consisting of operation priorities and sub-priorities, and
- determines whether or not the schedule is feasible. The scheduler also
+ determines whether or not the schedule is feasible. The scheduler also
produces queue specification information that can be used to configure
the dispatching module's number and kinds of queues (this
automatic dispatching module configuration will appear in a TAO release
*very* soon). The application then may ask the config scheduler to dump
it's schedule to a header file.
-
+
The Sched_Conf.cpp file in this directory is an example of how this is done.
Building and running the Sched_Conf executable will produce a header file
called Sched_Conf_Runtime.h, which is included by Sched_Conf_Runtime.cpp.
-
- The dumped header file contains tables with the static scheduling and
- configuration information. The Sched_Conf_Runtime application passes this
- information to the run-time scheduler at start-up. The application may also
- re-register its operations to verify the correct operations were loaded. The
+
+ The dumped header file contains tables with the static scheduling and
+ configuration information. The Sched_Conf_Runtime application passes this
+ information to the run-time scheduler at start-up. The application may also
+ re-register its operations to verify the correct operations were loaded. The
Sched_Conf_Runtime does this, and in fact exercises a number of methods
of the run-time scheduler to ensure it gives correct responses for the
table of operations with which it was instantiated.
diff --git a/TAO/orbsvcs/tests/Security/BiDirectional/README b/TAO/orbsvcs/tests/Security/BiDirectional/README
index 14e5d33aaf8..068ef393f4e 100644
--- a/TAO/orbsvcs/tests/Security/BiDirectional/README
+++ b/TAO/orbsvcs/tests/Security/BiDirectional/README
@@ -1,7 +1,7 @@
-# $Id$
+$Id$
This is a test that exercises the birectional GIOP connection
-implementation in TAO over SSLIOP connection.
+implementation in TAO over SSLIOP connection.
Basicaly, the test is a copy of the $TAO_ROOT/tests/BiDirectional with
added support for SSLIOP
@@ -9,7 +9,7 @@ added support for SSLIOP
Start the server like this
$ server -ORBSvcConf server.conf -o <file.ior> -i <no_iterations>
-$ client -ORBSvcConf client.conf -k file://<file.ior> -x
+$ client -ORBSvcConf client.conf -k file://<file.ior> -x
Or, simply
@@ -25,5 +25,5 @@ would crash itself.
To determine that no new connections have been opened or used the test
relies on the fact that TAO uses a transport cache. It can provide us
iwith the number of currently cashed transports before and after making an
-invocation. Both the client and at the server make this check.
+invocation. Both the client and at the server make this check.
diff --git a/TAO/orbsvcs/tests/Security/Big_Request/README b/TAO/orbsvcs/tests/Security/Big_Request/README
index 31790e131fb..808a579077a 100644
--- a/TAO/orbsvcs/tests/Security/Big_Request/README
+++ b/TAO/orbsvcs/tests/Security/Big_Request/README
@@ -1,6 +1,4 @@
-#
-# $Id$
-#
+$Id$
---
The initial version of this test was contributed by Andrew Finnell.
diff --git a/TAO/orbsvcs/tests/Security/Bug_1107_Regression/README b/TAO/orbsvcs/tests/Security/Bug_1107_Regression/README
index 957deb3ed89..0f41ff811f5 100644
--- a/TAO/orbsvcs/tests/Security/Bug_1107_Regression/README
+++ b/TAO/orbsvcs/tests/Security/Bug_1107_Regression/README
@@ -1,2 +1,4 @@
+$Id$
+
This test is a modified version of Secure_Invocation. It tests the fixes
for bug 1107.
diff --git a/TAO/orbsvcs/tests/Security/Bug_2908_Regression/README b/TAO/orbsvcs/tests/Security/Bug_2908_Regression/README
index 520d52db0ad..a8acf9045b4 100644
--- a/TAO/orbsvcs/tests/Security/Bug_2908_Regression/README
+++ b/TAO/orbsvcs/tests/Security/Bug_2908_Regression/README
@@ -1,6 +1,4 @@
-#
-#$Id$
-#
+$Id$
This is a regression test to demonstrate a problem in collocated invocation with SSLIOP in a separate thread.
diff --git a/TAO/orbsvcs/tests/Security/Callback/README b/TAO/orbsvcs/tests/Security/Callback/README
index 5c8153c6672..03df523aae5 100644
--- a/TAO/orbsvcs/tests/Security/Callback/README
+++ b/TAO/orbsvcs/tests/Security/Callback/README
@@ -1,6 +1,4 @@
-#
-# $Id$
-#
+$Id$
This test is designed to excercise the connection cache related code
in a complex pluggable protocol such as SSLIOP.
diff --git a/TAO/orbsvcs/tests/Security/Crash_Test/README b/TAO/orbsvcs/tests/Security/Crash_Test/README
index e284c627fd1..46376f1b831 100644
--- a/TAO/orbsvcs/tests/Security/Crash_Test/README
+++ b/TAO/orbsvcs/tests/Security/Crash_Test/README
@@ -1,9 +1,7 @@
-#
-# $Id$
-#
+$Id$
This test verifies that the ORB's connection management mechanism is
-functioning properly while using SSLIOP as inter-orb protocol.
+functioning properly while using SSLIOP as inter-orb protocol.
It does so by doing the following:
- Starting server with persisten POA.
diff --git a/TAO/orbsvcs/tests/Security/EndpointPolicy/README b/TAO/orbsvcs/tests/Security/EndpointPolicy/README
index 95c6cad0db3..2727a344b32 100644
--- a/TAO/orbsvcs/tests/Security/EndpointPolicy/README
+++ b/TAO/orbsvcs/tests/Security/EndpointPolicy/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page EndpointPolicy+SSLIOP Test README File
This test validates a fix for the use of SSLIOP with the endpoint policy.
diff --git a/TAO/orbsvcs/tests/Security/InsecureReferences/README b/TAO/orbsvcs/tests/Security/InsecureReferences/README
index 62461dcabfb..a9389611413 100644
--- a/TAO/orbsvcs/tests/Security/InsecureReferences/README
+++ b/TAO/orbsvcs/tests/Security/InsecureReferences/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page InsecureReferences Test README File
This test validates a fix for a problem with decoding IIOP Profiles
diff --git a/TAO/orbsvcs/tests/Security/MT_IIOP_SSL/README b/TAO/orbsvcs/tests/Security/MT_IIOP_SSL/README
index 1c182b4983a..a968a8f68cc 100644
--- a/TAO/orbsvcs/tests/Security/MT_IIOP_SSL/README
+++ b/TAO/orbsvcs/tests/Security/MT_IIOP_SSL/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page MT_IIOP_SSL Test README File
This is a stress test for the IIOP_SSL features. This test should
@@ -17,8 +19,8 @@ $ ./run_test.pl
the script returns 0 if the test was successful.
-@NOTE:
-
+@NOTE:
+
This test links *and* loads the SSLIOP library. They are needed
due to the way the test is setup.
diff --git a/TAO/orbsvcs/tests/Security/MT_IIOP_SSL/client.conf.xml b/TAO/orbsvcs/tests/Security/MT_IIOP_SSL/client.conf.xml
index a39f09f3680..c8eebf9479a 100644
--- a/TAO/orbsvcs/tests/Security/MT_IIOP_SSL/client.conf.xml
+++ b/TAO/orbsvcs/tests/Security/MT_IIOP_SSL/client.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from ./orbsvcs/tests/Security/MT_SSLIOP/client.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<dynamic id="SSLIOP_Factory" type="Service_Object">
<initializer path="TAO_SSLIOP" init="_make_TAO_SSLIOP_Protocol_Factory" params="-SSLCertificate PEM:selfsigncert.pem"/>
</dynamic>
diff --git a/TAO/orbsvcs/tests/Security/MT_IIOP_SSL/server.conf.xml b/TAO/orbsvcs/tests/Security/MT_IIOP_SSL/server.conf.xml
index abff554e12c..4bd4209ae7b 100644
--- a/TAO/orbsvcs/tests/Security/MT_IIOP_SSL/server.conf.xml
+++ b/TAO/orbsvcs/tests/Security/MT_IIOP_SSL/server.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from ./orbsvcs/tests/Security/MT_SSLIOP/server.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<dynamic id="SSLIOP_Factory" type="Service_Object">
<initializer path="TAO_SSLIOP" init="_make_TAO_SSLIOP_Protocol_Factory" params="-SSLPrivateKey PEM:pvtkey.pem -SSLCertificate PEM:selfsigncert.pem"/>
</dynamic>
diff --git a/TAO/orbsvcs/tests/Security/MT_SSLIOP/README b/TAO/orbsvcs/tests/Security/MT_SSLIOP/README
index 7d695b35da7..ed0e69ffbb4 100644
--- a/TAO/orbsvcs/tests/Security/MT_SSLIOP/README
+++ b/TAO/orbsvcs/tests/Security/MT_SSLIOP/README
@@ -1,18 +1,18 @@
-# $Id$
+$Id$
Description:
- This is a simple test for a thread-pool server that can
-service multithreaded clients with the same object reference.
+ This is a simple test for a thread-pool server that can
+service multithreaded clients with the same object reference.
It creates a server process with a variable number of threads,
-multiple (multithreaded) clients can send requests to it, the
+multiple (multithreaded) clients can send requests to it, the
requests are handled in different threads.
Expected output:
The server prints the thread that handles each request. The Client
prints the Validation info as well as the thread pid and iteration
-number.
+number.
How to run:
Use the run_test.pl.
@@ -20,6 +20,6 @@ Use the run_test.pl.
FOR SSL:-
Pvt Key File ( RSA ) = pvtkey.pem
Self Signed Certificate = selfsigncert.pem
-
+
ORB Svc Conf File for Server = server.conf
ORB Svc Conf File for Client = client.conf
diff --git a/TAO/orbsvcs/tests/Security/MT_SSLIOP/client.conf.xml b/TAO/orbsvcs/tests/Security/MT_SSLIOP/client.conf.xml
index a39f09f3680..c8eebf9479a 100644
--- a/TAO/orbsvcs/tests/Security/MT_SSLIOP/client.conf.xml
+++ b/TAO/orbsvcs/tests/Security/MT_SSLIOP/client.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from ./orbsvcs/tests/Security/MT_SSLIOP/client.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<dynamic id="SSLIOP_Factory" type="Service_Object">
<initializer path="TAO_SSLIOP" init="_make_TAO_SSLIOP_Protocol_Factory" params="-SSLCertificate PEM:selfsigncert.pem"/>
</dynamic>
diff --git a/TAO/orbsvcs/tests/Security/MT_SSLIOP/server.conf.xml b/TAO/orbsvcs/tests/Security/MT_SSLIOP/server.conf.xml
index abff554e12c..4bd4209ae7b 100644
--- a/TAO/orbsvcs/tests/Security/MT_SSLIOP/server.conf.xml
+++ b/TAO/orbsvcs/tests/Security/MT_SSLIOP/server.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from ./orbsvcs/tests/Security/MT_SSLIOP/server.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<dynamic id="SSLIOP_Factory" type="Service_Object">
<initializer path="TAO_SSLIOP" init="_make_TAO_SSLIOP_Protocol_Factory" params="-SSLPrivateKey PEM:pvtkey.pem -SSLCertificate PEM:selfsigncert.pem"/>
</dynamic>
diff --git a/TAO/orbsvcs/tests/Security/Null_Cipher/README b/TAO/orbsvcs/tests/Security/Null_Cipher/README
index 7d15e1fb2c7..f46027e282c 100644
--- a/TAO/orbsvcs/tests/Security/Null_Cipher/README
+++ b/TAO/orbsvcs/tests/Security/Null_Cipher/README
@@ -1,14 +1,12 @@
-#
-# $Id$
-#
+$Id$
-This test verifies that a NULL cipher may be used. Sometime between
+This test verifies that a NULL cipher may be used. Sometime between
openssl release 0.9.7a and 0.9.8g, openssl changed the way it evaluated
cipher strings so that "DEFAULT:eNULL" no longer allowed use of a NULL
cipher. The correction is to have the SSLIOP Factory use "ALL:eNULL" as
the cipher string when -SSLNoProtection is used on the server side.
-The test is a simple invocation, with qop and trust policies set to
+The test is a simple invocation, with qop and trust policies set to
force the use of a NULL cipher.
A failure is indicated by the server reporting an ssl handshake error.
diff --git a/TAO/orbsvcs/tests/Security/Secure_Invocation/README b/TAO/orbsvcs/tests/Security/Secure_Invocation/README
index a4078c896d3..dfaf939ad8a 100644
--- a/TAO/orbsvcs/tests/Security/Secure_Invocation/README
+++ b/TAO/orbsvcs/tests/Security/Secure_Invocation/README
@@ -1,6 +1,4 @@
-#
-# $Id$
-#
+$Id$
This test verifies that the ORB's secure invocation mechanism is
functioning properly. It does so by the doing the following:
diff --git a/TAO/orbsvcs/tests/Security/cert/DOCCA/index.txt b/TAO/orbsvcs/tests/Security/cert/DOCCA/index.txt
index 3290cfd68b2..70f0d96e9ba 100644
--- a/TAO/orbsvcs/tests/Security/cert/DOCCA/index.txt
+++ b/TAO/orbsvcs/tests/Security/cert/DOCCA/index.txt
@@ -1,2 +1,4 @@
+$Id$
+
V 320525140115Z 1000 unknown /C=US/ST=Tennessee/O=DOC Group/CN=DOC Group Build Czar Server
V 320525140134Z 1001 unknown /C=US/ST=Tennessee/O=DOC Group/CN=Build Czar Client
diff --git a/TAO/orbsvcs/tests/Security/cert/README b/TAO/orbsvcs/tests/Security/cert/README
index 5df07f00694..3c069d06596 100644
--- a/TAO/orbsvcs/tests/Security/cert/README
+++ b/TAO/orbsvcs/tests/Security/cert/README
@@ -1 +1,3 @@
+$Id$
+
This is a CA used for signing keys in the security tests. The password for the CA key is DOCGroup
diff --git a/TAO/orbsvcs/tests/Security/mixed_security_test/README b/TAO/orbsvcs/tests/Security/mixed_security_test/README
index 422bd9a09d8..67c22d3b92a 100644
--- a/TAO/orbsvcs/tests/Security/mixed_security_test/README
+++ b/TAO/orbsvcs/tests/Security/mixed_security_test/README
@@ -1,6 +1,4 @@
-#
-# $Id$
-#
+$Id$
-----------------------------
cases:
@@ -13,13 +11,13 @@ cases:
This test verifies that the ORB's secure invocation mechanism is
functioning properly. It expands on what the Secure_Invocation does
-by activating an object with two separate ORBs and POAs. One of the POAs
+by activating an object with two separate ORBs and POAs. One of the POAs
has a SecQoPNoProtection policy assigned and thus should permit also
invocations over non-secure transport.
The test verifies that a secure client can make invocations, using both
-the "secure" and the "non-secure" IOR from the server. Note that for
-the server to support the non-secure invocations it must have -SSLNoProtection
+the "secure" and the "non-secure" IOR from the server. Note that for
+the server to support the non-secure invocations it must have -SSLNoProtection
in its sevice configuration file.
The test verifies that a non-secure client can only make invocations through
diff --git a/TAO/orbsvcs/tests/Security/ssliop_CSD/README b/TAO/orbsvcs/tests/Security/ssliop_CSD/README
index 821552c3a09..6eec38b89f2 100644
--- a/TAO/orbsvcs/tests/Security/ssliop_CSD/README
+++ b/TAO/orbsvcs/tests/Security/ssliop_CSD/README
@@ -1,3 +1,4 @@
+$Id$
$TAO_ROOT/orbsvcs/tests/Security/ssliop_CSD
diff --git a/TAO/orbsvcs/tests/Security/ssliop_corbaloc/README b/TAO/orbsvcs/tests/Security/ssliop_corbaloc/README
index 6e28b065fb8..73e607e0801 100644
--- a/TAO/orbsvcs/tests/Security/ssliop_corbaloc/README
+++ b/TAO/orbsvcs/tests/Security/ssliop_corbaloc/README
@@ -1,9 +1,9 @@
-// $Id$
+$Id$
-These application tests address various features of TAO's
-Naming Service. The functionality is the same as in the
-Simple_Naming test, but the difference is that all the
-communication is done over SSLIOP and clients are using
+These application tests address various features of TAO's
+Naming Service. The functionality is the same as in the
+Simple_Naming test, but the difference is that all the
+communication is done over SSLIOP and clients are using
INS-style corbaloc URLs.
To run all tests automatically -
@@ -12,12 +12,12 @@ To run all tests automatically -
To run tests manually -
start the Naming Service (see
TAO/orbsvcs/Naming_Service/README for valid options).
- Make sure you use " -ORBSvcConf server.conf" and
+ Make sure you use " -ORBSvcConf server.conf" and
"-ORBEndpoint iiop://localhost:23456/ssl_port=12345"
-
+
Then run ./client with one of the options below.
Make sure you add " -ORBSvcConf client.conf" and
- "-ORBInitRef NameService=corbaloc:ssliop:localhost:12345/NameService"
+ "-ORBInitRef NameService=corbaloc:ssliop:localhost:12345/NameService"
NOTE: if running tests manually, Naming Service has to be restarted
before each test (this is due to some tests not 'cleaning up' bindings
diff --git a/TAO/orbsvcs/tests/Security/ssliop_corbaloc/client.conf.xml b/TAO/orbsvcs/tests/Security/ssliop_corbaloc/client.conf.xml
index 50bb24f73ee..022434ab6bb 100644
--- a/TAO/orbsvcs/tests/Security/ssliop_corbaloc/client.conf.xml
+++ b/TAO/orbsvcs/tests/Security/ssliop_corbaloc/client.conf.xml
@@ -1,9 +1,12 @@
<?xml version='1.0'?>
<!-- Converted from client.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
- <dynamic id="SSLIOP_Factory" type="Service_Object">
- <initializer path="TAO_SSLIOP" init="_make_TAO_SSLIOP_Protocol_Factory" params="-SSLPrivateKey PEM:pvtkey-client.pem -SSLCertificate PEM:selfsigncert-client.pem"/>
- </dynamic>
- <static id="Resource_Factory" params="-ORBProtocolFactory SSLIOP_Factory"/>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
+ <dynamic id="SSLIOP_Factory" type="Service_Object">
+ <initializer path="TAO_SSLIOP" init="_make_TAO_SSLIOP_Protocol_Factory" params="-SSLPrivateKey PEM:pvtkey-client.pem -SSLCertificate PEM:selfsigncert-client.pem"/>
+ </dynamic>
+ <static id="Resource_Factory" params="-ORBProtocolFactory SSLIOP_Factory"/>
</ACE_Svc_Conf>
diff --git a/TAO/orbsvcs/tests/Security/ssliop_corbaloc/server.conf.xml b/TAO/orbsvcs/tests/Security/ssliop_corbaloc/server.conf.xml
index 5aa645eb3bf..2a9f4817260 100644
--- a/TAO/orbsvcs/tests/Security/ssliop_corbaloc/server.conf.xml
+++ b/TAO/orbsvcs/tests/Security/ssliop_corbaloc/server.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from server.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<dynamic id="SSLIOP_Factory" type="Service_Object">
<initializer path="TAO_SSLIOP" init="_make_TAO_SSLIOP_Protocol_Factory" params="-SSLPrivateKey PEM:pvtkey.pem -SSLCertificate PEM:selfsigncert.pem"/>
</dynamic>
diff --git a/TAO/orbsvcs/tests/Simple_Naming/README b/TAO/orbsvcs/tests/Simple_Naming/README
index 5e8c01ad0d3..2ae5b0998c0 100644
--- a/TAO/orbsvcs/tests/Simple_Naming/README
+++ b/TAO/orbsvcs/tests/Simple_Naming/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This application tests different features of TAO's Naming Service.
diff --git a/TAO/orbsvcs/tests/Time/README b/TAO/orbsvcs/tests/Time/README
index aa47cd477fb..b1bd3ccd42b 100644
--- a/TAO/orbsvcs/tests/Time/README
+++ b/TAO/orbsvcs/tests/Time/README
@@ -1,4 +1,4 @@
-$Id $
+$Id$
=================== Time Service Test =====================================
diff --git a/TAO/orbsvcs/tests/Trading/README b/TAO/orbsvcs/tests/Trading/README
index dfc43d6023d..a41f1aff6e5 100644
--- a/TAO/orbsvcs/tests/Trading/README
+++ b/TAO/orbsvcs/tests/Trading/README
@@ -11,7 +11,7 @@ Just for reference, a correct execution of the tests is included below:
Enjoy!
-> export_test
+> export_test
*** Bootstrap to the Lookup interface.
*** Narrowing the lookup interface.
@@ -34,120 +34,120 @@ type name: PostScript_Printer
*** TAO_Service_Type_Exporter::describing all types in the Repository.
Type Name: Remote_IO
Interface Name: IDL:TAO_Trader_Test/Remote_Output:1.0
-Property: Miscellaneous Mode: Normal
-Property: Trader_Name Mode: Normal
-Property: Host_Name Mode: Mandatory
-Property: Description Mode: Normal
-Property: Location Mode: Mandatory
-Property: Name Mode: Mandatory and Readonly
+Property: Miscellaneous Mode: Normal
+Property: Trader_Name Mode: Normal
+Property: Host_Name Mode: Mandatory
+Property: Description Mode: Normal
+Property: Location Mode: Mandatory
+Property: Name Mode: Mandatory and Readonly
------------------------------
Type Name: Plotter
Interface Name: IDL:TAO_Trader_Test/Plotter:1.0
Super Type: Remote_IO
-Property: File_Sizes_Pending Mode: Normal
-Property: User_Queue Mode: Normal
-Property: Model_Number Mode: Read only
-Property: Cost_Per_Page Mode: Normal
-Property: Auto_Loading Mode: Read only
-Property: Num_Colors Mode: Normal
+Property: File_Sizes_Pending Mode: Normal
+Property: User_Queue Mode: Normal
+Property: Model_Number Mode: Read only
+Property: Cost_Per_Page Mode: Normal
+Property: Auto_Loading Mode: Read only
+Property: Num_Colors Mode: Normal
------------------------------
Type Name: Printer
Interface Name: IDL:TAO_Trader_Test/Printer:1.0
Super Type: Remote_IO
-Property: File_Sizes_Pending Mode: Normal
-Property: User_Queue Mode: Normal
-Property: Pages_Per_Sec Mode: Read only
-Property: Model_Number Mode: Read only
-Property: Cost_Per_Page Mode: Normal
-Property: Double_Sided Mode: Read only
-Property: Color Mode: Mandatory and Readonly
+Property: File_Sizes_Pending Mode: Normal
+Property: User_Queue Mode: Normal
+Property: Pages_Per_Sec Mode: Read only
+Property: Model_Number Mode: Read only
+Property: Cost_Per_Page Mode: Normal
+Property: Double_Sided Mode: Read only
+Property: Color Mode: Mandatory and Readonly
------------------------------
Type Name: File_System
Interface Name: IDL:TAO_Trader_Test/File_System:1.0
Super Type: Remote_IO
-Property: Permission_Level Mode: Normal
-Property: Space_Remaining Mode: Normal
-Property: Disk_Space Mode: Mandatory and Readonly
+Property: Permission_Level Mode: Normal
+Property: Space_Remaining Mode: Normal
+Property: Disk_Space Mode: Mandatory and Readonly
------------------------------
Type Name: PostScript_Printer
Interface Name: IDL:TAO_Trader_Test/PostScript_Printer:1.0
Super Type: Printer
-Property: Version Mode: Mandatory and Readonly
+Property: Version Mode: Mandatory and Readonly
------------------------------
*** TAO_Service_Type_Exporter::fully describing all types in the Repository.
Type Name: Remote_IO
Interface Name: IDL:TAO_Trader_Test/Remote_Output:1.0
-Property: Name Mode: Mandatory and Readonly
-Property: Location Mode: Mandatory
-Property: Description Mode: Normal
-Property: Host_Name Mode: Mandatory
-Property: Trader_Name Mode: Normal
-Property: Miscellaneous Mode: Normal
+Property: Name Mode: Mandatory and Readonly
+Property: Location Mode: Mandatory
+Property: Description Mode: Normal
+Property: Host_Name Mode: Mandatory
+Property: Trader_Name Mode: Normal
+Property: Miscellaneous Mode: Normal
------------------------------
Type Name: Plotter
Interface Name: IDL:TAO_Trader_Test/Plotter:1.0
Super Type: Remote_IO
-Property: Name Mode: Mandatory and Readonly
-Property: Location Mode: Mandatory
-Property: Description Mode: Normal
-Property: Host_Name Mode: Mandatory
-Property: Trader_Name Mode: Normal
-Property: Miscellaneous Mode: Normal
-Property: Num_Colors Mode: Normal
-Property: Auto_Loading Mode: Read only
-Property: Cost_Per_Page Mode: Normal
-Property: Model_Number Mode: Read only
-Property: User_Queue Mode: Normal
-Property: File_Sizes_Pending Mode: Normal
+Property: Name Mode: Mandatory and Readonly
+Property: Location Mode: Mandatory
+Property: Description Mode: Normal
+Property: Host_Name Mode: Mandatory
+Property: Trader_Name Mode: Normal
+Property: Miscellaneous Mode: Normal
+Property: Num_Colors Mode: Normal
+Property: Auto_Loading Mode: Read only
+Property: Cost_Per_Page Mode: Normal
+Property: Model_Number Mode: Read only
+Property: User_Queue Mode: Normal
+Property: File_Sizes_Pending Mode: Normal
------------------------------
Type Name: Printer
Interface Name: IDL:TAO_Trader_Test/Printer:1.0
Super Type: Remote_IO
-Property: Name Mode: Mandatory and Readonly
-Property: Location Mode: Mandatory
-Property: Description Mode: Normal
-Property: Host_Name Mode: Mandatory
-Property: Trader_Name Mode: Normal
-Property: Miscellaneous Mode: Normal
-Property: Color Mode: Mandatory and Readonly
-Property: Double_Sided Mode: Read only
-Property: Cost_Per_Page Mode: Normal
-Property: Model_Number Mode: Read only
-Property: Pages_Per_Sec Mode: Read only
-Property: User_Queue Mode: Normal
-Property: File_Sizes_Pending Mode: Normal
+Property: Name Mode: Mandatory and Readonly
+Property: Location Mode: Mandatory
+Property: Description Mode: Normal
+Property: Host_Name Mode: Mandatory
+Property: Trader_Name Mode: Normal
+Property: Miscellaneous Mode: Normal
+Property: Color Mode: Mandatory and Readonly
+Property: Double_Sided Mode: Read only
+Property: Cost_Per_Page Mode: Normal
+Property: Model_Number Mode: Read only
+Property: Pages_Per_Sec Mode: Read only
+Property: User_Queue Mode: Normal
+Property: File_Sizes_Pending Mode: Normal
------------------------------
Type Name: File_System
Interface Name: IDL:TAO_Trader_Test/File_System:1.0
Super Type: Remote_IO
-Property: Name Mode: Mandatory and Readonly
-Property: Location Mode: Mandatory
-Property: Description Mode: Normal
-Property: Host_Name Mode: Mandatory
-Property: Trader_Name Mode: Normal
-Property: Miscellaneous Mode: Normal
-Property: Disk_Space Mode: Mandatory and Readonly
-Property: Space_Remaining Mode: Normal
-Property: Permission_Level Mode: Normal
+Property: Name Mode: Mandatory and Readonly
+Property: Location Mode: Mandatory
+Property: Description Mode: Normal
+Property: Host_Name Mode: Mandatory
+Property: Trader_Name Mode: Normal
+Property: Miscellaneous Mode: Normal
+Property: Disk_Space Mode: Mandatory and Readonly
+Property: Space_Remaining Mode: Normal
+Property: Permission_Level Mode: Normal
------------------------------
Type Name: PostScript_Printer
Interface Name: IDL:TAO_Trader_Test/PostScript_Printer:1.0
Super Type: Remote_IO
Super Type: Printer
-Property: Name Mode: Mandatory and Readonly
-Property: Location Mode: Mandatory
-Property: Description Mode: Normal
-Property: Host_Name Mode: Mandatory
-Property: Trader_Name Mode: Normal
-Property: Miscellaneous Mode: Normal
-Property: Color Mode: Mandatory and Readonly
-Property: Double_Sided Mode: Read only
-Property: Cost_Per_Page Mode: Normal
-Property: Model_Number Mode: Read only
-Property: Pages_Per_Sec Mode: Read only
-Property: User_Queue Mode: Normal
-Property: File_Sizes_Pending Mode: Normal
-Property: Version Mode: Mandatory and Readonly
+Property: Name Mode: Mandatory and Readonly
+Property: Location Mode: Mandatory
+Property: Description Mode: Normal
+Property: Host_Name Mode: Mandatory
+Property: Trader_Name Mode: Normal
+Property: Miscellaneous Mode: Normal
+Property: Color Mode: Mandatory and Readonly
+Property: Double_Sided Mode: Read only
+Property: Cost_Per_Page Mode: Normal
+Property: Model_Number Mode: Read only
+Property: Pages_Per_Sec Mode: Read only
+Property: User_Queue Mode: Normal
+Property: File_Sizes_Pending Mode: Normal
+Property: Version Mode: Mandatory and Readonly
------------------------------
*** Service Type Exporter tests complete.
*** Running the Offer Exporter tests.
@@ -2261,8 +2261,8 @@ Running the Offer Importer tests.
*** TAO_Offer_Importer::Federated Query.
*** Performing query for Remote_IO.
-*** Query:
-*** Preferences:
+*** Query:
+*** Preferences:
*** Results:
------------------------------
@@ -2415,8 +2415,8 @@ Double_Sided : Boolean TRUE
Cost_Per_Page : Float 0.000000
Model_Number : String HP238293892bn2398
Pages_Per_Sec : UShort 0
-User_Queue : sbw1 schmidt naga alex
-File_Sizes_Pending: 0 10000 20000 30000
+User_Queue : sbw1 schmidt naga alex
+File_Sizes_Pending: 0 10000 20000 30000
------------------------------
Name : String Printer #1
Location : String Bryan 503
@@ -2428,8 +2428,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 1.000000
Model_Number : String PK92839nkse092309
Pages_Per_Sec : UShort 1
-User_Queue : mk1 marina sumedh sergio
-File_Sizes_Pending: 40000 50000 60000 70000
+User_Queue : mk1 marina sumedh sergio
+File_Sizes_Pending: 40000 50000 60000 70000
------------------------------
Name : String Printer #2
Location : String Dunker 102
@@ -2441,8 +2441,8 @@ Double_Sided : Boolean TRUE
Cost_Per_Page : Float 2.000000
Model_Number : String 8328323n293kljs98
Pages_Per_Sec : UShort 2
-User_Queue : coryan cdgill levine jxh
-File_Sizes_Pending: 80000 90000 100000 110000
+User_Queue : coryan cdgill levine jxh
+File_Sizes_Pending: 80000 90000 100000 110000
------------------------------
Name : String Printer #3
Location : String Jolley 408
@@ -2454,8 +2454,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 3.000000
Model_Number : String 29309sjdkq34jksd2
Pages_Per_Sec : UShort 3
-User_Queue : irfan nanbor eea1 sbw1
-File_Sizes_Pending: 120000 130000 140000 0
+User_Queue : irfan nanbor eea1 sbw1
+File_Sizes_Pending: 120000 130000 140000 0
------------------------------
Name : String Printer #4
Location : String Lopata 401
@@ -2467,8 +2467,8 @@ Double_Sided : Boolean TRUE
Cost_Per_Page : Float 4.000000
Model_Number : String 09q834efjhqw834q3
Pages_Per_Sec : UShort 4
-User_Queue : schmidt naga alex mk1
-File_Sizes_Pending: 10000 20000 30000 40000
+User_Queue : schmidt naga alex mk1
+File_Sizes_Pending: 10000 20000 30000 40000
------------------------------
Name : String Printer #5
Location : String January 110
@@ -2480,8 +2480,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 5.000000
Model_Number : String q9834fdkjwq0934kf
Pages_Per_Sec : UShort 5
-User_Queue : marina sumedh sergio coryan
-File_Sizes_Pending: 50000 60000 70000 80000
+User_Queue : marina sumedh sergio coryan
+File_Sizes_Pending: 50000 60000 70000 80000
------------------------------
Name : String Printer #6
Location : String Cupples I 30
@@ -2493,8 +2493,8 @@ Double_Sided : Boolean TRUE
Cost_Per_Page : Float 6.000000
Model_Number : String q834jfda09q834djk
Pages_Per_Sec : UShort 6
-User_Queue : cdgill levine jxh irfan
-File_Sizes_Pending: 90000 100000 110000 120000
+User_Queue : cdgill levine jxh irfan
+File_Sizes_Pending: 90000 100000 110000 120000
------------------------------
Name : String Printer #7
Location : String Cupples II 201
@@ -2506,8 +2506,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 7.000000
Model_Number : String kajsd09q384kjda90
Pages_Per_Sec : UShort 7
-User_Queue : nanbor eea1 sbw1 schmidt
-File_Sizes_Pending: 130000 140000 0 10000
+User_Queue : nanbor eea1 sbw1 schmidt
+File_Sizes_Pending: 130000 140000 0 10000
------------------------------
Name : String Printer #8
Location : String Urbauer 321
@@ -2519,8 +2519,8 @@ Double_Sided : Boolean TRUE
Cost_Per_Page : Float 8.000000
Model_Number : String 9p83q4jklsdj098q3
Pages_Per_Sec : UShort 8
-User_Queue : naga alex mk1 marina
-File_Sizes_Pending: 20000 30000 40000 50000
+User_Queue : naga alex mk1 marina
+File_Sizes_Pending: 20000 30000 40000 50000
------------------------------
Name : String Printer #9
Location : String Umrath 302
@@ -2532,8 +2532,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 9.000000
Model_Number : String 09a834ojfda09wu3r
Pages_Per_Sec : UShort 9
-User_Queue : sumedh sergio coryan cdgill
-File_Sizes_Pending: 60000 70000 80000 90000
+User_Queue : sumedh sergio coryan cdgill
+File_Sizes_Pending: 60000 70000 80000 90000
------------------------------
Name : String Printer #10
Location : String Wilson 110
@@ -2545,8 +2545,8 @@ Double_Sided : Boolean TRUE
Cost_Per_Page : Float 10.000000
Model_Number : String 09234kejdfq934jed
Pages_Per_Sec : UShort 10
-User_Queue : levine jxh irfan nanbor
-File_Sizes_Pending: 100000 110000 120000 130000
+User_Queue : levine jxh irfan nanbor
+File_Sizes_Pending: 100000 110000 120000 130000
------------------------------
Name : String Printer #11
Location : String Olin 239
@@ -2558,8 +2558,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 11.000000
Model_Number : String 0q83kjefd09384jda
Pages_Per_Sec : UShort 11
-User_Queue : eea1 sbw1 schmidt naga
-File_Sizes_Pending: 140000 0 10000 20000
+User_Queue : eea1 sbw1 schmidt naga
+File_Sizes_Pending: 140000 0 10000 20000
------------------------------
Name : String Printer #12
Location : String Simon 238
@@ -2571,8 +2571,8 @@ Double_Sided : Boolean TRUE
Cost_Per_Page : Float 12.000000
Model_Number : String asdfj0283jkdf0923
Pages_Per_Sec : UShort 12
-User_Queue : alex mk1 marina sumedh
-File_Sizes_Pending: 30000 40000 50000 60000
+User_Queue : alex mk1 marina sumedh
+File_Sizes_Pending: 30000 40000 50000 60000
------------------------------
Name : String Printer #13
Location : String Rebstock 232
@@ -2584,8 +2584,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 13.000000
Model_Number : String kladfp72wu34j230f
Pages_Per_Sec : UShort 13
-User_Queue : sergio coryan cdgill levine
-File_Sizes_Pending: 70000 80000 90000 100000
+User_Queue : sergio coryan cdgill levine
+File_Sizes_Pending: 70000 80000 90000 100000
------------------------------
Name : String Printer #14
Location : String McMillan 123
@@ -2597,8 +2597,8 @@ Double_Sided : Boolean TRUE
Cost_Per_Page : Float 14.000000
Model_Number : String 9q834jidlj234ujof
Pages_Per_Sec : UShort 14
-User_Queue : jxh irfan nanbor eea1
-File_Sizes_Pending: 110000 120000 130000 140000
+User_Queue : jxh irfan nanbor eea1
+File_Sizes_Pending: 110000 120000 130000 140000
------------------------------
Name : String Plotter #0
Location : String Bryan 509
@@ -2609,8 +2609,8 @@ Num_Colors : Long 0
Auto_Loading : Boolean FALSE
Cost_Per_Page : Float 0.000000
Model_Number : String HP238293892bn2398
-User_Queue : sbw1 schmidt naga alex
-File_Sizes_Pending: 0 10000 20000 30000
+User_Queue : sbw1 schmidt naga alex
+File_Sizes_Pending: 0 10000 20000 30000
------------------------------
Name : String Plotter #1
Location : String Bryan 503
@@ -2621,8 +2621,8 @@ Num_Colors : Long 2
Auto_Loading : Boolean TRUE
Cost_Per_Page : Float 1.000000
Model_Number : String PK92839nkse092309
-User_Queue : mk1 marina sumedh sergio
-File_Sizes_Pending: 40000 50000 60000 70000
+User_Queue : mk1 marina sumedh sergio
+File_Sizes_Pending: 40000 50000 60000 70000
------------------------------
Name : String Plotter #2
Location : String Dunker 102
@@ -2633,8 +2633,8 @@ Num_Colors : Long 4
Auto_Loading : Boolean FALSE
Cost_Per_Page : Float 2.000000
Model_Number : String 8328323n293kljs98
-User_Queue : coryan cdgill levine jxh
-File_Sizes_Pending: 80000 90000 100000 110000
+User_Queue : coryan cdgill levine jxh
+File_Sizes_Pending: 80000 90000 100000 110000
------------------------------
Name : String Plotter #3
Location : String Jolley 408
@@ -2645,8 +2645,8 @@ Num_Colors : Long 6
Auto_Loading : Boolean TRUE
Cost_Per_Page : Float 3.000000
Model_Number : String 29309sjdkq34jksd2
-User_Queue : irfan nanbor eea1 sbw1
-File_Sizes_Pending: 120000 130000 140000 0
+User_Queue : irfan nanbor eea1 sbw1
+File_Sizes_Pending: 120000 130000 140000 0
------------------------------
Name : String Plotter #4
Location : String Lopata 401
@@ -2657,8 +2657,8 @@ Num_Colors : Long 8
Auto_Loading : Boolean FALSE
Cost_Per_Page : Float 4.000000
Model_Number : String 09q834efjhqw834q3
-User_Queue : schmidt naga alex mk1
-File_Sizes_Pending: 10000 20000 30000 40000
+User_Queue : schmidt naga alex mk1
+File_Sizes_Pending: 10000 20000 30000 40000
------------------------------
Name : String Plotter #5
Location : String January 110
@@ -2669,8 +2669,8 @@ Num_Colors : Long 10
Auto_Loading : Boolean TRUE
Cost_Per_Page : Float 5.000000
Model_Number : String q9834fdkjwq0934kf
-User_Queue : marina sumedh sergio coryan
-File_Sizes_Pending: 50000 60000 70000 80000
+User_Queue : marina sumedh sergio coryan
+File_Sizes_Pending: 50000 60000 70000 80000
------------------------------
Name : String Plotter #6
Location : String Cupples I 30
@@ -2681,8 +2681,8 @@ Num_Colors : Long 12
Auto_Loading : Boolean FALSE
Cost_Per_Page : Float 6.000000
Model_Number : String q834jfda09q834djk
-User_Queue : cdgill levine jxh irfan
-File_Sizes_Pending: 90000 100000 110000 120000
+User_Queue : cdgill levine jxh irfan
+File_Sizes_Pending: 90000 100000 110000 120000
------------------------------
Name : String Plotter #7
Location : String Cupples II 201
@@ -2693,8 +2693,8 @@ Num_Colors : Long 14
Auto_Loading : Boolean TRUE
Cost_Per_Page : Float 7.000000
Model_Number : String kajsd09q384kjda90
-User_Queue : nanbor eea1 sbw1 schmidt
-File_Sizes_Pending: 130000 140000 0 10000
+User_Queue : nanbor eea1 sbw1 schmidt
+File_Sizes_Pending: 130000 140000 0 10000
------------------------------
Name : String Plotter #8
Location : String Urbauer 321
@@ -2705,8 +2705,8 @@ Num_Colors : Long 16
Auto_Loading : Boolean FALSE
Cost_Per_Page : Float 8.000000
Model_Number : String 9p83q4jklsdj098q3
-User_Queue : naga alex mk1 marina
-File_Sizes_Pending: 20000 30000 40000 50000
+User_Queue : naga alex mk1 marina
+File_Sizes_Pending: 20000 30000 40000 50000
------------------------------
Name : String Plotter #9
Location : String Umrath 302
@@ -2717,8 +2717,8 @@ Num_Colors : Long 18
Auto_Loading : Boolean TRUE
Cost_Per_Page : Float 9.000000
Model_Number : String 09a834ojfda09wu3r
-User_Queue : sumedh sergio coryan cdgill
-File_Sizes_Pending: 60000 70000 80000 90000
+User_Queue : sumedh sergio coryan cdgill
+File_Sizes_Pending: 60000 70000 80000 90000
------------------------------
Name : String Plotter #10
Location : String Wilson 110
@@ -2729,8 +2729,8 @@ Num_Colors : Long 20
Auto_Loading : Boolean FALSE
Cost_Per_Page : Float 10.000000
Model_Number : String 09234kejdfq934jed
-User_Queue : levine jxh irfan nanbor
-File_Sizes_Pending: 100000 110000 120000 130000
+User_Queue : levine jxh irfan nanbor
+File_Sizes_Pending: 100000 110000 120000 130000
------------------------------
Name : String Plotter #11
Location : String Olin 239
@@ -2741,8 +2741,8 @@ Num_Colors : Long 22
Auto_Loading : Boolean TRUE
Cost_Per_Page : Float 11.000000
Model_Number : String 0q83kjefd09384jda
-User_Queue : eea1 sbw1 schmidt naga
-File_Sizes_Pending: 140000 0 10000 20000
+User_Queue : eea1 sbw1 schmidt naga
+File_Sizes_Pending: 140000 0 10000 20000
------------------------------
Name : String Plotter #12
Location : String Simon 238
@@ -2753,8 +2753,8 @@ Num_Colors : Long 24
Auto_Loading : Boolean FALSE
Cost_Per_Page : Float 12.000000
Model_Number : String asdfj0283jkdf0923
-User_Queue : alex mk1 marina sumedh
-File_Sizes_Pending: 30000 40000 50000 60000
+User_Queue : alex mk1 marina sumedh
+File_Sizes_Pending: 30000 40000 50000 60000
------------------------------
Name : String Plotter #13
Location : String Rebstock 232
@@ -2765,8 +2765,8 @@ Num_Colors : Long 26
Auto_Loading : Boolean TRUE
Cost_Per_Page : Float 13.000000
Model_Number : String kladfp72wu34j230f
-User_Queue : sergio coryan cdgill levine
-File_Sizes_Pending: 70000 80000 90000 100000
+User_Queue : sergio coryan cdgill levine
+File_Sizes_Pending: 70000 80000 90000 100000
------------------------------
Name : String Plotter #14
Location : String McMillan 123
@@ -2777,13 +2777,13 @@ Num_Colors : Long 28
Auto_Loading : Boolean FALSE
Cost_Per_Page : Float 14.000000
Model_Number : String 9q834jidlj234ujof
-User_Queue : jxh irfan nanbor eea1
-File_Sizes_Pending: 110000 120000 130000 140000
+User_Queue : jxh irfan nanbor eea1
+File_Sizes_Pending: 110000 120000 130000 140000
------------------------------
*** Performing query for Remote_IO.
*** Query: Location ~ 'Cupples'
-*** Preferences:
+*** Preferences:
*** Results:
------------------------------
@@ -2817,8 +2817,8 @@ Double_Sided : Boolean TRUE
Cost_Per_Page : Float 6.000000
Model_Number : String q834jfda09q834djk
Pages_Per_Sec : UShort 6
-User_Queue : cdgill levine jxh irfan
-File_Sizes_Pending: 90000 100000 110000 120000
+User_Queue : cdgill levine jxh irfan
+File_Sizes_Pending: 90000 100000 110000 120000
------------------------------
Name : String Printer #7
Location : String Cupples II 201
@@ -2830,8 +2830,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 7.000000
Model_Number : String kajsd09q384kjda90
Pages_Per_Sec : UShort 7
-User_Queue : nanbor eea1 sbw1 schmidt
-File_Sizes_Pending: 130000 140000 0 10000
+User_Queue : nanbor eea1 sbw1 schmidt
+File_Sizes_Pending: 130000 140000 0 10000
------------------------------
Name : String Plotter #6
Location : String Cupples I 30
@@ -2842,8 +2842,8 @@ Num_Colors : Long 12
Auto_Loading : Boolean FALSE
Cost_Per_Page : Float 6.000000
Model_Number : String q834jfda09q834djk
-User_Queue : cdgill levine jxh irfan
-File_Sizes_Pending: 90000 100000 110000 120000
+User_Queue : cdgill levine jxh irfan
+File_Sizes_Pending: 90000 100000 110000 120000
------------------------------
Name : String Plotter #7
Location : String Cupples II 201
@@ -2854,8 +2854,8 @@ Num_Colors : Long 14
Auto_Loading : Boolean TRUE
Cost_Per_Page : Float 7.000000
Model_Number : String kajsd09q384kjda90
-User_Queue : nanbor eea1 sbw1 schmidt
-File_Sizes_Pending: 130000 140000 0 10000
+User_Queue : nanbor eea1 sbw1 schmidt
+File_Sizes_Pending: 130000 140000 0 10000
------------------------------
Offers in the iterator:
------------------------------
@@ -2877,8 +2877,8 @@ Num_Colors : Long 0
Auto_Loading : Boolean FALSE
Cost_Per_Page : Float 0.000000
Model_Number : String HP238293892bn2398
-User_Queue : sbw1 schmidt naga alex
-File_Sizes_Pending: 0 10000 20000 30000
+User_Queue : sbw1 schmidt naga alex
+File_Sizes_Pending: 0 10000 20000 30000
------------------------------
Name : String Plotter #3
Location : String Jolley 408
@@ -2889,8 +2889,8 @@ Num_Colors : Long 6
Auto_Loading : Boolean TRUE
Cost_Per_Page : Float 3.000000
Model_Number : String 29309sjdkq34jksd2
-User_Queue : irfan nanbor eea1 sbw1
-File_Sizes_Pending: 120000 130000 140000 0
+User_Queue : irfan nanbor eea1 sbw1
+File_Sizes_Pending: 120000 130000 140000 0
------------------------------
Name : String Plotter #7
Location : String Cupples II 201
@@ -2901,8 +2901,8 @@ Num_Colors : Long 14
Auto_Loading : Boolean TRUE
Cost_Per_Page : Float 7.000000
Model_Number : String kajsd09q384kjda90
-User_Queue : nanbor eea1 sbw1 schmidt
-File_Sizes_Pending: 130000 140000 0 10000
+User_Queue : nanbor eea1 sbw1 schmidt
+File_Sizes_Pending: 130000 140000 0 10000
------------------------------
Name : String Plotter #11
Location : String Olin 239
@@ -2913,8 +2913,8 @@ Num_Colors : Long 22
Auto_Loading : Boolean TRUE
Cost_Per_Page : Float 11.000000
Model_Number : String 0q83kjefd09384jda
-User_Queue : eea1 sbw1 schmidt naga
-File_Sizes_Pending: 140000 0 10000 20000
+User_Queue : eea1 sbw1 schmidt naga
+File_Sizes_Pending: 140000 0 10000 20000
------------------------------
Offers in the iterator:
------------------------------
@@ -2936,8 +2936,8 @@ Num_Colors : Long 12
Auto_Loading : Boolean FALSE
Cost_Per_Page : Float 6.000000
Model_Number : String q834jfda09q834djk
-User_Queue : cdgill levine jxh irfan
-File_Sizes_Pending: 90000 100000 110000 120000
+User_Queue : cdgill levine jxh irfan
+File_Sizes_Pending: 90000 100000 110000 120000
------------------------------
Name : String Plotter #7
Location : String Cupples II 201
@@ -2948,8 +2948,8 @@ Num_Colors : Long 14
Auto_Loading : Boolean TRUE
Cost_Per_Page : Float 7.000000
Model_Number : String kajsd09q384kjda90
-User_Queue : nanbor eea1 sbw1 schmidt
-File_Sizes_Pending: 130000 140000 0 10000
+User_Queue : nanbor eea1 sbw1 schmidt
+File_Sizes_Pending: 130000 140000 0 10000
------------------------------
Offers in the iterator:
------------------------------
@@ -2972,8 +2972,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 11.000000
Model_Number : String 0q83kjefd09384jda
Pages_Per_Sec : UShort 11
-User_Queue : eea1 sbw1 schmidt naga
-File_Sizes_Pending: 140000 0 10000 20000
+User_Queue : eea1 sbw1 schmidt naga
+File_Sizes_Pending: 140000 0 10000 20000
------------------------------
Name : String Printer #7
Location : String Cupples II 201
@@ -2985,8 +2985,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 7.000000
Model_Number : String kajsd09q384kjda90
Pages_Per_Sec : UShort 7
-User_Queue : nanbor eea1 sbw1 schmidt
-File_Sizes_Pending: 130000 140000 0 10000
+User_Queue : nanbor eea1 sbw1 schmidt
+File_Sizes_Pending: 130000 140000 0 10000
------------------------------
Name : String Printer #5
Location : String January 110
@@ -2998,8 +2998,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 5.000000
Model_Number : String q9834fdkjwq0934kf
Pages_Per_Sec : UShort 5
-User_Queue : marina sumedh sergio coryan
-File_Sizes_Pending: 50000 60000 70000 80000
+User_Queue : marina sumedh sergio coryan
+File_Sizes_Pending: 50000 60000 70000 80000
------------------------------
Name : String Printer #9
Location : String Umrath 302
@@ -3011,8 +3011,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 9.000000
Model_Number : String 09a834ojfda09wu3r
Pages_Per_Sec : UShort 9
-User_Queue : sumedh sergio coryan cdgill
-File_Sizes_Pending: 60000 70000 80000 90000
+User_Queue : sumedh sergio coryan cdgill
+File_Sizes_Pending: 60000 70000 80000 90000
------------------------------
Name : String Printer #13
Location : String Rebstock 232
@@ -3024,8 +3024,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 13.000000
Model_Number : String kladfp72wu34j230f
Pages_Per_Sec : UShort 13
-User_Queue : sergio coryan cdgill levine
-File_Sizes_Pending: 70000 80000 90000 100000
+User_Queue : sergio coryan cdgill levine
+File_Sizes_Pending: 70000 80000 90000 100000
------------------------------
Offers in the iterator:
------------------------------
@@ -3048,8 +3048,8 @@ Double_Sided : Boolean TRUE
Cost_Per_Page : Float 14.000000
Model_Number : String 9q834jidlj234ujof
Pages_Per_Sec : UShort 14
-User_Queue : jxh irfan nanbor eea1
-File_Sizes_Pending: 110000 120000 130000 140000
+User_Queue : jxh irfan nanbor eea1
+File_Sizes_Pending: 110000 120000 130000 140000
------------------------------
Name : String Printer #13
Location : String Rebstock 232
@@ -3061,8 +3061,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 13.000000
Model_Number : String kladfp72wu34j230f
Pages_Per_Sec : UShort 13
-User_Queue : sergio coryan cdgill levine
-File_Sizes_Pending: 70000 80000 90000 100000
+User_Queue : sergio coryan cdgill levine
+File_Sizes_Pending: 70000 80000 90000 100000
------------------------------
Name : String Printer #12
Location : String Simon 238
@@ -3074,8 +3074,8 @@ Double_Sided : Boolean TRUE
Cost_Per_Page : Float 12.000000
Model_Number : String asdfj0283jkdf0923
Pages_Per_Sec : UShort 12
-User_Queue : alex mk1 marina sumedh
-File_Sizes_Pending: 30000 40000 50000 60000
+User_Queue : alex mk1 marina sumedh
+File_Sizes_Pending: 30000 40000 50000 60000
------------------------------
Name : String Printer #11
Location : String Olin 239
@@ -3087,8 +3087,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 11.000000
Model_Number : String 0q83kjefd09384jda
Pages_Per_Sec : UShort 11
-User_Queue : eea1 sbw1 schmidt naga
-File_Sizes_Pending: 140000 0 10000 20000
+User_Queue : eea1 sbw1 schmidt naga
+File_Sizes_Pending: 140000 0 10000 20000
------------------------------
Name : String Printer #10
Location : String Wilson 110
@@ -3100,8 +3100,8 @@ Double_Sided : Boolean TRUE
Cost_Per_Page : Float 10.000000
Model_Number : String 09234kejdfq934jed
Pages_Per_Sec : UShort 10
-User_Queue : levine jxh irfan nanbor
-File_Sizes_Pending: 100000 110000 120000 130000
+User_Queue : levine jxh irfan nanbor
+File_Sizes_Pending: 100000 110000 120000 130000
------------------------------
Name : String Printer #9
Location : String Umrath 302
@@ -3113,8 +3113,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 9.000000
Model_Number : String 09a834ojfda09wu3r
Pages_Per_Sec : UShort 9
-User_Queue : sumedh sergio coryan cdgill
-File_Sizes_Pending: 60000 70000 80000 90000
+User_Queue : sumedh sergio coryan cdgill
+File_Sizes_Pending: 60000 70000 80000 90000
------------------------------
Name : String Printer #8
Location : String Urbauer 321
@@ -3126,8 +3126,8 @@ Double_Sided : Boolean TRUE
Cost_Per_Page : Float 8.000000
Model_Number : String 9p83q4jklsdj098q3
Pages_Per_Sec : UShort 8
-User_Queue : naga alex mk1 marina
-File_Sizes_Pending: 20000 30000 40000 50000
+User_Queue : naga alex mk1 marina
+File_Sizes_Pending: 20000 30000 40000 50000
------------------------------
Name : String Printer #7
Location : String Cupples II 201
@@ -3139,8 +3139,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 7.000000
Model_Number : String kajsd09q384kjda90
Pages_Per_Sec : UShort 7
-User_Queue : nanbor eea1 sbw1 schmidt
-File_Sizes_Pending: 130000 140000 0 10000
+User_Queue : nanbor eea1 sbw1 schmidt
+File_Sizes_Pending: 130000 140000 0 10000
------------------------------
Offers in the iterator:
------------------------------
@@ -3154,8 +3154,8 @@ Double_Sided : Boolean TRUE
Cost_Per_Page : Float 6.000000
Model_Number : String q834jfda09q834djk
Pages_Per_Sec : UShort 6
-User_Queue : cdgill levine jxh irfan
-File_Sizes_Pending: 90000 100000 110000 120000
+User_Queue : cdgill levine jxh irfan
+File_Sizes_Pending: 90000 100000 110000 120000
------------------------------
Name : String Printer #5
Location : String January 110
@@ -3167,8 +3167,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 5.000000
Model_Number : String q9834fdkjwq0934kf
Pages_Per_Sec : UShort 5
-User_Queue : marina sumedh sergio coryan
-File_Sizes_Pending: 50000 60000 70000 80000
+User_Queue : marina sumedh sergio coryan
+File_Sizes_Pending: 50000 60000 70000 80000
------------------------------
Name : String Printer #4
Location : String Lopata 401
@@ -3180,8 +3180,8 @@ Double_Sided : Boolean TRUE
Cost_Per_Page : Float 4.000000
Model_Number : String 09q834efjhqw834q3
Pages_Per_Sec : UShort 4
-User_Queue : schmidt naga alex mk1
-File_Sizes_Pending: 10000 20000 30000 40000
+User_Queue : schmidt naga alex mk1
+File_Sizes_Pending: 10000 20000 30000 40000
------------------------------
Name : String Printer #3
Location : String Jolley 408
@@ -3193,8 +3193,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 3.000000
Model_Number : String 29309sjdkq34jksd2
Pages_Per_Sec : UShort 3
-User_Queue : irfan nanbor eea1 sbw1
-File_Sizes_Pending: 120000 130000 140000 0
+User_Queue : irfan nanbor eea1 sbw1
+File_Sizes_Pending: 120000 130000 140000 0
------------------------------
Name : String Printer #2
Location : String Dunker 102
@@ -3206,8 +3206,8 @@ Double_Sided : Boolean TRUE
Cost_Per_Page : Float 2.000000
Model_Number : String 8328323n293kljs98
Pages_Per_Sec : UShort 2
-User_Queue : coryan cdgill levine jxh
-File_Sizes_Pending: 80000 90000 100000 110000
+User_Queue : coryan cdgill levine jxh
+File_Sizes_Pending: 80000 90000 100000 110000
------------------------------
Name : String Printer #1
Location : String Bryan 503
@@ -3219,8 +3219,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 1.000000
Model_Number : String PK92839nkse092309
Pages_Per_Sec : UShort 1
-User_Queue : mk1 marina sumedh sergio
-File_Sizes_Pending: 40000 50000 60000 70000
+User_Queue : mk1 marina sumedh sergio
+File_Sizes_Pending: 40000 50000 60000 70000
------------------------------
Name : String Printer #0
Location : String Bryan 509
@@ -3232,8 +3232,8 @@ Double_Sided : Boolean TRUE
Cost_Per_Page : Float 0.000000
Model_Number : String HP238293892bn2398
Pages_Per_Sec : UShort 0
-User_Queue : sbw1 schmidt naga alex
-File_Sizes_Pending: 0 10000 20000 30000
+User_Queue : sbw1 schmidt naga alex
+File_Sizes_Pending: 0 10000 20000 30000
------------------------------
*** Performing query for Printer.
@@ -3254,8 +3254,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 7.000000
Model_Number : String kajsd09q384kjda90
Pages_Per_Sec : UShort 7
-User_Queue : nanbor eea1 sbw1 schmidt
-File_Sizes_Pending: 130000 140000 0 10000
+User_Queue : nanbor eea1 sbw1 schmidt
+File_Sizes_Pending: 130000 140000 0 10000
------------------------------
Name : String Printer #0
Location : String Bryan 509
@@ -3267,8 +3267,8 @@ Double_Sided : Boolean TRUE
Cost_Per_Page : Float 0.000000
Model_Number : String HP238293892bn2398
Pages_Per_Sec : UShort 0
-User_Queue : sbw1 schmidt naga alex
-File_Sizes_Pending: 0 10000 20000 30000
+User_Queue : sbw1 schmidt naga alex
+File_Sizes_Pending: 0 10000 20000 30000
------------------------------
Name : String Printer #3
Location : String Jolley 408
@@ -3280,8 +3280,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 3.000000
Model_Number : String 29309sjdkq34jksd2
Pages_Per_Sec : UShort 3
-User_Queue : irfan nanbor eea1 sbw1
-File_Sizes_Pending: 120000 130000 140000 0
+User_Queue : irfan nanbor eea1 sbw1
+File_Sizes_Pending: 120000 130000 140000 0
------------------------------
Name : String Printer #11
Location : String Olin 239
@@ -3293,8 +3293,8 @@ Double_Sided : Boolean FALSE
Cost_Per_Page : Float 11.000000
Model_Number : String 0q83kjefd09384jda
Pages_Per_Sec : UShort 11
-User_Queue : eea1 sbw1 schmidt naga
-File_Sizes_Pending: 140000 0 10000 20000
+User_Queue : eea1 sbw1 schmidt naga
+File_Sizes_Pending: 140000 0 10000 20000
------------------------------
Offers in the iterator:
------------------------------
diff --git a/TAO/orbsvcs/tests/ior_corbaname/README b/TAO/orbsvcs/tests/ior_corbaname/README
index 75035230361..40dcceb03a2 100644
--- a/TAO/orbsvcs/tests/ior_corbaname/README
+++ b/TAO/orbsvcs/tests/ior_corbaname/README
@@ -1,14 +1,14 @@
-// $Id$
+$Id$
-Here is a simple to test the corbaname: style URL. The simple way to
-test is to run the run_test.pl.
+Here is a simple to test the corbaname: style URL. The simple way to
+test is to run the run_test.pl.
To test manually:
1. Run the NamingService at a specified endpoint.
-
+
$NamingService -ORBEndPoint iiop://doc.ece.uci.edu:12345 &
-
+
2. Run the server.
./server &
@@ -16,17 +16,17 @@ To test manually:
3. Run the client as one of these.
a) ./client corbaname:doc.ece.uci.edu:12345
-
- CORBANAME style URL is used and the protocol used to
+
+ CORBANAME style URL is used and the protocol used to
contact the naming context is <iiop> implicitly.
-
+
b) ./client corbaname::iiop:doc.ece.uci.edu:12345
- CORBANAME style URL is used and the protocol used to
+ CORBANAME style URL is used and the protocol used to
contact the naming context is <iiop>.
-
+
c) ./client corbaname:rir:
-
- CORBANAME style URL is used and the protocol used to
+
+ CORBANAME style URL is used and the protocol used to
contact the naming context is <rir>.
diff --git a/TAO/orbsvcs/tests/tests_svc_loader/README b/TAO/orbsvcs/tests/tests_svc_loader/README
index 1e581782879..6348a2463b3 100644
--- a/TAO/orbsvcs/tests/tests_svc_loader/README
+++ b/TAO/orbsvcs/tests/tests_svc_loader/README
@@ -1,12 +1,12 @@
-// $Id$
+$Id$
This directory contains a generic client program. The program
takes an object reference as a commandline parameter and checks if it
refers to an existing object and a debug statement is printed out to
-reflect the same.
+reflect the same.
To Run tests_svc_loader
=======================
./tests_svc_loader file://ns.ior
-
+
diff --git a/TAO/orbsvcs/tests/unit/Notify/MC/MonitorControlExt/README b/TAO/orbsvcs/tests/unit/Notify/MC/MonitorControlExt/README
index b8dd946b5c6..ade96d70d3e 100644
--- a/TAO/orbsvcs/tests/unit/Notify/MC/MonitorControlExt/README
+++ b/TAO/orbsvcs/tests/unit/Notify/MC/MonitorControlExt/README
@@ -1,3 +1,4 @@
+$Id$
What this test tests?
- Create a named EC
diff --git a/TAO/orbsvcs/tests/unit/Notify/MC/MonitorManager/svc.conf.xml b/TAO/orbsvcs/tests/unit/Notify/MC/MonitorManager/svc.conf.xml
index ebdd0a7de4f..80eeb79c3b6 100644
--- a/TAO/orbsvcs/tests/unit/Notify/MC/MonitorManager/svc.conf.xml
+++ b/TAO/orbsvcs/tests/unit/Notify/MC/MonitorManager/svc.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<dynamic id="TAO_MonitorAndControl" type="Service_Object">
<initializer path="TAO_CosNotification_MC" init="_make_TAO_MonitorAndControl" params="-NoNameSvc -ORBArg -ORBListenEndpoints -ORBArg iiop://127.0.0.1:32101"/>
</dynamic>
diff --git a/TAO/performance-tests/Anyop/anyop.cpp b/TAO/performance-tests/Anyop/anyop.cpp
index fd82626063f..afaa7e0cf1c 100644
--- a/TAO/performance-tests/Anyop/anyop.cpp
+++ b/TAO/performance-tests/Anyop/anyop.cpp
@@ -83,8 +83,7 @@ ACE_TMAIN (int argc, ACE_TCHAR *argv[])
orb->string_to_object ("corbaloc:iiop:localhost:1234/Foo/Bar");
Param_Test_var param_test =
- TAO::Narrow_Utils<Param_Test>::unchecked_narrow (obj.in (),
- 0);
+ TAO::Narrow_Utils<Param_Test>::unchecked_narrow (obj.in ());
TAO_Stub *stub = param_test->_stubobj ();
stub->type_id = CORBA::string_dup ("IDL:Param_Test:1.0");
diff --git a/TAO/performance-tests/CSD_Strategy/TestApps/README b/TAO/performance-tests/CSD_Strategy/TestApps/README
index 61ddc725de5..95c7b1096ee 100644
--- a/TAO/performance-tests/CSD_Strategy/TestApps/README
+++ b/TAO/performance-tests/CSD_Strategy/TestApps/README
@@ -1,13 +1,15 @@
/**
+$Id$
+
@page CSD_Strategy TestApp README File
- This directory contains the test applications. This test tries to
+ This directory contains the test applications. This test tries to
estimate how fast the CSD strategy can handle requests.
- To run the test use the run_test.pl script as below. The number
-parameter is the trail id for the server used to identify the test
-results when running same test multiple times using single script.
+ To run the test use the run_test.pl script as below. The number
+parameter is the trail id for the server used to identify the test
+results when running same test multiple times using single script.
The id should be positive integer.
@@ -15,10 +17,10 @@ $ ./run_test.pl 1
1 remote client, 1 servant, 1 orb thread (main thread), 1 csd strategy thread
-$ ./run_test.pl remote 1
+$ ./run_test.pl remote 1
40 remote clients, 1 servant, 1 orb thread (main thread), 1 csd strategy thread
-
+
$ ./run_test.pl collocated 1
10 collocated clients, 1 servant, 1 orb thread (main thread), 1 csd strategy thread
@@ -27,7 +29,7 @@ $ ./run_test.pl remote_orbthreads 1
40 remote clients, 1 servant, 5 orb threads, 1 csd strategy thread
-$ ./run_test.pl remote_servants 1
+$ ./run_test.pl remote_servants 1
40 remote clients, 5 servants, 5 orb threads, 1 csd strategy thread
@@ -35,15 +37,15 @@ $ ./run_test.pl remote_csdthreads 1
40 remote clients, 5 servants, 1 orb thread (main thread), 5 csd strategy threads
-$ ./run_test.pl remote_big 1
+$ ./run_test.pl remote_big 1
40 remote clients, 10 servants, 4 orb threads, 5 csd strategy threads
-$ ./run_test.pl collocated_big 1
+$ ./run_test.pl collocated_big 1
40 collocated clients, 10 servants, 1 orb thread (main thread), 5 csd strategy threads
-$ ./run_test.pl big 1
+$ ./run_test.pl big 1
40 remote clients, 40 collocated clients, 10 servants, 4 orb threads, 5 csd strategy threads
diff --git a/TAO/performance-tests/CSD_Strategy/TestInf/README b/TAO/performance-tests/CSD_Strategy/TestInf/README
index 1d7f59a5c47..ac3aa526e31 100644
--- a/TAO/performance-tests/CSD_Strategy/TestInf/README
+++ b/TAO/performance-tests/CSD_Strategy/TestInf/README
@@ -1,11 +1,13 @@
/**
+$Id$
+
@page CSD_Strategy TestInf README File
- This is the test infrastructure library. It contains the common shared
-code such as test exception idl files, the helper functions that wrap multiple
+ This is the test infrastructure library. It contains the common shared
+code such as test exception idl files, the helper functions that wrap multiple
TAO operations and the classes provide the basic test functionalities. Adding
-this library is to simplify the development of the new tests.
+this library is to simplify the development of the new tests.
*/
diff --git a/TAO/performance-tests/CSD_Strategy/TestServant/README b/TAO/performance-tests/CSD_Strategy/TestServant/README
index b8ccf09aaf1..ded360a7dc7 100644
--- a/TAO/performance-tests/CSD_Strategy/TestServant/README
+++ b/TAO/performance-tests/CSD_Strategy/TestServant/README
@@ -1,10 +1,12 @@
/**
+$Id$
+
@page CSD_Strategy TestServant README File
- This is a library for the specific test. It contains test idl files, the
+ This is a library for the specific test. It contains test idl files, the
servant implementaions, test statistics and the client task with sequence
-of remote invocations. Adding this library is to simplify the tests with
+of remote invocations. Adding this library is to simplify the tests with
multiple clients or collocated tests.
-
+
*/
diff --git a/TAO/performance-tests/Cubit/README b/TAO/performance-tests/Cubit/README
index 422612af3c9..c59ed613a58 100644
--- a/TAO/performance-tests/Cubit/README
+++ b/TAO/performance-tests/Cubit/README
@@ -1,2 +1,4 @@
+$Id$
+
This directory contains the Cubit performance test for TAO.
diff --git a/TAO/performance-tests/Cubit/TAO/DII_Cubit/README b/TAO/performance-tests/Cubit/TAO/DII_Cubit/README
index c73482bdf76..3d0488f5504 100644
--- a/TAO/performance-tests/Cubit/TAO/DII_Cubit/README
+++ b/TAO/performance-tests/Cubit/TAO/DII_Cubit/README
@@ -1,8 +1,8 @@
-// $Id$
+$Id$
-This is the cubit example that does everything using DII requests.
+This is the cubit example that does everything using DII requests.
It uses the server in IDL_Cubit. Getting a reference
-to the Cubit object, making the Cubit operation calls,
+to the Cubit object, making the Cubit operation calls,
and shutting down the server are all done with DII requests.
NOTES: The IDL_Cubit server used to run a Naming Service so the client
@@ -15,8 +15,8 @@ To run the tests with one "button-push", execute the perl script run_test.pl
in this directory. It will start up the server and client. The client will
shut down the server when the tests are finished.
-If you want to run each executable separately and manually, run the
-server first (in IDL_Cubit). Then run the client with zero or more of
+If you want to run each executable separately and manually, run the
+server first (in IDL_Cubit). Then run the client with zero or more of
the following args:
[-d] Increments TAO_debug_level. It's additive, up
@@ -26,15 +26,15 @@ the following args:
[-i <factory IOR>] For passing the IOR by hand.
- [-f <filename>] If server is run with [-o <filename>] option,
+ [-f <filename>] If server is run with [-o <filename>] option,
it outputs its factory IOR to a file, which
the client can read with this option.
[-x] Shuts down server when finished.
-If using the -i option, you might want to run the server with the option
-[-ORBobjrefstyle url]. This will cause the server to display its IOR in a
-more human-readable form. The server can be run in the same window in the
+If using the -i option, you might want to run the server with the option
+[-ORBobjrefstyle url]. This will cause the server to display its IOR in a
+more human-readable form. The server can be run in the same window in the
background, or in a different window.
The command line options, default calls per loop, order and display
diff --git a/TAO/performance-tests/Cubit/TAO/IDL_Cubit/README b/TAO/performance-tests/Cubit/TAO/IDL_Cubit/README
index cd3c6535bd5..d5421161407 100644
--- a/TAO/performance-tests/Cubit/TAO/IDL_Cubit/README
+++ b/TAO/performance-tests/Cubit/TAO/IDL_Cubit/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This example uses the TAO IDL compiler to generate the SII stubs and
skeletons. You can either run the server in the background in the
diff --git a/TAO/performance-tests/Cubit/TAO/MT_Cubit/README b/TAO/performance-tests/Cubit/TAO/MT_Cubit/README
index 6a9a0ff666c..1f4caa60143 100644
--- a/TAO/performance-tests/Cubit/TAO/MT_Cubit/README
+++ b/TAO/performance-tests/Cubit/TAO/MT_Cubit/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
THE MT_CUBIT EXAMPLE
--------------------
@@ -115,10 +115,10 @@ by the client.
Default Value: Disabled
-[-u <seconds>] runs the client/server utilization test for a number of <requests>.
- The output is the number of seconds for the test to make such number of requests.
+[-u <seconds>] runs the client/server utilization test for a number of <requests>.
+ The output is the number of seconds for the test to make such number of requests.
Now run the same test but with the -l option to make the same number of requests,
- this time not using CORBA, instead directly making function calls. The difference
+ this time not using CORBA, instead directly making function calls. The difference
in time for each test to make the same number of requests is the utilization of
the OS/ORB combined.
(Note: This option overrides any specified "-t" option)
@@ -193,13 +193,13 @@ for ALL.
server:
------
$rsh host_name arun path_to_server -e iiop://DOTTED_DECIMAL_ADDRESS:0
- -f path_to_ior_file -ORBDottedDecimalAddresses 1 <server_options>
+ -f path_to_ior_file -ORBDottedDecimalAddresses 1 <server_options>
Since Chorus doesn't support DNS, you should pass
dotted_decimal_address of the server machine to -e option.
You DONT have to use -ORBDottedDecimalAddresses 1 if you have
-TAO_USE_DOTTED_DECIMAL_ADDRESSES defined in your config.h file.
+TAO_USE_DOTTED_DECIMAL_ADDRESSES defined in your config.h file.
e.g
$rsh tambora1 arun /MT_Cubit/server -e iiop://128.252.165.82:0 -f /ior
diff --git a/TAO/performance-tests/Cubit/TAO/README b/TAO/performance-tests/Cubit/TAO/README
index 61da08408de..7be940f726d 100644
--- a/TAO/performance-tests/Cubit/TAO/README
+++ b/TAO/performance-tests/Cubit/TAO/README
@@ -1,3 +1,5 @@
+$Id$
+
There are three versions of the Cubit example. Individual README files
in the respective directories explain these versions in further
detail.
@@ -7,12 +9,12 @@ detail.
Cubit example with tao_idl compiler generated stubs
and skeletons
- . MT_Cubit
+ . MT_Cubit
Multithreaded real-time Cubit example.
. DII_Cubit
-
+
Cubit example with hand-generated stubs. When
TAO supports the DII interface this will
illustrate how it works.
diff --git a/TAO/performance-tests/Latency/AMI/README b/TAO/performance-tests/Latency/AMI/README
index 16828112bc6..08bc17c47c8 100644
--- a/TAO/performance-tests/Latency/AMI/README
+++ b/TAO/performance-tests/Latency/AMI/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page AMI Latency Test README File
This test tries to estimate the minimum latency for a AMI
diff --git a/TAO/performance-tests/Latency/Collocation/README b/TAO/performance-tests/Latency/Collocation/README
index 79bd79db8c9..866c09da90d 100644
--- a/TAO/performance-tests/Latency/Collocation/README
+++ b/TAO/performance-tests/Latency/Collocation/README
@@ -1,10 +1,12 @@
/**
+$Id$
+
@page Collocation Performance Test README File
This test estimates the minimum latency for a twoway
-request when both client and server are collocated. The test uses a single
-threaded client and server, and configures the ORB to eliminate common sources
+request when both client and server are collocated. The test uses a single
+threaded client and server, and configures the ORB to eliminate common sources
of overhead, such as locking. Further, this test uses the default collocation
strategy in TAO, i.e. "thru_poa".
@@ -22,6 +24,6 @@ network.
$ ./run_test.pl
the script returns 0 if the test was successful, and prints
-out the performance numbers.
+out the performance numbers.
*/
diff --git a/TAO/performance-tests/Latency/DII/README b/TAO/performance-tests/Latency/DII/README
index 582ec78483a..5c10c40f7c1 100644
--- a/TAO/performance-tests/Latency/DII/README
+++ b/TAO/performance-tests/Latency/DII/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page DII Latency Test README File
This test tries to estimate the minimum latency for a DII twoway
diff --git a/TAO/performance-tests/Latency/DSI/README b/TAO/performance-tests/Latency/DSI/README
index e1f411e2632..2a6fd032c08 100644
--- a/TAO/performance-tests/Latency/DSI/README
+++ b/TAO/performance-tests/Latency/DSI/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Single Threaded Performance Test README File
This test tries to estimate the minimum latency for a twoway
diff --git a/TAO/performance-tests/Latency/Deferred/README b/TAO/performance-tests/Latency/Deferred/README
index f7fd39389a5..1a91af3e8f0 100644
--- a/TAO/performance-tests/Latency/Deferred/README
+++ b/TAO/performance-tests/Latency/Deferred/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Deferred Synchronous Latency Test README File
This test tries to estimate the minimum latency for a deferred
diff --git a/TAO/performance-tests/Latency/README b/TAO/performance-tests/Latency/README
index c7e4b395d5a..89b73172c5d 100644
--- a/TAO/performance-tests/Latency/README
+++ b/TAO/performance-tests/Latency/README
@@ -1,6 +1,4 @@
-#
-# $Id$
-#
+$Id$
This directory contains a number of tests that illustrate the
performance of TAO and other ORBs. The individual directories contain
diff --git a/TAO/performance-tests/Latency/Single_Threaded/README b/TAO/performance-tests/Latency/Single_Threaded/README
index e1f411e2632..2a6fd032c08 100644
--- a/TAO/performance-tests/Latency/Single_Threaded/README
+++ b/TAO/performance-tests/Latency/Single_Threaded/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Single Threaded Performance Test README File
This test tries to estimate the minimum latency for a twoway
diff --git a/TAO/performance-tests/Latency/Thread_Per_Connection/README b/TAO/performance-tests/Latency/Thread_Per_Connection/README
index e1f411e2632..2a6fd032c08 100644
--- a/TAO/performance-tests/Latency/Thread_Per_Connection/README
+++ b/TAO/performance-tests/Latency/Thread_Per_Connection/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Single Threaded Performance Test README File
This test tries to estimate the minimum latency for a twoway
diff --git a/TAO/performance-tests/Latency/Thread_Pool/README b/TAO/performance-tests/Latency/Thread_Pool/README
index 41a04c09fdb..7efd0c2a1ca 100644
--- a/TAO/performance-tests/Latency/Thread_Pool/README
+++ b/TAO/performance-tests/Latency/Thread_Pool/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Thread Pool Latency Test README File
This test tries to estimate the minimum latency for the
diff --git a/TAO/performance-tests/Memory/Single_Threaded/README b/TAO/performance-tests/Memory/Single_Threaded/README
index e83f3663b44..afea56bfa91 100644
--- a/TAO/performance-tests/Memory/Single_Threaded/README
+++ b/TAO/performance-tests/Memory/Single_Threaded/README
@@ -1,10 +1,12 @@
/**
+$Id$
+
@page Single_Threaded Test README File
- This is a simple test to track memory usage of the executables
-ie. size of task's code + data + stack space. This will not be run
-in our daily builds. This will be used only to see the memory used
-by the executables. This is just a start for more things to come.
+ This is a simple test to track memory usage of the executables
+ie. size of task's code + data + stack space. This will not be run
+in our daily builds. This will be used only to see the memory used
+by the executables. This is just a start for more things to come.
*/
diff --git a/TAO/performance-tests/POA/Create_Reference/README b/TAO/performance-tests/POA/Create_Reference/README
index 9bd9630edea..aafd5f5ed0a 100644
--- a/TAO/performance-tests/POA/Create_Reference/README
+++ b/TAO/performance-tests/POA/Create_Reference/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Create_Reference Performance Test README File
This test measures the time required to create an object
diff --git a/TAO/performance-tests/POA/Demux/README b/TAO/performance-tests/POA/Demux/README
index c0bcaf94755..4f43d7c2a82 100644
--- a/TAO/performance-tests/POA/Demux/README
+++ b/TAO/performance-tests/POA/Demux/README
@@ -1,18 +1,4 @@
-// $Id$
-// ============================================================================
-//
-// = LIBRARY
-// TAO/performance-tests/Demux
-//
-// = FILENAME
-// README
-//
-// = AUTHOR
-//
-// Aniruddha Gokhale
-//
-// ============================================================================
-
+$Id$
This test directory tests various demultiplexing strategies used in
TAO for POA, object, and operation name lookups
@@ -29,7 +15,7 @@ demux_test_client.{h, cpp}: Client-side implementation details
demux_test_macros.h: Some constants used by both the client and the server
-Generated Files:
+Generated Files:
----------------
Must run ./CodeGen/demux tool to generate the following files. See
@@ -63,7 +49,7 @@ client -d (for debugging)
------
-*NOTE*
+*NOTE*
------
The num_POAs, num_objs, and num_ops must match on the client
and server side.
@@ -84,13 +70,13 @@ Make the following changes in Object_Adapter.cpp :
#define ACE_ENABLE_TIMEPROBES
-Comment out all ACE_FUNCTION_TIMEPROBE calls except the one
+Comment out all ACE_FUNCTION_TIMEPROBE calls except the one
in locate_poa ACE_FUNCTION_TIMEPROBE
(TAO_OBJECT_ADAPTER_FIND_POA_START);
In the demux_test_client : The object loop increments by one.
-In gen_names.cpp :
+In gen_names.cpp :
> Codegen/demux -p 25
> make
> ./server -p 25
diff --git a/TAO/performance-tests/POA/Implicit_Activation/README b/TAO/performance-tests/POA/Implicit_Activation/README
index 5ffef4c1032..c7587e61330 100644
--- a/TAO/performance-tests/POA/Implicit_Activation/README
+++ b/TAO/performance-tests/POA/Implicit_Activation/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Activation Test README File
This test measures the time required to activate (via _this)
diff --git a/TAO/performance-tests/POA/README b/TAO/performance-tests/POA/README
index af00cf0d727..3b36d35e4c0 100644
--- a/TAO/performance-tests/POA/README
+++ b/TAO/performance-tests/POA/README
@@ -1,6 +1,6 @@
-// $Id$
+$Id$
-The following applications are used to measure performance of TAO's POA.
+The following applications are used to measure performance of TAO's POA.
. Object_Creation_And_Registration
diff --git a/TAO/performance-tests/Pluggable/README b/TAO/performance-tests/Pluggable/README
index c96c8c899e2..5ef4f95b99a 100644
--- a/TAO/performance-tests/Pluggable/README
+++ b/TAO/performance-tests/Pluggable/README
@@ -5,8 +5,8 @@ various parts of the ORB, but mostly the emphasis is on the
contribution due to the pluggable protocols code. So far, the
output is only to the screen, and is created using the ACE
Timeprobe class. At various points in the ORB code and in this
-test code, an ACE Timeprobe is inserted. When this point is
-passed in the execution, a timestamp is taken and added to a
+test code, an ACE Timeprobe is inserted. When this point is
+passed in the execution, a timestamp is taken and added to a
table. When the test finishes, the relative times are output,
START being the first, or zero, entry, and the following
values are the offset in microseconds. Each value has a label
diff --git a/TAO/performance-tests/Protocols/set_lksctp_params.sh b/TAO/performance-tests/Protocols/set_lksctp_params.sh
index 799f5950d58..4eb92ddadd9 100755
--- a/TAO/performance-tests/Protocols/set_lksctp_params.sh
+++ b/TAO/performance-tests/Protocols/set_lksctp_params.sh
@@ -1,4 +1,7 @@
#!/bin/sh
+# $Id$
+
+# $Id$
B_PROC=/proc/sys/net/sctp
diff --git a/TAO/performance-tests/Protocols/set_sctp_params.sh b/TAO/performance-tests/Protocols/set_sctp_params.sh
index 767158f8038..531deb1ac20 100755
--- a/TAO/performance-tests/Protocols/set_sctp_params.sh
+++ b/TAO/performance-tests/Protocols/set_sctp_params.sh
@@ -1,4 +1,7 @@
#!/bin/sh
+# $Id$
+
+# $Id$
B_PROC=/proc/sys/net/ipv4
diff --git a/TAO/performance-tests/Protocols/show_lksctp_params.sh b/TAO/performance-tests/Protocols/show_lksctp_params.sh
index 89cf1e2a5c6..584be707a87 100755
--- a/TAO/performance-tests/Protocols/show_lksctp_params.sh
+++ b/TAO/performance-tests/Protocols/show_lksctp_params.sh
@@ -1,4 +1,7 @@
#!/bin/sh
+# $Id$
+
+# $Id$
max_len=24
pushd /proc/sys/net/sctp &> /dev/null
diff --git a/TAO/performance-tests/Protocols/show_sctp_params.sh b/TAO/performance-tests/Protocols/show_sctp_params.sh
index 9037784ed1b..c6c431453b1 100755
--- a/TAO/performance-tests/Protocols/show_sctp_params.sh
+++ b/TAO/performance-tests/Protocols/show_sctp_params.sh
@@ -1,4 +1,7 @@
#!/bin/sh
+# $Id$
+
+# $Id$
max_len=24
pushd /proc/sys/net/ipv4 &> /dev/null
diff --git a/TAO/performance-tests/README b/TAO/performance-tests/README
index 1fbf7af6fe8..1913c9bba9a 100644
--- a/TAO/performance-tests/README
+++ b/TAO/performance-tests/README
@@ -1,6 +1,4 @@
-#
-# $Id$
-#
+$Id$
This directory contains a number of tests that illustrate the
performance of TAO and other ORBs. The individual directories contain
@@ -18,14 +16,14 @@ READMEs on how to run the following performance tests:
and jitter.
. POA
-
+
Various tests of the TAO's POA performance.
. Pluggable
The tests in this directory time the latency contributed by
various parts of the ORB, but mostly the emphasis is on the
- contribution due to the pluggable protocols code.
+ contribution due to the pluggable protocols code.
. RTCorba
diff --git a/TAO/performance-tests/RTCorba/Multiple_Endpoints/Orb_Per_Priority/README b/TAO/performance-tests/RTCorba/Multiple_Endpoints/Orb_Per_Priority/README
index 4fe699a2116..2ddb2eec4a6 100644
--- a/TAO/performance-tests/RTCorba/Multiple_Endpoints/Orb_Per_Priority/README
+++ b/TAO/performance-tests/RTCorba/Multiple_Endpoints/Orb_Per_Priority/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This directory contains programs for measuring performance with
the orb per priority scenario (described below).
diff --git a/TAO/performance-tests/RTCorba/Multiple_Endpoints/Single_Endpoint/README b/TAO/performance-tests/RTCorba/Multiple_Endpoints/Single_Endpoint/README
index df000702a39..c67f3c480a7 100644
--- a/TAO/performance-tests/RTCorba/Multiple_Endpoints/Single_Endpoint/README
+++ b/TAO/performance-tests/RTCorba/Multiple_Endpoints/Single_Endpoint/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This directory contains programs for measuring performance/priority
inversions for the single server endpoint scenario (described below).
diff --git a/TAO/performance-tests/RTCorba/Oneways/Reliable/README b/TAO/performance-tests/RTCorba/Oneways/Reliable/README
index 69a29e8350d..c722c7b579f 100644
--- a/TAO/performance-tests/RTCorba/Oneways/Reliable/README
+++ b/TAO/performance-tests/RTCorba/Oneways/Reliable/README
@@ -1,4 +1,4 @@
-
+$Id$
Server:
@@ -41,8 +41,8 @@ test type is anything else, the -m argument is not used. To get
reasonable results with buffered oneway requests, it's a good idea
to make the number of iterations -i a multiple of the queue size -m.
This will insure that there are no requests left in the queue to be
-sent when the tests are done with their timings. For buffered
-oneways, control is returned to the application as soon as the
+sent when the tests are done with their timings. For buffered
+oneways, control is returned to the application as soon as the
request is placed on the queue, or, if the queue is being flushed,
as soon as all the requests are sent.
@@ -52,7 +52,7 @@ returned to the application when the request is handed off to the
transport (usually TCP) layer.
If the test type is 'server', control is returned to the application
-after any servant locator is called, but before the servant
+after any servant locator is called, but before the servant
executes the request. This will enable any location forwarding
information to be returned to the client.
@@ -70,13 +70,13 @@ The -w option sets the number of empty loops of 1000 performed by
the servant. To test the advantage of SYNC_WITH_SERVER over
SYNC_WITH_TARGET and twoway requests, the servant must perform
some 'significant' work that a oneway request with a SyncScope
-policy value of SYNC_WITH_SERVER does not wait on, while the
+policy value of SYNC_WITH_SERVER does not wait on, while the
other two types of requests mentioned above do.
-All the above command line options except -k, -s, -p and -x may be
-used with the perl script run_test.pl. If no test type is specified,
-the script will run each test type in turn before the server is shut
+All the above command line options except -k, -s, -p and -x may be
+used with the perl script run_test.pl. If no test type is specified,
+the script will run each test type in turn before the server is shut
down.
There is also a perl script called client_test.pl, which facilitates
@@ -85,7 +85,7 @@ this script, first run the server manually, then run client_test.pl.
With this script, the server will not shut down automatically.
There is code in the test to set the priorities of the client and
-server threads to values consistent with a real time priority
+server threads to values consistent with a real time priority
class on Solaris and other Unix systems. If the user is not logged
in as a superuser, a message will be output that the threads are
-running in a timesharing priority class.
+running in a timesharing priority class.
diff --git a/TAO/performance-tests/RTCorba/Thread_Pool/native-svc.conf.xml b/TAO/performance-tests/RTCorba/Thread_Pool/native-svc.conf.xml
index 5be784bbb45..9ca2ca16aff 100644
--- a/TAO/performance-tests/RTCorba/Thread_Pool/native-svc.conf.xml
+++ b/TAO/performance-tests/RTCorba/Thread_Pool/native-svc.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from native-svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- For testing of RT threads (with native priority) -->
<static id="RT_ORB_Loader" params="-ORBSchedPolicy SCHED_FIFO -ORBScopePolicy SYSTEM"/>
<static id="Client_Strategy_Factory" params="-ORBTransportMuxStrategy EXCLUSIVE"/>
diff --git a/TAO/performance-tests/RTCorba/Thread_Pool/svc.conf.xml b/TAO/performance-tests/RTCorba/Thread_Pool/svc.conf.xml
index 5a8fa8250ef..a26f8ec17a1 100644
--- a/TAO/performance-tests/RTCorba/Thread_Pool/svc.conf.xml
+++ b/TAO/performance-tests/RTCorba/Thread_Pool/svc.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Options for exclusive transport strategy -->
<static id="Client_Strategy_Factory" params="-ORBTransportMuxStrategy EXCLUSIVE"/>
<!-- Options required for regular testing -->
diff --git a/TAO/performance-tests/Sequence_Latency/AMH_Single_Threaded/README b/TAO/performance-tests/Sequence_Latency/AMH_Single_Threaded/README
index 781f8ffb321..0223afcce0b 100644
--- a/TAO/performance-tests/Sequence_Latency/AMH_Single_Threaded/README
+++ b/TAO/performance-tests/Sequence_Latency/AMH_Single_Threaded/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page AMH Sequence Latency Test README File
This test tries to estimate the minimum latency for a AMH
diff --git a/TAO/performance-tests/Sequence_Latency/AMI/README b/TAO/performance-tests/Sequence_Latency/AMI/README
index d8ca3e7a1a1..6089e0d1fb2 100644
--- a/TAO/performance-tests/Sequence_Latency/AMI/README
+++ b/TAO/performance-tests/Sequence_Latency/AMI/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page AMI Latency Test README File
This test tries to estimate the minimum latency for a AMI
diff --git a/TAO/performance-tests/Sequence_Latency/DII/README b/TAO/performance-tests/Sequence_Latency/DII/README
index 7cabdf8ff6f..2b8448c0fe9 100644
--- a/TAO/performance-tests/Sequence_Latency/DII/README
+++ b/TAO/performance-tests/Sequence_Latency/DII/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page DII Latency Test README File
This test tries to estimate the minimum latency for a DII twoway
diff --git a/TAO/performance-tests/Sequence_Latency/DSI/README b/TAO/performance-tests/Sequence_Latency/DSI/README
index e82f52701ad..bb45d0bd0e7 100644
--- a/TAO/performance-tests/Sequence_Latency/DSI/README
+++ b/TAO/performance-tests/Sequence_Latency/DSI/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Single Threaded Performance Test README File
This test tries to estimate the minimum latency for a twoway
diff --git a/TAO/performance-tests/Sequence_Latency/Deferred/README b/TAO/performance-tests/Sequence_Latency/Deferred/README
index 803fafa3a0e..27776866c66 100644
--- a/TAO/performance-tests/Sequence_Latency/Deferred/README
+++ b/TAO/performance-tests/Sequence_Latency/Deferred/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Deferred Synchronous Latency Test README File
This test tries to estimate the minimum latency for a deferred
diff --git a/TAO/performance-tests/Sequence_Latency/Sequence_Operations_Time/README.txt b/TAO/performance-tests/Sequence_Latency/Sequence_Operations_Time/README.txt
index 6ccd9d496ab..f177d805345 100644
--- a/TAO/performance-tests/Sequence_Latency/Sequence_Operations_Time/README.txt
+++ b/TAO/performance-tests/Sequence_Latency/Sequence_Operations_Time/README.txt
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This test is used to validate the peformance of sequence copying.
diff --git a/TAO/performance-tests/Sequence_Latency/Thread_Per_Connection/README b/TAO/performance-tests/Sequence_Latency/Thread_Per_Connection/README
index d6cb2abb4f2..11a7ef90ac3 100644
--- a/TAO/performance-tests/Sequence_Latency/Thread_Per_Connection/README
+++ b/TAO/performance-tests/Sequence_Latency/Thread_Per_Connection/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Single Threaded Sequence Latency Performance Test README File
This test tries to estimate the minimum latency for a twoway
diff --git a/TAO/performance-tests/Sequence_Latency/Thread_Pool/README b/TAO/performance-tests/Sequence_Latency/Thread_Pool/README
index 53770acd916..d559e1c6ceb 100644
--- a/TAO/performance-tests/Sequence_Latency/Thread_Pool/README
+++ b/TAO/performance-tests/Sequence_Latency/Thread_Pool/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Thread Pool Sequence Latency Test README File
This test tries to estimate the minimum latency for the
@@ -7,7 +9,7 @@ Thread-Pool concurrency model for sequences of different data
types and sizes. The test uses a multi-threaded client
and server.
-
+
To run the test use the run_test.pl script:
$ ./run_test.pl
diff --git a/TAO/performance-tests/Throughput/README b/TAO/performance-tests/Throughput/README
index 8995dba125d..b0407327ca5 100644
--- a/TAO/performance-tests/Throughput/README
+++ b/TAO/performance-tests/Throughput/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Throughput Performance Test README File
This test tries to estimate the maximum throughput (int bytes
diff --git a/TAO/performance-tests/Throughput/Receiver_Factory.h b/TAO/performance-tests/Throughput/Receiver_Factory.h
index ea8ec3ff2a9..4ccf75b421b 100644
--- a/TAO/performance-tests/Throughput/Receiver_Factory.h
+++ b/TAO/performance-tests/Throughput/Receiver_Factory.h
@@ -8,11 +8,6 @@
#include "TestS.h"
-#if defined (_MSC_VER)
-# pragma warning(push)
-# pragma warning (disable:4250)
-#endif /* _MSC_VER */
-
/// Implement the Test::Receiver_Factory interface
class Receiver_Factory
: public virtual POA_Test::Receiver_Factory
@@ -31,9 +26,5 @@ private:
CORBA::ORB_var orb_;
};
-#if defined(_MSC_VER)
-# pragma warning(pop)
-#endif /* _MSC_VER */
-
#include /**/ "ace/post.h"
#endif /* THROUGHPUT_RECEIVER_FACTORY_H */
diff --git a/TAO/performance-tests/Throughput/svc.conf.xml b/TAO/performance-tests/Throughput/svc.conf.xml
index e3cd786d2cc..ca9d6874ff5 100644
--- a/TAO/performance-tests/Throughput/svc.conf.xml
+++ b/TAO/performance-tests/Throughput/svc.conf.xml
@@ -1,6 +1,7 @@
<?xml version='1.0'?>
<!-- Converted from ./performance-tests/Throughput/svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
<!-- $Id$ -->
<!-- -->
<!-- Please see $TAO_ROOT/docs/Options.html for details on these options. -->
diff --git a/TAO/tao/Abstract_Servant_Base.h b/TAO/tao/Abstract_Servant_Base.h
index a41fe1bec54..fcd601e961b 100644
--- a/TAO/tao/Abstract_Servant_Base.h
+++ b/TAO/tao/Abstract_Servant_Base.h
@@ -61,9 +61,7 @@ typedef void (*TAO_Skeleton)(
typedef void (*TAO_Collocated_Skeleton)(
TAO_Abstract_ServantBase *,
- TAO::Argument **,
- int
- );
+ TAO::Argument **);
class TAO_Export TAO_Abstract_ServantBase
{
@@ -125,6 +123,15 @@ public:
TAO::Collocation_Strategy s,
const size_t length = 0) = 0;
+ virtual void _collocated_dispatch (::CORBA::Object_ptr obj,
+ ::CORBA::Object_out forward_obj,
+ bool &is_forwarded,
+ TAO::Argument ** args,
+ int num_args,
+ const char * op,
+ size_t op_len,
+ TAO::Collocation_Strategy strategy) = 0;
+
protected:
/// Default constructor, only derived classes can be created.
diff --git a/TAO/tao/AnyTypeCode/Any_Impl.cpp b/TAO/tao/AnyTypeCode/Any_Impl.cpp
index bc5273c536b..6bf1047c835 100644
--- a/TAO/tao/AnyTypeCode/Any_Impl.cpp
+++ b/TAO/tao/AnyTypeCode/Any_Impl.cpp
@@ -103,8 +103,7 @@ TAO::Any_Impl::_remove_ref (void)
}
void
-TAO::Any_Impl::_tao_decode (TAO_InputCDR &
- )
+TAO::Any_Impl::_tao_decode (TAO_InputCDR &)
{
throw ::CORBA::NO_IMPLEMENT ();
}
diff --git a/TAO/tao/CDR.cpp b/TAO/tao/CDR.cpp
index dc9ccc4cb57..668d4b7b557 100644
--- a/TAO/tao/CDR.cpp
+++ b/TAO/tao/CDR.cpp
@@ -219,8 +219,7 @@ TAO_OutputCDR::throw_skel_exception (int error_num )
ACE_NOTREACHED (break);
case EACCES : // wchar but no codeset
- throw ::CORBA::BAD_PARAM (CORBA::OMGVMCID | 23,
- CORBA::COMPLETED_YES);
+ throw ::CORBA::BAD_PARAM (CORBA::OMGVMCID | 23, CORBA::COMPLETED_YES);
ACE_NOTREACHED (break);
#if (ERANGE != EINVAL)
diff --git a/TAO/tao/CORBANAME_Parser.cpp b/TAO/tao/CORBANAME_Parser.cpp
index f9a7fe1a5c8..0f7adf72a1a 100644
--- a/TAO/tao/CORBANAME_Parser.cpp
+++ b/TAO/tao/CORBANAME_Parser.cpp
@@ -51,7 +51,7 @@ parse_string_dynamic_request_helper (CORBA::Object_ptr naming_context,
2,
"resolve_str",
11,
- 0);
+ TAO::TAO_CO_NONE | TAO::TAO_CO_THRU_POA_STRATEGY);
tao_call.invoke (0, 0);
diff --git a/TAO/tao/Collocated_Invocation.cpp b/TAO/tao/Collocated_Invocation.cpp
index 657dc7e38bc..0b338b2d60a 100644
--- a/TAO/tao/Collocated_Invocation.cpp
+++ b/TAO/tao/Collocated_Invocation.cpp
@@ -1,7 +1,6 @@
// $Id$
#include "tao/Collocated_Invocation.h"
-#include "tao/Collocation_Proxy_Broker.h"
#include "tao/ORB_Core.h"
#include "tao/Request_Dispatcher.h"
#include "tao/TAO_Server_Request.h"
@@ -9,6 +8,7 @@
#include "tao/operation_details.h"
#include "tao/PortableInterceptor.h"
#include "tao/SystemException.h"
+#include "tao/Abstract_Servant_Base.h"
#if TAO_HAS_INTERCEPTORS == 1
# include "tao/PortableInterceptorC.h"
@@ -33,8 +33,7 @@ namespace TAO
}
Invocation_Status
- Collocated_Invocation::invoke (Collocation_Proxy_Broker *cpb,
- Collocation_Strategy strat)
+ Collocated_Invocation::invoke (Collocation_Strategy strat)
{
Invocation_Status s = TAO_INVOKE_FAILURE;
@@ -82,7 +81,8 @@ namespace TAO
{
bool is_forwarded = false;
- cpb->dispatch (this->effective_target (),
+ this->effective_target ()->_servant()->_collocated_dispatch (
+ this->effective_target (),
this->forwarded_to_.out (),
is_forwarded,
this->details_.args (),
diff --git a/TAO/tao/Collocated_Invocation.h b/TAO/tao/Collocated_Invocation.h
index cdca74f975b..d86cd1bca01 100644
--- a/TAO/tao/Collocated_Invocation.h
+++ b/TAO/tao/Collocated_Invocation.h
@@ -83,8 +83,7 @@ namespace TAO
* servant.
*
*/
- Invocation_Status invoke (Collocation_Proxy_Broker *cpb,
- Collocation_Strategy strat);
+ Invocation_Status invoke (Collocation_Strategy strat);
private:
diff --git a/TAO/tao/Collocation_Proxy_Broker.cpp b/TAO/tao/Collocation_Proxy_Broker.cpp
deleted file mode 100644
index ea46473b3ee..00000000000
--- a/TAO/tao/Collocation_Proxy_Broker.cpp
+++ /dev/null
@@ -1,12 +0,0 @@
-// -*- C++ -*-
-// $Id$
-
-#include "tao/Collocation_Proxy_Broker.h"
-
-TAO_BEGIN_VERSIONED_NAMESPACE_DECL
-
-TAO::Collocation_Proxy_Broker::~Collocation_Proxy_Broker (void)
-{
-}
-
-TAO_END_VERSIONED_NAMESPACE_DECL
diff --git a/TAO/tao/Collocation_Proxy_Broker.h b/TAO/tao/Collocation_Proxy_Broker.h
deleted file mode 100644
index efc8465db89..00000000000
--- a/TAO/tao/Collocation_Proxy_Broker.h
+++ /dev/null
@@ -1,73 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Collocation_Proxy_Broker.h
- *
- * $Id$
- *
- *
- * @author Balachandran Natarajan <bala@dre.vanderbilt.edu>
- */
-//=============================================================================
-
-#ifndef TAO_COLLOCATION_PROXY_BROKER_H
-#define TAO_COLLOCATION_PROXY_BROKER_H
-
-#include /**/ "ace/pre.h"
-
-#include /**/ "tao/TAO_Export.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include "tao/Collocation_Strategy.h"
-#include /**/ "tao/Versioned_Namespace.h"
-
-#include "ace/os_include/os_stddef.h"
-
-TAO_BEGIN_VERSIONED_NAMESPACE_DECL
-
-template<typename T> class TAO_Pseudo_Var_T;
-template<typename T> class TAO_Pseudo_Out_T;
-
-namespace CORBA
-{
- class Object;
- typedef Object *Object_ptr;
- typedef TAO_Pseudo_Var_T<Object> Object_var;
- typedef TAO_Pseudo_Out_T<Object> Object_out;
-}
-
-namespace TAO
-{
- class Argument;
-
- /**
- * @class Collocation_Proxy_Broker
- */
- class TAO_Export Collocation_Proxy_Broker
- {
-
- public:
- virtual ~Collocation_Proxy_Broker (void);
-
- virtual Collocation_Strategy get_strategy (CORBA::Object_ptr obj) = 0;
-
- virtual void dispatch (CORBA::Object_ptr obj,
- CORBA::Object_out forward_obj,
- bool & is_forwarded,
- Argument ** args,
- int num_args,
- const char * op,
- size_t op_len,
- Collocation_Strategy strategy) = 0;
- };
-
-TAO_END_VERSIONED_NAMESPACE_DECL
-}
-
-#include /**/ "ace/post.h"
-
-#endif /*TAO_COLLOCATION_PROXY_BROKER_H */
diff --git a/TAO/tao/Collocation_Strategy.h b/TAO/tao/Collocation_Strategy.h
index 2a9e8c0aeaa..00e4050b5b5 100644
--- a/TAO/tao/Collocation_Strategy.h
+++ b/TAO/tao/Collocation_Strategy.h
@@ -19,7 +19,7 @@
TAO_BEGIN_VERSIONED_NAMESPACE_DECL
-/// Define symbolic names for the ORB collocation strategies.
+/// Define symbolic names for the ORB collocation strategies as used at runtime.
namespace TAO
{
enum Collocation_Strategy
@@ -39,6 +39,29 @@ namespace TAO
/// strategies.
TAO_CS_LAST
};
+
+ inline const char * translate_collocation_strategy (Collocation_Strategy cs)
+ {
+#define TAO_CS(X) case X: return #X
+ switch (cs)
+ {
+ TAO_CS (TAO_CS_REMOTE_STRATEGY);
+ TAO_CS (TAO_CS_THRU_POA_STRATEGY);
+ TAO_CS (TAO_CS_DIRECT_STRATEGY);
+ TAO_CS (TAO_CS_LAST);
+ }
+ return "***Unknown enum value, update TAO::translate_collocation_strategy()";
+#undef TAO_CS
+ }
+
+ /// No collocation possible
+ int const TAO_CO_NONE = 0x00;
+
+ /// Through POA collocation is possible
+ int const TAO_CO_THRU_POA_STRATEGY = 0x01;
+
+ /// Direct collocation is possible
+ int const TAO_CO_DIRECT_STRATEGY = 0x02;
}
TAO_END_VERSIONED_NAMESPACE_DECL
diff --git a/TAO/tao/Connection_Handler.cpp b/TAO/tao/Connection_Handler.cpp
index d0f9cebefcb..ff9fbfb745a 100644
--- a/TAO/tao/Connection_Handler.cpp
+++ b/TAO/tao/Connection_Handler.cpp
@@ -5,7 +5,6 @@
#include "tao/ORB_Core.h"
#include "tao/debug.h"
#include "tao/Resume_Handle.h"
-#include "tao/Resume_Handle_Deferred.h"
#include "tao/Transport.h"
#include "tao/Wait_Strategy.h"
@@ -214,8 +213,6 @@ TAO_Connection_Handler::handle_input_eh (ACE_HANDLE h, ACE_Event_Handler *eh)
// If we can't process upcalls just return
if (!this->transport ()->wait_strategy ()->can_process_upcalls ())
{
- ACE_Time_Value suspend_delay (0, 2000);
-
if (TAO_debug_level > 6)
ACE_DEBUG ((LM_DEBUG,
"TAO (%P|%t) - Connection_Handler[%d]::handle_input_eh, "
@@ -223,33 +220,17 @@ TAO_Connection_Handler::handle_input_eh (ACE_HANDLE h, ACE_Event_Handler *eh)
"because upcalls temporarily suspended on this thread\n",
this->transport()->id()));
- if (TAO_debug_level > 5)
- ACE_DEBUG ((LM_DEBUG,
- "TAO (%P|%t) - Connection_Handler[%d]::handle_input_eh, "
- "scheduled to resume in %#T sec\n",
- eh->get_handle(),
- &suspend_delay));
-
- // Using the heap to create the timeout handler, since we do not know
- // which handle we will have to try to resume.
- TAO_Resume_Handle_Deferred* prhd = 0;
- ACE_NEW_RETURN (prhd,
- TAO_Resume_Handle_Deferred (this->orb_core_, eh),
- -1);
- ACE_Event_Handler_var safe_handler (prhd);
-
- int const retval = this->orb_core_->reactor()->schedule_timer (prhd, 0, suspend_delay);
- if (retval == -1)
+ // defer upcall at leader_follower
+ if (this->transport ()->wait_strategy ()->defer_upcall (eh) != 0)
{
if (TAO_debug_level > 5)
ACE_ERROR ((LM_ERROR,
"TAO (%P|%t) - Connection_Handler[%d]::handle_input_eh, "
- "Error scheduling timer in %#T sec\n",
- eh->get_handle(),
- &suspend_delay));
+ "Error deferring upcall handler[%d]\n",
+ this->transport ()->id (),
+ eh->get_handle ()));
return -1;
}
-
// Returning 0 causes the wait strategy to exit and the leader thread
// to enter the reactor's select() call.
return 0;
diff --git a/TAO/tao/DynamicInterface/DII_Invocation_Adapter.cpp b/TAO/tao/DynamicInterface/DII_Invocation_Adapter.cpp
index 8410e8eb9ea..e302ccaff0f 100644
--- a/TAO/tao/DynamicInterface/DII_Invocation_Adapter.cpp
+++ b/TAO/tao/DynamicInterface/DII_Invocation_Adapter.cpp
@@ -36,7 +36,7 @@ namespace TAO
arg_number,
operation,
op_len,
- 0, // Collocation Proxy broker pointer
+ TAO_CO_THRU_POA_STRATEGY, // default through POA collocation is possible
TAO_TWOWAY_INVOCATION,
mode)
, exception_list_ (excp)
@@ -158,7 +158,7 @@ namespace TAO
int arg_number,
const char *operation,
size_t op_len,
- Collocation_Proxy_Broker *b,
+ int collocation_opportunity,
TAO_ORB_Core *oc,
CORBA::Request *req,
Invocation_Mode mode)
@@ -167,7 +167,7 @@ namespace TAO
arg_number,
operation,
op_len,
- b,
+ collocation_opportunity,
TAO_TWOWAY_INVOCATION,
mode)
, request_ (req)
@@ -305,7 +305,7 @@ namespace TAO
arg_count,
operation,
op_len,
- 0,
+ TAO_CO_THRU_POA_STRATEGY,
TAO_ONEWAY_INVOCATION,
mode)
{
diff --git a/TAO/tao/DynamicInterface/DII_Invocation_Adapter.h b/TAO/tao/DynamicInterface/DII_Invocation_Adapter.h
index f058c2b97c0..80b2c6f9274 100644
--- a/TAO/tao/DynamicInterface/DII_Invocation_Adapter.h
+++ b/TAO/tao/DynamicInterface/DII_Invocation_Adapter.h
@@ -141,7 +141,7 @@ namespace TAO
int arg_number,
const char *operation,
size_t op_len,
- Collocation_Proxy_Broker *b,
+ int collocation_opportunity,
TAO_ORB_Core *oc,
CORBA::Request *req,
TAO::Invocation_Mode mode = TAO_DII_DEFERRED_INVOCATION);
diff --git a/TAO/tao/IIOP_Connector.cpp b/TAO/tao/IIOP_Connector.cpp
index 716376bb0d2..d28b2e87873 100644
--- a/TAO/tao/IIOP_Connector.cpp
+++ b/TAO/tao/IIOP_Connector.cpp
@@ -151,31 +151,31 @@ TAO_IIOP_Connector::set_validate_endpoint (TAO_Endpoint *endpoint)
if (iiop_endpoint == 0)
return -1;
- const ACE_INET_Addr &remote_address = iiop_endpoint->object_addr ();
+ const ACE_INET_Addr &remote_address = iiop_endpoint->object_addr ();
- // Verify that the remote ACE_INET_Addr was initialized properly.
- // Failure can occur if hostname lookup failed when initializing the
- // remote ACE_INET_Addr.
+ // Verify that the remote ACE_INET_Addr was initialized properly.
+ // Failure can occur if hostname lookup failed when initializing the
+ // remote ACE_INET_Addr.
#if defined (ACE_HAS_IPV6)
- if (remote_address.get_type () != AF_INET &&
- remote_address.get_type () != AF_INET6)
+ if (remote_address.get_type () != AF_INET &&
+ remote_address.get_type () != AF_INET6)
#else /* ACE_HAS_IPV6 */
- if (remote_address.get_type () != AF_INET)
+ if (remote_address.get_type () != AF_INET)
#endif /* !ACE_HAS_IPV6 */
- {
- if (TAO_debug_level > 0)
- {
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("TAO (%P|%t) - IIOP connection failed.\n")
- ACE_TEXT (" This is most likely ")
- ACE_TEXT ("due to a hostname lookup ")
- ACE_TEXT ("failure.\n")));
- }
-
- return -1;
- }
-
- return 0;
+ {
+ if (TAO_debug_level > 0)
+ {
+ ACE_DEBUG ((LM_DEBUG,
+ ACE_TEXT ("TAO (%P|%t) - IIOP connection failed.\n")
+ ACE_TEXT (" This is most likely ")
+ ACE_TEXT ("due to a hostname lookup ")
+ ACE_TEXT ("failure.\n")));
+ }
+
+ return -1;
+ }
+
+ return 0;
}
TAO_Transport *
diff --git a/TAO/tao/IORManipulation/IORManipulation.mpc b/TAO/tao/IORManipulation/IORManipulation.mpc
index 91f46408796..44643141187 100644
--- a/TAO/tao/IORManipulation/IORManipulation.mpc
+++ b/TAO/tao/IORManipulation/IORManipulation.mpc
@@ -1,13 +1,15 @@
//$Id$
+
project(*idl) : tao_versioning_idl_defaults, install {
custom_only = 1
IDL_Files {
idlflags += -Gp -Gd -Sci -SS -Sorb -GX \
-Wb,export_macro=TAO_IORManip_Export \
-Wb,export_include=tao/IORManipulation/ior_manip_export.h \
+ -Wb,stub_export_file=ior_manip_export.h \
-Wb,include_guard=TAO_IORMANIP_SAFE_INCLUDE \
-Wb,safe_include=tao/IORManipulation/IORManip_Loader.h \
- -iC tao/IORManipulation
+ -iC tao/IORManipulation -Gxhst
idlflags -= -Sa -St
IOR.pidl
}
@@ -20,7 +22,7 @@ project(*idl) : tao_versioning_idl_defaults, install {
project(IORManipulation) : taolib, tao_output, install, anytypecode, taoidldefaults {
after += *idl
sharedname = TAO_IORManip
- dynamicflags += TAO_IORMANIP_BUILD_DLL
+ dynamicflags += TAO_IORManip_BUILD_DLL
Source_Files {
*.cpp
@@ -29,6 +31,7 @@ project(IORManipulation) : taolib, tao_output, install, anytypecode, taoidldefau
Header_Files {
*.h
+ ior_manip_export.h
IORC.h
IORS.h
IORA.h
diff --git a/TAO/tao/IORManipulation/ior_manip_export.h b/TAO/tao/IORManipulation/ior_manip_export.h
deleted file mode 100644
index 0173c23bb58..00000000000
--- a/TAO/tao/IORManipulation/ior_manip_export.h
+++ /dev/null
@@ -1,40 +0,0 @@
-
-// -*- C++ -*-
-// $Id$
-// Definition for Win32 Export directives.
-// This file is generated automatically by generate_export_file.pl
-// ------------------------------
-#ifndef TAO_IORMANIP_EXPORT_H
-#define TAO_IORMANIP_EXPORT_H
-
-#include "ace/config-all.h"
-
-#if defined (TAO_AS_STATIC_LIBS)
-# if !defined (TAO_IORMANIP_HAS_DLL)
-# define TAO_IORMANIP_HAS_DLL 0
-# endif /* ! TAO_IORMANIP_HAS_DLL */
-#else
-# if !defined (TAO_IORMANIP_HAS_DLL)
-# define TAO_IORMANIP_HAS_DLL 1
-# endif /* ! TAO_IORMANIP_HAS_DLL */
-#endif
-
-#if defined (TAO_IORMANIP_HAS_DLL) && (TAO_IORMANIP_HAS_DLL == 1)
-# if defined (TAO_IORMANIP_BUILD_DLL)
-# define TAO_IORManip_Export ACE_Proper_Export_Flag
-# define TAO_IORMANIP_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
-# define TAO_IORMANIP_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-# else /* TAO_IORMANIP_BUILD_DLL */
-# define TAO_IORManip_Export ACE_Proper_Import_Flag
-# define TAO_IORMANIP_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
-# define TAO_IORMANIP_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-# endif /* TAO_IORMANIP_BUILD_DLL */
-#else /* TAO_IORMANIP_HAS_DLL == 1 */
-# define TAO_IORManip_Export
-# define TAO_IORMANIP_SINGLETON_DECLARATION(T)
-# define TAO_IORMANIP_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-#endif /* TAO_IORMANIP_HAS_DLL == 1 */
-
-#endif /* TAO_IORMANIP_EXPORT_H */
-
-// End of auto generated file.
diff --git a/TAO/tao/IORTable/IORTable.mpc b/TAO/tao/IORTable/IORTable.mpc
index e7229ec5e68..7ab07c8d446 100644
--- a/TAO/tao/IORTable/IORTable.mpc
+++ b/TAO/tao/IORTable/IORTable.mpc
@@ -5,9 +5,10 @@ project(*core_idl) : tao_versioning_idl_defaults, install {
idlflags += -Gp -Gd -Sci -SS -Sorb \
-Wb,export_macro=TAO_IORTable_Export \
-Wb,export_include=tao/IORTable/iortable_export.h \
+ -Wb,stub_export_file=iortable_export.h \
-Wb,include_guard=TAO_IORTABLE_SAFE_INCLUDE \
-Wb,safe_include=tao/IORTable/IORTable.h \
- -iC tao/IORTable
+ -iC tao/IORTable -Gxhst
IORTable.pidl
}
@@ -19,7 +20,7 @@ project(*core_idl) : tao_versioning_idl_defaults, install {
project(IORTable) : taolib, tao_output, install, taoidldefaults {
after += *core_idl
sharedname = TAO_IORTable
- dynamicflags += TAO_IORTABLE_BUILD_DLL
+ dynamicflags += TAO_IORTable_BUILD_DLL
Source_Files {
*.cpp
@@ -28,6 +29,7 @@ project(IORTable) : taolib, tao_output, install, taoidldefaults {
Header_Files {
*.h
+ iortable_export.h
IORTableC.h
IORTableS.h
}
diff --git a/TAO/tao/IORTable/iortable_export.h b/TAO/tao/IORTable/iortable_export.h
deleted file mode 100644
index ba6833bea98..00000000000
--- a/TAO/tao/IORTable/iortable_export.h
+++ /dev/null
@@ -1,40 +0,0 @@
-
-// -*- C++ -*-
-// $Id$
-// Definition for Win32 Export directives.
-// This file is generated automatically by generate_export_file.pl
-// ------------------------------
-#ifndef TAO_IORTABLE_EXPORT_H
-#define TAO_IORTABLE_EXPORT_H
-
-#include "ace/config-all.h"
-
-#if defined (TAO_AS_STATIC_LIBS)
-# if !defined (TAO_IORTABLE_HAS_DLL)
-# define TAO_IORTABLE_HAS_DLL 0
-# endif /* ! TAO_IORTABLE_HAS_DLL */
-#else
-# if !defined (TAO_IORTABLE_HAS_DLL)
-# define TAO_IORTABLE_HAS_DLL 1
-# endif /* ! TAO_IORTABLE_HAS_DLL */
-#endif
-
-#if defined (TAO_IORTABLE_HAS_DLL) && (TAO_IORTABLE_HAS_DLL == 1)
-# if defined (TAO_IORTABLE_BUILD_DLL)
-# define TAO_IORTable_Export ACE_Proper_Export_Flag
-# define TAO_IORTABLE_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
-# define TAO_IORTABLE_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-# else /* TAO_IORTABLE_BUILD_DLL */
-# define TAO_IORTable_Export ACE_Proper_Import_Flag
-# define TAO_IORTABLE_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
-# define TAO_IORTABLE_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-# endif /* TAO_IORTABLE_BUILD_DLL */
-#else /* TAO_IORTABLE_HAS_DLL == 1 */
-# define TAO_IORTable_Export
-# define TAO_IORTABLE_SINGLETON_DECLARATION(T)
-# define TAO_IORTABLE_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-#endif /* TAO_IORTABLE_HAS_DLL == 1 */
-
-#endif /* TAO_IORTABLE_EXPORT_H */
-
-// End of auto generated file.
diff --git a/TAO/tao/Invocation_Adapter.cpp b/TAO/tao/Invocation_Adapter.cpp
index 0359a3efb57..f85187b0172 100644
--- a/TAO/tao/Invocation_Adapter.cpp
+++ b/TAO/tao/Invocation_Adapter.cpp
@@ -11,10 +11,10 @@
#include "tao/Collocated_Invocation.h"
#include "tao/Transport.h"
#include "tao/Transport_Mux_Strategy.h"
-#include "tao/Collocation_Proxy_Broker.h"
#include "tao/GIOP_Utils.h"
#include "tao/TAOC.h"
#include "tao/SystemException.h"
+#include "tao/Collocation_Resolver.h"
#include "ace/Service_Config.h"
#if !defined (__ACE_INLINE__)
@@ -74,13 +74,19 @@ namespace TAO
// Default we go to remote
Collocation_Strategy strat = TAO_CS_REMOTE_STRATEGY;
- // If we have a collocated proxy broker we look if we maybe
+ // If we have the opportunity for collocation we maybe
// can use a collocated invocation. Similarly, if the
// target object reference contains a pointer to a servant,
// the object reference also refers to a collocated object.
- if (cpb_ != 0 || effective_target->_servant () != 0)
+ // get the ORBStrategy
+ strat = this->collocation_strategy (effective_target.in ());
+
+ if (TAO_debug_level > 2)
{
- strat = TAO_ORB_Core::collocation_strategy (effective_target.in ());
+ ACE_DEBUG ((LM_DEBUG,
+ ACE_TEXT("TAO (%P|%t) - Invocation_Adapter::invoke_i, ")
+ ACE_TEXT("making a %C invocation\n"),
+ TAO::translate_collocation_strategy(strat)));
}
if (strat == TAO_CS_REMOTE_STRATEGY || strat == TAO_CS_LAST)
@@ -104,7 +110,6 @@ namespace TAO
effective_target,
strat);
}
-
if (status == TAO_INVOKE_RESTART)
{
details.reset_request_service_info ();
@@ -135,11 +140,20 @@ namespace TAO
TAO_Stub * const stub = this->target_->_stubobj ();
if (stub == 0)
- throw ::CORBA::INTERNAL (
- CORBA::SystemException::_tao_minor_code (
- TAO::VMCID,
- EINVAL),
- CORBA::COMPLETED_NO);
+ {
+ if (TAO_debug_level > 0)
+ {
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("Invocation_Adapter::get_stub, ")
+ ACE_TEXT ("raising CORBA::INTERNAL because of nil ")
+ ACE_TEXT ("stub.\n")));
+ }
+ throw ::CORBA::INTERNAL (
+ CORBA::SystemException::_tao_minor_code (
+ TAO::VMCID,
+ EINVAL),
+ CORBA::COMPLETED_NO);
+ }
return stub;
}
@@ -150,12 +164,6 @@ namespace TAO
CORBA::Object_var &effective_target,
Collocation_Strategy strat)
{
- // To make a collocated call we must have a collocated proxy broker, the
- // invoke_i() will make sure that we only come here when we have one
- ACE_ASSERT (cpb_ != 0
- || (strat == TAO_CS_THRU_POA_STRATEGY
- && effective_target->_servant () != 0));
-
// Initial state
TAO::Invocation_Status status = TAO_INVOKE_START;
@@ -165,7 +173,7 @@ namespace TAO
details,
this->type_ == TAO_TWOWAY_INVOCATION);
- status = coll_inv.invoke (this->cpb_, strat);
+ status = coll_inv.invoke (strat);
if (status == TAO_INVOKE_RESTART &&
(coll_inv.reply_status () == GIOP::LOCATION_FORWARD ||
@@ -228,14 +236,12 @@ namespace TAO
bool const block_connect =
rflags != static_cast<CORBA::Octet> (Messaging::SYNC_NONE)
&& rflags != static_cast<CORBA::Octet> (TAO::SYNC_DELAYED_BUFFERING);
-
// Create the resolver which will pick (or create) for us a
// transport and a profile from the effective_target.
Profile_Transport_Resolver resolver (
effective_target.in (),
stub,
block_connect);
-
resolver.resolve (max_wait_time);
if (TAO_debug_level)
@@ -245,13 +251,11 @@ namespace TAO
ACE_TEXT ("TAO (%P|%t) - Invocation_Adapter::invoke_remote_i, ")
ACE_TEXT ("max wait time consumed during transport resolution\n")));
}
-
// Update the request id now that we have a transport
if (resolver.transport ())
{
details.request_id (resolver.transport ()->tms ()->request_id ());
}
-
switch (this->type_)
{
case TAO_ONEWAY_INVOCATION:
@@ -382,6 +386,100 @@ namespace TAO
errno),
CORBA::COMPLETED_NO);
}
+
+ TAO::Collocation_Strategy
+ Invocation_Adapter::collocation_strategy (CORBA::Object_ptr object)
+ {
+ TAO::Collocation_Strategy strategy = TAO::TAO_CS_REMOTE_STRATEGY;
+ TAO_Stub *stub = object->_stubobj ();
+ if (!CORBA::is_nil (stub->servant_orb_var ().in ()) &&
+ stub->servant_orb_var ()->orb_core () != 0)
+ {
+ TAO_ORB_Core *orb_core = stub->servant_orb_var ()->orb_core ();
+
+ if (orb_core->collocation_resolver ().is_collocated (object))
+ {
+ switch (orb_core->get_collocation_strategy ())
+ {
+ case TAO_ORB_Core::TAO_COLLOCATION_THRU_POA:
+ {
+ // check opportunity
+ if (ACE_BIT_ENABLED (this->collocation_opportunity_,
+ TAO::TAO_CO_THRU_POA_STRATEGY))
+ {
+ strategy = TAO::TAO_CS_THRU_POA_STRATEGY;
+ }
+ else
+ {
+ if (TAO_debug_level > 0)
+ {
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("Invocation_Adapter::collocation_strategy, ")
+ ACE_TEXT ("request for through poa collocation ")
+ ACE_TEXT ("without needed collocation opportunity.\n")));
+ }
+ // collocation object, but no collocation_opportunity for Thru_poa
+ throw ::CORBA::INTERNAL (
+ CORBA::SystemException::_tao_minor_code (
+ TAO::VMCID,
+ EINVAL),
+ CORBA::COMPLETED_NO);
+ }
+ break;
+ }
+ case TAO_ORB_Core::TAO_COLLOCATION_DIRECT:
+ {
+ if (ACE_BIT_ENABLED (this->collocation_opportunity_,
+ TAO::TAO_CO_DIRECT_STRATEGY)
+ && (object->_servant () != 0))
+ {
+ strategy = TAO::TAO_CS_DIRECT_STRATEGY;
+ }
+ else
+ {
+ if (TAO_debug_level > 0)
+ {
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("Invocation_Adapter::collocation_strategy, ")
+ ACE_TEXT ("request for direct collocation ")
+ ACE_TEXT ("without needed collocation opportunity.\n")));
+ }
+ // collocation object, but no collocation_opportunity for Direct
+ // or servant() == 0
+ throw ::CORBA::INTERNAL (
+ CORBA::SystemException::_tao_minor_code (
+ TAO::VMCID,
+ EINVAL),
+ CORBA::COMPLETED_NO);
+ }
+ break;
+ }
+ case TAO_ORB_Core::TAO_COLLOCATION_BEST:
+ {
+ if (ACE_BIT_ENABLED (this->collocation_opportunity_,
+ TAO::TAO_CO_DIRECT_STRATEGY)
+ && (object->_servant () != 0))
+ {
+ strategy = TAO::TAO_CS_DIRECT_STRATEGY;
+ }
+ else if (ACE_BIT_ENABLED (this->collocation_opportunity_,
+ TAO::TAO_CO_THRU_POA_STRATEGY))
+ {
+ strategy = TAO::TAO_CS_THRU_POA_STRATEGY;
+ }
+ else
+ {
+ strategy = TAO::TAO_CS_REMOTE_STRATEGY;
+ }
+ break;
+ }
+ }
+ }
+ }
+
+ return strategy;
+ }
+
} // End namespace TAO
TAO_END_VERSIONED_NAMESPACE_DECL
diff --git a/TAO/tao/Invocation_Adapter.h b/TAO/tao/Invocation_Adapter.h
index 958083c8945..f539c28de45 100644
--- a/TAO/tao/Invocation_Adapter.h
+++ b/TAO/tao/Invocation_Adapter.h
@@ -46,7 +46,6 @@ namespace TAO
{
class Argument;
struct Exception_Data;
- class Collocation_Proxy_Broker;
class Profile_Transport_Resolver;
/**
@@ -94,9 +93,8 @@ namespace TAO
* is an optimization which helps us to avoid calling strlen ()
* while creating a message format.
*
- * @param cpb The collocation proxy broker for the target if one
- * exists. This is useful especially to route the call to the
- * collocated target.
+ * @param collocation_opportunity Indicate which collocation optimizations
+ * should be possible
*
* @param type The operation type which could be a oneway or two
* way operation. This information is available in the IDL file.
@@ -109,7 +107,7 @@ namespace TAO
int arg_number,
const char *operation,
size_t op_len,
- Collocation_Proxy_Broker *cpb,
+ int collocation_opportunity,
TAO::Invocation_Type type = TAO_TWOWAY_INVOCATION,
TAO::Invocation_Mode mode = TAO_SYNCHRONOUS_INVOCATION);
@@ -236,6 +234,16 @@ namespace TAO
Invocation_Adapter (Invocation_Adapter const &);
Invocation_Adapter & operator= (const Invocation_Adapter &);
+ /**
+ * This method returns the right collocation strategy, if any,
+ * to be used to perform a method invocation on the given object.
+ *
+ * @note
+ * No-Collocation is a special case of collocation.
+ */
+ TAO::Collocation_Strategy collocation_strategy (CORBA::Object_ptr object);
+ //@}
+
protected:
/// The target object on which this invocation is carried out.
CORBA::Object_ptr target_;
@@ -255,8 +263,8 @@ namespace TAO
/// String length of the operation name.
size_t const op_len_;
- /// Collocation proxy broker for this operation.
- Collocation_Proxy_Broker * const cpb_;
+ /// Collocation opportunity for this operation.
+ int const collocation_opportunity_;
/// The invocation type
Invocation_Type const type_;
diff --git a/TAO/tao/Invocation_Adapter.inl b/TAO/tao/Invocation_Adapter.inl
index 3ee1410310c..7acff3aa75a 100644
--- a/TAO/tao/Invocation_Adapter.inl
+++ b/TAO/tao/Invocation_Adapter.inl
@@ -13,7 +13,7 @@ namespace TAO
int arg_number,
const char *operation,
size_t op_len,
- Collocation_Proxy_Broker *p,
+ int collocation_opportunity,
Invocation_Type type,
Invocation_Mode mode)
: target_ (target)
@@ -21,7 +21,7 @@ namespace TAO
, number_args_ (arg_number)
, operation_ (operation)
, op_len_ (op_len)
- , cpb_ (p)
+ , collocation_opportunity_ (collocation_opportunity)
, type_ (type)
, mode_ (mode)
{
diff --git a/TAO/tao/Leader_Follower.cpp b/TAO/tao/Leader_Follower.cpp
index 9bf50ba6fa3..427374ee726 100644
--- a/TAO/tao/Leader_Follower.cpp
+++ b/TAO/tao/Leader_Follower.cpp
@@ -3,6 +3,7 @@
#include "ace/Countdown_Time.h"
#include "ace/OS_NS_sys_time.h"
#include "ace/Reactor.h"
+#include "ace/Auto_Ptr.h"
#include "tao/Leader_Follower.h"
#include "tao/LF_Follower_Auto_Ptr.h"
@@ -19,8 +20,25 @@
TAO_BEGIN_VERSIONED_NAMESPACE_DECL
+TAO_Leader_Follower::Deferred_Event::Deferred_Event (ACE_Event_Handler* h)
+: eh_ (h)
+{
+ h->add_reference ();
+}
+
+
+ACE_Event_Handler* TAO_Leader_Follower::Deferred_Event::handler () const
+{
+ return this->eh_.handler ();
+}
+
TAO_Leader_Follower::~TAO_Leader_Follower (void)
{
+ while (!this->deferred_event_set_.is_empty ())
+ {
+ Deferred_Event *event = this->deferred_event_set_.pop_front ();
+ delete event;
+ }
while (!this->follower_free_list_.is_empty ())
{
TAO_LF_Follower *follower = this->follower_free_list_.pop_front ();
@@ -185,6 +203,49 @@ TAO_Leader_Follower::reset_client_thread (void)
}
int
+TAO_Leader_Follower::defer_event (ACE_Event_Handler* eh)
+{
+ // Obtain the lock.
+ ACE_GUARD_RETURN (TAO_SYNCH_MUTEX, ace_mon, this->lock (), -1);
+
+ if (TAO_debug_level > 7)
+ ACE_DEBUG ((LM_DEBUG,
+ "TAO (%P|%t) - TAO_Leader_Follower::defer_event, "
+ "deferring event handler[%d]\n",
+ eh->get_handle ()));
+ Deferred_Event* ptr = 0;
+ ACE_NEW_RETURN (ptr,
+ Deferred_Event (eh),
+ -1);
+ this->deferred_event_set_.push_back (ptr);
+ return 0;
+}
+
+void
+TAO_Leader_Follower::resume_events ()
+{
+ // not need to obtain the lock, only called when holding the lock
+ while (!this->deferred_event_set_.is_empty ())
+ {
+ ACE_Auto_Ptr<Deferred_Event> event (this->deferred_event_set_.pop_front ());
+ // Send a notification to the reactor to cause the awakening of a new
+ // follower, if there is one already available.
+ ACE_Reactor *reactor = this->orb_core_->reactor ();
+ int const retval = reactor->notify (event->handler (), ACE_Event_Handler::READ_MASK);
+ if (TAO_debug_level > 2)
+ {
+ // @@todo: need to think about what is the action that
+ // we can take when we get here with an error?!
+ ACE_DEBUG ((LM_DEBUG,
+ ACE_TEXT ("TAO (%P|%t) - TAO_Leader_Follower::resume_events, ")
+ ACE_TEXT ("an event handler[%d] has been resumed, ")
+ ACE_TEXT ("notified the reactor, retval=%d.\n"),
+ event->handler ()->get_handle (), retval));
+ }
+ }
+}
+
+int
TAO_Leader_Follower::wait_for_event (TAO_LF_Event *event,
TAO_Transport *transport,
ACE_Time_Value *max_wait_time)
@@ -207,20 +268,32 @@ TAO_Leader_Follower::wait_for_event (TAO_LF_Event *event,
size_t t_id = 0;
if (TAO_debug_level && transport != 0)
- {
- t_id = transport->id ();
- }
-
{
+ t_id = transport->id ();
+ }
+
+ { // Scope #1: All threads inside here are client threads
// Calls this->set_client_thread () on construction and
// this->reset_client_thread () on destruction.
TAO_LF_Client_Thread_Helper client_thread_helper (*this);
ACE_UNUSED_ARG (client_thread_helper);
- // Check if there is a leader. Note that it cannot be us since we
- // gave up our leadership when we became a client.
- if (this->leader_available ())
- {
+ // The loop here is for when we get elected (client) leader and
+ // then later relinquish the leader position and our event has
+ // still not completed (and we haven't run out of time).
+ // All the conditions below are basically the various ways the
+ // leader loop below can end, other than the event being complete
+ while (event->keep_waiting ()
+ && !(result == 0 &&
+ max_wait_time != 0 &&
+ *max_wait_time == ACE_Time_Value::zero)
+ && result != -1)
+ { // Scope #2: threads here alternate between being leader/followers
+
+ // Check if there is a leader. Note that it cannot be us since we
+ // gave up our leadership when we became a client.
+ if (this->leader_available ())
+ { // Scope #3: threads here are followers
// = Wait as a follower.
// Grab a follower:
@@ -240,101 +313,101 @@ TAO_Leader_Follower::wait_for_event (TAO_LF_Event *event,
while (event->keep_waiting () &&
this->leader_available ())
+ { // Scope #4: this loop handles spurious wake-ups
+ // Add ourselves to the list, do it everytime we wake up
+ // from the CV loop. Because:
+ //
+ // - The leader thread could have elected us as the new
+ // leader.
+ // - Before we can assume the role another thread becomes
+ // the leader
+ // - But our condition variable could have been removed
+ // already, if we don't add it again we will never wake
+ // up.
+ //
+ // Notice that we can have spurious wake ups, in that case
+ // adding the leader results in an error, that must be
+ // ignored.
+ // You may be thinking of not removing the condition
+ // variable in the code that sends the signal, but
+ // removing it here, that does not work either, in that
+ // case the condition variable may be used twice:
+ //
+ // - Wake up because its reply arrived
+ // - Wake up because it must become the leader
+ //
+ // but only the first one has any effect, so the leader is
+ // lost.
+ TAO_LF_Follower_Auto_Adder auto_adder (*this, follower);
+
+ if (max_wait_time == 0)
{
- // Add ourselves to the list, do it everytime we wake up
- // from the CV loop. Because:
- //
- // - The leader thread could have elected us as the new
- // leader.
- // - Before we can assume the role another thread becomes
- // the leader
- // - But our condition variable could have been removed
- // already, if we don't add it again we will never wake
- // up.
- //
- // Notice that we can have spurious wake ups, in that case
- // adding the leader results in an error, that must be
- // ignored.
- // You may be thinking of not removing the condition
- // variable in the code that sends the signal, but
- // removing it here, that does not work either, in that
- // case the condition variable may be used twice:
- //
- // - Wake up because its reply arrived
- // - Wake up because it must become the leader
- //
- // but only the first one has any effect, so the leader is
- // lost.
- TAO_LF_Follower_Auto_Adder auto_adder (*this, follower);
-
- if (max_wait_time == 0)
+ if (follower->wait (max_wait_time) == -1)
{
- if (follower->wait (max_wait_time) == -1)
- {
- if (TAO_debug_level >= 5)
- ACE_DEBUG ((LM_DEBUG,
- "TAO (%P|%t) - Leader_Follower[%d]::wait_for_event, "
- " (follower) [no timer, cond failed]\n",
- t_id));
-
- // @@ Michael: What is our error handling in this case?
- // We could be elected as leader and
- // no leader would come in?
- return -1;
- }
+ if (TAO_debug_level >= 5)
+ ACE_DEBUG ((LM_DEBUG,
+ "TAO (%P|%t) - Leader_Follower[%d]::wait_for_event, "
+ " (follower) [no timer, cond failed]\n",
+ t_id));
+
+ // @@ Michael: What is our error handling in this case?
+ // We could be elected as leader and
+ // no leader would come in?
+ return -1;
}
- else
+ }
+ else
+ {
+ countdown.update ();
+ ACE_Time_Value tv = ACE_OS::gettimeofday ();
+ tv += *max_wait_time;
+ if (follower->wait (&tv) == -1)
{
- countdown.update ();
- ACE_Time_Value tv = ACE_OS::gettimeofday ();
- tv += *max_wait_time;
- if (follower->wait (&tv) == -1)
+ if (TAO_debug_level >= 5)
+ ACE_DEBUG ((LM_DEBUG,
+ "TAO (%P|%t) - Leader_Follower[%d]::wait, "
+ "(follower) [has timer, follower failed]\n",
+ t_id ));
+
+ // If we have timedout set the state in the
+ // LF_Event. We call the non-locking,
+ // no-signalling method on LF_Event.
+ if (errno == ETIME)
+ // We have timedout
+ event->set_state (TAO_LF_Event::LFS_TIMEOUT);
+
+ if (!event->successful ())
+ {
+ // Remove follower can fail because either
+ // 1) the condition was satisfied (i.e. reply
+ // received or queue drained), or
+ // 2) somebody elected us as leader, or
+ // 3) the connection got closed.
+ //
+ // Therefore:
+ // If remove_follower fails and the condition
+ // was not satisfied, we know that we got
+ // elected as a leader.
+ // But we got a timeout, so we cannot become
+ // the leader, therefore, we have to select a
+ // new leader.
+ //
+
+ if (this->elect_new_leader () == -1
+ && TAO_debug_level > 0)
{
- if (TAO_debug_level >= 5)
- ACE_DEBUG ((LM_DEBUG,
- "TAO (%P|%t) - Leader_Follower[%d]::wait, "
- "(follower) [has timer, follower failed]\n",
- t_id ));
-
- // If we have timedout set the state in the
- // LF_Event. We call the non-locking,
- // no-signalling method on LF_Event.
- if (errno == ETIME)
- // We have timedout
- event->set_state (TAO_LF_Event::LFS_TIMEOUT);
-
- if (!event->successful ())
- {
- // Remove follower can fail because either
- // 1) the condition was satisfied (i.e. reply
- // received or queue drained), or
- // 2) somebody elected us as leader, or
- // 3) the connection got closed.
- //
- // Therefore:
- // If remove_follower fails and the condition
- // was not satisfied, we know that we got
- // elected as a leader.
- // But we got a timeout, so we cannot become
- // the leader, therefore, we have to select a
- // new leader.
- //
-
- if (this->elect_new_leader () == -1
- && TAO_debug_level > 0)
- {
- ACE_ERROR ((LM_ERROR,
- "TAO (%P|%t) - Leader_Follower[%d]::wait_for_event, "
- "elect_new_leader failed\n",
- t_id ));
- }
- }
-
-
- return -1;
+ ACE_ERROR ((LM_ERROR,
+ "TAO (%P|%t) - Leader_Follower[%d]::wait_for_event, "
+ "elect_new_leader failed\n",
+ t_id ));
}
- }
+ }
+
+
+ return -1;
+ }
}
+ } // End Scope #4: loop to handle spurious wakeups
countdown.update ();
@@ -364,69 +437,118 @@ TAO_Leader_Follower::wait_for_event (TAO_LF_Event *event,
// We only get here if we woke up but the reply is not
// complete yet, time to assume the leader role....
// i.e. ACE_ASSERT (event->successful () == 0);
- }
+ } // End Scope #3: we are no longer a follower
+
+ // = Leader Code.
+
+ // The only way to reach this point is if we must become the
+ // leader, because there is no leader or we have to update to a
+ // leader or we are doing nested upcalls in this case we do
+ // increase the refcount on the leader in TAO_ORB_Core.
+
+ // Calls this->set_client_leader_thread () on
+ // construction and this->reset_client_leader_thread ()
+ // on destruction. Note that this may increase the refcount of
+ // the leader.
+ { // Scope #5: We are now the client-leader
+ TAO_LF_Client_Leader_Thread_Helper client_leader_thread_helper (*this);
+ ACE_UNUSED_ARG (client_leader_thread_helper);
+
+ { // Scope #6: release the lock via a reverse lock
+ ACE_GUARD_RETURN (ACE_Reverse_Lock<TAO_SYNCH_MUTEX>, rev_mon,
+ this->reverse_lock (), -1);
+
+ // Become owner of the reactor.
+ ACE_Reactor *reactor = this->reactor_;
+ reactor->owner (ACE_Thread::self ());
+
+ // Run the reactor event loop.
+ if (TAO_debug_level >= 5)
+ ACE_DEBUG ((LM_DEBUG,
+ "TAO (%P|%t) - Leader_Follower[%d]::wait_for_event,"
+ " (leader) enter reactor event loop\n",
+ t_id));
+
+ // If we got our event, no need to run the event loop any
+ // further.
+ while (event->keep_waiting ())
+ {
+ // Run the event loop.
+ result = reactor->handle_events (max_wait_time);
+
+ // Did we timeout? If so, stop running the loop.
+ if (result == 0 &&
+ max_wait_time != 0 &&
+ *max_wait_time == ACE_Time_Value::zero)
+ break;
+
+ // Other errors? If so, stop running the loop.
+ if (result == -1)
+ break;
+
+ // Has an event loop thread become available to take over?
+ // Yes, we are checking this without the lock, however, if
+ // we get a false reading we'll just circle around and
+ // become leader again...
+ if (this->event_loop_threads_waiting_)
+ break;
+ // Did we give up leadership?
+ if (!this->is_client_leader_thread ())
+ break;
+ // Otherwise, keep going...
+ }
- // = Leader Code.
+ if (TAO_debug_level >= 5)
+ ACE_DEBUG ((LM_DEBUG,
+ "TAO (%P|%t) - Leader_Follower[%d]::wait_for_event,"
+ " (leader) exit reactor event loop\n",
+ t_id));
+ } // End Scope #6: we should now hold the lock again
- // The only way to reach this point is if we must become the
- // leader, because there is no leader or we have to update to a
- // leader or we are doing nested upcalls in this case we do
- // increase the refcount on the leader in TAO_ORB_Core.
+ // End artificial scope for auto_ptr like helpers calling:
+ // this->reset_client_leader_thread ().
- // Calls this->set_client_leader_thread () on
- // construction and this->reset_client_leader_thread ()
- // on destruction. Note that this may increase the refcount of
- // the leader.
- TAO_LF_Client_Leader_Thread_Helper client_leader_thread_helper (*this);
- ACE_UNUSED_ARG (client_leader_thread_helper);
+ } // End Scope #5: we are no longer a client-leader
+ // We only get here if we were the client leader and either our
+ // event completed or an event loop thread has become available to
+ // become leader.
- {
- ACE_GUARD_RETURN (ACE_Reverse_Lock<TAO_SYNCH_MUTEX>, rev_mon,
- this->reverse_lock (), -1);
-
- // Become owner of the reactor.
- ACE_Reactor *reactor = this->reactor_;
- reactor->owner (ACE_Thread::self ());
-
- // Run the reactor event loop.
- if (TAO_debug_level >= 5)
- ACE_DEBUG ((LM_DEBUG,
- "TAO (%P|%t) - Leader_Follower[%d]::wait_for_event,"
- " (leader) enter reactor event loop\n",
- t_id));
-
- // If we got our event, no need to run the event loop any
- // further.
- while (event->keep_waiting ())
- {
- // Run the event loop.
- result = reactor->handle_events (max_wait_time);
+ // resume any deferred events before we switch to a new leader thread
+ this->resume_events ();
- // Did we timeout? If so, stop running the loop.
- if (result == 0 &&
- max_wait_time != 0 &&
- *max_wait_time == ACE_Time_Value::zero)
- break;
+ // Wake and yield to any event loop threads that may be waiting to
+ // take leadership - otherwise we will just loop around and take
+ // leadership again (because we hold the lock).
+ if (this->event_loop_threads_waiting_ && !this->leader_available ())
+ {
+ if (TAO_debug_level >= 5)
+ ACE_DEBUG ((LM_DEBUG,
+ "TAO (%P|%t) - Leader_Follower[%d]::wait_for_event,"
+ " (client) waking and yielding to allow event thread leadership\n",
+ t_id));
+
+ // Wake up the next leader (in case not yet done)
+ if (this->elect_new_leader () == -1)
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "TAO (%P|%t) - Leader_Follower[%d]::wait_for_event,"
+ " failed to elect new leader\n",
+ t_id),
+ -1);
+
+ // Yield, providing the event thread some time to grab leadership
+ ACE_GUARD_RETURN (ACE_Reverse_Lock<TAO_SYNCH_MUTEX>, rev_mon,
+ this->reverse_lock (), -1);
+ ACE_OS::thr_yield ();
+ }
- // Other errors? If so, stop running the loop.
- if (result == -1)
- break;
+ } // End Scope #2: we loop here if our event is incomplete
- // Otherwise, keep going...
- }
- if (TAO_debug_level >= 5)
- ACE_DEBUG ((LM_DEBUG,
- "TAO (%P|%t) - Leader_Follower[%d]::wait_for_event,"
- " (leader) exit reactor event loop\n",
- t_id));
- }
- }
- //
// End artificial scope for auto_ptr like helpers calling:
- // this->reset_client_thread () and (maybe)
- // this->reset_client_leader_thread ().
- //
+ // this->reset_client_thread ()
+
+ // We should only get here when our event is complete or timed-out
+ } // End Scope #1
// Wake up the next leader, we cannot do that in handle_input,
// because the woken up thread would try to get into handle_events,
diff --git a/TAO/tao/Leader_Follower.h b/TAO/tao/Leader_Follower.h
index 1cf90a9675a..36291bea902 100644
--- a/TAO/tao/Leader_Follower.h
+++ b/TAO/tao/Leader_Follower.h
@@ -27,6 +27,7 @@
#include "ace/Intrusive_List.h"
#include "ace/Intrusive_List_Node.h"
#include "ace/OS_NS_Thread.h"
+#include "ace/Event_Handler.h"
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
class ACE_Reactor;
@@ -187,6 +188,11 @@ public:
/// Set the new leader generator.
void set_new_leader_generator(TAO_New_Leader_Generator *new_leader_generator);
+ /// Method to support deffering an event till later (f.i. in
+ /// cases where transport()->wait_strategy()->can_process_upcalls()
+ /// returns false).
+ int defer_event (ACE_Event_Handler*);
+
private:
/// Shortcut to obtain the TSS resources of the orb core.
TAO_ORB_Core_TSS_Resources *get_tss_resources (void) const;
@@ -216,6 +222,10 @@ private:
//@}
+ /// Method to allow the Leader_Follower to resume deferred events
+ /// when it is opportune to do so.
+ void resume_events ();
+
private:
/// The orb core
TAO_ORB_Core *orb_core_;
@@ -261,6 +271,22 @@ private:
/// Leader/Follower class uses this method to notify the system that
/// we are out of leaders.
TAO_New_Leader_Generator *new_leader_generator_;
+
+ /// Class used to register deferred event handlers.
+ class Deferred_Event
+ : public ACE_Intrusive_List_Node<Deferred_Event>
+ {
+ public:
+ Deferred_Event (ACE_Event_Handler* h);
+
+ ACE_Event_Handler* handler () const;
+ private:
+ ACE_Event_Handler_var eh_;
+ };
+
+ /// The set of deferred event handlers.
+ typedef ACE_Intrusive_List<Deferred_Event> Deferred_Event_Set;
+ Deferred_Event_Set deferred_event_set_;
};
class TAO_Export TAO_LF_Client_Thread_Helper
diff --git a/TAO/tao/Leader_Follower.inl b/TAO/tao/Leader_Follower.inl
index 95d3f89fdc1..258c4dda450 100644
--- a/TAO/tao/Leader_Follower.inl
+++ b/TAO/tao/Leader_Follower.inl
@@ -139,6 +139,17 @@ TAO_Leader_Follower::set_upcall_thread (void)
this->elect_new_leader ();
}
+ else if (tss->client_leader_thread_ == 1)
+ { // We are client leader thread going to handle upcall.
+ // When we're only leading one level (which should
+ // now always be the case since we implement leadership
+ // abdication here) we can now give up leadership to allow a
+ // waiting event thread to take over leaderpship
+ ACE_GUARD (TAO_SYNCH_MUTEX, ace_mon, this->lock ());
+ this->reset_client_leader_thread ();
+
+ this->elect_new_leader ();
+ }
}
ACE_INLINE bool
@@ -160,9 +171,15 @@ ACE_INLINE void
TAO_Leader_Follower::reset_client_leader_thread (void)
{
TAO_ORB_Core_TSS_Resources *tss = this->get_tss_resources ();
- --tss->client_leader_thread_;
- --this->leaders_;
- --this->client_thread_is_leader_;
+ // We may be called twice when we gave up leadership from
+ // set_upcall_thread () if so tss->client_leader_thread_ may
+ // already have been decremented to 0
+ if (tss->client_leader_thread_ > 0)
+ {
+ --tss->client_leader_thread_;
+ --this->leaders_;
+ --this->client_thread_is_leader_;
+ }
}
ACE_INLINE bool
diff --git a/TAO/tao/LocalObject.cpp b/TAO/tao/LocalObject.cpp
index 9f12cff39d9..80600b7d718 100644
--- a/TAO/tao/LocalObject.cpp
+++ b/TAO/tao/LocalObject.cpp
@@ -77,6 +77,10 @@ CORBA::LocalObject::_non_existent (void)
char *
CORBA::LocalObject::_repository_id (void)
{
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - Cannot get _repository_id from a LocalObject!\n")));
+
throw ::CORBA::NO_IMPLEMENT (CORBA::OMGVMCID | 8, CORBA::COMPLETED_NO);
}
@@ -89,6 +93,10 @@ CORBA::LocalObject::_create_request (CORBA::Context_ptr,
CORBA::Request_ptr &,
CORBA::Flags)
{
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - Cannot call _create_request for a LocalObject!\n")));
+
throw ::CORBA::NO_IMPLEMENT (CORBA::OMGVMCID | 4, CORBA::COMPLETED_NO);
}
@@ -102,24 +110,40 @@ CORBA::LocalObject::_create_request (CORBA::Context_ptr,
CORBA::Request_ptr &,
CORBA::Flags)
{
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - Cannot call _create_request for a LocalObject!\n")));
+
throw ::CORBA::NO_IMPLEMENT (CORBA::OMGVMCID | 4, CORBA::COMPLETED_NO);
}
CORBA::Request_ptr
CORBA::LocalObject::_request (const char *)
{
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - Cannot call _request for a LocalObject!\n")));
+
throw ::CORBA::NO_IMPLEMENT (CORBA::OMGVMCID | 4, CORBA::COMPLETED_NO);
}
CORBA::Object_ptr
CORBA::LocalObject::_get_component (void)
{
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - Cannot call _get_component for a LocalObject!\n")));
+
throw ::CORBA::NO_IMPLEMENT (CORBA::OMGVMCID | 8, CORBA::COMPLETED_NO);
}
CORBA::InterfaceDef_ptr
CORBA::LocalObject::_get_interface (void)
{
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - Cannot call _get_interface for a LocalObject!\n")));
+
throw ::CORBA::NO_IMPLEMENT (CORBA::OMGVMCID | 8, CORBA::COMPLETED_NO);
}
#endif
@@ -131,12 +155,20 @@ CORBA::LocalObject::_get_interface (void)
CORBA::Policy_ptr
CORBA::LocalObject::_get_policy (CORBA::PolicyType)
{
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - Cannot call _get_policy for a LocalObject!\n")));
+
throw ::CORBA::NO_IMPLEMENT (CORBA::OMGVMCID | 8, CORBA::COMPLETED_NO);
}
CORBA::Policy_ptr
CORBA::LocalObject::_get_cached_policy (TAO_Cached_Policy_Type)
{
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - Cannot call _get_cached_policy for a LocalObject!\n")));
+
throw ::CORBA::NO_IMPLEMENT ();
}
@@ -144,18 +176,30 @@ CORBA::Object_ptr
CORBA::LocalObject::_set_policy_overrides (const CORBA::PolicyList &,
CORBA::SetOverrideType)
{
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - Cannot call _set_policy_overrides for a LocalObject!\n")));
+
throw ::CORBA::NO_IMPLEMENT (CORBA::OMGVMCID | 8, CORBA::COMPLETED_NO);
}
CORBA::PolicyList *
CORBA::LocalObject::_get_policy_overrides (const CORBA::PolicyTypeSeq &)
{
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - Cannot call _get_policy_overrides for a LocalObject!\n")));
+
throw ::CORBA::NO_IMPLEMENT (CORBA::OMGVMCID | 8, CORBA::COMPLETED_NO);
}
CORBA::Boolean
CORBA::LocalObject::_validate_connection (CORBA::PolicyList_out)
{
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - Cannot call _validate_connection for a LocalObject!\n")));
+
throw ::CORBA::NO_IMPLEMENT (CORBA::OMGVMCID | 8, CORBA::COMPLETED_NO);
}
@@ -164,6 +208,10 @@ CORBA::LocalObject::_validate_connection (CORBA::PolicyList_out)
CORBA::ORB_ptr
CORBA::LocalObject::_get_orb (void)
{
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - Cannot call _get_orb for a LocalObject!\n")));
+
throw ::CORBA::NO_IMPLEMENT (CORBA::OMGVMCID | 8, CORBA::COMPLETED_NO);
}
diff --git a/TAO/tao/Messaging/Asynch_Invocation_Adapter.cpp b/TAO/tao/Messaging/Asynch_Invocation_Adapter.cpp
index 65036e25725..e0b8a583be7 100644
--- a/TAO/tao/Messaging/Asynch_Invocation_Adapter.cpp
+++ b/TAO/tao/Messaging/Asynch_Invocation_Adapter.cpp
@@ -27,14 +27,14 @@ namespace TAO
int arg_number,
const char *operation,
size_t op_len,
- Collocation_Proxy_Broker *p,
+ int collocation_opportunity,
Invocation_Mode m)
: Invocation_Adapter (target,
args,
arg_number,
operation,
op_len,
- p,
+ collocation_opportunity,
TAO_TWOWAY_INVOCATION,
m)
, safe_rd_ ()
diff --git a/TAO/tao/Messaging/Asynch_Invocation_Adapter.h b/TAO/tao/Messaging/Asynch_Invocation_Adapter.h
index 4ac8cf80068..4c78afaedae 100644
--- a/TAO/tao/Messaging/Asynch_Invocation_Adapter.h
+++ b/TAO/tao/Messaging/Asynch_Invocation_Adapter.h
@@ -67,7 +67,7 @@ namespace TAO
int arg_number,
const char *operation,
size_t op_len,
- Collocation_Proxy_Broker *b,
+ int collocation_opportunity,
TAO::Invocation_Mode mode = TAO_ASYNCHRONOUS_CALLBACK_INVOCATION);
void invoke (Messaging::ReplyHandler_ptr reply_handler_ptr,
diff --git a/TAO/tao/ORB_Core.cpp b/TAO/tao/ORB_Core.cpp
index e29612762e7..774271bdfa5 100644
--- a/TAO/tao/ORB_Core.cpp
+++ b/TAO/tao/ORB_Core.cpp
@@ -217,7 +217,7 @@ TAO_ORB_Core::TAO_ORB_Core (const char *orbid,
ft_send_extended_sc_ (false),
opt_for_collocation_ (true),
use_global_collocation_ (true),
- collocation_strategy_ (THRU_POA),
+ collocation_strategy_ (TAO_DEFAULT_COLLOCATION_STRATEGY),
#if (TAO_HAS_CORBA_MESSAGING == 1)
@@ -439,7 +439,6 @@ TAO_ORB_Core::init (int &argc, char *argv[] )
this->use_implrepo_ = ACE_OS::atoi (use_IMR_env_var_value) ;
}
-
while (arg_shifter.is_anything_left ())
{
const ACE_TCHAR *current_arg = 0;
@@ -613,9 +612,17 @@ TAO_ORB_Core::init (int &argc, char *argv[] )
// Specify which collocation policy we want to use.
const ACE_TCHAR *opt = current_arg;
if (ACE_OS::strcasecmp (opt, ACE_TEXT("thru_poa")) == 0)
- this->collocation_strategy_ = THRU_POA;
+ {
+ this->collocation_strategy_ = TAO_COLLOCATION_THRU_POA;
+ }
else if (ACE_OS::strcasecmp (opt, ACE_TEXT("direct")) == 0)
- this->collocation_strategy_ = DIRECT;
+ {
+ this->collocation_strategy_ = TAO_COLLOCATION_DIRECT;
+ }
+ else if (ACE_OS::strcasecmp (opt, ACE_TEXT("best")) == 0)
+ {
+ this->collocation_strategy_ = TAO_COLLOCATION_BEST;
+ }
arg_shifter.consume_arg ();
}
@@ -775,7 +782,7 @@ TAO_ORB_Core::init (int &argc, char *argv[] )
else if (0 != (current_arg = arg_shifter.get_the_parameter
(ACE_TEXT("-ORBAMICollocation"))))
{
- int ami_collocation = ACE_OS::atoi (current_arg);
+ int const ami_collocation = ACE_OS::atoi (current_arg);
if (ami_collocation)
this->orb_params ()->ami_collication (true);
else
@@ -3611,39 +3618,4 @@ TAO_ORB_Core_instance (void)
return orb_table->first_orb ();
}
-
-TAO::Collocation_Strategy
-TAO_ORB_Core::collocation_strategy (CORBA::Object_ptr object)
-{
- TAO_Stub *stub = object->_stubobj ();
- if (!CORBA::is_nil (stub->servant_orb_var ().in ()) &&
- stub->servant_orb_var ()->orb_core () != 0)
- {
- TAO_ORB_Core *orb_core = stub->servant_orb_var ()->orb_core ();
-
- if (orb_core->collocation_resolver ().is_collocated (object))
- {
- switch (orb_core->get_collocation_strategy ())
- {
- case THRU_POA:
- return TAO::TAO_CS_THRU_POA_STRATEGY;
-
- case DIRECT:
- {
- /////////////////////////////////////////////////////////////
- // If the servant is null and you are collocated this means
- // that the POA policy NON-RETAIN is set, and with that policy
- // using the DIRECT collocation strategy is just insane.
- /////////////////////////////////////////////////////////////
- ACE_ASSERT (object->_servant () != 0);
- return TAO::TAO_CS_DIRECT_STRATEGY;
- }
- }
- }
- }
-
- // In this case the Object is a client.
- return TAO::TAO_CS_REMOTE_STRATEGY;
-}
-
TAO_END_VERSIONED_NAMESPACE_DECL
diff --git a/TAO/tao/ORB_Core.h b/TAO/tao/ORB_Core.h
index 136d43e24d8..085522ec1a8 100644
--- a/TAO/tao/ORB_Core.h
+++ b/TAO/tao/ORB_Core.h
@@ -225,7 +225,7 @@ public:
/// Get the adapter registry
TAO_Adapter_Registry &adapter_registry (void);
- /// @name Collocation Strategies
+ /// @name Collocation Strategies as configured by the user
//@{
enum
{
@@ -234,22 +234,16 @@ public:
ORB_CONTROL,
/// Collocated calls will go thru POA.
- THRU_POA,
+ TAO_COLLOCATION_THRU_POA,
/// Collocated calls invoke operation on Servant directly.
- DIRECT
- };
+ TAO_COLLOCATION_DIRECT,
- /**
- * This method returns the right collocation strategy, if any,
- * to be used to perform a method invocation on the given object.
- *
- * @note
- * No-Collocation is a special case of collocation.
- */
- static
- TAO::Collocation_Strategy collocation_strategy (CORBA::Object_ptr object);
- //@}
+ /// Collocated calls invoke operation on Servant directly if possible,
+ /// else Collocated calls will go thru POA if possible, else
+ /// use REMOTE_STRATEGY
+ TAO_COLLOCATION_BEST
+ };
/// Set/get the collocation flags
//@{
diff --git a/TAO/tao/Object.cpp b/TAO/tao/Object.cpp
index 8b8ed8d7fdb..55ea29155a8 100644
--- a/TAO/tao/Object.cpp
+++ b/TAO/tao/Object.cpp
@@ -209,7 +209,14 @@ CORBA::Object::_is_a (const char *type_id)
// XXX if type_id is that of CORBA::Object, "yes, we comply" :-)
if (this->protocol_proxy_ == 0)
- throw ::CORBA::NO_IMPLEMENT ();
+ {
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - No protocol proxy for %C\n"),
+ type_id));
+
+ throw ::CORBA::NO_IMPLEMENT ();
+ }
if (this->_stubobj ()->type_id.in () != 0
&& ACE_OS::strcmp (type_id,
@@ -236,13 +243,6 @@ CORBA::Object::_is_collocated (void) const
return false;
}
-void
-CORBA::Object::set_collocated_servant (TAO_Abstract_ServantBase *b)
-{
- this->protocol_proxy_->collocated_servant (b);
- this->protocol_proxy_->is_collocated (true);
-}
-
CORBA::Boolean
CORBA::Object::_is_local (void) const
{
@@ -374,6 +374,11 @@ CORBA::Object::_create_request (CORBA::Context_ptr ctx,
// object references.
if (ctx != 0 || this->protocol_proxy_ == 0)
{
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - No protocol proxy for %C\n"),
+ operation));
+
throw ::CORBA::NO_IMPLEMENT ();
}
@@ -414,6 +419,11 @@ CORBA::Object::_create_request (CORBA::Context_ptr ctx,
// object references.
if (ctx != 0 || this->protocol_proxy_ == 0)
{
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - No protocol proxy for %C\n"),
+ operation));
+
throw ::CORBA::NO_IMPLEMENT ();
}
@@ -452,6 +462,11 @@ CORBA::Object::_request (const char *operation)
}
else
{
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - No protocol proxy for %C\n"),
+ operation));
+
throw ::CORBA::NO_IMPLEMENT ();
}
}
@@ -522,7 +537,13 @@ CORBA::Object::_get_policy (CORBA::PolicyType type)
if (this->protocol_proxy_)
return this->protocol_proxy_->get_policy (type);
else
- throw ::CORBA::NO_IMPLEMENT ();
+ {
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - No protocol proxy in _get_policy\n")));
+
+ throw ::CORBA::NO_IMPLEMENT ();
+ }
}
CORBA::Policy_ptr
@@ -533,7 +554,13 @@ CORBA::Object::_get_cached_policy (TAO_Cached_Policy_Type type)
if (this->protocol_proxy_)
return this->protocol_proxy_->get_cached_policy (type);
else
- throw ::CORBA::NO_IMPLEMENT ();
+ {
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - No protocol proxy in _get_policy\n")));
+
+ throw ::CORBA::NO_IMPLEMENT ();
+ }
}
CORBA::Object_ptr
@@ -544,7 +571,13 @@ CORBA::Object::_set_policy_overrides (
TAO_OBJECT_IOR_EVALUATE_RETURN;
if (!this->protocol_proxy_)
- throw ::CORBA::NO_IMPLEMENT ();
+ {
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - No protocol proxy in _get_policy\n")));
+
+ throw ::CORBA::NO_IMPLEMENT ();
+ }
TAO_Stub* stub =
this->protocol_proxy_->set_policy_overrides (policies, set_add);
@@ -581,7 +614,13 @@ CORBA::Object::_get_policy_overrides (const CORBA::PolicyTypeSeq & types)
if (this->protocol_proxy_)
return this->protocol_proxy_->get_policy_overrides (types);
else
- throw ::CORBA::NO_IMPLEMENT ();
+ {
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - No protocol proxy in _get_policy\n")));
+
+ throw ::CORBA::NO_IMPLEMENT ();
+ }
}
CORBA::Boolean
@@ -634,7 +673,13 @@ CORBA::Object::_get_orb (void)
if (this->protocol_proxy_)
return CORBA::ORB::_duplicate (this->protocol_proxy_->orb_core ()->orb ());
else
- throw ::CORBA::INTERNAL ();
+ {
+ if (TAO_debug_level > 0)
+ ACE_ERROR ((LM_ERROR,
+ ACE_TEXT ("TAO (%P|%t) - No protocol proxy in _get_policy\n")));
+
+ throw ::CORBA::NO_IMPLEMENT ();
+ }
}
}
diff --git a/TAO/tao/Object.h b/TAO/tao/Object.h
index 932cff0dfc7..59ae911e3e0 100644
--- a/TAO/tao/Object.h
+++ b/TAO/tao/Object.h
@@ -306,15 +306,6 @@ namespace CORBA
/// Accessor to the flag..
CORBA::Boolean is_evaluated (void) const;
- /// Mutator for setting the servant in collocated cases.
- /**
- * This is used by the Object_Adapter to set the servant for
- * collocated cases and only when the object is initialized. The
- * object initialization takes place when IOR's are lazily
- * evaluated.
- */
- void set_collocated_servant (TAO_Abstract_ServantBase *);
-
/// Accessor for the ORB_Core..
TAO_ORB_Core *orb_core (void) const;
@@ -339,8 +330,7 @@ namespace CORBA
virtual char* convert_to_ior (bool use_omg_ior_format,
const char* ior_prefix) const;
- /// Wrapper for _remove_ref(), naming convention for
- /// templatizing.
+ /// Wrapper for _remove_ref(), naming convention for templatizing.
void _decr_refcount (void);
protected:
diff --git a/TAO/tao/Object_T.cpp b/TAO/tao/Object_T.cpp
index e48f0a5287c..17abfa18791 100644
--- a/TAO/tao/Object_T.cpp
+++ b/TAO/tao/Object_T.cpp
@@ -16,44 +16,23 @@ namespace TAO
template<typename T>
T *
Narrow_Utils<T>::narrow (CORBA::Object_ptr obj,
- const char *repo_id,
- Proxy_Broker_Factory pbf)
+ const char *repo_id)
{
if (CORBA::is_nil (obj))
{
return T::_nil ();
}
- if (obj->_is_a (repo_id) == false)
+ if (!obj->_is_a (repo_id))
{
return T::_nil ();
}
- return TAO::Narrow_Utils<T>::unchecked_narrow (obj, repo_id, pbf);
+ return TAO::Narrow_Utils<T>::unchecked_narrow (obj);
}
template<typename T> T *
- Narrow_Utils<T>::unchecked_narrow (CORBA::Object_ptr obj,
- Proxy_Broker_Factory pbf)
- {
- T *proxy = 0;
- try
- {
- proxy = TAO::Narrow_Utils<T>::unchecked_narrow (obj, 0, pbf);
- }
- catch (const ::CORBA::Exception&)
- {
- // Swallow the exception
- return T::_nil ();
- }
-
- return proxy;
- }
-
- template<typename T> T *
- Narrow_Utils<T>::unchecked_narrow (CORBA::Object_ptr obj,
- const char *,
- Proxy_Broker_Factory pbf)
+ Narrow_Utils<T>::unchecked_narrow (CORBA::Object_ptr obj)
{
if (CORBA::is_nil (obj))
{
@@ -65,34 +44,38 @@ namespace TAO
return T::_duplicate (dynamic_cast<T *> (obj));
}
- T_ptr proxy = Narrow_Utils<T>::lazy_evaluation (obj);
-
- if (!CORBA::is_nil (proxy))
+ T_ptr proxy = T::_nil ();
+ try
{
- return proxy;
+ proxy = Narrow_Utils<T>::lazy_evaluation (obj);
+
+ if (CORBA::is_nil (proxy))
+ {
+ TAO_Stub* stub = obj->_stubobj ();
+
+ if (stub != 0)
+ {
+ stub->_incr_refcnt ();
+
+ bool const collocated =
+ !CORBA::is_nil (stub->servant_orb_var ().in ())
+ && stub->optimize_collocation_objects ()
+ && obj->_is_collocated ();
+
+ ACE_NEW_RETURN (proxy,
+ T (stub,
+ collocated,
+ obj->_servant ()),
+ T::_nil ());
+ }
+ }
}
-
- TAO_Stub* stub = obj->_stubobj ();
-
- if (stub == 0)
+ catch (const ::CORBA::Exception&)
{
- // If we're here, we have been passed a bogus objref.
- throw ::CORBA::BAD_PARAM ();
+ // Swallow the exception
+ return T::_nil ();
}
- stub->_incr_refcnt ();
-
- bool const collocated =
- !CORBA::is_nil (stub->servant_orb_var ().in ())
- && stub->optimize_collocation_objects ()
- && obj->_is_collocated ()
- && pbf != 0;
-
- ACE_NEW_THROW_EX (proxy,
- T (stub,
- collocated,
- obj->_servant ()),
- CORBA::NO_MEMORY ());
return proxy;
}
diff --git a/TAO/tao/Object_T.h b/TAO/tao/Object_T.h
index 0016da30550..cf8e24f9e7b 100644
--- a/TAO/tao/Object_T.h
+++ b/TAO/tao/Object_T.h
@@ -24,6 +24,7 @@
#endif /* ACE_LACKS_PRAGMA_ONCE */
#include /**/ "tao/Versioned_Namespace.h"
+#include "tao/Collocation_Strategy.h"
TAO_BEGIN_VERSIONED_NAMESPACE_DECL
@@ -35,11 +36,6 @@ namespace CORBA
namespace TAO
{
- class Collocation_Proxy_Broker;
-
- typedef
- Collocation_Proxy_Broker * (* Proxy_Broker_Factory)(CORBA::Object_ptr);
-
template<typename T>
class Narrow_Utils
{
@@ -47,15 +43,10 @@ namespace TAO
typedef T *T_ptr;
static T_ptr narrow (CORBA::Object_ptr,
- const char *repo_id,
- Proxy_Broker_Factory);
+ const char *repo_id);
/// Version used the operators.
- static T_ptr unchecked_narrow (CORBA::Object_ptr, Proxy_Broker_Factory);
-
- static T_ptr unchecked_narrow (CORBA::Object_ptr,
- const char *repo_id,
- Proxy_Broker_Factory);
+ static T_ptr unchecked_narrow (CORBA::Object_ptr);
private:
// Code for lazily evaluated IORs.
diff --git a/TAO/tao/PI_Server/PI_Server_include.pidl b/TAO/tao/PI_Server/PI_Server_include.pidl
index 3dcf73ad27a..f2647f27f85 100644
--- a/TAO/tao/PI_Server/PI_Server_include.pidl
+++ b/TAO/tao/PI_Server/PI_Server_include.pidl
@@ -6,8 +6,8 @@
* @brief Include file for use in applications that need PI_Server.pidl.
*/
-#ifndef _PORTABLESERVER_INCLUDE_IDL_
-#define _PORTABLESERVER_INCLUDE_IDL_
+#ifndef _PI_SERVER_INCLUDE_IDL_
+#define _PI_SERVER_INCLUDE_IDL_
// This pragma is here to make the Visual Age preprocessor generate #line
// output for this file before the files it includes.
@@ -16,4 +16,4 @@
///FUZZ: disable check_for_include/
#include "tao/PI_Server/ServerRequestInterceptor.pidl"
-#endif /* _PORTABLESERVER_INCLUDE_IDL_ */
+#endif /* _PI_SERVER_INCLUDE_IDL_ */
diff --git a/TAO/tao/PolicyC.cpp b/TAO/tao/PolicyC.cpp
index 604ac00ebcc..58b400fc979 100644
--- a/TAO/tao/PolicyC.cpp
+++ b/TAO/tao/PolicyC.cpp
@@ -368,12 +368,6 @@ TAO::Objref_Traits<CORBA::Policy>::marshal (
return CORBA::Object::marshal (p, cdr);
}
-// Function pointer for collocation factory initialization.
-TAO::Collocation_Proxy_Broker *
-(*CORBA__TAO_Policy_Proxy_Broker_Factory_function_pointer) (
- CORBA::Object_ptr obj
- ) = 0;
-
// TAO_IDL - Generated from
// be\be_visitor_operation/operation_cs.cpp:78
@@ -386,11 +380,6 @@ CORBA::PolicyType CORBA::Policy::policy_type (
::CORBA::Object::tao_object_initialize (this);
}
- if (this->the_TAO_Policy_Proxy_Broker_ == 0)
- {
- CORBA_Policy_setup_collocation ();
- }
-
TAO::Arg_Traits< ::CORBA::PolicyType>::ret_val _tao_retval;
TAO::Argument *_the_tao_operation_signature [] =
@@ -404,7 +393,7 @@ CORBA::PolicyType CORBA::Policy::policy_type (
1,
"_get_policy_type",
16,
- this->the_TAO_Policy_Proxy_Broker_
+ TAO::TAO_CO_NONE | TAO::TAO_CO_DIRECT_STRATEGY | TAO::TAO_CO_THRU_POA_STRATEGY
);
_tao_call.invoke (0, 0);
@@ -424,11 +413,6 @@ CORBA::PolicyType CORBA::Policy::policy_type (
::CORBA::Object::tao_object_initialize (this);
}
- if (this->the_TAO_Policy_Proxy_Broker_ == 0)
- {
- CORBA_Policy_setup_collocation ();
- }
-
TAO::Arg_Traits< ::CORBA::Policy>::ret_val _tao_retval;
TAO::Argument *_the_tao_operation_signature [] =
@@ -442,7 +426,7 @@ CORBA::PolicyType CORBA::Policy::policy_type (
1,
"copy",
4,
- this->the_TAO_Policy_Proxy_Broker_
+ TAO::TAO_CO_NONE | TAO::TAO_CO_DIRECT_STRATEGY | TAO::TAO_CO_THRU_POA_STRATEGY
);
_tao_call.invoke (0, 0);
@@ -462,11 +446,6 @@ void CORBA::Policy::destroy (
::CORBA::Object::tao_object_initialize (this);
}
- if (this->the_TAO_Policy_Proxy_Broker_ == 0)
- {
- CORBA_Policy_setup_collocation ();
- }
-
TAO::Arg_Traits< void>::ret_val _tao_retval;
TAO::Argument *_the_tao_operation_signature [] =
@@ -480,26 +459,14 @@ void CORBA::Policy::destroy (
1,
"destroy",
7,
- this->the_TAO_Policy_Proxy_Broker_
+ TAO::TAO_CO_NONE | TAO::TAO_CO_DIRECT_STRATEGY | TAO::TAO_CO_THRU_POA_STRATEGY
);
_tao_call.invoke (0, 0);
}
CORBA::Policy::Policy (void)
- : the_TAO_Policy_Proxy_Broker_ (0)
-{
- this->CORBA_Policy_setup_collocation ();
-}
-
-void
-CORBA::Policy::CORBA_Policy_setup_collocation ()
{
- if (::CORBA__TAO_Policy_Proxy_Broker_Factory_function_pointer)
- {
- this->the_TAO_Policy_Proxy_Broker_ =
- ::CORBA__TAO_Policy_Proxy_Broker_Factory_function_pointer (this);
- }
}
CORBA::Policy::~Policy (void)
@@ -514,33 +481,19 @@ CORBA::Policy::_tao_any_destructor (void *_tao_void_pointer)
}
CORBA::Policy_ptr
-CORBA::Policy::_narrow (
- CORBA::Object_ptr _tao_objref
-
- )
+CORBA::Policy::_narrow (CORBA::Object_ptr _tao_objref)
{
return
TAO::Narrow_Utils<Policy>::narrow (
_tao_objref,
- "IDL:omg.org/CORBA/Policy:1.0",
- CORBA__TAO_Policy_Proxy_Broker_Factory_function_pointer
-
- );
+ "IDL:omg.org/CORBA/Policy:1.0");
}
CORBA::Policy_ptr
-CORBA::Policy::_unchecked_narrow (
- CORBA::Object_ptr _tao_objref
-
- )
+CORBA::Policy::_unchecked_narrow (CORBA::Object_ptr _tao_objref)
{
return
- TAO::Narrow_Utils<Policy>::unchecked_narrow (
- _tao_objref,
- "IDL:omg.org/CORBA/Policy:1.0",
- CORBA__TAO_Policy_Proxy_Broker_Factory_function_pointer
-
- );
+ TAO::Narrow_Utils<Policy>::unchecked_narrow (_tao_objref);
}
CORBA::Policy_ptr
@@ -722,9 +675,7 @@ CORBA::Boolean operator>> (
// Narrow to the right type.
_tao_objref =
TAO::Narrow_Utils<RHS_SCOPED_NAME>::unchecked_narrow (
- obj.in (),
- CORBA__TAO_Policy_Proxy_Broker_Factory_function_pointer
- );
+ obj.in ());
return 1;
}
diff --git a/TAO/tao/PolicyC.h b/TAO/tao/PolicyC.h
index dc478cbae50..c37bfeb1cfd 100644
--- a/TAO/tao/PolicyC.h
+++ b/TAO/tao/PolicyC.h
@@ -67,7 +67,6 @@ TAO_BEGIN_VERSIONED_NAMESPACE_DECL
namespace TAO
{
- class Collocation_Proxy_Broker;
template<typename T> class Narrow_Utils;
}
@@ -314,17 +313,10 @@ namespace CORBA
virtual TAO_Policy_Scope _tao_scope (void) const;
// ****************************************************************
- private:
- TAO::Collocation_Proxy_Broker *the_TAO_Policy_Proxy_Broker_;
-
protected:
// Concrete interface only.
Policy (void);
- // These methods travese the inheritance tree and set the
- // parents piece of the given class in the right mode.
- virtual void CORBA_Policy_setup_collocation (void);
-
// Concrete non-local interface only.
Policy (
IOP::IOR *ior,
@@ -355,17 +347,6 @@ namespace CORBA
} // module CORBA
-// Proxy Broker Factory function pointer declarations.
-
-// TAO_IDL - Generated from
-// be\be_visitor_root/root.cpp:139
-
-extern TAO_Export
-TAO::Collocation_Proxy_Broker *
-(*CORBA__TAO_Policy_Proxy_Broker_Factory_function_pointer) (
- CORBA::Object_ptr obj
- );
-
// TAO_IDL - Generated from
// be\be_visitor_traits.cpp:61
diff --git a/TAO/tao/PolicyC.inl b/TAO/tao/PolicyC.inl
index f9aac3d9fae..05a60494650 100644
--- a/TAO/tao/PolicyC.inl
+++ b/TAO/tao/PolicyC.inl
@@ -39,21 +39,16 @@ CORBA::Policy::Policy (
TAO_Stub *objref,
CORBA::Boolean _tao_collocated,
TAO_Abstract_ServantBase *servant,
- TAO_ORB_Core *oc
- )
- : ::CORBA::Object (objref, _tao_collocated, servant, oc),
- the_TAO_Policy_Proxy_Broker_ (0)
+ TAO_ORB_Core *oc)
+ : ::CORBA::Object (objref, _tao_collocated, servant, oc)
{
- this->CORBA_Policy_setup_collocation ();
}
ACE_INLINE
CORBA::Policy::Policy (
IOP::IOR *ior,
- TAO_ORB_Core *oc
- )
- : ::CORBA::Object (ior, oc),
- the_TAO_Policy_Proxy_Broker_ (0)
+ TAO_ORB_Core *oc)
+ : ::CORBA::Object (ior, oc)
{
}
diff --git a/TAO/tao/PortableServer/Collocated_Object_Proxy_Broker.cpp b/TAO/tao/PortableServer/Collocated_Object_Proxy_Broker.cpp
index c045934fa59..b6a94a51993 100644
--- a/TAO/tao/PortableServer/Collocated_Object_Proxy_Broker.cpp
+++ b/TAO/tao/PortableServer/Collocated_Object_Proxy_Broker.cpp
@@ -21,21 +21,21 @@ namespace TAO
// Which collocation strategy should we use?
if (stub != 0 &&
stub->servant_orb_var ()->orb_core ()->get_collocation_strategy ()
- == TAO_ORB_Core::THRU_POA)
+ == TAO_ORB_Core::TAO_COLLOCATION_THRU_POA)
{
TAO::Portable_Server::Servant_Upcall servant_upcall (
stub->servant_orb_var ()->orb_core ());
- CORBA::Object_var forward_to;
- servant_upcall.prepare_for_upcall (
- stub->profile_in_use ()->object_key (),
- "_is_a",
- forward_to.out ());
+ CORBA::Object_var forward_to;
+ servant_upcall.prepare_for_upcall (
+ stub->profile_in_use ()->object_key (),
+ "_is_a",
+ forward_to.out ());
- servant_upcall.pre_invoke_collocated_request ();
+ servant_upcall.pre_invoke_collocated_request ();
- return servant_upcall.servant ()->_is_a (type_id);
- }
+ return servant_upcall.servant ()->_is_a (type_id);
+ }
// Direct collocation strategy is used.
if (target->_servant () != 0)
@@ -43,7 +43,7 @@ namespace TAO
return target->_servant ()->_is_a (type_id);
}
- return 0;
+ return false;
}
#if (TAO_HAS_MINIMUM_CORBA == 0)
@@ -59,7 +59,7 @@ namespace TAO
// Which collocation strategy should we use?
if (stub != 0 &&
stub->servant_orb_var ()->orb_core ()
- ->get_collocation_strategy () == TAO_ORB_Core::THRU_POA)
+ ->get_collocation_strategy () == TAO_ORB_Core::TAO_COLLOCATION_THRU_POA)
{
TAO::Portable_Server::Servant_Upcall servant_upcall (
stub->servant_orb_var ()->orb_core ());
@@ -97,7 +97,7 @@ namespace TAO
// Which collocation strategy should we use?
if (stub != 0 &&
stub->servant_orb_var ()->orb_core ()
- ->get_collocation_strategy () == TAO_ORB_Core::THRU_POA)
+ ->get_collocation_strategy () == TAO_ORB_Core::TAO_COLLOCATION_THRU_POA)
{
TAO::Portable_Server::Servant_Upcall servant_upcall (
target->_stubobj ()->servant_orb_var ()->orb_core ());
@@ -135,7 +135,7 @@ namespace TAO
// Which collocation strategy should we use?
if (stub != 0 &&
stub->servant_orb_var ()->orb_core ()
- ->get_collocation_strategy () == TAO_ORB_Core::THRU_POA)
+ ->get_collocation_strategy () == TAO_ORB_Core::TAO_COLLOCATION_THRU_POA)
{
TAO::Portable_Server::Servant_Upcall servant_upcall (
stub->servant_orb_var ()->orb_core ());
@@ -174,7 +174,7 @@ namespace TAO
// Which collocation strategy should we use?
if (stub != 0 &&
stub->servant_orb_var ()->orb_core ()->get_collocation_strategy ()
- == TAO_ORB_Core::THRU_POA)
+ == TAO_ORB_Core::TAO_COLLOCATION_THRU_POA)
{
TAO::Portable_Server::Servant_Upcall servant_upcall (
target->_stubobj ()->servant_orb_var ()->orb_core ());
diff --git a/TAO/tao/PortableServer/Direct_Collocation_Upcall_Wrapper.cpp b/TAO/tao/PortableServer/Direct_Collocation_Upcall_Wrapper.cpp
index fea4bc90175..56e68d482d9 100644
--- a/TAO/tao/PortableServer/Direct_Collocation_Upcall_Wrapper.cpp
+++ b/TAO/tao/PortableServer/Direct_Collocation_Upcall_Wrapper.cpp
@@ -20,7 +20,7 @@ TAO::Direct_Collocation_Upcall_Wrapper::upcall (
CORBA::Object_out forward_obj,
bool & is_forwarded,
TAO::Argument ** args,
- int num_args,
+ int,
const char * op,
size_t op_len,
TAO::Collocation_Strategy strategy)
@@ -38,7 +38,7 @@ TAO::Direct_Collocation_Upcall_Wrapper::upcall (
try
{
#endif /* TAO_HAS_MINIMUM_CORBA && !CORBA_E_COMPACT && !CORBA_E_MICRO*/
- collocated_skel (servant, args, num_args);
+ collocated_skel (servant, args);
#if (TAO_HAS_MINIMUM_CORBA == 0) && !defined (CORBA_E_COMPACT) && !defined (CORBA_E_MICRO)
}
catch (const ::PortableServer::ForwardRequest& forward_request)
diff --git a/TAO/tao/PortableServer/Direct_Collocation_Upcall_Wrapper.h b/TAO/tao/PortableServer/Direct_Collocation_Upcall_Wrapper.h
index 02213483f81..9b8a6d02be2 100644
--- a/TAO/tao/PortableServer/Direct_Collocation_Upcall_Wrapper.h
+++ b/TAO/tao/PortableServer/Direct_Collocation_Upcall_Wrapper.h
@@ -51,7 +51,6 @@ namespace TAO
class TAO_PortableServer_Export Direct_Collocation_Upcall_Wrapper
{
public:
-
/// Perform the upcall
void upcall (
CORBA::Object_ptr obj,
diff --git a/TAO/tao/PortableServer/Object_Adapter.cpp b/TAO/tao/PortableServer/Object_Adapter.cpp
index 8686ad9979d..3b4940e3f6f 100644
--- a/TAO/tao/PortableServer/Object_Adapter.cpp
+++ b/TAO/tao/PortableServer/Object_Adapter.cpp
@@ -514,7 +514,7 @@ TAO_Object_Adapter::locate_servant_i (const TAO::ObjectKey &key)
this->locate_poa (key, id, poa);
PortableServer::Servant servant = 0;
- TAO_SERVANT_LOCATION servant_location =
+ TAO_SERVANT_LOCATION const servant_location =
poa->locate_servant_i (id, servant);
switch (servant_location)
diff --git a/TAO/tao/PortableServer/Operation_Table.h b/TAO/tao/PortableServer/Operation_Table.h
index 87b81a7dec7..9a11e5f1b5a 100644
--- a/TAO/tao/PortableServer/Operation_Table.h
+++ b/TAO/tao/PortableServer/Operation_Table.h
@@ -32,14 +32,11 @@ class TAO_Abstract_ServantBase;
typedef void (*TAO_Skeleton)(
TAO_ServerRequest &,
void *,
- void *
- );
+ void *);
typedef void (*TAO_Collocated_Skeleton)(
TAO_Abstract_ServantBase *,
- TAO::Argument **,
- int
- );
+ TAO::Argument **);
/**
* @struct TAO_operation_db_entry
diff --git a/TAO/tao/PortableServer/PolicyS.cpp b/TAO/tao/PortableServer/PolicyS.cpp
index b9bffd54bbe..6a533af379a 100644
--- a/TAO/tao/PortableServer/PolicyS.cpp
+++ b/TAO/tao/PortableServer/PolicyS.cpp
@@ -204,99 +204,6 @@ TAO_CORBA_Policy_Perfect_Hash_OpTable::lookup (const char *str, unsigned int len
}
static TAO_CORBA_Policy_Perfect_Hash_OpTable tao_CORBA_Policy_optable;
-///////////////////////////////////////////////////////////////////////
-// Strategized Proxy Broker Implementation
-//
-
-// TAO_IDL - Generated from
-// be\be_visitor_interface/strategized_proxy_broker_ss.cpp:40
-
-// Factory function Implementation.
-POA_CORBA::_TAO_Policy_Strategized_Proxy_Broker *
-POA_CORBA::_TAO_Policy_Strategized_Proxy_Broker::the_TAO_Policy_Strategized_Proxy_Broker (void)
-{
- static POA_CORBA::_TAO_Policy_Strategized_Proxy_Broker
- strategized_proxy_broker;
-
- return &strategized_proxy_broker;
-}
-
-POA_CORBA::_TAO_Policy_Strategized_Proxy_Broker::_TAO_Policy_Strategized_Proxy_Broker (void)
-{
-}
-
-POA_CORBA::_TAO_Policy_Strategized_Proxy_Broker::~_TAO_Policy_Strategized_Proxy_Broker (void)
-{
-}
-
-TAO::Collocation_Strategy
-POA_CORBA::_TAO_Policy_Strategized_Proxy_Broker::get_strategy (
- CORBA::Object_ptr obj
-
- )
-{
- TAO::Collocation_Strategy strategy =
- TAO_ORB_Core::collocation_strategy (obj);
-
- return strategy;
-}
-
-void
-POA_CORBA::_TAO_Policy_Strategized_Proxy_Broker::dispatch (
- CORBA::Object_ptr obj,
- CORBA::Object_out forward_obj,
- bool & is_forwarded,
- TAO::Argument ** args,
- int num_args,
- const char * op,
- size_t op_len,
- TAO::Collocation_Strategy strategy
-
- )
-{
- TAO::Direct_Collocation_Upcall_Wrapper collocation_upcall_wrapper;
- collocation_upcall_wrapper.upcall (
- obj,
- forward_obj,
- is_forwarded,
- args,
- num_args,
- op,
- op_len,
- strategy
- );
-}
-
-//
-// End Strategized Proxy Broker Implementation
-///////////////////////////////////////////////////////////////////////
-
-// TAO_IDL - Generated from
-// be\be_visitor_interface/interface_ss.cpp:999
-
-TAO::Collocation_Proxy_Broker *
-CORBA__TAO_Policy_Proxy_Broker_Factory_function (CORBA::Object_ptr)
-{
- return
- ::POA_CORBA::_TAO_Policy_Strategized_Proxy_Broker::the_TAO_Policy_Strategized_Proxy_Broker ();
-}
-
-int
-CORBA__TAO_Policy_Proxy_Broker_Factory_Initializer (size_t)
-{
- CORBA__TAO_Policy_Proxy_Broker_Factory_function_pointer =
- CORBA__TAO_Policy_Proxy_Broker_Factory_function;
-
- return 0;
-}
-
-static int
-CORBA__TAO_Policy_Proxy_Broker_Stub_Factory_Initializer_Scarecrow =
- CORBA__TAO_Policy_Proxy_Broker_Factory_Initializer (
- reinterpret_cast<size_t> (CORBA__TAO_Policy_Proxy_Broker_Factory_Initializer)
- );
-
-
///////////////////////////////////////////////////////////////////////
// Direct Proxy Implementation
@@ -314,17 +221,12 @@ POA_CORBA::_TAO_Policy_Direct_Proxy_Impl::~_TAO_Policy_Direct_Proxy_Impl (void)
void
POA_CORBA::_TAO_Policy_Direct_Proxy_Impl::_get_policy_type (
TAO_Abstract_ServantBase *servant,
- TAO::Argument ** args,
- int
-
- )
+ TAO::Argument ** args)
{
((TAO::Arg_Traits< ::CORBA::PolicyType>::ret_val *) args[0])->arg () =
dynamic_cast<POA_CORBA::Policy_ptr>
(servant)
- ->policy_type (
-
- );
+ ->policy_type ();
}
// TAO_IDL - Generated from
// be\be_visitor_operation/direct_proxy_impl_ss.cpp:42
@@ -332,17 +234,12 @@ POA_CORBA::_TAO_Policy_Direct_Proxy_Impl::_get_policy_type (
void
POA_CORBA::_TAO_Policy_Direct_Proxy_Impl::copy (
TAO_Abstract_ServantBase *servant,
- TAO::Argument ** args,
- int
-
- )
+ TAO::Argument ** args)
{
((TAO::Arg_Traits< CORBA::Policy>::ret_val *) args[0])->arg () =
dynamic_cast<POA_CORBA::Policy_ptr>
(servant)
- ->copy (
-
- );
+ ->copy ();
}
// TAO_IDL - Generated from
// be\be_visitor_operation/direct_proxy_impl_ss.cpp:42
@@ -350,15 +247,11 @@ POA_CORBA::_TAO_Policy_Direct_Proxy_Impl::copy (
void
POA_CORBA::_TAO_Policy_Direct_Proxy_Impl::destroy (
TAO_Abstract_ServantBase *servant,
- TAO::Argument **,
- int
- )
+ TAO::Argument **)
{
dynamic_cast<POA_CORBA::Policy_ptr>
(servant)
- ->destroy (
-
- );
+ ->destroy ();
}
@@ -1026,9 +919,7 @@ POA_CORBA::Policy::_this (void)
typedef ::CORBA::Policy STUB_SCOPED_NAME;
return
TAO::Narrow_Utils<STUB_SCOPED_NAME>::unchecked_narrow (
- obj.in (),
- CORBA__TAO_Policy_Proxy_Broker_Factory_function_pointer
- );
+ obj.in ());
}
#endif /* ifndef */
diff --git a/TAO/tao/PortableServer/PolicyS.h b/TAO/tao/PortableServer/PolicyS.h
index 44603b46599..fc076ae73b5 100644
--- a/TAO/tao/PortableServer/PolicyS.h
+++ b/TAO/tao/PortableServer/PolicyS.h
@@ -42,7 +42,6 @@
# pragma once
#endif /* ACE_LACKS_PRAGMA_ONCE */
-#include "tao/Collocation_Proxy_Broker.h"
#include "tao/PortableServer/PortableServer.h"
#include "tao/PortableServer/Servant_Base.h"
@@ -73,9 +72,6 @@ namespace POA_CORBA
class Policy;
typedef Policy *Policy_ptr;
- class _TAO_Policy_Direct_Proxy_Impl;
- class _TAO_Policy_Strategized_Proxy_Broker;
-
class TAO_PortableServer_Export Policy
: public virtual PortableServer::ServantBase
{
@@ -182,48 +178,6 @@ namespace POA_CORBA
);
};
- ///////////////////////////////////////////////////////////////////////
- // Strategized Proxy Broker Declaration
- //
-
- // TAO_IDL - Generated from
- // be\be_visitor_interface/strategized_proxy_broker_sh.cpp:36
-
- class TAO_PortableServer_Export _TAO_Policy_Strategized_Proxy_Broker
- : public virtual TAO::Collocation_Proxy_Broker
- {
- public:
- _TAO_Policy_Strategized_Proxy_Broker (void);
-
- virtual ~_TAO_Policy_Strategized_Proxy_Broker (void);
-
- TAO::Collocation_Strategy
- get_strategy (
- CORBA::Object_ptr obj
-
- );
-
- void
- dispatch (
- CORBA::Object_ptr obj,
- CORBA::Object_out forward_obj,
- bool & is_forwarded,
- TAO::Argument ** args,
- int num_args,
- const char * op,
- size_t op_len,
- TAO::Collocation_Strategy strategy
-
- );
-
- static _TAO_Policy_Strategized_Proxy_Broker *
- the_TAO_Policy_Strategized_Proxy_Broker (void);
- };
-
- //
- // End Strategized Proxy Broker Declaration
- ///////////////////////////////////////////////////////////////////////
-
// TAO_IDL - Generated from
@@ -246,10 +200,7 @@ namespace POA_CORBA
static void
_get_policy_type (
TAO_Abstract_ServantBase *servant,
- TAO::Argument ** args,
- int num_args
-
- );
+ TAO::Argument ** args);
// TAO_IDL - Generated from
// be\be_visitor_operation/proxy_impl_xh.cpp:24
@@ -257,10 +208,7 @@ namespace POA_CORBA
static void
copy (
TAO_Abstract_ServantBase *servant,
- TAO::Argument ** args,
- int num_args
-
- );
+ TAO::Argument ** args);
// TAO_IDL - Generated from
// be\be_visitor_operation/proxy_impl_xh.cpp:24
@@ -268,10 +216,7 @@ namespace POA_CORBA
static void
destroy (
TAO_Abstract_ServantBase *servant,
- TAO::Argument ** args,
- int num_args
-
- );
+ TAO::Argument ** args);
};
//
diff --git a/TAO/tao/PortableServer/Servant_Base.cpp b/TAO/tao/PortableServer/Servant_Base.cpp
index 96e284963ef..4c33eb15523 100644
--- a/TAO/tao/PortableServer/Servant_Base.cpp
+++ b/TAO/tao/PortableServer/Servant_Base.cpp
@@ -5,6 +5,7 @@
#include "tao/PortableServer/Root_POA.h"
#include "tao/PortableServer/Operation_Table.h"
#include "tao/PortableServer/POA_Current_Impl.h"
+#include "tao/PortableServer/Direct_Collocation_Upcall_Wrapper.h"
#include "tao/Timeprobe.h"
#include "tao/ORB_Core.h"
@@ -328,4 +329,26 @@ TAO_ServantBase::_refcount_value (void) const
return this->ref_count_.value ();
}
+void
+TAO_ServantBase::_collocated_dispatch (::CORBA::Object_ptr obj,
+ ::CORBA::Object_out forward_obj,
+ bool &is_forwarded,
+ TAO::Argument ** args,
+ int num_args,
+ const char * op,
+ size_t op_len,
+ TAO::Collocation_Strategy strategy)
+{
+ TAO::Direct_Collocation_Upcall_Wrapper collocation_upcall_wrapper;
+ collocation_upcall_wrapper.upcall (
+ obj,
+ forward_obj,
+ is_forwarded,
+ args,
+ num_args,
+ op,
+ op_len,
+ strategy);
+}
+
TAO_END_VERSIONED_NAMESPACE_DECL
diff --git a/TAO/tao/PortableServer/Servant_Base.h b/TAO/tao/PortableServer/Servant_Base.h
index 5b9090eb203..f2e43803cb4 100644
--- a/TAO/tao/PortableServer/Servant_Base.h
+++ b/TAO/tao/PortableServer/Servant_Base.h
@@ -134,6 +134,15 @@ public:
virtual CORBA::ULong _refcount_value (void) const;
//@}
+ virtual void _collocated_dispatch (::CORBA::Object_ptr obj,
+ ::CORBA::Object_out forward_obj,
+ bool &is_forwarded,
+ TAO::Argument ** args,
+ int num_args,
+ const char * op,
+ size_t op_len,
+ TAO::Collocation_Strategy strategy);
+
protected:
/// Default constructor, only derived classes can be created.
diff --git a/TAO/tao/PortableServer/Servant_Upcall.cpp b/TAO/tao/PortableServer/Servant_Upcall.cpp
index 5b3383148c2..e172081ef7c 100644
--- a/TAO/tao/PortableServer/Servant_Upcall.cpp
+++ b/TAO/tao/PortableServer/Servant_Upcall.cpp
@@ -54,7 +54,7 @@ namespace TAO
{
bool wait_occurred_restart_call = false;
- int result =
+ int const result =
this->prepare_for_upcall_i (key,
operation,
forward_to,
diff --git a/TAO/tao/Remote_Object_Proxy_Broker.cpp b/TAO/tao/Remote_Object_Proxy_Broker.cpp
index 8dbf58e2a23..3d5d61b6032 100644
--- a/TAO/tao/Remote_Object_Proxy_Broker.cpp
+++ b/TAO/tao/Remote_Object_Proxy_Broker.cpp
@@ -34,7 +34,7 @@ namespace TAO
2,
"_is_a",
5,
- 0);
+ TAO::TAO_CO_NONE | TAO::TAO_CO_THRU_POA_STRATEGY);
tao_call.invoke (0, 0);
@@ -58,7 +58,7 @@ namespace TAO
1,
"_non_existent",
13,
- 0);
+ TAO::TAO_CO_NONE | TAO::TAO_CO_THRU_POA_STRATEGY);
_tao_call.invoke (0, 0);
@@ -80,7 +80,7 @@ namespace TAO
1,
"_component",
10,
- 0);
+ TAO::TAO_CO_NONE | TAO::TAO_CO_THRU_POA_STRATEGY);
_tao_call.invoke (0, 0);
@@ -118,7 +118,7 @@ namespace TAO
1,
"_repository_id",
14,
- 0);
+ TAO::TAO_CO_NONE | TAO::TAO_CO_THRU_POA_STRATEGY);
_tao_call.invoke (0, 0);
diff --git a/TAO/tao/Resume_Handle_Deferred.cpp b/TAO/tao/Resume_Handle_Deferred.cpp
deleted file mode 100644
index c668f515a2d..00000000000
--- a/TAO/tao/Resume_Handle_Deferred.cpp
+++ /dev/null
@@ -1,46 +0,0 @@
-// $Id$
-
-#include "tao/Resume_Handle_Deferred.h"
-#include "tao/Resume_Handle.h"
-#include "tao/ORB_Core.h"
-#include "ace/Reactor.h"
-
-TAO_BEGIN_VERSIONED_NAMESPACE_DECL
-
-TAO_Resume_Handle_Deferred::TAO_Resume_Handle_Deferred (
- TAO_ORB_Core* orbc,
- ACE_Event_Handler* h) :
- ACE_Event_Handler (orbc->reactor())
- , h_ (h)
- , orbc_ (orbc)
-{
- h->add_reference ();
- this->reference_counting_policy ().value
- (ACE_Event_Handler::Reference_Counting_Policy::ENABLED);
-}
-
-TAO_Resume_Handle_Deferred::~TAO_Resume_Handle_Deferred (void)
-{
-}
-
-int
-TAO_Resume_Handle_Deferred:: handle_timeout (const ACE_Time_Value &, const void *)
-{
- // Send a notification to the reactor to cause the awakening of a new
- // follower, if there is one already available.
- ACE_Reactor *reactor = this->orbc_->reactor ();
- int const retval = reactor->notify (this->h_.handler (), ACE_Event_Handler::READ_MASK);
- if (TAO_debug_level > 2)
- {
- // @@todo: need to think about what is the action that
- // we can take when we get here with an error?!
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("TAO (%P|%t) - TAO_Resume_Handle_Deferred[%d]::handle_timeout, ")
- ACE_TEXT ("a connection_handler has been resumed, ")
- ACE_TEXT ("notified the reactor, retval=%d.\n"), h_->get_handle (), retval));
- }
- return -1; // -1 will cause the reactor to call handle_close() and dispose of the instance
-}
-
-TAO_END_VERSIONED_NAMESPACE_DECL
-
diff --git a/TAO/tao/Resume_Handle_Deferred.h b/TAO/tao/Resume_Handle_Deferred.h
deleted file mode 100644
index ce1c00bc977..00000000000
--- a/TAO/tao/Resume_Handle_Deferred.h
+++ /dev/null
@@ -1,61 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Resume_Handle_Deferred.h
- *
- * $Id$
- *
- * @author Iliyan Jeliazkov <jeliazkov_i@ociweb.com>
- */
-//=============================================================================
-
-#ifndef TAO_RESUME_HANDLE_DEFERRED_H
-#define TAO_RESUME_HANDLE_DEFERRED_H
-
-#include /**/ "ace/pre.h"
-
-#include "TAO_Export.h"
-#include "ace/Event_Handler.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-#include /**/ "tao/Versioned_Namespace.h"
-
-TAO_BEGIN_VERSIONED_NAMESPACE_DECL
-
-class TAO_ORB_Core;
-
-/**
- * @class TAO_Resume_Handle_Deferred
- *
- * @brief A utility class that helps in resuming handlers if TAO uses
- * a TP Reactor from ACE. In contrast with the Resume_Handle class
- * however, the resumption is performed at the expiration of a timer,
- * previously registered with the reactor. TAO_Resume_Handle_Deferred
- * will also notify the reactor (reactor->notify())
- */
-class TAO_Export TAO_Resume_Handle_Deferred : public ACE_Event_Handler
-{
-public:
- /// Ctor
- TAO_Resume_Handle_Deferred (TAO_ORB_Core* orbc, ACE_Event_Handler* h);
-
- /// Destructor
- ~TAO_Resume_Handle_Deferred (void);
-
- /// Handles the timeout event by resuming the handle and
- /// calling the reactor->notify()
- virtual int handle_timeout (const ACE_Time_Value &, const void * = 0);
-
-private:
- ACE_Event_Handler_var h_;
- TAO_ORB_Core * orbc_;
-};
-
-TAO_END_VERSIONED_NAMESPACE_DECL
-
-#include /**/ "ace/post.h"
-#endif /*TAO_RESUME_HANDLE_DEFERRED_H*/
diff --git a/TAO/tao/TAO_Server_Request.cpp b/TAO/tao/TAO_Server_Request.cpp
index 72b8a2120db..b1c13838012 100644
--- a/TAO/tao/TAO_Server_Request.cpp
+++ b/TAO/tao/TAO_Server_Request.cpp
@@ -322,9 +322,9 @@ TAO_ServerRequest::send_no_exception_reply (void)
this->outgoing_->more_fragments (false);
// Send the message.
- int result = this->transport_->send_message (*this->outgoing_,
- 0,
- TAO_REPLY);
+ int const result = this->transport_->send_message (*this->outgoing_,
+ 0,
+ TAO_REPLY);
if (result == -1)
{
diff --git a/TAO/tao/TypeCodeFactory/README b/TAO/tao/TypeCodeFactory/README
index 97d0b2546b2..d1e8ccf39fb 100644
--- a/TAO/tao/TypeCodeFactory/README
+++ b/TAO/tao/TypeCodeFactory/README
@@ -3,7 +3,7 @@ $Id$
TypeCodeFactory -------
This library is used by the Interface Repository and
-by CORBA::ORB to create typecodes. To minimize
+by CORBA::ORB to create typecodes. To minimize
dependencies and footprint, this library need not be
built or linked by an application. However, if an
application needs to call CORBA::ORB::create_*_tc(),
@@ -16,11 +16,11 @@ the IFR will link the TypeCodeFactory library in its
own build.
Since the TypeCodeFactory must deal with Interface
-Repository data types, it depends on the
+Repository data types, it depends on the
TAO_IFR_Client library.
Support has now been added for valuetypes, components,
-homes, eventtypes and recursive types. For an example
+homes, eventtypes and recursive types. For an example
of how to create a typecode for a recursive type, see
the OMG CORBA specification section on typecode creation
(in version 3.0, section 4.11.3).
diff --git a/TAO/tao/Valuetype/AbstractBase_Invocation_Adapter.cpp b/TAO/tao/Valuetype/AbstractBase_Invocation_Adapter.cpp
index bcb3e3c3849..b9018137a4b 100644
--- a/TAO/tao/Valuetype/AbstractBase_Invocation_Adapter.cpp
+++ b/TAO/tao/Valuetype/AbstractBase_Invocation_Adapter.cpp
@@ -14,7 +14,7 @@ namespace TAO
int arg_number,
const char *operation,
size_t op_len,
- Collocation_Proxy_Broker *p,
+ int collocation_opportunity,
Invocation_Type type,
Invocation_Mode mode)
: Invocation_Adapter (target->equivalent_objref (),
@@ -22,7 +22,7 @@ namespace TAO
arg_number,
operation,
op_len,
- p,
+ collocation_opportunity,
type,
mode)
{
diff --git a/TAO/tao/Valuetype/AbstractBase_Invocation_Adapter.h b/TAO/tao/Valuetype/AbstractBase_Invocation_Adapter.h
index afac495a54f..498dd7eaae1 100644
--- a/TAO/tao/Valuetype/AbstractBase_Invocation_Adapter.h
+++ b/TAO/tao/Valuetype/AbstractBase_Invocation_Adapter.h
@@ -51,7 +51,7 @@ namespace TAO
int arg_number,
const char *operation,
size_t op_len,
- Collocation_Proxy_Broker *cpb,
+ int collocation_opportunity,
TAO::Invocation_Type type = TAO_TWOWAY_INVOCATION,
TAO::Invocation_Mode mode = TAO_SYNCHRONOUS_INVOCATION);
diff --git a/TAO/tao/Valuetype/AbstractBase_T.cpp b/TAO/tao/Valuetype/AbstractBase_T.cpp
index 01f4e0ab83f..18d9b04672e 100644
--- a/TAO/tao/Valuetype/AbstractBase_T.cpp
+++ b/TAO/tao/Valuetype/AbstractBase_T.cpp
@@ -14,47 +14,23 @@ namespace TAO
template<typename T> T *
AbstractBase_Narrow_Utils<T>::narrow (
CORBA::AbstractBase_ptr obj,
- const char *repo_id,
- Proxy_Broker_Factory pbf)
+ const char *repo_id)
{
if (CORBA::is_nil (obj))
{
return T::_nil ();
}
- if (obj->_is_a (repo_id) == false)
+ if (!obj->_is_a (repo_id))
{
return T::_nil ();
}
- return
- AbstractBase_Narrow_Utils<T>::unchecked_narrow (obj, repo_id, pbf);
+ return AbstractBase_Narrow_Utils<T>::unchecked_narrow (obj);
}
template<typename T> T *
- AbstractBase_Narrow_Utils<T>::unchecked_narrow (
- CORBA::AbstractBase_ptr obj,
- Proxy_Broker_Factory pbf)
- {
- T *proxy = 0;
-
- try
- {
- proxy =
- AbstractBase_Narrow_Utils<T>::unchecked_narrow (obj, 0, pbf);
- }
- catch (const ::CORBA::Exception&)
- {
- }
-
- return proxy;
- }
-
- template<typename T> T *
- AbstractBase_Narrow_Utils<T>::unchecked_narrow (
- CORBA::AbstractBase_ptr obj,
- const char *,
- Proxy_Broker_Factory pbf)
+ AbstractBase_Narrow_Utils<T>::unchecked_narrow (CORBA::AbstractBase_ptr obj)
{
if (CORBA::is_nil (obj))
{
@@ -63,27 +39,32 @@ namespace TAO
T_ptr proxy = T::_nil ();
- if (obj->_is_objref ())
+ try
{
- TAO_Stub* stub = obj->_stubobj ();
-
- bool const collocated =
- !CORBA::is_nil (stub->servant_orb_var ().in ())
- && stub->optimize_collocation_objects ()
- && obj->_is_collocated ()
- && pbf != 0;
-
- ACE_NEW_THROW_EX (proxy,
- T (obj->_stubobj (),
- collocated,
- obj->_servant ()),
- CORBA::NO_MEMORY ());
+ if (obj->_is_objref ())
+ {
+ TAO_Stub* stub = obj->_stubobj ();
+
+ bool const collocated =
+ !CORBA::is_nil (stub->servant_orb_var ().in ())
+ && stub->optimize_collocation_objects ()
+ && obj->_is_collocated ();
+
+ ACE_NEW_RETURN (proxy,
+ T (obj->_stubobj (),
+ collocated,
+ obj->_servant ()),
+ T::_nil ());
+ }
+ else
+ {
+ proxy = dynamic_cast<T *> (obj);
+ if (proxy)
+ proxy->_add_ref ();
+ }
}
- else
+ catch (const ::CORBA::Exception&)
{
- proxy = dynamic_cast<T *> (obj);
- if (proxy)
- proxy->_add_ref ();
}
return proxy;
diff --git a/TAO/tao/Valuetype/AbstractBase_T.h b/TAO/tao/Valuetype/AbstractBase_T.h
index 3d088a6645b..54eb936be9f 100644
--- a/TAO/tao/Valuetype/AbstractBase_T.h
+++ b/TAO/tao/Valuetype/AbstractBase_T.h
@@ -37,15 +37,9 @@ namespace TAO
typedef T *T_ptr;
static T_ptr narrow (CORBA::AbstractBase_ptr,
- const char *repo_id,
- Proxy_Broker_Factory);
+ const char *repo_id);
- static T_ptr unchecked_narrow (CORBA::AbstractBase_ptr,
- Proxy_Broker_Factory);
-
- static T_ptr unchecked_narrow (CORBA::AbstractBase_ptr,
- const char *repo_id,
- Proxy_Broker_Factory);
+ static T_ptr unchecked_narrow (CORBA::AbstractBase_ptr);
};
}
diff --git a/TAO/tao/Valuetype/ValueBase.cpp b/TAO/tao/Valuetype/ValueBase.cpp
index 0df0c235745..3c853ac06fc 100644
--- a/TAO/tao/Valuetype/ValueBase.cpp
+++ b/TAO/tao/Valuetype/ValueBase.cpp
@@ -648,7 +648,7 @@ CORBA::ValueBase::_tao_write_special_value (TAO_OutputCDR &strm,
if (TAO_debug_level > 0)
{
ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("(%P|%t)ValueBase::_tao_write_special_value found value %X - %X\n"),
+ ACE_TEXT ("(%P|%t)ValueBase::_tao_write_special_value, found value %X - %X\n"),
value, pos));
}
@@ -661,7 +661,7 @@ CORBA::ValueBase::_tao_write_special_value (TAO_OutputCDR &strm,
if (TAO_debug_level > 0)
{
ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("TAO (%P|%t) - ValueBase::_tao_write_special_value value, indirection %d\n"), offset));
+ ACE_TEXT ("TAO (%P|%t) - ValueBase::_tao_write_special_value, indirection %d\n"), offset));
}
return strm.write_long (offset);
@@ -680,7 +680,7 @@ CORBA::ValueBase::_tao_write_special_value (TAO_OutputCDR &strm,
else if (TAO_debug_level > 0)
{
ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("(%P|%t)ValueBase::_tao_marshal bound value %X - %X \n"),
+ ACE_TEXT ("TAO (%P|%t) - ValueBase::_tao_marshal, bound value %X - %X \n"),
value, strm.current()->wr_ptr()));
}
diff --git a/TAO/tao/Version.h b/TAO/tao/Version.h
index 3830eda9bc1..6d076dcb9c2 100644
--- a/TAO/tao/Version.h
+++ b/TAO/tao/Version.h
@@ -5,5 +5,5 @@
#define TAO_MAJOR_VERSION 2
#define TAO_MINOR_VERSION 0
-#define TAO_BETA_VERSION 4
-#define TAO_VERSION "2.0.4"
+#define TAO_BETA_VERSION 5
+#define TAO_VERSION "2.0.5"
diff --git a/TAO/tao/Wait_On_LF_No_Upcall.cpp b/TAO/tao/Wait_On_LF_No_Upcall.cpp
index 7396c2d1e7a..e8fe993ae51 100644
--- a/TAO/tao/Wait_On_LF_No_Upcall.cpp
+++ b/TAO/tao/Wait_On_LF_No_Upcall.cpp
@@ -6,6 +6,7 @@
#include "tao/ORB_Core.h"
#include "tao/ORB_Core_TSS_Resources.h"
#include "tao/debug.h"
+#include "tao/Leader_Follower.h"
TAO_BEGIN_VERSIONED_NAMESPACE_DECL
@@ -103,6 +104,19 @@ namespace TAO
return true;
}
+
+ int
+ Wait_On_LF_No_Upcall::defer_upcall (ACE_Event_Handler* eh)
+ {
+ if (TAO_debug_level > 6)
+ ACE_DEBUG ((LM_DEBUG,
+ "TAO (%P|%t) - Wait_On_LF_No_Upcall[%d]::defer_upcall, "
+ "deferring upcall on transport "
+ "because upcalls temporarily suspended on this thread\n",
+ this->transport_->id()));
+ return this->transport_->orb_core ()->leader_follower ().defer_event (eh);
+ }
+
}
TAO_END_VERSIONED_NAMESPACE_DECL
diff --git a/TAO/tao/Wait_On_LF_No_Upcall.h b/TAO/tao/Wait_On_LF_No_Upcall.h
index b058132529d..7bba7139470 100644
--- a/TAO/tao/Wait_On_LF_No_Upcall.h
+++ b/TAO/tao/Wait_On_LF_No_Upcall.h
@@ -54,6 +54,10 @@ namespace TAO
/*! @copydoc TAO_Wait_Strategy::can_process_upcalls() */
virtual bool can_process_upcalls (void) const;
+
+ /*! @copydoc TAO_Wait_Strategy::defer_upcall() */
+ virtual int defer_upcall (ACE_Event_Handler*);
+
};
}
diff --git a/TAO/tao/Wait_On_Leader_Follower.h b/TAO/tao/Wait_On_Leader_Follower.h
index b34255be862..c10247bb8d9 100644
--- a/TAO/tao/Wait_On_Leader_Follower.h
+++ b/TAO/tao/Wait_On_Leader_Follower.h
@@ -62,6 +62,7 @@ public:
/*! @copydoc TAO_Wait_Strategy::can_process_upcalls() */
virtual bool can_process_upcalls (void) const;
+
};
TAO_END_VERSIONED_NAMESPACE_DECL
diff --git a/TAO/tao/Wait_Strategy.cpp b/TAO/tao/Wait_Strategy.cpp
index c310221b7ad..cff977b9031 100644
--- a/TAO/tao/Wait_Strategy.cpp
+++ b/TAO/tao/Wait_Strategy.cpp
@@ -22,6 +22,12 @@ TAO_Wait_Strategy::~TAO_Wait_Strategy (void)
{
}
+int
+TAO_Wait_Strategy::defer_upcall (ACE_Event_Handler*)
+{
+ return -1;
+}
+
/*
* Hook to comment out this method in the lf wait strategy
*/
diff --git a/TAO/tao/Wait_Strategy.h b/TAO/tao/Wait_Strategy.h
index 4efc22ccaa6..78cf346fce2 100644
--- a/TAO/tao/Wait_Strategy.h
+++ b/TAO/tao/Wait_Strategy.h
@@ -32,6 +32,7 @@ TAO_BEGIN_VERSIONED_NAMESPACE_DECL
class TAO_ORB_Core;
class TAO_Transport;
class TAO_Synch_Reply_Dispatcher;
+class ACE_Event_Handler;
/**
* @class TAO_Wait_Strategy
@@ -79,6 +80,14 @@ public:
*/
virtual bool can_process_upcalls (void) const = 0;
+ /// Method to support deffering an upcall event till later in
+ /// cases where can_process_upcalls() returns false.
+ /// Some wait strategies like Wait_On_LF_No_Upcall allow an
+ /// event to be deferred at the Leader_Follower which resumes
+ /// the upcall at an opportune moment (when a new leader thread
+ /// is activated).
+ virtual int defer_upcall (ACE_Event_Handler*);
+
/// Get method for the flag
bool is_registered (void) const;
diff --git a/TAO/tao/ZIOP/ZIOP.h b/TAO/tao/ZIOP/ZIOP.h
index 7230f11651d..e0811fc084a 100644
--- a/TAO/tao/ZIOP/ZIOP.h
+++ b/TAO/tao/ZIOP/ZIOP.h
@@ -34,7 +34,7 @@ TAO_BEGIN_VERSIONED_NAMESPACE_DECL
/**
* @class TAO_ZIOP_Loader
*
- * @brief Class that loads the BiDir library.
+ * @brief Class that loads the ZIOP library.
*/
class TAO_ZIOP_Export TAO_ZIOP_Loader : public TAO_ZIOP_Adapter
diff --git a/TAO/tao/ZIOP/ZIOP.mpc b/TAO/tao/ZIOP/ZIOP.mpc
index 8670b1f52a6..8eb56e3ae18 100644
--- a/TAO/tao/ZIOP/ZIOP.mpc
+++ b/TAO/tao/ZIOP/ZIOP.mpc
@@ -6,9 +6,10 @@ project(*core_idl) : tao_versioning_idl_defaults, install {
idlflags += -Gp -Gd -Sci -SS -Sorb \
-Wb,export_macro=TAO_ZIOP_Export \
-Wb,export_include=tao/ZIOP/ziop_export.h \
+ -Wb,stub_export_file=ziop_export.h \
-Wb,include_guard=TAO_ZIOP_SAFE_INCLUDE \
-Wb,safe_include=tao/ZIOP/ZIOP.h \
- -iC tao/ZIOP
+ -iC tao/ZIOP -Gxhst
ZIOP.pidl
}
@@ -29,6 +30,7 @@ project(ZIOP) : tao_output, install, taolib, compression, pi, taoidldefaults {
Header_Files {
*.h
+ ziop_export.h
ZIOPC.h
ZIOPS.h
}
diff --git a/TAO/tao/ZIOP/ziop_export.h b/TAO/tao/ZIOP/ziop_export.h
deleted file mode 100644
index f865c230b9b..00000000000
--- a/TAO/tao/ZIOP/ziop_export.h
+++ /dev/null
@@ -1,40 +0,0 @@
-// -*- C -*-
-// $Id$
-// Definition for Win32 Export directives.
-// This file is generated automatically by generate_export_file.pl
-// ------------------------------
-#ifndef TAO_ZIOP_EXPORT_H
-#define TAO_ZIOP_EXPORT_H
-
-#include "ace/config-all.h"
-
-#if defined (TAO_AS_STATIC_LIBS)
-# if !defined (TAO_ZIOP_HAS_DLL)
-# define TAO_ZIOP_HAS_DLL 0
-# endif /* ! TAO_ZIOP_HAS_DLL */
-#else
-# if !defined (TAO_ZIOP_HAS_DLL)
-# define TAO_ZIOP_HAS_DLL 1
-# endif /* ! TAO_ZIOP_HAS_DLL */
-#endif
-
-#if defined (TAO_ZIOP_HAS_DLL) && (TAO_ZIOP_HAS_DLL == 1)
-# if defined (TAO_ZIOP_BUILD_DLL)
-# define TAO_ZIOP_Export ACE_Proper_Export_Flag
-# define TAO_ZIOP_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
-# define TAO_ZIOP_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-# else /* TAO_ZIOP_BUILD_DLL */
-# define TAO_ZIOP_Export ACE_Proper_Import_Flag
-# define TAO_ZIOP_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
-# define TAO_ZIOP_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-# endif /* TAO_ZIOP_BUILD_DLL */
-#else /* TAO_ZIOP_HAS_DLL == 1 */
-# define TAO_ZIOP_Export
-# define TAO_ZIOP_SINGLETON_DECLARATION(T)
-# define TAO_ZIOP_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
-#endif /* TAO_ZIOP_HAS_DLL == 1 */
-
-#endif /* TAO_ZIOP_EXPORT_H */
-
-// End of auto generated file.
-
diff --git a/TAO/tao/orbconf.h b/TAO/tao/orbconf.h
index 4d14a5af3a1..8e8efb4f900 100644
--- a/TAO/tao/orbconf.h
+++ b/TAO/tao/orbconf.h
@@ -885,6 +885,10 @@ enum TAO_Policy_Scope
# define TAO_HAS_SEQUENCE_ITERATORS 0
#endif
+#if !defined (TAO_DEFAULT_COLLOCATION_STRATEGY)
+# define TAO_DEFAULT_COLLOCATION_STRATEGY TAO_COLLOCATION_THRU_POA
+#endif
+
TAO_END_VERSIONED_NAMESPACE_DECL
#include /**/ "ace/post.h"
diff --git a/TAO/tao/tao.mpc b/TAO/tao/tao.mpc
index 3318978a531..e13989706e0 100644
--- a/TAO/tao/tao.mpc
+++ b/TAO/tao/tao.mpc
@@ -105,7 +105,6 @@ project(TAO) : acelib, install, tao_output, taodefaults, pidl, extra_core, taoid
Codeset_Manager_Factory_Base.cpp
Codeset_Translator_Base.cpp
Collocated_Invocation.cpp
- Collocation_Proxy_Broker.cpp
Collocation_Resolver.cpp
Connect_Strategy.cpp
Connection_Handler.cpp
@@ -252,7 +251,6 @@ project(TAO) : acelib, install, tao_output, taodefaults, pidl, extra_core, taoid
RequestInterceptor_Adapter.cpp
Resource_Factory.cpp
Resume_Handle.cpp
- Resume_Handle_Deferred.cpp
Server_Strategy_Factory.cpp
ServerRequestInterceptor_Adapter.cpp
ServerRequestInterceptor_Adapter_Factory.cpp
@@ -361,7 +359,6 @@ project(TAO) : acelib, install, tao_output, taodefaults, pidl, extra_core, taoid
Codeset_Manager_Factory_Base.h
Codeset_Translator_Base.h
Collocated_Invocation.h
- Collocation_Proxy_Broker.h
Collocation_Resolver.h
Collocation_Strategy.h
Condition.h
@@ -555,7 +552,6 @@ project(TAO) : acelib, install, tao_output, taodefaults, pidl, extra_core, taoid
RequestInterceptor_Adapter.h
Resource_Factory.h
Resume_Handle.h
- Resume_Handle_Deferred.h
Seq_Out_T.h
Seq_Var_T.h
Sequence_T.h
diff --git a/TAO/tests/AMH_Oneway/server.cpp b/TAO/tests/AMH_Oneway/server.cpp
index c2db9616e73..d680776d9f6 100644
--- a/TAO/tests/AMH_Oneway/server.cpp
+++ b/TAO/tests/AMH_Oneway/server.cpp
@@ -81,7 +81,7 @@ public:
ST_AMH_Server (int *argc, ACE_TCHAR **argv);
virtual ~ST_AMH_Server ();
- /// ORB inititalisation stuff
+ /// ORB initialization stuff
int start_orb_and_poa (void);
/// register the servant with the poa
@@ -91,7 +91,7 @@ public:
virtual void run_event_loop ();
/// do post-run cleanup. This is necessary here because the servant
- /// supplied to regiser_servant happens to be allocated on the
+ /// supplied to register_servant happens to be allocated on the
/// stack, and done after the instance of ST_AMH_Server is
/// created. This leads to the servant being destroyed before this
/// class's destructor. And alternative solution would be allocate
@@ -100,7 +100,7 @@ public:
virtual void cleanup ();
public:
- /// Accesor method (for servants) to the initialised ORB
+ /// Accesor method (for servants) to the initialized ORB
CORBA::ORB_ptr orb () { return this->orb_.in (); }
protected:
diff --git a/TAO/tests/AMI/README b/TAO/tests/AMI/README
index 04117a71d7d..40368fbdc4a 100644
--- a/TAO/tests/AMI/README
+++ b/TAO/tests/AMI/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
This is a simple test for AMI callback model.
@@ -8,7 +8,7 @@ Use TAO_HAS_CORBA_MESSAGING
and TAO_HAS_AMI_CALLBACK
to compile TAO. This enables the AMI code in it.
-Use -GC on the TAO IDL compiler to generate code for AMI callbacks.
+Use -GC on the TAO IDL compiler to generate code for AMI callbacks.
Usage:
=====
diff --git a/TAO/tests/AMI/exclusive.conf.xml b/TAO/tests/AMI/exclusive.conf.xml
index 33db7f50d83..9cc9202775a 100644
--- a/TAO/tests/AMI/exclusive.conf.xml
+++ b/TAO/tests/AMI/exclusive.conf.xml
@@ -1,5 +1,8 @@
<?xml version='1.0'?>
<!-- Converted from ./tests/AMI/exclusive.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<static id="Client_Strategy_Factory" params="-ORBTransportMuxStrategy EXCLUSIVE -ORBclientconnectionhandler ST"/>
</ACE_Svc_Conf>
diff --git a/TAO/tests/AMI/muxed.conf.xml b/TAO/tests/AMI/muxed.conf.xml
index cf063034ce0..5700476defd 100644
--- a/TAO/tests/AMI/muxed.conf.xml
+++ b/TAO/tests/AMI/muxed.conf.xml
@@ -1,5 +1,8 @@
<?xml version='1.0'?>
<!-- Converted from ./tests/AMI/muxed.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<static id="Client_Strategy_Factory" params="-ORBTransportMuxStrategy MUXED -ORBClientConnectionHandler ST"/>
</ACE_Svc_Conf>
diff --git a/TAO/tests/AMI/server.conf.xml b/TAO/tests/AMI/server.conf.xml
index 8a4700799b4..413a4c4833b 100644
--- a/TAO/tests/AMI/server.conf.xml
+++ b/TAO/tests/AMI/server.conf.xml
@@ -1,6 +1,7 @@
<?xml version='1.0'?>
<!-- Converted from ./tests/AMI/server.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
<!-- $Id$ -->
<!-- -->
<static id="Server_Strategy_Factory" params="-ORBconcurrency thread-per-connection"/>
diff --git a/TAO/tests/AMI/simple_client.cpp b/TAO/tests/AMI/simple_client.cpp
index 0f1ec108585..c7860c02cb5 100644
--- a/TAO/tests/AMI/simple_client.cpp
+++ b/TAO/tests/AMI/simple_client.cpp
@@ -263,10 +263,6 @@ ACE_TMAIN(int argc, ACE_TCHAR *argv[])
"Issuing a synchronous method to collect the AMI replies\n"));
}
- //while (orb->work_pending())
- // orb->perform_work ();
-
-
CORBA::Long number = ami_test_var->foo (l,
l,
"Let's talk SMI.");
diff --git a/TAO/tests/AMI_Buffering/README b/TAO/tests/AMI_Buffering/README
index 7ab74c58127..b84e8e509ee 100644
--- a/TAO/tests/AMI_Buffering/README
+++ b/TAO/tests/AMI_Buffering/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page AMI_Buffering Test README File
A regression test for AMI buffering. The test verifies
diff --git a/TAO/tests/AMI_Timeouts/README b/TAO/tests/AMI_Timeouts/README
index e7759a0d5f7..8e813f48778 100644
--- a/TAO/tests/AMI_Timeouts/README
+++ b/TAO/tests/AMI_Timeouts/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
This is a simple test for AMI callback model in combination with
@@ -9,7 +9,7 @@ Use TAO_HAS_CORBA_MESSAGING
and TAO_HAS_AMI_CALLBACK
to compile TAO. This enables the AMI code in it.
-Use -GC on the TAO IDL compiler to generate code for AMI callbacks.
+Use -GC on the TAO IDL compiler to generate code for AMI callbacks.
Usage:
=====
diff --git a/TAO/tests/AMI_Timeouts/svc.conf.xml b/TAO/tests/AMI_Timeouts/svc.conf.xml
index 5b30b8bd1ad..da7b72a0978 100644
--- a/TAO/tests/AMI_Timeouts/svc.conf.xml
+++ b/TAO/tests/AMI_Timeouts/svc.conf.xml
@@ -1,5 +1,8 @@
<?xml version='1.0'?>
<!-- Converted from ./tests/AMI_Timeouts/svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<static id="Client_Strategy_Factory" params="-ORBTransportMuxStrategy EXCLUSIVE -ORBclientconnectionhandler MT"/>
</ACE_Svc_Conf>
diff --git a/TAO/tests/Abstract_Interface/README b/TAO/tests/Abstract_Interface/README
index f4607cafe2a..68542087175 100644
--- a/TAO/tests/Abstract_Interface/README
+++ b/TAO/tests/Abstract_Interface/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
@@ -22,7 +22,7 @@ directly on the abstract interface by the client. Then the interface
itself is extracted and cast to the derived type. Finally, both the
base class and the derived class operations are called by the client.
-In the final test, an operation called on the abstract interface
+In the final test, an operation called on the abstract interface
is made to throw a user exception deliberately to test exception
handling.
@@ -45,5 +45,5 @@ Other client command line options:
-e Test exception handling only
The last three options are mutually exclusive and will override
-any previous test selection options. The default behavior is to run
+any previous test selection options. The default behavior is to run
all three tests. \ No newline at end of file
diff --git a/TAO/tests/Alt_Mapping/README b/TAO/tests/Alt_Mapping/README
index a1aae3b61a1..b34fd7c769c 100644
--- a/TAO/tests/Alt_Mapping/README
+++ b/TAO/tests/Alt_Mapping/README
@@ -30,7 +30,7 @@ To run the server, type
arguments to ORB_init start with the letters -ORB. Please
see TAO documentattion on all the supported arguments
- -d for debugging.
+ -d for debugging.
-o <ior_output_file> for outputting the servant IOR to a file.
To run the client, type
@@ -42,7 +42,7 @@ To run the client, type
[-d] debugging
[-n loopcount] number of times to run the test
[-f servant-IOR-file] reads the servant-IOR from the
- specified file.
+ specified file.
[-k Param_Test-obj-ref-key] object key of Param_Test object
[-i invocation (sii/dii)] default is static invocation
interface. To use DII, type
@@ -58,7 +58,7 @@ To run the client, type
1. Using the -f option to read the IOR from a file.
- 2. Using the -k option to read the IOR from the
+ 2. Using the -k option to read the IOR from the
command line.
run_test.pl:
@@ -66,8 +66,8 @@ run_test.pl:
There is a perl script in this directory named run_test.pl to
test all the types. It starts the server first and then runs
the client with the different data type parameters. The
- arguments it takes are:
-
+ arguments it takes are:
+
-n num -- runs the client num times (default is 5)
-d -- runs each in debug mode
-onewin -- keeps all tests in one window on NT
diff --git a/TAO/tests/AlternateIIOP/README b/TAO/tests/AlternateIIOP/README
index da08371ff0e..63b3163e04c 100644
--- a/TAO/tests/AlternateIIOP/README
+++ b/TAO/tests/AlternateIIOP/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page AlternateIIOP Test README File
This test uses the binaries from the Hello test, but builds an
diff --git a/TAO/tests/Any/Recursive/README b/TAO/tests/Any/Recursive/README
index 374abe6ed40..3bcb5afd415 100644
--- a/TAO/tests/Any/Recursive/README
+++ b/TAO/tests/Any/Recursive/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
/**
diff --git a/TAO/tests/BiDirectional/README b/TAO/tests/BiDirectional/README
index d9e85d7900b..f6d87642d2e 100644
--- a/TAO/tests/BiDirectional/README
+++ b/TAO/tests/BiDirectional/README
@@ -1,10 +1,10 @@
-# $Id$
+$Id$
This is a test that exercises the birectional GIOP connection
implementation in TAO. Start the server like this
$ server -o <file.ior> -i <no_iterations>
-$ client -k file://<file.ior> -x
+$ client -k file://<file.ior> -x
The server starts up writing the IOR to the file. The client then
starts up, creates its own object and passes the reference to the
@@ -16,4 +16,4 @@ connection the server would crash itself.
To test the fix for bug 3282, run run_test_bug3282.pl or use the commands
$ server -ORBEndpoint iiop://localhost -o <file.ior> -i <no_iterations>
-$ client -k file://<file.ior> -x
+$ client -k file://<file.ior> -x
diff --git a/TAO/tests/BiDirectional_DelayedUpcall/README b/TAO/tests/BiDirectional_DelayedUpcall/README
index 60497253309..d995abc451e 100644
--- a/TAO/tests/BiDirectional_DelayedUpcall/README
+++ b/TAO/tests/BiDirectional_DelayedUpcall/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This test is similar to the $TAO_ROOT/tests/BiDirectional test. The
only difference being that the server after it has received the upcall
diff --git a/TAO/tests/BiDirectional_MultipleORB/README b/TAO/tests/BiDirectional_MultipleORB/README
index 2d26bcc817e..aaeca1ead16 100644
--- a/TAO/tests/BiDirectional_MultipleORB/README
+++ b/TAO/tests/BiDirectional_MultipleORB/README
@@ -1,16 +1,16 @@
-# $Id$
+$Id$
This is a test that creates a birectional GIOP policy for a POA and then
attempts to repeat this, after destructing and re-creating the ORB. This used to
-fail by breaking an assertion, because the second ORB was tryig to register a policy
-validator object instance, which lingered since the time the first ORB was created.
+fail by breaking an assertion, because the second ORB was tryig to register a policy
+validator object instance, which lingered since the time the first ORB was created.
The validators are chained in a linked list, and any attempt to register a new one,
which already points to another, is considered an error:
ACE_ASSERT: (24189|4143901376) file Policy_Validator.cpp, line 28 assertion failed for 'validator->next_ == 0'.Aborting...
-In other instances it broke with SEGV, when trying to access an previously deleted
+In other instances it broke with SEGV, when trying to access an previously deleted
bi-dir policy validator.
For additional detail reffer to RT4667 and RT4672.
diff --git a/TAO/tests/BiDirectional_NestedUpcall/README b/TAO/tests/BiDirectional_NestedUpcall/README
index c40ad7424fd..dffdad1bd9c 100644
--- a/TAO/tests/BiDirectional_NestedUpcall/README
+++ b/TAO/tests/BiDirectional_NestedUpcall/README
@@ -1,7 +1,7 @@
-# $Id$
+$Id$
This test is similar to the $TAO_ROOT/tests/BiDirectional test. The
only difference being that the server as a part of the upcall sends a
-bunch of remote calls, to show some nested upcall behaviour.
+bunch of remote calls, to show some nested upcall behaviour.
diff --git a/TAO/tests/Big_AMI/README b/TAO/tests/Big_AMI/README
index 425c477cee9..bec17dd59f2 100644
--- a/TAO/tests/Big_AMI/README
+++ b/TAO/tests/Big_AMI/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
This is a simple test for testing big AMI calls.
diff --git a/TAO/tests/Big_Oneways/README b/TAO/tests/Big_Oneways/README
index ed389e9009c..a2d492aebf3 100644
--- a/TAO/tests/Big_Oneways/README
+++ b/TAO/tests/Big_Oneways/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Big_Oneways Test README File
This is a stress test for the non-blocking I/O features in the
diff --git a/TAO/tests/Big_Reply/README b/TAO/tests/Big_Reply/README
index cc4ea07c8c9..79cd1ad4d62 100644
--- a/TAO/tests/Big_Reply/README
+++ b/TAO/tests/Big_Reply/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Muxing Test README File
A stress test for receiving large replies. This test is a part
diff --git a/TAO/tests/Big_Request_Muxing/README b/TAO/tests/Big_Request_Muxing/README
index 227c7d2ce71..d3c2812fa5a 100644
--- a/TAO/tests/Big_Request_Muxing/README
+++ b/TAO/tests/Big_Request_Muxing/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Big_Request_Muxing Test README File
This is a stress test for the non-blocking I/O features in the
diff --git a/TAO/tests/Big_Twoways/README b/TAO/tests/Big_Twoways/README
index ed389e9009c..a2d492aebf3 100644
--- a/TAO/tests/Big_Twoways/README
+++ b/TAO/tests/Big_Twoways/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Big_Oneways Test README File
This is a stress test for the non-blocking I/O features in the
diff --git a/TAO/tests/Blocking_Sync_None/README b/TAO/tests/Blocking_Sync_None/README
index 8f6feb99e07..8be52a97d51 100644
--- a/TAO/tests/Blocking_Sync_None/README
+++ b/TAO/tests/Blocking_Sync_None/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Blocking_Sync_None Test README File
A regression test for (un)reliable oneways. The test verifies
diff --git a/TAO/tests/Bug_1020_Basic_Regression/README b/TAO/tests/Bug_1020_Basic_Regression/README
index d20377f2685..586baa7bad0 100644
--- a/TAO/tests/Bug_1020_Basic_Regression/README
+++ b/TAO/tests/Bug_1020_Basic_Regression/README
@@ -1,11 +1,13 @@
/**
+$Id$
+
@page Bug_1020_Basic_Regression Test README File
The simplest possible test BUG 1020 regression for TAO. This
is a very simple test for TAO.
-
+
The test does the following
- A server waits for a request from the client
@@ -19,13 +21,13 @@ is a very simple test for TAO.
reference it got from the client.
- The client threads after processing a few invocation abort, there by
- crashing the client.
+ crashing the client.
- The server should survive the crash
- The test passes sequence<octet> between client and server in either
direction with the purpose of ensuring that the tranport gets flow
- controlled.
+ controlled.
To run the test
diff --git a/TAO/tests/Bug_1330_Regression/README b/TAO/tests/Bug_1330_Regression/README
index d1f531018e3..a548f5001e5 100644
--- a/TAO/tests/Bug_1330_Regression/README
+++ b/TAO/tests/Bug_1330_Regression/README
@@ -1,3 +1,5 @@
+$Id$
+
This test contains regression tests for fixes to bugs #1394 and #1395.
See the bugzilla records for these bugs for details. \ No newline at end of file
diff --git a/TAO/tests/Bug_1330_Regression/Test.idl b/TAO/tests/Bug_1330_Regression/Test.idl
index cf161d304ee..c4d2bf46647 100644
--- a/TAO/tests/Bug_1330_Regression/Test.idl
+++ b/TAO/tests/Bug_1330_Regression/Test.idl
@@ -4,5 +4,7 @@
interface Test
{
- void test_method();
+ void test_method();
+
+ oneway void shutdown ();
};
diff --git a/TAO/tests/Bug_1330_Regression/Test_i.cpp b/TAO/tests/Bug_1330_Regression/Test_i.cpp
index ff714f3bbd6..ef2e83a8dcd 100644
--- a/TAO/tests/Bug_1330_Regression/Test_i.cpp
+++ b/TAO/tests/Bug_1330_Regression/Test_i.cpp
@@ -3,18 +3,22 @@
//
#include "Test_i.h"
-Test_i::Test_i()
+Test_i::Test_i(CORBA::ORB_ptr orb)
+ : orb_ (CORBA::ORB::_duplicate (orb))
{
- // Noop
}
Test_i::~Test_i()
{
- // Noop
}
void
Test_i::test_method (void)
{
- // Noop
+}
+
+void
+Test_i::shutdown (void)
+{
+ this->orb_->shutdown (0);
}
diff --git a/TAO/tests/Bug_1330_Regression/Test_i.h b/TAO/tests/Bug_1330_Regression/Test_i.h
index 7c5d11c210e..e1f38a78323 100644
--- a/TAO/tests/Bug_1330_Regression/Test_i.h
+++ b/TAO/tests/Bug_1330_Regression/Test_i.h
@@ -11,15 +11,21 @@
class Test_i: public POA_Test
{
public:
- /// Constructor
- Test_i (void);
+ /// Constructor
+ Test_i (CORBA::ORB_ptr orb);
- /// Destructor
- ~Test_i (void);
+ /// Destructor
+ ~Test_i (void);
- /// A method
- void test_method(void);
+ /// A method
+ virtual void test_method(void);
+ virtual void shutdown (void);
+
+private:
+ /// Use an ORB reference to conver strings to objects and shutdown
+ /// the application.
+ CORBA::ORB_var orb_;
};
#endif /* ! BUG_1330_REGRESSION_TEST_I_H */
diff --git a/TAO/tests/Bug_1330_Regression/client.cpp b/TAO/tests/Bug_1330_Regression/client.cpp
index 4a0ab7db26d..8613d306f4f 100644
--- a/TAO/tests/Bug_1330_Regression/client.cpp
+++ b/TAO/tests/Bug_1330_Regression/client.cpp
@@ -5,12 +5,12 @@
#include "ace/Get_Opt.h"
const ACE_TCHAR *ior = ACE_TEXT("corbaloc:iiop:localhost:12345/Name\\2dwith\\2dhyphens");
-int shutdown_server = 0;
+bool shutdown_server = false;
int
parse_args (int argc, ACE_TCHAR *argv[])
{
- ACE_Get_Opt get_opts (argc, argv, ACE_TEXT("k:"));
+ ACE_Get_Opt get_opts (argc, argv, ACE_TEXT("sk:"));
int c;
while ((c = get_opts ()) != -1)
@@ -20,7 +20,7 @@ parse_args (int argc, ACE_TCHAR *argv[])
ior = get_opts.opt_arg ();
break;
case 's':
- shutdown_server = 1;
+ shutdown_server = true;
break;
case '?':
default:
@@ -65,12 +65,16 @@ ACE_TMAIN(int argc, ACE_TCHAR *argv[])
server->test_method();
result =0;
+ if (shutdown_server)
+ {
+ server->shutdown ();
+ }
orb->destroy ();
}
catch (const CORBA::Exception&)
{
- result =1;
+ result = 1;
}
return result;
diff --git a/TAO/tests/Bug_1330_Regression/run_test.pl b/TAO/tests/Bug_1330_Regression/run_test.pl
index 84dd57fcc9d..b0a809e0ccd 100755
--- a/TAO/tests/Bug_1330_Regression/run_test.pl
+++ b/TAO/tests/Bug_1330_Regression/run_test.pl
@@ -35,10 +35,10 @@ $SV = $server->CreateProcess ("server",
"-o $server_iorfile");
$CL1 = $client->CreateProcess ("client",
- "-k \"corbaloc:iiop:$TARGETHOSTNAME:$port/Name\\2dwith\\2dhyphens\"");
+ "-ORBdebuglevel $debug_level -k \"corbaloc:iiop:$TARGETHOSTNAME:$port/Name\\2dwith\\2dhyphens\"");
$CL2 = $client->CreateProcess ("client",
- "-k corbaloc:iiop:$TARGETHOSTNAME:$port/Name%2dwith%2dhyphens");
+ "-ORBdebuglevel $debug_level -s -k corbaloc:iiop:$TARGETHOSTNAME:$port/Name%2dwith%2dhyphens");
$server_status = $SV->Spawn ();
@@ -69,7 +69,7 @@ if ($client_status != 0) {
$status = 1;
}
-$server_status = $SV->TerminateWaitKill ($server->ProcessStopWaitInterval());
+$server_status = $SV->WaitKill ($server->ProcessStopWaitInterval());
if ($server_status != 0) {
print STDERR "ERROR: server returned $server_status\n";
diff --git a/TAO/tests/Bug_1330_Regression/server.cpp b/TAO/tests/Bug_1330_Regression/server.cpp
index 1d586aa6046..e76e80c4759 100644
--- a/TAO/tests/Bug_1330_Regression/server.cpp
+++ b/TAO/tests/Bug_1330_Regression/server.cpp
@@ -65,10 +65,14 @@ ACE_TMAIN(int argc, ACE_TCHAR *argv[])
if (parse_args (argc, argv) != 0)
return 1;
- Test_i server_impl;
+ Test_i *server_impl = 0;
+ ACE_NEW_RETURN (server_impl,
+ Test_i (orb.in ()),
+ 1);
+ PortableServer::ServantBase_var owner_transfer(server_impl);
PortableServer::ObjectId_var id =
- root_poa->activate_object (&server_impl);
+ root_poa->activate_object (server_impl);
CORBA::Object_var object = root_poa->id_to_reference (id.in ());
@@ -85,26 +89,27 @@ ACE_TMAIN(int argc, ACE_TCHAR *argv[])
adapter->bind("Name-with-hyphens", ior.in());
-
FILE *output_file= ACE_OS::fopen (ior_file, "w");
if (output_file == 0)
ACE_ERROR_RETURN ((LM_ERROR,
"SERVER (%P): Cannot open output file "
- "for writing IOR: %C",
- "server.ior"),
+ "for writing IOR: %s",
+ ior_file),
1);
ACE_OS::fprintf (output_file, "%s", ior.in ());
ACE_OS::fclose (output_file);
ACE_DEBUG ((LM_DEBUG,
- "SERVER (%P): Activated as file://%C\n",
- "server.ior"));
+ "SERVER (%P): Activated as file://%s\n",
+ ior_file));
poa_manager->activate();
orb->run ();
root_poa->destroy (1, 1);
+
+ orb->destroy ();
}
catch (const CORBA::Exception& ex)
{
diff --git a/TAO/tests/Bug_1476_Regression/README b/TAO/tests/Bug_1476_Regression/README
index f9fcd2ff7f8..cae8698aa94 100644
--- a/TAO/tests/Bug_1476_Regression/README
+++ b/TAO/tests/Bug_1476_Regression/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Bug_1476_Regersion Test README File
This is a test for bug 1476.
diff --git a/TAO/tests/Bug_1476_Test/README b/TAO/tests/Bug_1476_Test/README
index 2c6a85f925c..f4f4e42ce3c 100644
--- a/TAO/tests/Bug_1476_Test/README
+++ b/TAO/tests/Bug_1476_Test/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Bug_1476_Test Test README File
This test is built on the Hello test. The client pings
diff --git a/TAO/tests/Bug_1551_Regression/README b/TAO/tests/Bug_1551_Regression/README
index ffecd8abf8d..e94bf8d555f 100644
--- a/TAO/tests/Bug_1551_Regression/README
+++ b/TAO/tests/Bug_1551_Regression/README
@@ -1,3 +1,5 @@
+$Id$
+
A regression test for [BUGID:1551].
The ORB might deadlock if one tries send messages while handling
diff --git a/TAO/tests/Bug_1627_Regression/README b/TAO/tests/Bug_1627_Regression/README
index ac9a014b526..69c4743dcf8 100644
--- a/TAO/tests/Bug_1627_Regression/README
+++ b/TAO/tests/Bug_1627_Regression/README
@@ -1,3 +1,5 @@
+$Id$
+
This is an almost exact copy of the test for TAO Bug 1330 (Prism RT Bug 324).
It is meant to provide regression for Prism RT Bug 596:
diff --git a/TAO/tests/Bug_1635_Regression/README b/TAO/tests/Bug_1635_Regression/README
index 96331bc4cb6..ac311fec5b4 100644
--- a/TAO/tests/Bug_1635_Regression/README
+++ b/TAO/tests/Bug_1635_Regression/README
@@ -1,3 +1,5 @@
+$Id$
+
This test provides regression for Bug 1635:
"Enhancement - provide date and time stamping to the TAO log file"
diff --git a/TAO/tests/Bug_1636_Regression/README b/TAO/tests/Bug_1636_Regression/README
index 1a653378856..e9417c4dd20 100644
--- a/TAO/tests/Bug_1636_Regression/README
+++ b/TAO/tests/Bug_1636_Regression/README
@@ -1,3 +1,5 @@
+$Id$
+
An Any is populated with a union whose member is not empty.
Call dynAny->from_any (Any);
to put the Any'd union into a DynAny object.
diff --git a/TAO/tests/Bug_2119_Regression/README b/TAO/tests/Bug_2119_Regression/README
index ce1609a67e5..2a872eacadb 100644
--- a/TAO/tests/Bug_2119_Regression/README
+++ b/TAO/tests/Bug_2119_Regression/README
@@ -1,3 +1,5 @@
+$Id$
+
This test checks that the code generated from IDL defining a valuetype with a private anonymous sequence type field can be compiled.
See the ticket for details. If it builds it's worked. \ No newline at end of file
diff --git a/TAO/tests/Bug_2122_Regression/README b/TAO/tests/Bug_2122_Regression/README
index 56594891fda..c0f7a859745 100644
--- a/TAO/tests/Bug_2122_Regression/README
+++ b/TAO/tests/Bug_2122_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
There is nothing to run for this test. It passes if the generated code
compiles.
diff --git a/TAO/tests/Bug_2124_Regression/README b/TAO/tests/Bug_2124_Regression/README
index 56594891fda..c0f7a859745 100644
--- a/TAO/tests/Bug_2124_Regression/README
+++ b/TAO/tests/Bug_2124_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
There is nothing to run for this test. It passes if the generated code
compiles.
diff --git a/TAO/tests/Bug_2126_Regression/README b/TAO/tests/Bug_2126_Regression/README
index 56594891fda..c0f7a859745 100644
--- a/TAO/tests/Bug_2126_Regression/README
+++ b/TAO/tests/Bug_2126_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
There is nothing to run for this test. It passes if the generated code
compiles.
diff --git a/TAO/tests/Bug_2134_Regression/README b/TAO/tests/Bug_2134_Regression/README
index e8164d894ef..5679a46bf59 100644
--- a/TAO/tests/Bug_2134_Regression/README
+++ b/TAO/tests/Bug_2134_Regression/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This test checks that a collocated object ref bound into the local IOR table can be used.
diff --git a/TAO/tests/Bug_2144_Regression/README b/TAO/tests/Bug_2144_Regression/README
index 78e177a24c7..a893cd6aa5d 100644
--- a/TAO/tests/Bug_2144_Regression/README
+++ b/TAO/tests/Bug_2144_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
There is nothing to run for this test. It passes if the generated code
-compiles. See bugzilla #2144.
+compiles. See bugzilla #2144.
diff --git a/TAO/tests/Bug_2174_Regression/README b/TAO/tests/Bug_2174_Regression/README
index 53ae592673c..d619c08f327 100644
--- a/TAO/tests/Bug_2174_Regression/README
+++ b/TAO/tests/Bug_2174_Regression/README
@@ -1,3 +1,5 @@
+$Id$
+
This test contains regression tests for fixes to bug #2174
"Object::_non_existent never returns true, but raises OBJECT_NOT_EXIST"
See the bugzilla record for details.
diff --git a/TAO/tests/Bug_2183_Regression/README b/TAO/tests/Bug_2183_Regression/README
index 4e54c27822b..2cde5307d5c 100644
--- a/TAO/tests/Bug_2183_Regression/README
+++ b/TAO/tests/Bug_2183_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This test is that old chestnut the Hello World example with a slight twist.
diff --git a/TAO/tests/Bug_2186_Regression/README b/TAO/tests/Bug_2186_Regression/README
index 3cd6316fe16..8540693a6bb 100644
--- a/TAO/tests/Bug_2186_Regression/README
+++ b/TAO/tests/Bug_2186_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This test is the old fave TAO/tests/Hello with some minor(ish) differences.
diff --git a/TAO/tests/Bug_2241_Regression/Client_Task.cpp b/TAO/tests/Bug_2241_Regression/Client_Task.cpp
index e39e0d96191..a4fe1dbbe2c 100644
--- a/TAO/tests/Bug_2241_Regression/Client_Task.cpp
+++ b/TAO/tests/Bug_2241_Regression/Client_Task.cpp
@@ -18,11 +18,11 @@ Client_Task::Client_Task (const ACE_TCHAR *ior,
int
Client_Task::svc (void)
{
+ CORBA::Boolean exception = false;
try
{
CORBA::Object_var tmp =
this->corb_->string_to_object (input_);
-
Test::Hello_var hello =
Test::Hello::_narrow(tmp.in ());
@@ -33,21 +33,32 @@ Client_Task::svc (void)
input_),
1);
}
+ try
+ {
+ CORBA::String_var the_string = hello->get_string ();
- CORBA::String_var the_string =
- hello->get_string ();
-
- ACE_DEBUG ((LM_DEBUG, "(%P|%t) - string returned <%C>\n",
- the_string.in ()));
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) - string returned <%C>\n",
+ the_string.in ()));
- hello->shutdown ();
+ hello->shutdown ();
+ }
+ catch (CORBA::INTERNAL)
+ {
+ exception = true;
+ ACE_DEBUG ((LM_DEBUG, "OK: Client_Task Expected exception received\n"));
+ corb_->destroy ();
+ return 0;
+ }
}
catch (const CORBA::Exception& ex)
{
ex._tao_print_exception ("Exception caught:");
return 1;
}
-
+ if (!exception)
+ {
+ ACE_ERROR ((LM_ERROR, "(ERROR: Client_Task::svc Expected exception not received\n"));
+ }
return 0;
}
diff --git a/TAO/tests/Bug_2241_Regression/Hello.cpp b/TAO/tests/Bug_2241_Regression/Hello.cpp
index cabcd9145d9..fa28f2a6135 100644
--- a/TAO/tests/Bug_2241_Regression/Hello.cpp
+++ b/TAO/tests/Bug_2241_Regression/Hello.cpp
@@ -16,42 +16,8 @@
char *
Hello::get_string (void)
{
- ACE_DEBUG ((LM_DEBUG,
- "(%P|%t) Upcall in process ..\n"));
-
- // Use portable thread IDs
- ACE_Thread_ID self_ID;
- ACE_Thread_ID this_ID;
- this_ID.id(this->thr_id_);
-
- if (self_ID == this_ID)
- {
- if (this->orb_->orb_core ()->optimize_collocation_objects () &&
- this->orb_->orb_core ()->use_global_collocation ())
- {
- ACE_ERROR ((LM_ERROR,
- "(%P|%t) ERROR: A remote call has been made "
- " exiting ..\n"));
- ACE_OS::abort ();
- }
- else if (this->orb_->orb_core ()->optimize_collocation_objects () &&
- this->orb_->orb_core ()->use_global_collocation () == 0)
- {
- TAO::ORB_Table * const orb_table =
- TAO::ORB_Table::instance ();
-
- TAO_ORB_Core_Auto_Ptr tmp (orb_table->find ("server_orb"));
- if (tmp.get () == 0)
- {
- // We are running on a single ORB and this is an error.
- ACE_ERROR ((LM_ERROR,
- "(%P|%t) ERROR: A remote call has been made "
- " with a single ORB "
- " exiting ..\n"));
- ACE_OS::abort ();
- }
- }
- }
+ ACE_ERROR ((LM_ERROR,
+ "(%P|%t) ERROR: Unexpected Upcall in process ..\n"));
return CORBA::string_dup ("Hello there!");
}
diff --git a/TAO/tests/Bug_2241_Regression/README b/TAO/tests/Bug_2241_Regression/README
new file mode 100644
index 00000000000..f1822ea4262
--- /dev/null
+++ b/TAO/tests/Bug_2241_Regression/README
@@ -0,0 +1,6 @@
+// $Id$
+
+This test is build without idlflag -Gd, so Direct collocation isn't enabled.
+Running this test with -ORBCollocationStrategy 'direct' should result in an Exception.
+
+
diff --git a/TAO/tests/Bug_2241_Regression/run_test.pl b/TAO/tests/Bug_2241_Regression/run_test.pl
index e9c473e8341..4cc8f95201a 100755
--- a/TAO/tests/Bug_2241_Regression/run_test.pl
+++ b/TAO/tests/Bug_2241_Regression/run_test.pl
@@ -18,36 +18,6 @@ $status = 0;
$SV = $server->CreateProcess ("Bug_2241_Regression");
-print STDERR "======== Running in Default Mode \n";
-$SV->Arguments ("-o $server_iorfile -k file://$server_iorfile");
-$sv = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
-
-if ($sv != 0) {
- print STDERR "ERROR in Collocated_Test\n";
- $status = 1;
-}
-$server->DeleteFile($iorbase);
-
-print STDERR "======== Running with global ORBCollocationStrategy\n";
-$SV->Arguments ("-o $server_iorfile -k file://$server_iorfile -ORBCollocation global");
-$sv = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
-
-if ($sv != 0) {
- print STDERR "ERROR in Collocated_Test\n";
- $status = 1;
-}
-$server->DeleteFile($iorbase);
-
-print STDERR "======== Running with global ORBCollocationStrategy thru_poa\n";
-$SV->Arguments ("-o $server_iorfile -k file://$server_iorfile -ORBCollocation global -ORBCollocationStrategy thru_poa");
-$sv = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
-
-if ($sv != 0) {
- print STDERR "ERROR in Collocated_Test\n";
- $status = 1;
-}
-$server->DeleteFile($iorbase);
-
print STDERR "======== Running with -ORBCollocation global -ORBCollocationStrategy direct \n";
$SV->Arguments ("-o $server_iorfile -k file://$server_iorfile -ORBCollocation global -ORBCollocationStrategy direct");
$sv = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
diff --git a/TAO/tests/Bug_2243_Regression/README b/TAO/tests/Bug_2243_Regression/README
index b44e9b0bae8..683bd294df1 100644
--- a/TAO/tests/Bug_2243_Regression/README
+++ b/TAO/tests/Bug_2243_Regression/README
@@ -1,6 +1,8 @@
+$Id$
+
This test contains regression tests for fixes to bug #2243
ORB::object_to_string() returns NULL
-See the bugzilla record for details. This test is derived
+See the bugzilla record for details. This test is derived
from, and based upon, the ORB_init test.
diff --git a/TAO/tests/Bug_2289_Regression/Bug_2289_Regression.mpc b/TAO/tests/Bug_2289_Regression/Bug_2289_Regression.mpc
index 960c4f67ad2..cf4dc3f81cb 100644
--- a/TAO/tests/Bug_2289_Regression/Bug_2289_Regression.mpc
+++ b/TAO/tests/Bug_2289_Regression/Bug_2289_Regression.mpc
@@ -2,7 +2,7 @@
// $Id$
project(*idl): taoidldefaults {
- idlflags += -Gp -Gd -Sa -St
+ idlflags += -Gp -Gd
IDL_Files {
Test.idl
}
diff --git a/TAO/tests/Bug_2289_Regression/README b/TAO/tests/Bug_2289_Regression/README
index 0e4df56f029..a0fc4c1126e 100644
--- a/TAO/tests/Bug_2289_Regression/README
+++ b/TAO/tests/Bug_2289_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This test checks that collocation optimisation takes effect after a location forward is received to an in process servant.
diff --git a/TAO/tests/Bug_2328_Regression/README b/TAO/tests/Bug_2328_Regression/README
index 53f14a09bed..4ba9af347c7 100644
--- a/TAO/tests/Bug_2328_Regression/README
+++ b/TAO/tests/Bug_2328_Regression/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Bug_2328_Regression README File
This test sends 3 strings to the server. The server is using the codeset
diff --git a/TAO/tests/Bug_2375_Regression/README b/TAO/tests/Bug_2375_Regression/README
index 97b642530a1..6c8520204c6 100644
--- a/TAO/tests/Bug_2375_Regression/README
+++ b/TAO/tests/Bug_2375_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
A build only test to check that the c++ source produced from an IDL file with a valuetype factory in it compiles OK.
diff --git a/TAO/tests/Bug_2399_Regression/README b/TAO/tests/Bug_2399_Regression/README
index a4c048250b6..4e87689eb9f 100644
--- a/TAO/tests/Bug_2399_Regression/README
+++ b/TAO/tests/Bug_2399_Regression/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This is a build only test. A failure in the IDL compilation will probably indicate a regression.
diff --git a/TAO/tests/Bug_2419_Regression/README b/TAO/tests/Bug_2419_Regression/README
index 0adb564c7ae..a513ba08bec 100644
--- a/TAO/tests/Bug_2419_Regression/README
+++ b/TAO/tests/Bug_2419_Regression/README
@@ -1,3 +1,3 @@
-// $Id$
+$Id$
This is a build only test - if it compiles it passes. See the bugzilla ticket for details.
diff --git a/TAO/tests/Bug_2424_Regression/README b/TAO/tests/Bug_2424_Regression/README
index a0e0c8a1dad..295dcba8ffe 100644
--- a/TAO/tests/Bug_2424_Regression/README
+++ b/TAO/tests/Bug_2424_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This is a compile only test to check that the IDL compiler can deal with IDL containing unfeasibly long lines. If it builds - it's passed.
diff --git a/TAO/tests/Bug_2429_Regression/README b/TAO/tests/Bug_2429_Regression/README
index f5f06b3dffb..f302b5f4bd8 100644
--- a/TAO/tests/Bug_2429_Regression/README
+++ b/TAO/tests/Bug_2429_Regression/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This test makes a call via AMI and then waits to receive a call back. The server throws an exception so the client expects to receive that. The method called is a method inherited from a parent interface (parentMethod).
diff --git a/TAO/tests/Bug_2494_Regression/README b/TAO/tests/Bug_2494_Regression/README
index 726419360b1..6909ae1fcec 100644
--- a/TAO/tests/Bug_2494_Regression/README
+++ b/TAO/tests/Bug_2494_Regression/README
@@ -1,30 +1,30 @@
-# $Id$
+$Id$
Description:
This test a modification of MT_Server. In this case the client is also
-multi-threaded. The client sends very large strings to the server, which it
+multi-threaded. The client sends very large strings to the server, which it
echoes back, for the sake of keeping the server busy doing I/O. When the
client is abruptly killed, the server should close the connection and continue
-running.
+running.
Expected output:
- The server prints out the IOR of the object it serves and the
+ The server prints out the IOR of the object it serves and the
results of server shutdown (aborted or shutdown cleanly).
Regression:
-Activated as
+Activated as
<IOR:012a2a2a1600000049444c3a53696d706c655f5365727665723a312e30002a2a0100000000000000740000000101022a130000006f6369313332392e6f63697765622e636f6d002a19842a2a1b00000014010f0052535420c93244520b04000000000001000000010000002a020000000000000008000000012a2a2a004f41540100000018000000012a2a2a0100010001000000010001050901010000000000>
***Client has been killed***
-ACE_ASSERT (32395|3067820976): file Transport.cpp, line 172 assertion
+ACE_ASSERT (32395|3067820976): file Transport.cpp, line 172 assertion
failed for 'this->head_ == 0'.Aborting...
-ERROR: cannot find file
-</tao_builds/mitza/1.4a/ACE_wrappers/TAO/tests/Bug_2494_Regression/server_terminated>
+ERROR: cannot find file
+</tao_builds/mitza/1.4a/ACE_wrappers/TAO/tests/Bug_2494_Regression/server_terminated>
-- server has not shut down cleanly.
(perl script returns 1)
Correct run:
-Activated as
+Activated as
<IOR:012a2a2a1600000049444c3a53696d706c655f5365727665723a312e30002a2a0100000000000000740000000101022a130000006f6369313332392e6f63697765622e636f6d002a34842a2a1b00000014010f0052535488d03244438d04000000000001000000010000002a020000000000000008000000012a2a2a004f41540100000018000000012a2a2a0100010001000000010001050901010000000000>
***Client has been killed***
event loop finished
diff --git a/TAO/tests/Bug_2549_Regression/README b/TAO/tests/Bug_2549_Regression/README
index b899ad017ed..789db8f4768 100644
--- a/TAO/tests/Bug_2549_Regression/README
+++ b/TAO/tests/Bug_2549_Regression/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This is a compile only test. If it compiles, it's passed. It tests that you can include the new include pidls whilst the old pidls exist in the file but within ifdefs without it all going horribly wrong.
diff --git a/TAO/tests/Bug_2593_Regression/README b/TAO/tests/Bug_2593_Regression/README
index 8da60d5bbb4..9d68a5e6461 100644
--- a/TAO/tests/Bug_2593_Regression/README
+++ b/TAO/tests/Bug_2593_Regression/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Bug 2593 Regression Test README File
This test is used to demonstrate that TAO can successfully connect
@@ -7,7 +9,7 @@ with a server even if the server's IOR contains profiles the client
doesn't know about.
When TAO 1.5.2 was released it was discovered that TAO could no longer
-tolerate unknown profiles. This test is designed to ensure that
+tolerate unknown profiles. This test is designed to ensure that
problem is caught before another release is cut.
diff --git a/TAO/tests/Bug_2654_Regression/README b/TAO/tests/Bug_2654_Regression/README
index dbda07fd6a9..d9d4806be01 100644
--- a/TAO/tests/Bug_2654_Regression/README
+++ b/TAO/tests/Bug_2654_Regression/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Bug_2654_Regression README File
This test is for Bug 2654. Since bug 2654 is very difficult to
diff --git a/TAO/tests/Bug_2669_Regression/README b/TAO/tests/Bug_2669_Regression/README
index 5e2c1e0cf9e..88391da7974 100644
--- a/TAO/tests/Bug_2669_Regression/README
+++ b/TAO/tests/Bug_2669_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This test checks that the repository ID is correct for generated AMI reply handler servant classes when different pragma prefixes are used.
diff --git a/TAO/tests/Bug_2677_Regression/README b/TAO/tests/Bug_2677_Regression/README
index 64dd4fdaae4..0d59e298d48 100644
--- a/TAO/tests/Bug_2677_Regression/README
+++ b/TAO/tests/Bug_2677_Regression/README
@@ -1,3 +1,5 @@
+$Id$
+
Please note, to actually test Bug 2677, ACE and TAO must be built with the
following in your config.h:
diff --git a/TAO/tests/Bug_2702_Regression/README b/TAO/tests/Bug_2702_Regression/README
index 6418f2d4413..385c6b1bfe2 100644
--- a/TAO/tests/Bug_2702_Regression/README
+++ b/TAO/tests/Bug_2702_Regression/README
@@ -1,3 +1,5 @@
+$Id$
+
This test simulates the sending of a GIOP CloseConnection message.
Since TAO does not send this GIOP message, a perl script
(fakeserver2.pl) is used to simulate a CORBA server. Since it isn't
diff --git a/TAO/tests/Bug_2702_Regression/fakeserver.pm b/TAO/tests/Bug_2702_Regression/fakeserver.pm
index 87f2a676f81..327c8d82afa 100644
--- a/TAO/tests/Bug_2702_Regression/fakeserver.pm
+++ b/TAO/tests/Bug_2702_Regression/fakeserver.pm
@@ -1,3 +1,5 @@
+# $Id$
+
package fakeserver;
use Socket;
diff --git a/TAO/tests/Bug_2734_Regression/README b/TAO/tests/Bug_2734_Regression/README
index 0f4f0928e9c..1e6056226e3 100644
--- a/TAO/tests/Bug_2734_Regression/README
+++ b/TAO/tests/Bug_2734_Regression/README
@@ -1,3 +1,5 @@
+$Id$
+
This test demonstrates Bug 2734 by running the Timeout test with different
options. If a name is given to the client's ORB, the test will stop working
if Bug 2734 is reintroduced.
diff --git a/TAO/tests/Bug_2791_Regression/README b/TAO/tests/Bug_2791_Regression/README
index fa4c08553c1..684af117ea0 100755
--- a/TAO/tests/Bug_2791_Regression/README
+++ b/TAO/tests/Bug_2791_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This test confirms that the reference count for a valuetype factory is decremented when the
valuetype factory is unregistered via ORB::unregister_value_factory(). Before, the reference
diff --git a/TAO/tests/Bug_2805_Regression/README.txt b/TAO/tests/Bug_2805_Regression/README.txt
index 56bb8ec34ef..bd5a7304921 100644
--- a/TAO/tests/Bug_2805_Regression/README.txt
+++ b/TAO/tests/Bug_2805_Regression/README.txt
@@ -1,3 +1,3 @@
-// $Id$
+$Id$
This test is a reproducer for bug 2805 and bug 2806.
diff --git a/TAO/tests/Bug_2935_Regression/README.txt b/TAO/tests/Bug_2935_Regression/README.txt
index 141af0bd2d9..138cf68c5dc 100644
--- a/TAO/tests/Bug_2935_Regression/README.txt
+++ b/TAO/tests/Bug_2935_Regression/README.txt
@@ -1,3 +1,5 @@
+$Id$
+
ThreeTier Test.
This test was added in response to the bugs reported in bugzilla entries
diff --git a/TAO/tests/Bug_2966_Regression/README b/TAO/tests/Bug_2966_Regression/README
index 224c81775e4..c326f17ec00 100644
--- a/TAO/tests/Bug_2966_Regression/README
+++ b/TAO/tests/Bug_2966_Regression/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page DII Test README File
The goals of writing this test are:
@@ -9,7 +11,7 @@
o Deferred twoway DII (i.e. using Request::send_deferred/Request::get_response)
o Deferred twoway DII with polling (i.e. using Request::send_deferred/Request::poll_response)
o Oneway DII (i.e. using Request::send_oneway)
-
+
To run the test use the run_test.pl script:
$ ./run_test.pl
diff --git a/TAO/tests/Bug_3000_Regression/README b/TAO/tests/Bug_3000_Regression/README
index 9a6ff172ded..2e7be8f7338 100644
--- a/TAO/tests/Bug_3000_Regression/README
+++ b/TAO/tests/Bug_3000_Regression/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Callback_oneway_rw Test README File
This test is a modification of the Callback test.
diff --git a/TAO/tests/Bug_3068_Regression/README b/TAO/tests/Bug_3068_Regression/README
index de64499b033..bc3c2b4e31e 100644
--- a/TAO/tests/Bug_3068_Regression/README
+++ b/TAO/tests/Bug_3068_Regression/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This test is for validating the fix for a race condition exposed in the
Transport_Cache_Manager. The problem is that an internal pointer used
diff --git a/TAO/tests/Bug_3154_Regression/README b/TAO/tests/Bug_3154_Regression/README
index effb1a6fd58..273b12edbf9 100644
--- a/TAO/tests/Bug_3154_Regression/README
+++ b/TAO/tests/Bug_3154_Regression/README
@@ -1,3 +1,5 @@
+$Id$
+
This test uses newly implemented -Se feature of tao_idl. Using this feature
user can prohibit custom endings (e.g. -hs or -hc) for TAO specific include fils.
diff --git a/TAO/tests/Bug_3251_Regression/Bug_3251.conf.xml b/TAO/tests/Bug_3251_Regression/Bug_3251.conf.xml
index 95a3df2a37f..0cece128ffe 100644
--- a/TAO/tests/Bug_3251_Regression/Bug_3251.conf.xml
+++ b/TAO/tests/Bug_3251_Regression/Bug_3251.conf.xml
@@ -1,30 +1,33 @@
<?xml version='1.0'?>
<ACE_Svc_Conf>
- <!-- ACE will locate the libraries for you automatically by reading your LD -->
- <!-- search path. Moreover, ACE will automatically insert the correct suffix -->
- <!-- (e.g., ".dll", ".so", etc.). -->
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
+ <!-- ACE will locate the libraries for you automatically by reading your LD -->
+ <!-- search path. Moreover, ACE will automatically insert the correct suffix -->
+ <!-- (e.g., ".dll", ".so", etc.). -->
- <!-- ORB -->
- <dynamic id="DllOrb" type="Service_Object">
- <!-- specify TS_ORB_ENDPOINT like this
- TS_ORB_ENDPOINT="-ORBEndpoint iiop://aaa.bbb.ccc.ddd:nnnn"
+ <!-- ORB -->
+ <dynamic id="DllOrb" type="Service_Object">
+ <!-- specify TS_ORB_ENDPOINT like this
+ TS_ORB_ENDPOINT="-ORBEndpoint iiop://aaa.bbb.ccc.ddd:nnnn"
- examples:
- TS_ORB_ENDPOINT"-ORBEndpoint iiop://127.0.0.0"
- TS_ORB_ENDPOINT"-ORBEndpoint iiop://:4200"
- TS_ORB_ENDPOINT"-ORBEndpoint iiop://127.0.0.0:4200"
- -->
+ examples:
+ TS_ORB_ENDPOINT"-ORBEndpoint iiop://127.0.0.0"
+ TS_ORB_ENDPOINT"-ORBEndpoint iiop://:4200"
+ TS_ORB_ENDPOINT"-ORBEndpoint iiop://127.0.0.0:4200"
+ -->
<initializer path="Bug_3251" init="_make_DllOrb" params="DllOrb -NumThreads 12 -ORBDebugLevel $TS_ORB_DEBUGLEVEL $TS_ORB_ENDPOINT -ORBDottedDecimalAddresses 1 -ORBCollocationStrategy thru_poa"/>
- </dynamic>
- <!-- ORB -->
+ </dynamic>
+ <!-- ORB -->
- <!-- persistent POA -->
- <dynamic id="PersistentPOA" type="Service_Object">
+ <!-- persistent POA -->
+ <dynamic id="PersistentPOA" type="Service_Object">
<initializer path="Bug_3251" init="_make_PersistentPoa" params="PersistentPOA DllOrb"/>
- </dynamic>
- <!-- persistent POA -->
+ </dynamic>
+ <!-- persistent POA -->
</ACE_Svc_Conf>
diff --git a/TAO/tests/Bug_3276_Regression/README b/TAO/tests/Bug_3276_Regression/README
index 2718af710f0..63844ae1c1c 100644
--- a/TAO/tests/Bug_3276_Regression/README
+++ b/TAO/tests/Bug_3276_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This is a regression test for TAO#3276.
It tests whether nil forward requests are handled correctly.
diff --git a/TAO/tests/Bug_3299_Regression/README b/TAO/tests/Bug_3299_Regression/README
index 4bb3faf68a0..682a74abf47 100644
--- a/TAO/tests/Bug_3299_Regression/README
+++ b/TAO/tests/Bug_3299_Regression/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This test checks that the client side ORB *doesn't* transparently reinvoke COMPLETED_MAYBE exceptions.
diff --git a/TAO/tests/Bug_3311_Regression/README b/TAO/tests/Bug_3311_Regression/README
index c9b81b727d2..b265f43c851 100644
--- a/TAO/tests/Bug_3311_Regression/README
+++ b/TAO/tests/Bug_3311_Regression/README
@@ -1,3 +1,3 @@
-# $Id$
+$Id$
This is a compile only test. If it compiles, it's passed. It tests that you can have a union with long long or unsigned long long discriminant.
diff --git a/TAO/tests/Bug_3333_Regression/README b/TAO/tests/Bug_3333_Regression/README
index c4f6160314e..6594b8fcf3f 100644
--- a/TAO/tests/Bug_3333_Regression/README
+++ b/TAO/tests/Bug_3333_Regression/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
This test checks that any transparent reinvocations in response to
LOCATION_FORWARD responses to GIOP::Requests are still bounded by the
Relative Roundtrip timeout set by the user for the entire request.
diff --git a/TAO/tests/Bug_3471_Regression/README b/TAO/tests/Bug_3471_Regression/README
index 3e0bf7edac9..ae89a8dcff7 100644
--- a/TAO/tests/Bug_3471_Regression/README
+++ b/TAO/tests/Bug_3471_Regression/README
@@ -1,5 +1,5 @@
/**
-// Id:$
+$Id$
This test checks that you can pass a nil object as part of a sequence. It's
a very minor mod of hello world.
diff --git a/TAO/tests/Bug_3499_Regression/README b/TAO/tests/Bug_3499_Regression/README
index 3fd3e89b070..b2109aa0656 100644
--- a/TAO/tests/Bug_3499_Regression/README
+++ b/TAO/tests/Bug_3499_Regression/README
@@ -1,3 +1,5 @@
+$Id$
+
This test uses newly implemented '-ORBGestalt CURRENT' feature of ORB_init. Using
this feature allows developers to control explicity control where an ORB services
are located, especially when loading modules that initialize an ORB.
diff --git a/TAO/tests/Bug_3513_Regression/README b/TAO/tests/Bug_3513_Regression/README
index 360490b9a8a..64206c3d8d5 100644
--- a/TAO/tests/Bug_3513_Regression/README
+++ b/TAO/tests/Bug_3513_Regression/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This is a compile only test. If it compiles, it's passed. It checks that you can have an include for PortableServer.pidl, and other 'unsafe' files, in a user file if it is guarded or ifdef'd out.
diff --git a/TAO/tests/Bug_3514_Regression/README b/TAO/tests/Bug_3514_Regression/README
index c3421fb54e2..c9b0e298a96 100644
--- a/TAO/tests/Bug_3514_Regression/README
+++ b/TAO/tests/Bug_3514_Regression/README
@@ -1,5 +1,5 @@
-# $Id$
+$Id$
-This is a compile only test. If it compiles, it's passed.
+This is a compile only test. If it compiles, it's passed.
diff --git a/TAO/tests/Bug_3524_Regression/README b/TAO/tests/Bug_3524_Regression/README
index fb21cec740a..3687e02988c 100644
--- a/TAO/tests/Bug_3524_Regression/README
+++ b/TAO/tests/Bug_3524_Regression/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
According to corba C++ mapping if bounds for IDL-bounded strings are violated
then BAD_PARAM has to be thrown. Currently MARSHAL is thrown.
diff --git a/TAO/tests/Bug_3531b_Regression/Bug_3531b_Regression.mpc b/TAO/tests/Bug_3531b_Regression/Bug_3531b_Regression.mpc
index d974e26d6c5..fb15d15dda0 100644
--- a/TAO/tests/Bug_3531b_Regression/Bug_3531b_Regression.mpc
+++ b/TAO/tests/Bug_3531b_Regression/Bug_3531b_Regression.mpc
@@ -1,7 +1,6 @@
// $Id$
project(*Server): taoserver {
- requires += dummy_label
after += *idl
Source_Files {
server.cpp
diff --git a/TAO/tests/Bug_3531b_Regression/server.cpp b/TAO/tests/Bug_3531b_Regression/server.cpp
index 5d5876a6be0..086d101761f 100644
--- a/TAO/tests/Bug_3531b_Regression/server.cpp
+++ b/TAO/tests/Bug_3531b_Regression/server.cpp
@@ -11,6 +11,7 @@
#include "tao/Transport.h"
#include "ace/Task_T.h"
#include "tao/TAO_Export.h"
+#include "ace/TP_Reactor.h"
int nthreads = 4;
bool debug = false;
@@ -85,7 +86,8 @@ private:
bool shutdown_;
};
-ACE_TSS<Worker> workers;
+ACE_TSS<Worker> *workers_p = 0;
+#define workers (*workers_p)
int Worker::svc (void)
{
@@ -143,12 +145,23 @@ bool Worker::shutdown (void)
return shutdown_;
}
-class Test_Reactor: public ACE_Reactor
+class Test_Reactor: public ACE_TP_Reactor
{
public:
+ Test_Reactor (size_t max_number_of_handles,
+ bool restart = false,
+ ACE_Sig_Handler *sh = 0,
+ ACE_Timer_Queue *tq = 0,
+ bool mask_signals = true,
+ int s_queue = ACE_Select_Reactor_Token::FIFO)
+ : ACE_TP_Reactor(max_number_of_handles, restart, sh, tq, mask_signals, s_queue) {}
+
+
// This is the method that the Leader_Follower object calls.
virtual int handle_events (ACE_Time_Value * = 0)
{
+ if (TAO_debug_level > 10)
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) Executing Test_Reactor::handle_events\n"));
// This is called by client leader threads. Note, the loop here
// glosses over the fact that the Leader_Follower code does not
// work quite the way we want it to. Namely, this logic:
@@ -180,19 +193,34 @@ class Test_Resource_Factory: public TAO_Default_Resource_Factory
{
public:
Test_Resource_Factory ()
- : test_reactor_ (new Test_Reactor)
{}
- virtual ACE_Reactor *get_reactor (void)
+ virtual ACE_Reactor_Impl* allocate_reactor_impl (void) const
{
- return test_reactor_;
+ ACE_Reactor_Impl *impl = 0;
+ /*
+ * Hook to specialize TAO's reactor implementation.
+ */
+ //@@ TAO_REACTOR_SPL_COMMENT_HOOK_START
+ ACE_NEW_RETURN (impl,
+ Test_Reactor (ACE::max_handles (),
+ 1,
+ (ACE_Sig_Handler*)0,
+ (ACE_Timer_Queue*)0,
+ this->reactor_mask_signals_,
+ ACE_Select_Reactor_Token::LIFO),
+ 0);
+ //@@ TAO_REACTOR_SPL_COMMENT_HOOK_END
+ return impl;
}
+
private:
- // This is allocated in the constructor and deallocated by the ORB_Core.
- Test_Reactor* test_reactor_;
};
-ACE_FACTORY_DEFINE (TAO, Test_Resource_Factory)
+// force export flag otherwise Windoze will complain
+#define TAO_Test_Export ACE_Proper_Export_Flag
+
+ACE_FACTORY_DEFINE (TAO_Test, Test_Resource_Factory)
ACE_STATIC_SVC_DEFINE (Test_Resource_Factory,
ACE_TEXT ("Resource_Factory"),
ACE_SVC_OBJ_T,
@@ -202,6 +230,9 @@ ACE_STATIC_SVC_DEFINE (Test_Resource_Factory,
0)
ACE_STATIC_SVC_REQUIRE (Test_Resource_Factory);
+int load_test_resources =
+ACE_Service_Config::process_directive (ace_svc_desc_Test_Resource_Factory);
+
class Test_LF_Event: public TAO_LF_Event
{
public:
@@ -1023,19 +1054,19 @@ void Test_10 (TAO_ORB_Core* orb_core )
int
ACE_TMAIN(int argc, ACE_TCHAR *argv[])
{
+ // scope TSS holder within main scope
+ // so we're certain it gets destroyed before the
+ // ACE object manager
+ ACE_TSS<Worker> workers_;
+ // provide global access
+ workers_p = &workers_;
+
try
{
CORBA::ORB_var orb = CORBA::ORB_init (argc, argv);
if (parse_args (argc, argv) != 0)
return 1;
- // First we need to replace the resource factory in the ORB_Core
- // to our test version, which will return our special test
- // reactor to the Leader_Follower object.
- ACE_STATIC_SVC_REGISTER (Test_Resource_Factory);
-
- orb->orb_core ()->set_resource_factory ("Test_Resource_Factory");
-
// Make sure the reactor is initialised in the leader_follower
ACE_Reactor* reactor = orb->orb_core ()->leader_follower ().reactor ();
TEST_ASSERT ((reactor != 0));
diff --git a/TAO/tests/Bug_3558_Regression/README b/TAO/tests/Bug_3558_Regression/README
index 9c57d7f4d03..0bf974fa4d4 100644
--- a/TAO/tests/Bug_3558_Regression/README
+++ b/TAO/tests/Bug_3558_Regression/README
@@ -1,18 +1,20 @@
/**
+$Id$
+
@page Bug_3558_Regression Test README File
Test written for Bugzilla #3558
-
+
This test is based on the Hello TAO test.
-
+
The goal of writing this test is:
-- Provide a way to test whether transport cache behaves correctly.
+- Provide a way to test whether transport cache behaves correctly.
ORBConnectionCacheMax is programmatically set to 1. When a second
connection is esthablished, we expect an exception. However, it seems that
- the transport cache adjusts itself (no exception is thrown).
-
+ the transport cache adjusts itself (no exception is thrown).
+
To run the test use the run_test.pl script:
$ ./run_test.pl
@@ -22,5 +24,5 @@ or, with debug information:
$ ./run_test.pl -debug
the script returns 0 if the test was successful.
-
+
*/
diff --git a/TAO/tests/Bug_3567_Regression/README b/TAO/tests/Bug_3567_Regression/README
index 04117a71d7d..40368fbdc4a 100644
--- a/TAO/tests/Bug_3567_Regression/README
+++ b/TAO/tests/Bug_3567_Regression/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
This is a simple test for AMI callback model.
@@ -8,7 +8,7 @@ Use TAO_HAS_CORBA_MESSAGING
and TAO_HAS_AMI_CALLBACK
to compile TAO. This enables the AMI code in it.
-Use -GC on the TAO IDL compiler to generate code for AMI callbacks.
+Use -GC on the TAO IDL compiler to generate code for AMI callbacks.
Usage:
=====
diff --git a/TAO/tests/Bug_3574_Regression/README b/TAO/tests/Bug_3574_Regression/README
index 4d31b51afe4..11bd71265eb 100644
--- a/TAO/tests/Bug_3574_Regression/README
+++ b/TAO/tests/Bug_3574_Regression/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
- sequence of 100 elements, means buffer allocation of 100 elements
diff --git a/TAO/tests/Bug_3575_Regression/README b/TAO/tests/Bug_3575_Regression/README
index d046ba031f0..bd61d61ab16 100644
--- a/TAO/tests/Bug_3575_Regression/README
+++ b/TAO/tests/Bug_3575_Regression/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description: Before bug#3575 was fixed string_sequence_element::_retn() was
returning a pointer to a newly initialized element in a sequence loosing
diff --git a/TAO/tests/Bug_3598a_Regression/README b/TAO/tests/Bug_3598a_Regression/README
index b2d570b8158..343f8b57a61 100644
--- a/TAO/tests/Bug_3598a_Regression/README
+++ b/TAO/tests/Bug_3598a_Regression/README
@@ -2,7 +2,7 @@ $Id$
This test attempts to contact a server IOR with no connectable profile in it (on account of how there is no server running).
-The method invocation should fail but the installed client request interceptor should have its send_request and receive_exception methods invoked regardless.
+The method invocation should fail but the installed client request interceptor should have its send_request and receive_exception methods invoked regardless.
The expected result looks like:
diff --git a/TAO/tests/Bug_3632_Regression/README b/TAO/tests/Bug_3632_Regression/README
index 918ba5096a3..a61bb26dba4 100644
--- a/TAO/tests/Bug_3632_Regression/README
+++ b/TAO/tests/Bug_3632_Regression/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
C++ mapping says that "For bounded sequences, the maximum length is part of the
type and cannot be set or modified..." and later "For a bounded sequence,
diff --git a/TAO/tests/Bug_3647_Regression/README b/TAO/tests/Bug_3647_Regression/README
index 13afa51b826..30d662a2a15 100644
--- a/TAO/tests/Bug_3647_Regression/README
+++ b/TAO/tests/Bug_3647_Regression/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Bug_3647_Regression Test README File
This test demonstrates the problem described in bugzilla entry #3647.
@@ -7,7 +9,7 @@ This test demonstrates the problem described in bugzilla entry #3647.
In this test we have three participants:
A) A back-end server that will inconveniently block in the middle of
- its work
+ its work
B) A middle-tier server that is trying to communicate with the back
end server using SYNC_WITH_TRANSPORT oneway calls, with timeouts.
C) A client application that is sending twoway calls to the
@@ -22,7 +24,7 @@ incoming requests from the client application.
What we observe is that the middle-tier application blocks, but not in
the event loop as it should, but while checking if the socket is ready
for output.
-
+
To run the test use the run_test.pl script:
$ ./run_test.pl
diff --git a/TAO/tests/Bug_3676_Regression/README b/TAO/tests/Bug_3676_Regression/README
index 3bd8afb095a..a41628816f6 100644
--- a/TAO/tests/Bug_3676_Regression/README
+++ b/TAO/tests/Bug_3676_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Codeset information is sent only in the first request in the service_context
field of GIOP request message. However, CORBA::Object::_validate_connection()
diff --git a/TAO/tests/Bug_3743_Regression/README b/TAO/tests/Bug_3743_Regression/README
index 8a720b0f1d4..65dcf83d719 100644
--- a/TAO/tests/Bug_3743_Regression/README
+++ b/TAO/tests/Bug_3743_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
-Se tao_idl option didn't work properly when idl file included
orb.idl.
diff --git a/TAO/tests/Bug_3748_Regression/README b/TAO/tests/Bug_3748_Regression/README
index d3007b6409d..ac60bf57949 100644
--- a/TAO/tests/Bug_3748_Regression/README
+++ b/TAO/tests/Bug_3748_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This test registers orb initializer which in turn registers Test_Protocol_Hooks.
This is necessary for emulation of failure in TAO_IIOP_Connection_Handler::open()
diff --git a/TAO/tests/Bug_3755_Ext_Regression/README b/TAO/tests/Bug_3755_Ext_Regression/README
index 519cdaf36e9..d1c63439ef0 100644
--- a/TAO/tests/Bug_3755_Ext_Regression/README
+++ b/TAO/tests/Bug_3755_Ext_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This test creates 2 ORBs. The first ORB uses global gestalt and the second
one uses -ORBGestalt LOCAL. Both of the ORBs try to load the same service
diff --git a/TAO/tests/Bug_3768_Regression/Bug_3768_Test.mpc b/TAO/tests/Bug_3768_Regression/Bug_3768_Test.mpc
new file mode 100644
index 00000000000..6cd465a8002
--- /dev/null
+++ b/TAO/tests/Bug_3768_Regression/Bug_3768_Test.mpc
@@ -0,0 +1,41 @@
+// -*- MPC -*-
+// $Id: Bug_3768_Test.mpc
+
+project(*idl): taoidldefaults {
+ idlflags += -Sp
+ IDL_Files {
+ Test.idl
+ }
+ custom_only = 1
+}
+
+project(*Server): taoserver {
+ after += *idl
+ exename = server
+ Source_Files {
+ TestServer.cpp
+ server.cpp
+ }
+ Source_Files {
+ TestC.cpp
+ TestS.cpp
+ }
+ IDL_Files {
+ }
+}
+
+project(*Client): taoserver {
+ after += *idl
+ exename = client
+ Source_Files {
+ TestCallback.cpp
+ client.cpp
+ }
+ Source_Files {
+ TestC.cpp
+ TestS.cpp
+ }
+ IDL_Files {
+ }
+}
+
diff --git a/TAO/tests/Bug_3768_Regression/Test.idl b/TAO/tests/Bug_3768_Regression/Test.idl
new file mode 100644
index 00000000000..15043619d8f
--- /dev/null
+++ b/TAO/tests/Bug_3768_Regression/Test.idl
@@ -0,0 +1,28 @@
+//
+// $Id: Test.idl
+//
+
+/// Put the interfaces in a module, to avoid global namespace pollution
+module Test
+{
+ /// Interface for the client, which is called back from the server
+ interface TestCallback
+ {
+ /// Called to cause the client to start worker threads to handle
+ /// further calls: does not return
+ void start_threads_and_block ();
+
+ /// Called to check that the client is able to perform CORBA work
+ void test_call ();
+
+ /// A method to stop the client waiting for any more calls
+ oneway void shutdown ();
+ };
+
+ /// Interface for the server, called from the client to start the test
+ interface TestServer
+ {
+ /// Pass the callback object to the server, which the server then calls on
+ void pass_callback (in TestCallback test);
+ };
+};
diff --git a/TAO/tests/Bug_3768_Regression/TestCallback.cpp b/TAO/tests/Bug_3768_Regression/TestCallback.cpp
new file mode 100644
index 00000000000..9923c07418a
--- /dev/null
+++ b/TAO/tests/Bug_3768_Regression/TestCallback.cpp
@@ -0,0 +1,31 @@
+//
+// $Id: TestCallback.cpp
+//
+#include "TestCallback.h"
+#include "ace/OS_NS_unistd.h"
+
+TestCallback::TestCallback (CORBA::ORB_ptr orb)
+ : work_ (orb)
+{
+}
+
+void
+TestCallback::start_threads_and_block (void)
+{
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) client - start_threads_and_block\n"));
+ work_.activate(0,10);
+ ACE_OS::sleep(-1);
+}
+
+void
+TestCallback::test_call (void)
+{
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) client - test_call\n"));
+}
+
+void
+TestCallback::shutdown (void)
+{
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) server - test completed\n"));
+ exit (0);
+}
diff --git a/TAO/tests/Bug_3768_Regression/TestCallback.h b/TAO/tests/Bug_3768_Regression/TestCallback.h
new file mode 100644
index 00000000000..7eaef99fdf2
--- /dev/null
+++ b/TAO/tests/Bug_3768_Regression/TestCallback.h
@@ -0,0 +1,47 @@
+//
+// $Id: TestCallback.h
+//
+
+#ifndef TESTCALLBACK_H
+#define TESTCALLBACK_H
+#include /**/ "ace/pre.h"
+
+#include "TestS.h"
+#include "ace/Task.h"
+
+class Worker : public ACE_Task_Base
+{
+public:
+ Worker(CORBA::ORB_ptr orb) : orb_(CORBA::ORB::_duplicate(orb))
+ {
+ }
+
+ int svc(void)
+ {
+ orb_->run();
+ return 0;
+ }
+
+private:
+ CORBA::ORB_var orb_;
+};
+
+/// Implement the Test::TestCallback interface
+class TestCallback
+ : public virtual POA_Test::TestCallback
+{
+public:
+ /// Constructor
+ TestCallback (CORBA::ORB_ptr orb);
+
+ // = The skeleton methods
+ virtual void start_threads_and_block (void);
+ virtual void test_call (void);
+ virtual void shutdown (void);
+
+private:
+ Worker work_;
+};
+
+#include /**/ "ace/post.h"
+#endif /* TESTCALLBACK_H */
diff --git a/TAO/tests/Bug_3768_Regression/TestServer.cpp b/TAO/tests/Bug_3768_Regression/TestServer.cpp
new file mode 100644
index 00000000000..1df313ca1a1
--- /dev/null
+++ b/TAO/tests/Bug_3768_Regression/TestServer.cpp
@@ -0,0 +1,32 @@
+//
+// $Id: TestServer.cpp
+//
+#include "TestServer.h"
+
+void
+TestServer::pass_callback (Test::TestCallback_ptr test)
+{
+ // Save the callback object
+ callback_ = Test::TestCallback::_duplicate(test);
+
+ // Start worker threads on the client: this call won't come back
+ callback_->start_threads_and_block();
+}
+
+bool
+TestServer::got_callback (void)
+{
+ return (callback_.in() != 0);
+}
+
+void
+TestServer::make_callback (void)
+{
+ callback_->test_call();
+}
+
+void
+TestServer::shutdown_client (void)
+{
+ callback_->shutdown();
+}
diff --git a/TAO/tests/Bug_3768_Regression/TestServer.h b/TAO/tests/Bug_3768_Regression/TestServer.h
new file mode 100644
index 00000000000..197ba735b0a
--- /dev/null
+++ b/TAO/tests/Bug_3768_Regression/TestServer.h
@@ -0,0 +1,28 @@
+//
+// $Id: TestServer.h
+//
+
+#ifndef TESTSERVER_H
+#define TESTSERVER_H
+#include /**/ "ace/pre.h"
+
+#include "TestS.h"
+
+/// Implement the Test::TestServer interface
+class TestServer
+ : public virtual POA_Test::TestServer
+{
+public:
+ // = The skeleton methods
+ virtual void pass_callback (Test::TestCallback_ptr test);
+
+ bool got_callback (void);
+ void make_callback (void);
+ void shutdown_client (void);
+
+private:
+ Test::TestCallback_var callback_;
+};
+
+#include /**/ "ace/post.h"
+#endif /* TESTSERVER_H */
diff --git a/TAO/tests/Bug_3768_Regression/client.cpp b/TAO/tests/Bug_3768_Regression/client.cpp
new file mode 100644
index 00000000000..ec457aaea2f
--- /dev/null
+++ b/TAO/tests/Bug_3768_Regression/client.cpp
@@ -0,0 +1,101 @@
+// $Id: client.cpp
+
+#include "TestCallback.h"
+#include "ace/Get_Opt.h"
+
+const ACE_TCHAR *ior = ACE_TEXT ("file://test.ior");
+
+int
+parse_args (int argc, ACE_TCHAR *argv[])
+{
+ ACE_Get_Opt get_opts (argc, argv, ACE_TEXT("k:"));
+ int c;
+
+ while ((c = get_opts ()) != -1)
+ switch (c)
+ {
+ case 'k':
+ ior = get_opts.opt_arg ();
+ break;
+
+ case '?':
+ default:
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "usage: %s "
+ "-k <ior> "
+ "\n",
+ argv [0]),
+ -1);
+ }
+ // Indicates successful parsing of the command line
+ return 0;
+}
+
+int
+ACE_TMAIN(int argc, ACE_TCHAR *argv[])
+{
+ try
+ {
+ CORBA::ORB_var orb = CORBA::ORB_init (argc, argv);
+
+ CORBA::Object_var poa_object =
+ orb->resolve_initial_references("RootPOA");
+
+ PortableServer::POA_var root_poa =
+ PortableServer::POA::_narrow (poa_object.in ());
+
+ if (CORBA::is_nil (root_poa.in ()))
+ ACE_ERROR_RETURN ((LM_ERROR,
+ " (%P|%t) Panic: nil RootPOA\n"),
+ 1);
+
+ PortableServer::POAManager_var poa_manager = root_poa->the_POAManager ();
+
+ if (parse_args (argc, argv) != 0)
+ return 1;
+
+ // Create client callback CORBA object
+
+ TestCallback *test_impl = 0;
+ ACE_NEW_RETURN (test_impl,
+ TestCallback (orb.in()),
+ 1);
+ PortableServer::ServantBase_var owner_transfer(test_impl);
+
+ PortableServer::ObjectId_var id =
+ root_poa->activate_object (test_impl);
+
+ CORBA::Object_var object = root_poa->id_to_reference (id.in ());
+
+ Test::TestCallback_var client = Test::TestCallback::_narrow (object.in ());
+
+ poa_manager->activate ();
+
+ // Get server CORBA object and call it
+
+ CORBA::Object_var tmp = orb->string_to_object(ior);
+
+ Test::TestServer_var server = Test::TestServer::_narrow(tmp.in ());
+
+ if (CORBA::is_nil (server.in ()))
+ {
+ ACE_ERROR_RETURN ((LM_DEBUG,
+ "Nil Test::TestServer reference <%s>\n",
+ ior),
+ 1);
+ }
+
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) client - calling server\n"));
+ server->pass_callback (client.in());
+
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) client - call failed to block\n"));
+ }
+ catch (const CORBA::Exception& ex)
+ {
+ ex._tao_print_exception ("Exception caught:");
+ return 1;
+ }
+
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) client - not stopped by server\n"));
+ return 1;
+}
diff --git a/TAO/tests/Bug_3768_Regression/run_test.pl b/TAO/tests/Bug_3768_Regression/run_test.pl
new file mode 100755
index 00000000000..719974e5c50
--- /dev/null
+++ b/TAO/tests/Bug_3768_Regression/run_test.pl
@@ -0,0 +1,73 @@
+eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
+ & eval 'exec perl -S $0 $argv:q'
+ if 0;
+
+# $Id$
+# -*- perl -*-
+
+use lib "$ENV{ACE_ROOT}/bin";
+use PerlACE::TestTarget;
+
+$status = 0;
+$debug_level = '0';
+
+foreach $i (@ARGV) {
+ if ($i eq '-debug') {
+ $debug_level = '10';
+ }
+}
+
+my $server = PerlACE::TestTarget::create_target (1) || die "Create target 1 failed\n";
+my $client = PerlACE::TestTarget::create_target (2) || die "Create target 2 failed\n";
+
+my $iorbase = "server.ior";
+my $server_iorfile = $server->LocalFile ($iorbase);
+my $client_iorfile = $client->LocalFile ($iorbase);
+$server->DeleteFile($iorbase);
+$client->DeleteFile($iorbase);
+
+$SV = $server->CreateProcess ("server", "-ORBdebuglevel $debug_level -o $server_iorfile");
+$CL = $client->CreateProcess ("client", "-k file://$client_iorfile");
+$server_status = $SV->Spawn ();
+
+if ($server_status != 0) {
+ print STDERR "ERROR: server returned $server_status\n";
+ exit 1;
+}
+
+if ($server->WaitForFileTimed ($iorbase,
+ $server->ProcessStartWaitInterval()) == -1) {
+ print STDERR "ERROR: cannot find file <$server_iorfile>\n";
+ $SV->Kill (); $SV->TimedWait (1);
+ exit 1;
+}
+
+if ($server->GetFile ($iorbase) == -1) {
+ print STDERR "ERROR: cannot retrieve file <$server_iorfile>\n";
+ $SV->Kill (); $SV->TimedWait (1);
+ exit 1;
+}
+if ($client->PutFile ($iorbase) == -1) {
+ print STDERR "ERROR: cannot set file <$client_iorfile>\n";
+ $SV->Kill (); $SV->TimedWait (1);
+ exit 1;
+}
+
+$client_status = $CL->SpawnWaitKill ($client->ProcessStartWaitInterval());
+
+if ($client_status != 0) {
+ print STDERR "ERROR: client returned $client_status\n";
+ $status = 1;
+}
+
+$server_status = $SV->WaitKill ($server->ProcessStopWaitInterval());
+
+if ($server_status != 0) {
+ print STDERR "ERROR: server returned $server_status\n";
+ $status = 1;
+}
+
+$server->DeleteFile($iorbase);
+$client->DeleteFile($iorbase);
+
+exit $status;
diff --git a/TAO/tests/Bug_3768_Regression/server.cpp b/TAO/tests/Bug_3768_Regression/server.cpp
new file mode 100644
index 00000000000..c18aac37313
--- /dev/null
+++ b/TAO/tests/Bug_3768_Regression/server.cpp
@@ -0,0 +1,137 @@
+// $Id: server.cpp
+
+#include "TestServer.h"
+#include "ace/Get_Opt.h"
+#include "ace/OS_NS_unistd.h"
+#include "ace/Task.h"
+
+const ACE_TCHAR *ior_output_file = ACE_TEXT ("test.ior");
+
+class Worker : public ACE_Task_Base
+{
+public:
+ Worker(CORBA::ORB_ptr orb) : orb_(CORBA::ORB::_duplicate(orb))
+ {
+ }
+
+ int svc(void)
+ {
+ orb_->run();
+ return 0;
+ }
+
+private:
+ CORBA::ORB_var orb_;
+};
+
+int
+parse_args (int argc, ACE_TCHAR *argv[])
+{
+ ACE_Get_Opt get_opts (argc, argv, ACE_TEXT("o:"));
+ int c;
+
+ while ((c = get_opts ()) != -1)
+ switch (c)
+ {
+ case 'o':
+ ior_output_file = get_opts.opt_arg ();
+ break;
+
+ case '?':
+ default:
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "usage: %s "
+ "-o <iorfile>"
+ "\n",
+ argv [0]),
+ -1);
+ }
+ // Indicates sucessful parsing of the command line
+ return 0;
+}
+
+int
+ACE_TMAIN(int argc, ACE_TCHAR *argv[])
+{
+ try
+ {
+ CORBA::ORB_var orb =
+ CORBA::ORB_init (argc, argv);
+
+ CORBA::Object_var poa_object =
+ orb->resolve_initial_references("RootPOA");
+
+ PortableServer::POA_var root_poa =
+ PortableServer::POA::_narrow (poa_object.in ());
+
+ if (CORBA::is_nil (root_poa.in ()))
+ ACE_ERROR_RETURN ((LM_ERROR,
+ " (%P|%t) Panic: nil RootPOA\n"),
+ 1);
+
+ PortableServer::POAManager_var poa_manager = root_poa->the_POAManager ();
+
+ if (parse_args (argc, argv) != 0)
+ return 1;
+
+ TestServer *test_impl = 0;
+ ACE_NEW_RETURN (test_impl,
+ TestServer (),
+ 1);
+ PortableServer::ServantBase_var owner_transfer(test_impl);
+
+ PortableServer::ObjectId_var id =
+ root_poa->activate_object (test_impl);
+
+ CORBA::Object_var object = root_poa->id_to_reference (id.in ());
+
+ Test::TestServer_var test = Test::TestServer::_narrow (object.in ());
+
+ CORBA::String_var ior = orb->object_to_string (test.in ());
+
+ // Output the IOR to the <ior_output_file>
+ FILE *output_file= ACE_OS::fopen (ior_output_file, "w");
+ if (output_file == 0)
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "Cannot open output file for writing IOR: %s\n",
+ ior_output_file),
+ 1);
+ ACE_OS::fprintf (output_file, "%s", ior.in ());
+ ACE_OS::fclose (output_file);
+
+ poa_manager->activate ();
+
+ // Run a CORBA worker thread
+ Worker work (orb.in());
+ work.activate (0,1);
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) server - waiting for client to call\n"));
+ ACE_OS::sleep (10);
+ if (test_impl->got_callback() == false) {
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) server - client did not make call\n"));
+ return 1;
+ }
+
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) server - making repeated calls to client\n"));
+ for (int i = 0; i < 10; i++)
+ {
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) server - calling client attempt %d\n", i));
+ test_impl->make_callback();
+ }
+
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) server - stopping client\n"));
+ test_impl->shutdown_client();
+
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) server - test completed\n"));
+
+ root_poa->destroy (1, 1);
+
+ orb->destroy ();
+ }
+ catch (const CORBA::Exception& ex)
+ {
+ ex._tao_print_exception ("Exception caught:");
+ return 1;
+ }
+
+ return 0;
+}
diff --git a/TAO/tests/Bug_3790_Regression/README b/TAO/tests/Bug_3790_Regression/README
index 5d0887426c5..adf611beca7 100644
--- a/TAO/tests/Bug_3790_Regression/README
+++ b/TAO/tests/Bug_3790_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
The problem that we test here is if there is an attempt to forward from
a collocated location to a remote one then object's stub becomes partially
diff --git a/TAO/tests/Bug_3801_Regression/exclusive.conf.xml b/TAO/tests/Bug_3801_Regression/exclusive.conf.xml
index 33db7f50d83..9cc9202775a 100644
--- a/TAO/tests/Bug_3801_Regression/exclusive.conf.xml
+++ b/TAO/tests/Bug_3801_Regression/exclusive.conf.xml
@@ -1,5 +1,8 @@
<?xml version='1.0'?>
<!-- Converted from ./tests/AMI/exclusive.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<static id="Client_Strategy_Factory" params="-ORBTransportMuxStrategy EXCLUSIVE -ORBclientconnectionhandler ST"/>
</ACE_Svc_Conf>
diff --git a/TAO/tests/Bug_3801_Regression/muxed.conf.xml b/TAO/tests/Bug_3801_Regression/muxed.conf.xml
index cf063034ce0..5700476defd 100644
--- a/TAO/tests/Bug_3801_Regression/muxed.conf.xml
+++ b/TAO/tests/Bug_3801_Regression/muxed.conf.xml
@@ -1,5 +1,8 @@
<?xml version='1.0'?>
<!-- Converted from ./tests/AMI/muxed.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<static id="Client_Strategy_Factory" params="-ORBTransportMuxStrategy MUXED -ORBClientConnectionHandler ST"/>
</ACE_Svc_Conf>
diff --git a/TAO/tests/Bug_3821_Regression/README b/TAO/tests/Bug_3821_Regression/README
index 5be18312f8c..b133e9e01fd 100644
--- a/TAO/tests/Bug_3821_Regression/README
+++ b/TAO/tests/Bug_3821_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Even if union uses enumeration as discriminant and all possible case
are specified in IDL there are still possible a lot of other values because
diff --git a/TAO/tests/Bug_3826_Regression/README b/TAO/tests/Bug_3826_Regression/README
index 63740e99086..c6206bdd980 100644
--- a/TAO/tests/Bug_3826_Regression/README
+++ b/TAO/tests/Bug_3826_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This test checks that if the first ORB is created with -ORBGestalt LOCAL
then the settings from this ORB will not become default for the other ORBs
@@ -23,5 +23,5 @@ Testing with -ORBSvcConf
Initialize ORB instances...
After ORB_init...
ERROR: '-ORBConnectionCacheMax' is applied globally while it's expected to apply to the first ORB only.
-ERROR: <server> failed:
+ERROR: <server> failed:
ERROR: server returned 255
diff --git a/TAO/tests/Bug_3827_Regression/README b/TAO/tests/Bug_3827_Regression/README
index 1c4b36b791b..5d983056f0f 100644
--- a/TAO/tests/Bug_3827_Regression/README
+++ b/TAO/tests/Bug_3827_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Valuetype factory related operations from different threads
after orb was just shutdown could result in SIGSEGV.
diff --git a/TAO/tests/Bug_3837_Regression/README b/TAO/tests/Bug_3837_Regression/README
index 9766a777979..4a3e96871c9 100644
--- a/TAO/tests/Bug_3837_Regression/README
+++ b/TAO/tests/Bug_3837_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This test is a tweaked version of Hello test. It checks whether
ACE_Logging_Strategy and -ORBHandleLoggingStrategyEvents provide log
diff --git a/TAO/tests/Bug_3845_Regression/README b/TAO/tests/Bug_3845_Regression/README
index 281aa032421..d3e6ea8267b 100644
--- a/TAO/tests/Bug_3845_Regression/README
+++ b/TAO/tests/Bug_3845_Regression/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Local/Remote Mismatch Test README File
This test does not use the C++ compiler or any binaries
@@ -8,14 +10,14 @@
successfully if it catches the expected error. If the
expected error is not returned by the IDL compiler,
the script itself returns an error.
-
+
In each of the 4 IDL files:
-
+
local_inarg.idl
local_inoutarg.idl
local_outarg.idl
local_rettype.idl
-
+
there is an IDL error in which a local interface is used as
the indicated part of the signature of an operation on a
non-local interface. If the error were not caught in the
diff --git a/TAO/tests/Bug_3926_Regression/README b/TAO/tests/Bug_3926_Regression/README
index 00be79aab75..3ac4cc00f39 100644
--- a/TAO/tests/Bug_3926_Regression/README
+++ b/TAO/tests/Bug_3926_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
The scenario for this test is the following.
diff --git a/TAO/tests/Bug_3941_Regression/README b/TAO/tests/Bug_3941_Regression/README
index e8cd4738f6d..e1dd09e9bdd 100644
--- a/TAO/tests/Bug_3941_Regression/README
+++ b/TAO/tests/Bug_3941_Regression/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
The problem is described in the corresponding issue. In short tao_idl
incorrectly generated _tao_unmarshal() function for valuetypes so that
diff --git a/TAO/tests/Bug_3953_Regression/README b/TAO/tests/Bug_3953_Regression/README
index ab058d902f6..e71af6be668 100644
--- a/TAO/tests/Bug_3953_Regression/README
+++ b/TAO/tests/Bug_3953_Regression/README
@@ -1,4 +1,6 @@
-This is a test of the nested upcall feature in TAO using mt_noupcall.
+$Id$
+
+This is a test of the nested upcall feature in TAO using mt_noupcall.
start off by calling the server and providing a callback object and a
time-to-live number. The server will callback the client (using the
callback object) and decrement the time-to-live number.
diff --git a/TAO/tests/Bug_3954_Regression/README b/TAO/tests/Bug_3954_Regression/README
index 7960a9143e0..d281e316fd8 100644
--- a/TAO/tests/Bug_3954_Regression/README
+++ b/TAO/tests/Bug_3954_Regression/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Hello Test README File
Test whether wait strategy mt_noupcall works with just basic hello server
diff --git a/TAO/tests/CDR/README b/TAO/tests/CDR/README
index 0a6c4192d6e..83c3242abe9 100644
--- a/TAO/tests/CDR/README
+++ b/TAO/tests/CDR/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This directory contains the following tests for the CDR stream class;
@@ -6,15 +6,15 @@ This directory contains the following tests for the CDR stream class;
Simply encodes a lot of CORBA::Octets, CORBA::Short and
CORBA::Long into a CDR stream and then decodes them;
- verifying that the same results are obtained.
+ verifying that the same results are obtained.
. growth
-
+
Helps measure how the growth strategy affects the
performance of CDR streams.
. tc
-
+
TAO implements TypeCodes using a CDR buffer (this was
inherited from the Sun IIOP engine), this test verifies that
some of the basic TypeCodes actually are able to interpret
diff --git a/TAO/tests/CSD_Collocation/README b/TAO/tests/CSD_Collocation/README
index cd5de64caca..b3ea8d8c6d7 100644
--- a/TAO/tests/CSD_Collocation/README
+++ b/TAO/tests/CSD_Collocation/README
@@ -1,3 +1,5 @@
+$Id$
+
This is the Collocation test adapted to use CSD, specifically CSD's thread-pool
(TP) stragegy. Collocation.cpp has been modified to shut down and restart the
CORBA objects (POAs, ORBs) since that is the use case that shows this
diff --git a/TAO/tests/CSD_Collocation/svc.conf.csd b/TAO/tests/CSD_Collocation/svc.conf.csd
index 496c14b0103..2e5fd28b84e 100644
--- a/TAO/tests/CSD_Collocation/svc.conf.csd
+++ b/TAO/tests/CSD_Collocation/svc.conf.csd
@@ -8,9 +8,9 @@ static Advanced_Resource_Factory "-ORBReactorType select_st -ORBInputCDRAllocato
# Make sure we use RW client handler so if something goes wrong, the program will bloc,
# i.e., won't work.
-static Client_Strategy_Factory "-ORBProfileLock null -ORBClientConnectionHandler RW"
+static Client_Strategy_Factory "-ORBClientConnectionHandler RW"
# Not absolutely necessary for this test, but we add it for fun.
-static Server_Strategy_Factory "-ORBConcurrency reactive -ORBPOALock null"
+static Server_Strategy_Factory "-ORBConcurrency reactive"
static TAO_CSD_TP_Strategy_Factory "-CSDtp child:2:OFF"
diff --git a/TAO/tests/CSD_Strategy_Tests/README b/TAO/tests/CSD_Strategy_Tests/README
index 4ab0940d42b..08e0b10f63f 100644
--- a/TAO/tests/CSD_Strategy_Tests/README
+++ b/TAO/tests/CSD_Strategy_Tests/README
@@ -1,3 +1,5 @@
+$Id$
+
This directory contains tests for the Custom Servant Dispatching (CSD)
feature implemented within TAO. Specifically, these tests use the reference
implementation CSD Strategy, called the Thread Pool (TP) CSD Strategy.
@@ -26,7 +28,7 @@ TP_Foo_A
one IDL file which declares the "Foo_A" interface. All of the other
source code in this library is used to support client and/or server
applications that will use the Foo_A interface.
-
+
TP_Foo_B
--------
diff --git a/TAO/tests/CSD_Strategy_Tests/TP_Test_4/README b/TAO/tests/CSD_Strategy_Tests/TP_Test_4/README
index 100428e0103..d9e6bd56df2 100644
--- a/TAO/tests/CSD_Strategy_Tests/TP_Test_4/README
+++ b/TAO/tests/CSD_Strategy_Tests/TP_Test_4/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
===========================================================================
Directory: $TAO_ROOT/tests/CSD_Strategy_Tests/TP_Test_4
diff --git a/TAO/tests/CSD_Strategy_Tests/TP_Test_Dynamic/README b/TAO/tests/CSD_Strategy_Tests/TP_Test_Dynamic/README
index a4e3fbcdc2a..55fbfa004bd 100644
--- a/TAO/tests/CSD_Strategy_Tests/TP_Test_Dynamic/README
+++ b/TAO/tests/CSD_Strategy_Tests/TP_Test_Dynamic/README
@@ -1,4 +1,5 @@
-// $Id$
+$Id$
+
===========================================================================
Directory: $TAO_ROOT/tests/CSD_Strategy_Tests/TP_Test_5
@@ -9,23 +10,23 @@ Directory: $TAO_ROOT/tests/CSD_Strategy_Tests/TP_Test_Static
===========================================================================
This test shows the ThreadPool strategy can automatically apply to the poa
-via service configuration file dynamic directive.
+via service configuration file dynamic directive.
This simple test is a copy of $TAO_ROOT/tests/Hello test. The difference is
this test contains the svc.conf file to configure the CSD strategies and the
poas that apply the CSD strategy.
A new TP_Strategy object is created during the initialization of the
-TP_Strategy_Factory service object and it will be automatically applied to
-a poa.
+TP_Strategy_Factory service object and it will be automatically applied to
+a poa.
The service configuration file specifies the number of threads that
-the ThreadPool strategy have and also specify which poa the strategy should
-apply to. We can specify multiple ThreadPool strategies and the poas via -CSDtp
+the ThreadPool strategy have and also specify which poa the strategy should
+apply to. We can specify multiple ThreadPool strategies and the poas via -CSDtp
option.
e.g
-dynamic TAO_CSD_TP_Strategy_Factory Service_Object *
+dynamic TAO_CSD_TP_Strategy_Factory Service_Object *
TAO_CSD_ThreadPool:_make_TAO_CSD_TP_Strategy_Factory() "-CSDtp RootPOA:2 -CSDtp childpoa:4"
diff --git a/TAO/tests/CSD_Strategy_Tests/TP_Test_Static/README b/TAO/tests/CSD_Strategy_Tests/TP_Test_Static/README
index 8090bdb87ce..36d64459698 100644
--- a/TAO/tests/CSD_Strategy_Tests/TP_Test_Static/README
+++ b/TAO/tests/CSD_Strategy_Tests/TP_Test_Static/README
@@ -1,18 +1,19 @@
-// $Id$
+$Id$
+
===========================================================================
Directory: $TAO_ROOT/tests/CSD_Strategy_Tests/TP_Test_Static
===========================================================================
This test shows the ThreadPool strategy can automatically apply to the poa
-via service configuration file static directive.
+via service configuration file static directive.
-This simple test is a copy of TP_Test_1. The difference is the test
-application does not need to create the TP_Strategy object and apply to the
+This simple test is a copy of TP_Test_1. The difference is the test
+application does not need to create the TP_Strategy object and apply to the
poa. A new TP_Strategy object is created during the initialization of the
-TP_Strategy_Factory service object and it will be automatically applied to
-a poa.
+TP_Strategy_Factory service object and it will be automatically applied to
+a poa.
-The application needs to include the following two files to force the
+The application needs to include the following two files to force the
TAO_CSD_ORB_Loader and TAO_CSD_TP_Strategy_Factory service objects register
with the service repository before initializing the services specified in
.conf file.
@@ -22,8 +23,8 @@ with the service repository before initializing the services specified in
The service configuration file specifies the number of threads that
-the ThreadPool strategy have and also specify which poa the strategy should
-apply to. We can specify multiple ThreadPool strategies and the poas via -CSDtp
+the ThreadPool strategy have and also specify which poa the strategy should
+apply to. We can specify multiple ThreadPool strategies and the poas via -CSDtp
option.
e.g
diff --git a/TAO/tests/Cache_Growth_Test/README b/TAO/tests/Cache_Growth_Test/README
index ace71bc42a1..44483016bef 100644
--- a/TAO/tests/Cache_Growth_Test/README
+++ b/TAO/tests/Cache_Growth_Test/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Cache Grow Test README File
This test is to make sure that we close the cache entries
diff --git a/TAO/tests/CallbackTest/README b/TAO/tests/CallbackTest/README
index 79faf6d8824..a0efcb79bf3 100644
--- a/TAO/tests/CallbackTest/README
+++ b/TAO/tests/CallbackTest/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Callback Test README File
This is a test to test client callbacks in various IP connection setups.
diff --git a/TAO/tests/Client_Leaks/README b/TAO/tests/Client_Leaks/README
index 1dbcc88e52b..5b16dbfc294 100644
--- a/TAO/tests/Client_Leaks/README
+++ b/TAO/tests/Client_Leaks/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Client Leaks Test README File
On TAO-1.1.12 the ORB was leaking handles on the client-side.
diff --git a/TAO/tests/CodeSets/README b/TAO/tests/CodeSets/README
index a9c106baceb..2774a14cdfe 100644
--- a/TAO/tests/CodeSets/README
+++ b/TAO/tests/CodeSets/README
@@ -1,7 +1,9 @@
+$Id$
+
Codeset translation test.
First build the IBM1047 - ISO8859 translator library. Then build and run the
-"simple" test.
+"simple" test.
The translator library may also serve as a reference for building other custom
translators.
diff --git a/TAO/tests/CodeSets/simple/README b/TAO/tests/CodeSets/simple/README
index eb0711a0918..ab5dfb6fb4e 100644
--- a/TAO/tests/CodeSets/simple/README
+++ b/TAO/tests/CodeSets/simple/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Simple codeset translation test.
diff --git a/TAO/tests/Codec/README b/TAO/tests/Codec/README
index b6fd0b21114..3e82f102d10 100644
--- a/TAO/tests/Codec/README
+++ b/TAO/tests/Codec/README
@@ -1,7 +1,7 @@
-# $Id$
+$Id$
This test verifies that CodecFactory and CDR encapsulation Codec
-support is working properly.
+support is working properly.
It does so by encoding a structure into an octet sequence, decoding
into a new instance of the structure from the octet sequence, and then
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_Direct/Client_Task.cpp b/TAO/tests/Collocated_Best/Collocated_Best_Direct/Client_Task.cpp
new file mode 100644
index 00000000000..8887b3ce577
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_Direct/Client_Task.cpp
@@ -0,0 +1,63 @@
+//
+// $Id$
+//
+
+#include "Client_Task.h"
+#include "TestC.h"
+
+Client_Task::Client_Task (const ACE_TCHAR *ior,
+ CORBA::ORB_ptr corb,
+ ACE_Thread_Manager *thr_mgr)
+ : ACE_Task_Base (thr_mgr)
+ , input_ (ior)
+ , corb_ (CORBA::ORB::_duplicate (corb))
+
+{
+}
+
+int
+Client_Task::svc (void)
+{
+ int status = 0;
+ try
+ {
+ CORBA::Object_var tmp =
+ this->corb_->string_to_object (input_);
+
+ Test::Hello_var hello =
+ Test::Hello::_narrow(tmp.in ());
+
+ if (CORBA::is_nil (hello.in ()))
+ {
+ ACE_ERROR_RETURN ((LM_DEBUG,
+ "Nil Test::Hello reference <%s>\n",
+ input_),
+ 1);
+ }
+
+ CORBA::String_var the_string =
+ hello->get_string ();
+
+ if (ACE_OS::strcmp (the_string.in (), "Hello there!") != 0)
+ {
+ ACE_ERROR ((LM_ERROR, "(%P|%t) - Error, incorrect string returned <%C>\n",
+ the_string.in ()));
+ status = 1;
+ }
+ else
+ {
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) - string returned <%C>\n",
+ the_string.in ()));
+ }
+
+ hello->shutdown ();
+ }
+ catch (const CORBA::Exception& ex)
+ {
+ ex._tao_print_exception ("Exception caught:");
+ status = 1;
+ }
+
+ return status;
+
+}
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_Direct/Client_Task.h b/TAO/tests/Collocated_Best/Collocated_Best_Direct/Client_Task.h
new file mode 100644
index 00000000000..8f6557cdec8
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_Direct/Client_Task.h
@@ -0,0 +1,37 @@
+//
+// $Id$
+//
+
+#ifndef COLLOCATED_TEST_CLIENT_TASK_H
+#define COLLOCATED_TEST_CLIENT_TASK_H
+#include /**/ "ace/pre.h"
+#include "ace/Task.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+#include "tao/ORB.h"
+
+
+/// Implement a Task to run the client as a thread
+class Client_Task : public ACE_Task_Base
+{
+public:
+
+ /// Constructor
+ Client_Task (const ACE_TCHAR *input,
+ CORBA::ORB_ptr corb,
+ ACE_Thread_Manager *thr_mgr);
+
+ /// Thread entry point
+ int svc (void);
+
+private:
+ const ACE_TCHAR *input_;
+
+ CORBA::ORB_var corb_;
+
+};
+
+#include /**/ "ace/post.h"
+#endif /* COLLOCATED_TEST_CLIENT_TASK_H */
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_Direct/Collocated_Best_Direct.mpc b/TAO/tests/Collocated_Best/Collocated_Best_Direct/Collocated_Best_Direct.mpc
new file mode 100644
index 00000000000..2521cb67dda
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_Direct/Collocated_Best_Direct.mpc
@@ -0,0 +1,9 @@
+// -*- MPC -*-
+// $Id$
+
+// Enable DIRECT Collocation, disable Thru_Poa
+
+project(Collocated_Best_Direct): taoserver {
+ exename = Collocated_Best_Direct
+ idlflags += -Sp -Gd
+}
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_Direct/Collocated_Test.cpp b/TAO/tests/Collocated_Best/Collocated_Best_Direct/Collocated_Test.cpp
new file mode 100644
index 00000000000..282295ad5e3
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_Direct/Collocated_Test.cpp
@@ -0,0 +1,106 @@
+//$Id$
+#include "Server_Task.h"
+#include "Client_Task.h"
+#include "ace/Get_Opt.h"
+#include "ace/Argv_Type_Converter.h"
+#include "ace/SString.h"
+#include "ace/Manual_Event.h"
+
+const ACE_TCHAR *output = ACE_TEXT("test.ior");
+const ACE_TCHAR *input = ACE_TEXT("file://test.ior");
+// static int named_orbs = 0;
+ACE_CString server_orb;
+ACE_CString client_orb;
+int
+parse_args (int argc, ACE_TCHAR *argv[])
+{
+ ACE_Get_Opt get_opts (argc, argv, ACE_TEXT("k:o:n"));
+ int c;
+
+ while ((c = get_opts ()) != -1)
+ switch (c)
+ {
+ case 'o':
+ output = get_opts.opt_arg ();
+ break;
+ case 'k':
+ input = get_opts.opt_arg ();
+ break;
+ case 'n':
+ // named_orbs = 1;
+ server_orb.set ("server_orb");
+ client_orb.set ("client_orb");
+ break;
+ case '?':
+ default:
+ // This is a hack but that is okay!
+ return 0;
+ }
+ // Indicates successful parsing of the command line
+ return 0;
+}
+
+int
+ACE_TMAIN(int argc, ACE_TCHAR *argv[])
+{
+ if (parse_args (argc,
+ argv) == -1)
+ return -1;
+
+ try
+ {
+ ACE_Argv_Type_Converter satc (argc, argv);
+ CORBA::ORB_var sorb =
+ CORBA::ORB_init (satc.get_argc (),
+ satc.get_TCHAR_argv (),
+ server_orb.c_str ());
+
+ ACE_Manual_Event me;
+ Server_Task server_task (output,
+ sorb.in (),
+ me,
+ ACE_Thread_Manager::instance ());
+
+ if (server_task.activate (THR_NEW_LWP | THR_JOINABLE,
+ 1,
+ 1) == -1)
+ {
+ ACE_ERROR ((LM_ERROR, "Error activating server task\n"));
+ }
+
+ // Wait for the server thread to do some processing
+ me.wait ();
+
+ ACE_Argv_Type_Converter catc (argc, argv);
+ CORBA::ORB_var corb =
+ CORBA::ORB_init (catc.get_argc (),
+ catc.get_TCHAR_argv (),
+ client_orb.c_str ());
+
+ Client_Task client_task (input,
+ corb.in (),
+ ACE_Thread_Manager::instance ());
+
+ if (client_task.activate (THR_NEW_LWP | THR_JOINABLE,
+ 1,
+ 1) == -1)
+ {
+ ACE_ERROR ((LM_ERROR, "Error activating client task\n"));
+ }
+
+ // Wait for the client and server to finish
+ ACE_Thread_Manager::instance ()->wait ();
+
+ // Now that all threads have completed we can destroy the ORB
+ sorb->destroy ();
+ if (server_orb != client_orb)
+ {
+ corb->destroy ();
+ }
+ }
+ catch (const CORBA::Exception&)
+ {
+ // Ignore exceptions..
+ }
+ return 0;
+}
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_Direct/Hello.cpp b/TAO/tests/Collocated_Best/Collocated_Best_Direct/Hello.cpp
new file mode 100644
index 00000000000..6494c809db8
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_Direct/Hello.cpp
@@ -0,0 +1,70 @@
+//
+// $Id$
+//
+#include "Hello.h"
+#include "tao/ORB_Core.h"
+#include "tao/ORB_Table.h"
+#include "tao/ORB_Core_Auto_Ptr.h"
+
+ Hello::Hello (CORBA::ORB_ptr orb,
+ ACE_thread_t thrid)
+ : orb_ (CORBA::ORB::_duplicate (orb))
+ , thr_id_ (thrid)
+{
+}
+
+char *
+Hello::get_string (void)
+{
+ ACE_DEBUG ((LM_DEBUG,
+ "(%P|%t) Upcall in process ..\n"));
+
+ // Use portable thread IDs
+ ACE_Thread_ID self_ID;
+ // Thread ID from Server
+ ACE_Thread_ID this_ID;
+ this_ID.id(this->thr_id_);
+
+ // Servant Thread ID same as Thread ID server, so a remote call,
+ // in case of a collocation the servant runs in calling thread (Client)
+ if (self_ID == this_ID)
+ {
+ if (this->orb_->orb_core ()->optimize_collocation_objects () &&
+ this->orb_->orb_core ()->use_global_collocation ())
+ {
+ ACE_ERROR ((LM_ERROR,
+ "(%P|%t) ERROR: A remote call has been made "
+ " exiting ..\n"));
+ ACE_OS::abort ();
+ }
+ else if (this->orb_->orb_core ()->optimize_collocation_objects () &&
+ this->orb_->orb_core ()->use_global_collocation () == 0)
+ {
+ TAO::ORB_Table * const orb_table =
+ TAO::ORB_Table::instance ();
+
+ TAO_ORB_Core_Auto_Ptr tmp (orb_table->find ("server_orb"));
+ if (tmp.get () == 0)
+ {
+ // We are running on a single ORB and this is an error.
+ ACE_ERROR ((LM_ERROR,
+ "(%P|%t) ERROR: A remote call has been made "
+ " with a single ORB "
+ " exiting ..\n"));
+ ACE_OS::abort ();
+ }
+ }
+ }
+
+ return CORBA::string_dup ("Hello there!");
+}
+
+void
+Hello::shutdown (void)
+{
+ // Give the client thread time to return from the collocated
+ // call to this method before shutting down the ORB. We sleep
+ // to avoid BAD_INV_ORDER exceptions on fast dual processor machines.
+ ACE_OS::sleep (1);
+ this->orb_->shutdown (0);
+}
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_Direct/Hello.h b/TAO/tests/Collocated_Best/Collocated_Best_Direct/Hello.h
new file mode 100644
index 00000000000..1d5e27d075f
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_Direct/Hello.h
@@ -0,0 +1,34 @@
+//
+// $Id$
+//
+
+#ifndef HELLO_H
+#define HELLO_H
+#include /**/ "ace/pre.h"
+
+#include "TestS.h"
+
+/// Implement the Test::Hello interface
+class Hello
+ : public virtual POA_Test::Hello
+{
+public:
+ /// Constructor
+ Hello (CORBA::ORB_ptr orb,
+ ACE_thread_t thr_id);
+
+ // = The skeleton methods
+ virtual char * get_string (void);
+
+ virtual void shutdown (void);
+
+private:
+ /// Use an ORB reference to conver strings to objects and shutdown
+ /// the application.
+ CORBA::ORB_var orb_;
+
+ ACE_thread_t thr_id_;
+};
+
+#include /**/ "ace/post.h"
+#endif /* HELLO_H */
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_Direct/Server_Task.cpp b/TAO/tests/Collocated_Best/Collocated_Best_Direct/Server_Task.cpp
new file mode 100644
index 00000000000..98f37e052e3
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_Direct/Server_Task.cpp
@@ -0,0 +1,87 @@
+//
+// $Id$
+//
+#include "Server_Task.h"
+#include "TestS.h"
+#include "Hello.h"
+
+#include "ace/Manual_Event.h"
+
+Server_Task::Server_Task (const ACE_TCHAR *output,
+ CORBA::ORB_ptr sorb,
+ ACE_Manual_Event &me,
+ ACE_Thread_Manager *thr_mgr)
+ : ACE_Task_Base (thr_mgr)
+ , output_ (output)
+ , me_ (me)
+ , sorb_ (CORBA::ORB::_duplicate (sorb))
+{
+}
+
+int
+Server_Task::svc (void)
+{
+ try
+ {
+ CORBA::Object_var poa_object =
+ this->sorb_->resolve_initial_references("RootPOA");
+
+ PortableServer::POA_var root_poa =
+ PortableServer::POA::_narrow (poa_object.in ());
+
+ if (CORBA::is_nil (root_poa.in ()))
+ ACE_ERROR_RETURN ((LM_ERROR,
+ " (%P|%t) Panic: nil RootPOA\n"),
+ 1);
+
+ PortableServer::POAManager_var poa_manager =
+ root_poa->the_POAManager ();
+
+ Hello *hello_impl;
+ ACE_NEW_RETURN (hello_impl,
+ Hello (this->sorb_.in (),
+ ACE_Thread::self ()),
+ 1);
+
+ PortableServer::ServantBase_var owner_transfer(hello_impl);
+
+ PortableServer::ObjectId_var id =
+ root_poa->activate_object (hello_impl);
+
+ CORBA::Object_var object = root_poa->id_to_reference (id.in ());
+
+ Test::Hello_var hello =
+ Test::Hello::_narrow (object.in ());
+
+ CORBA::String_var ior =
+ this->sorb_->object_to_string (hello.in ());
+
+ // Output the IOR to the <this->output_>
+ FILE *output_file= ACE_OS::fopen (this->output_,
+ "w");
+ if (output_file == 0)
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "Cannot open output file for writing IOR: %s",
+ this->output_),
+ 1);
+
+ ACE_OS::fprintf (output_file, "%s", ior.in ());
+ ACE_OS::fclose (output_file);
+
+ poa_manager->activate ();
+
+ // Signal the main thread before we call orb->run ();
+ this->me_.signal ();
+
+ this->sorb_->run ();
+
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) server - event loop finished\n"));
+ }
+ catch (const CORBA::Exception& ex)
+ {
+ ex._tao_print_exception ("Exception caught:");
+ return 1;
+ }
+
+ return 0;
+}
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_Direct/Server_Task.h b/TAO/tests/Collocated_Best/Collocated_Best_Direct/Server_Task.h
new file mode 100644
index 00000000000..e42043c0711
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_Direct/Server_Task.h
@@ -0,0 +1,48 @@
+// -*- C++ -*-
+//
+// $Id$
+
+#ifndef COLLOCATED_SERVER_TASK_H
+#define COLLOCATED_SERVER_TASK_H
+
+#include /**/ "ace/pre.h"
+
+#include "ace/Task.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#include "tao/ORB.h"
+
+ACE_BEGIN_VERSIONED_NAMESPACE_DECL
+class ACE_Manual_Event;
+ACE_END_VERSIONED_NAMESPACE_DECL
+
+/// Implement a Task to run the server in a single thread
+class Server_Task : public ACE_Task_Base
+{
+public:
+ /// Constructor
+ Server_Task (const ACE_TCHAR *output,
+ CORBA::ORB_ptr sorb,
+ ACE_Manual_Event &me,
+ ACE_Thread_Manager *thr_mgr);
+
+ /// Thread entry point
+ int svc (void);
+
+private:
+ /// Output file for IOR
+ const ACE_TCHAR *output_;
+
+ /// Manual event to wake up the main thread to create a client
+ /// thread.
+ ACE_Manual_Event &me_;
+
+ CORBA::ORB_var sorb_;
+};
+
+#include /**/ "ace/post.h"
+
+#endif /* COLLOCATED_SERVER_TASK_H */
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_Direct/Test.idl b/TAO/tests/Collocated_Best/Collocated_Best_Direct/Test.idl
new file mode 100644
index 00000000000..3c0976e106d
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_Direct/Test.idl
@@ -0,0 +1,20 @@
+//
+// $Id$
+//
+
+/// Put the interfaces in a module, to avoid global namespace pollution
+module Test
+{
+ /// A very simple interface
+ interface Hello
+ {
+ /// Return a simple string
+ string get_string ();
+
+ /// A method to shutdown the ORB
+ /**
+ * This method is used to simplify the test shutdown process
+ */
+ oneway void shutdown ();
+ };
+};
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_Direct/run_test.pl b/TAO/tests/Collocated_Best/Collocated_Best_Direct/run_test.pl
new file mode 100755
index 00000000000..39650e4147e
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_Direct/run_test.pl
@@ -0,0 +1,45 @@
+eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
+ & eval 'exec perl -S $0 $argv:q'
+ if 0;
+
+# $Id$
+# -*- perl -*-
+
+use lib "$ENV{ACE_ROOT}/bin";
+use PerlACE::TestTarget;
+
+my $server = PerlACE::TestTarget::create_target(1) || die "Create target 1 failed\n";
+
+$iorbase = "test.ior";
+my $server_iorfile = $server->LocalFile ($iorbase);
+$server->DeleteFile($iorbase);
+
+$status = 0;
+
+$SV = $server->CreateProcess ("Collocated_Best_Direct");
+
+print STDERR "======== Running with ORBCollocationg = global, -ORBCollocationStrategy = direct)\n";
+$SV->Arguments ("-o $server_iorfile -k file://$server_iorfile -ORBCollocation global -ORBCollocationStrategy direct");
+$sv = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
+
+if ($sv != 0) {
+ print STDERR "ERROR in Collocated_Test\n";
+ $status = 1;
+}
+$server->DeleteFile($iorbase);
+
+$server->DeleteFile($iorbase);
+
+print STDERR "======== Running with -ORBCollocation global -ORBCollocationStrategy best \n";
+$SV->Arguments ("-o $server_iorfile -k file://$server_iorfile -ORBCollocation global -ORBCollocationStrategy best");
+$sv = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
+
+if ($sv != 0) {
+ print STDERR "ERROR in Collocated_Test\n";
+ $status = 1;
+}
+
+$server->DeleteFile($iorbase);
+$server->GetStderrLog();
+
+exit $status;
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Client_Task.cpp b/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Client_Task.cpp
new file mode 100644
index 00000000000..4708f2680d8
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Client_Task.cpp
@@ -0,0 +1,62 @@
+//
+// $Id$
+//
+
+#include "Client_Task.h"
+#include "TestC.h"
+
+Client_Task::Client_Task (const ACE_TCHAR *ior,
+ CORBA::ORB_ptr corb,
+ ACE_Thread_Manager *thr_mgr)
+ : ACE_Task_Base (thr_mgr)
+ , input_ (ior)
+ , corb_ (CORBA::ORB::_duplicate (corb))
+
+{
+}
+
+int
+Client_Task::svc (void)
+{
+ int status = 0;
+
+ try
+ {
+ CORBA::Object_var tmp =
+ this->corb_->string_to_object (input_);
+
+ Test::Hello_var hello =
+ Test::Hello::_narrow(tmp.in ());
+
+ if (CORBA::is_nil (hello.in ()))
+ {
+ ACE_ERROR_RETURN ((LM_DEBUG,
+ "Nil Test::Hello reference <%s>\n",
+ input_),
+ 1);
+ }
+
+ CORBA::String_var the_string =
+ hello->get_string ();
+
+ if (ACE_OS::strcmp (the_string.in (), "Hello there!") != 0)
+ {
+ ACE_ERROR ((LM_ERROR, "(%P|%t) - Error, incorrect string returned <%C>\n",
+ the_string.in ()));
+ status = 1;
+ }
+
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) - string returned <%C>\n",
+ the_string.in ()));
+
+ hello->shutdown ();
+ }
+ catch (const CORBA::Exception& ex)
+ {
+ ex._tao_print_exception ("Exception caught:");
+ status = 1;
+ }
+
+ return status;
+
+}
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Client_Task.h b/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Client_Task.h
new file mode 100644
index 00000000000..8f6557cdec8
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Client_Task.h
@@ -0,0 +1,37 @@
+//
+// $Id$
+//
+
+#ifndef COLLOCATED_TEST_CLIENT_TASK_H
+#define COLLOCATED_TEST_CLIENT_TASK_H
+#include /**/ "ace/pre.h"
+#include "ace/Task.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+#include "tao/ORB.h"
+
+
+/// Implement a Task to run the client as a thread
+class Client_Task : public ACE_Task_Base
+{
+public:
+
+ /// Constructor
+ Client_Task (const ACE_TCHAR *input,
+ CORBA::ORB_ptr corb,
+ ACE_Thread_Manager *thr_mgr);
+
+ /// Thread entry point
+ int svc (void);
+
+private:
+ const ACE_TCHAR *input_;
+
+ CORBA::ORB_var corb_;
+
+};
+
+#include /**/ "ace/post.h"
+#endif /* COLLOCATED_TEST_CLIENT_TASK_H */
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Collocated_Best_NoColl.mpc b/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Collocated_Best_NoColl.mpc
new file mode 100644
index 00000000000..9604c0aff49
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Collocated_Best_NoColl.mpc
@@ -0,0 +1,8 @@
+// -*- MPC -*-
+// $Id$
+
+// Disable Thru_Pu and don't enable Direct
+project(Collocated_Best_NoColl): taoserver {
+ exename = Collocated_Best_NoColl
+ idlflags += -Sp
+}
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Collocated_Test.cpp b/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Collocated_Test.cpp
new file mode 100644
index 00000000000..282295ad5e3
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Collocated_Test.cpp
@@ -0,0 +1,106 @@
+//$Id$
+#include "Server_Task.h"
+#include "Client_Task.h"
+#include "ace/Get_Opt.h"
+#include "ace/Argv_Type_Converter.h"
+#include "ace/SString.h"
+#include "ace/Manual_Event.h"
+
+const ACE_TCHAR *output = ACE_TEXT("test.ior");
+const ACE_TCHAR *input = ACE_TEXT("file://test.ior");
+// static int named_orbs = 0;
+ACE_CString server_orb;
+ACE_CString client_orb;
+int
+parse_args (int argc, ACE_TCHAR *argv[])
+{
+ ACE_Get_Opt get_opts (argc, argv, ACE_TEXT("k:o:n"));
+ int c;
+
+ while ((c = get_opts ()) != -1)
+ switch (c)
+ {
+ case 'o':
+ output = get_opts.opt_arg ();
+ break;
+ case 'k':
+ input = get_opts.opt_arg ();
+ break;
+ case 'n':
+ // named_orbs = 1;
+ server_orb.set ("server_orb");
+ client_orb.set ("client_orb");
+ break;
+ case '?':
+ default:
+ // This is a hack but that is okay!
+ return 0;
+ }
+ // Indicates successful parsing of the command line
+ return 0;
+}
+
+int
+ACE_TMAIN(int argc, ACE_TCHAR *argv[])
+{
+ if (parse_args (argc,
+ argv) == -1)
+ return -1;
+
+ try
+ {
+ ACE_Argv_Type_Converter satc (argc, argv);
+ CORBA::ORB_var sorb =
+ CORBA::ORB_init (satc.get_argc (),
+ satc.get_TCHAR_argv (),
+ server_orb.c_str ());
+
+ ACE_Manual_Event me;
+ Server_Task server_task (output,
+ sorb.in (),
+ me,
+ ACE_Thread_Manager::instance ());
+
+ if (server_task.activate (THR_NEW_LWP | THR_JOINABLE,
+ 1,
+ 1) == -1)
+ {
+ ACE_ERROR ((LM_ERROR, "Error activating server task\n"));
+ }
+
+ // Wait for the server thread to do some processing
+ me.wait ();
+
+ ACE_Argv_Type_Converter catc (argc, argv);
+ CORBA::ORB_var corb =
+ CORBA::ORB_init (catc.get_argc (),
+ catc.get_TCHAR_argv (),
+ client_orb.c_str ());
+
+ Client_Task client_task (input,
+ corb.in (),
+ ACE_Thread_Manager::instance ());
+
+ if (client_task.activate (THR_NEW_LWP | THR_JOINABLE,
+ 1,
+ 1) == -1)
+ {
+ ACE_ERROR ((LM_ERROR, "Error activating client task\n"));
+ }
+
+ // Wait for the client and server to finish
+ ACE_Thread_Manager::instance ()->wait ();
+
+ // Now that all threads have completed we can destroy the ORB
+ sorb->destroy ();
+ if (server_orb != client_orb)
+ {
+ corb->destroy ();
+ }
+ }
+ catch (const CORBA::Exception&)
+ {
+ // Ignore exceptions..
+ }
+ return 0;
+}
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Hello.cpp b/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Hello.cpp
new file mode 100644
index 00000000000..cfa1a886365
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Hello.cpp
@@ -0,0 +1,76 @@
+//
+// $Id$
+//
+#include "Hello.h"
+#include "tao/ORB_Core.h"
+#include "tao/ORB_Table.h"
+#include "tao/ORB_Core_Auto_Ptr.h"
+
+ Hello::Hello (CORBA::ORB_ptr orb,
+ ACE_thread_t thrid)
+ : orb_ (CORBA::ORB::_duplicate (orb))
+ , thr_id_ (thrid)
+{
+}
+
+char *
+Hello::get_string (void)
+{
+ ACE_DEBUG ((LM_DEBUG,
+ "(%P|%t) Upcall in process ..\n"));
+
+ // Use portable thread IDs
+ ACE_Thread_ID self_ID;
+ // Thread ID from Server
+ ACE_Thread_ID this_ID;
+ this_ID.id(this->thr_id_);
+
+ // Servant Thread ID same as Thread ID server, so a remote call,
+ // in case of a collocation the servant runs in calling thread (Client)
+ if (self_ID == this_ID)
+ {
+ if (this->orb_->orb_core ()->optimize_collocation_objects () &&
+ this->orb_->orb_core ()->use_global_collocation ())
+ {
+ ACE_DEBUG ((LM_DEBUG,
+ "(%P|%t) OK: A remote call has been made \n"));
+ }
+ else if (this->orb_->orb_core ()->optimize_collocation_objects () &&
+ this->orb_->orb_core ()->use_global_collocation () == 0)
+ {
+ TAO::ORB_Table * const orb_table =
+ TAO::ORB_Table::instance ();
+
+ TAO_ORB_Core_Auto_Ptr tmp (orb_table->find ("server_orb"));
+ if (tmp.get () == 0)
+ {
+ // We are running on a single ORB and this is an error.
+ ACE_ERROR ((LM_ERROR,
+ "(%P|%t) ERROR: A remote call has been made "
+ " with a single ORB "
+ " exiting ..\n"));
+ ACE_OS::abort ();
+ }
+ }
+ }
+ else
+ {
+ if (this->orb_->orb_core ()->optimize_collocation_objects () &&
+ this->orb_->orb_core ()->use_global_collocation ())
+ {
+ ACE_ERROR ((LM_ERROR,
+ "(%P|%t) ERROR: An unexpected collocated call has been made \n"));
+ }
+ }
+ return CORBA::string_dup ("Hello there!");
+}
+
+void
+Hello::shutdown (void)
+{
+ // Give the client thread time to return from the collocated
+ // call to this method before shutting down the ORB. We sleep
+ // to avoid BAD_INV_ORDER exceptions on fast dual processor machines.
+ ACE_OS::sleep (1);
+ this->orb_->shutdown (0);
+}
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Hello.h b/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Hello.h
new file mode 100644
index 00000000000..1d5e27d075f
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Hello.h
@@ -0,0 +1,34 @@
+//
+// $Id$
+//
+
+#ifndef HELLO_H
+#define HELLO_H
+#include /**/ "ace/pre.h"
+
+#include "TestS.h"
+
+/// Implement the Test::Hello interface
+class Hello
+ : public virtual POA_Test::Hello
+{
+public:
+ /// Constructor
+ Hello (CORBA::ORB_ptr orb,
+ ACE_thread_t thr_id);
+
+ // = The skeleton methods
+ virtual char * get_string (void);
+
+ virtual void shutdown (void);
+
+private:
+ /// Use an ORB reference to conver strings to objects and shutdown
+ /// the application.
+ CORBA::ORB_var orb_;
+
+ ACE_thread_t thr_id_;
+};
+
+#include /**/ "ace/post.h"
+#endif /* HELLO_H */
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Server_Task.cpp b/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Server_Task.cpp
new file mode 100644
index 00000000000..98f37e052e3
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Server_Task.cpp
@@ -0,0 +1,87 @@
+//
+// $Id$
+//
+#include "Server_Task.h"
+#include "TestS.h"
+#include "Hello.h"
+
+#include "ace/Manual_Event.h"
+
+Server_Task::Server_Task (const ACE_TCHAR *output,
+ CORBA::ORB_ptr sorb,
+ ACE_Manual_Event &me,
+ ACE_Thread_Manager *thr_mgr)
+ : ACE_Task_Base (thr_mgr)
+ , output_ (output)
+ , me_ (me)
+ , sorb_ (CORBA::ORB::_duplicate (sorb))
+{
+}
+
+int
+Server_Task::svc (void)
+{
+ try
+ {
+ CORBA::Object_var poa_object =
+ this->sorb_->resolve_initial_references("RootPOA");
+
+ PortableServer::POA_var root_poa =
+ PortableServer::POA::_narrow (poa_object.in ());
+
+ if (CORBA::is_nil (root_poa.in ()))
+ ACE_ERROR_RETURN ((LM_ERROR,
+ " (%P|%t) Panic: nil RootPOA\n"),
+ 1);
+
+ PortableServer::POAManager_var poa_manager =
+ root_poa->the_POAManager ();
+
+ Hello *hello_impl;
+ ACE_NEW_RETURN (hello_impl,
+ Hello (this->sorb_.in (),
+ ACE_Thread::self ()),
+ 1);
+
+ PortableServer::ServantBase_var owner_transfer(hello_impl);
+
+ PortableServer::ObjectId_var id =
+ root_poa->activate_object (hello_impl);
+
+ CORBA::Object_var object = root_poa->id_to_reference (id.in ());
+
+ Test::Hello_var hello =
+ Test::Hello::_narrow (object.in ());
+
+ CORBA::String_var ior =
+ this->sorb_->object_to_string (hello.in ());
+
+ // Output the IOR to the <this->output_>
+ FILE *output_file= ACE_OS::fopen (this->output_,
+ "w");
+ if (output_file == 0)
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "Cannot open output file for writing IOR: %s",
+ this->output_),
+ 1);
+
+ ACE_OS::fprintf (output_file, "%s", ior.in ());
+ ACE_OS::fclose (output_file);
+
+ poa_manager->activate ();
+
+ // Signal the main thread before we call orb->run ();
+ this->me_.signal ();
+
+ this->sorb_->run ();
+
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) server - event loop finished\n"));
+ }
+ catch (const CORBA::Exception& ex)
+ {
+ ex._tao_print_exception ("Exception caught:");
+ return 1;
+ }
+
+ return 0;
+}
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Server_Task.h b/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Server_Task.h
new file mode 100644
index 00000000000..e42043c0711
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Server_Task.h
@@ -0,0 +1,48 @@
+// -*- C++ -*-
+//
+// $Id$
+
+#ifndef COLLOCATED_SERVER_TASK_H
+#define COLLOCATED_SERVER_TASK_H
+
+#include /**/ "ace/pre.h"
+
+#include "ace/Task.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#include "tao/ORB.h"
+
+ACE_BEGIN_VERSIONED_NAMESPACE_DECL
+class ACE_Manual_Event;
+ACE_END_VERSIONED_NAMESPACE_DECL
+
+/// Implement a Task to run the server in a single thread
+class Server_Task : public ACE_Task_Base
+{
+public:
+ /// Constructor
+ Server_Task (const ACE_TCHAR *output,
+ CORBA::ORB_ptr sorb,
+ ACE_Manual_Event &me,
+ ACE_Thread_Manager *thr_mgr);
+
+ /// Thread entry point
+ int svc (void);
+
+private:
+ /// Output file for IOR
+ const ACE_TCHAR *output_;
+
+ /// Manual event to wake up the main thread to create a client
+ /// thread.
+ ACE_Manual_Event &me_;
+
+ CORBA::ORB_var sorb_;
+};
+
+#include /**/ "ace/post.h"
+
+#endif /* COLLOCATED_SERVER_TASK_H */
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Test.idl b/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Test.idl
new file mode 100644
index 00000000000..3c0976e106d
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_NoColl/Test.idl
@@ -0,0 +1,20 @@
+//
+// $Id$
+//
+
+/// Put the interfaces in a module, to avoid global namespace pollution
+module Test
+{
+ /// A very simple interface
+ interface Hello
+ {
+ /// Return a simple string
+ string get_string ();
+
+ /// A method to shutdown the ORB
+ /**
+ * This method is used to simplify the test shutdown process
+ */
+ oneway void shutdown ();
+ };
+};
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_NoColl/run_test.pl b/TAO/tests/Collocated_Best/Collocated_Best_NoColl/run_test.pl
new file mode 100755
index 00000000000..f6009aa0dc8
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_NoColl/run_test.pl
@@ -0,0 +1,33 @@
+eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
+ & eval 'exec perl -S $0 $argv:q'
+ if 0;
+
+# $Id$
+# -*- perl -*-
+
+use lib "$ENV{ACE_ROOT}/bin";
+use PerlACE::TestTarget;
+
+my $server = PerlACE::TestTarget::create_target(1) || die "Create target 1 failed\n";
+
+$iorbase = "test.ior";
+my $server_iorfile = $server->LocalFile ($iorbase);
+$server->DeleteFile($iorbase);
+
+$status = 0;
+
+$SV = $server->CreateProcess ("Collocated_Best_NoColl");
+
+print STDERR "======== Running with -ORBCollocation global -ORBCollocationStrategy best \n";
+$SV->Arguments ("-o $server_iorfile -k file://$server_iorfile -ORBCollocation global -ORBCollocationStrategy best");
+$sv = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
+
+if ($sv != 0) {
+ print STDERR "ERROR in Collocated_Test\n";
+ $status = 1;
+}
+
+$server->DeleteFile($iorbase);
+$server->GetStderrLog();
+
+exit $status;
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Client_Task.cpp b/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Client_Task.cpp
new file mode 100644
index 00000000000..bfbe61b4942
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Client_Task.cpp
@@ -0,0 +1,63 @@
+//
+// $Id$
+//
+
+#include "Client_Task.h"
+#include "TestC.h"
+
+Client_Task::Client_Task (const ACE_TCHAR *ior,
+ CORBA::ORB_ptr corb,
+ ACE_Thread_Manager *thr_mgr)
+ : ACE_Task_Base (thr_mgr)
+ , input_ (ior)
+ , corb_ (CORBA::ORB::_duplicate (corb))
+
+{
+}
+
+int
+Client_Task::svc (void)
+{
+ int status = 1;
+ try
+ {
+ CORBA::Object_var tmp =
+ this->corb_->string_to_object (input_);
+
+ Test::Hello_var hello =
+ Test::Hello::_narrow(tmp.in ());
+
+ if (CORBA::is_nil (hello.in ()))
+ {
+ ACE_ERROR_RETURN ((LM_DEBUG,
+ "Nil Test::Hello reference <%s>\n",
+ input_),
+ 1);
+ }
+
+ CORBA::String_var the_string =
+ hello->get_string ();
+
+ if (ACE_OS::strcmp (the_string.in (), "Hello there!") != 0)
+ {
+ ACE_ERROR ((LM_ERROR, "(%P|%t) - Error, incorrect string returned <%C>\n",
+ the_string.in ()));
+ status = 1;
+ }
+ else
+ {
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) - string returned <%C>\n",
+ the_string.in ()));
+ }
+
+ hello->shutdown ();
+ }
+ catch (const CORBA::Exception& ex)
+ {
+ ex._tao_print_exception ("Exception caught:");
+ status = 1;
+ }
+
+ return status;
+
+}
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Client_Task.h b/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Client_Task.h
new file mode 100644
index 00000000000..8f6557cdec8
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Client_Task.h
@@ -0,0 +1,37 @@
+//
+// $Id$
+//
+
+#ifndef COLLOCATED_TEST_CLIENT_TASK_H
+#define COLLOCATED_TEST_CLIENT_TASK_H
+#include /**/ "ace/pre.h"
+#include "ace/Task.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+#include "tao/ORB.h"
+
+
+/// Implement a Task to run the client as a thread
+class Client_Task : public ACE_Task_Base
+{
+public:
+
+ /// Constructor
+ Client_Task (const ACE_TCHAR *input,
+ CORBA::ORB_ptr corb,
+ ACE_Thread_Manager *thr_mgr);
+
+ /// Thread entry point
+ int svc (void);
+
+private:
+ const ACE_TCHAR *input_;
+
+ CORBA::ORB_var corb_;
+
+};
+
+#include /**/ "ace/post.h"
+#endif /* COLLOCATED_TEST_CLIENT_TASK_H */
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Collocated_Best_ThruP.mpc b/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Collocated_Best_ThruP.mpc
new file mode 100644
index 00000000000..1d2e67eccdc
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Collocated_Best_ThruP.mpc
@@ -0,0 +1,7 @@
+// -*- MPC -*-
+// $Id$
+
+// Thru_Poa default enabled, Direct default disabled
+project(Collocated_Best_ThruP): taoserver {
+ exename = Collocated_Best_ThruP
+}
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Collocated_Test.cpp b/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Collocated_Test.cpp
new file mode 100644
index 00000000000..282295ad5e3
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Collocated_Test.cpp
@@ -0,0 +1,106 @@
+//$Id$
+#include "Server_Task.h"
+#include "Client_Task.h"
+#include "ace/Get_Opt.h"
+#include "ace/Argv_Type_Converter.h"
+#include "ace/SString.h"
+#include "ace/Manual_Event.h"
+
+const ACE_TCHAR *output = ACE_TEXT("test.ior");
+const ACE_TCHAR *input = ACE_TEXT("file://test.ior");
+// static int named_orbs = 0;
+ACE_CString server_orb;
+ACE_CString client_orb;
+int
+parse_args (int argc, ACE_TCHAR *argv[])
+{
+ ACE_Get_Opt get_opts (argc, argv, ACE_TEXT("k:o:n"));
+ int c;
+
+ while ((c = get_opts ()) != -1)
+ switch (c)
+ {
+ case 'o':
+ output = get_opts.opt_arg ();
+ break;
+ case 'k':
+ input = get_opts.opt_arg ();
+ break;
+ case 'n':
+ // named_orbs = 1;
+ server_orb.set ("server_orb");
+ client_orb.set ("client_orb");
+ break;
+ case '?':
+ default:
+ // This is a hack but that is okay!
+ return 0;
+ }
+ // Indicates successful parsing of the command line
+ return 0;
+}
+
+int
+ACE_TMAIN(int argc, ACE_TCHAR *argv[])
+{
+ if (parse_args (argc,
+ argv) == -1)
+ return -1;
+
+ try
+ {
+ ACE_Argv_Type_Converter satc (argc, argv);
+ CORBA::ORB_var sorb =
+ CORBA::ORB_init (satc.get_argc (),
+ satc.get_TCHAR_argv (),
+ server_orb.c_str ());
+
+ ACE_Manual_Event me;
+ Server_Task server_task (output,
+ sorb.in (),
+ me,
+ ACE_Thread_Manager::instance ());
+
+ if (server_task.activate (THR_NEW_LWP | THR_JOINABLE,
+ 1,
+ 1) == -1)
+ {
+ ACE_ERROR ((LM_ERROR, "Error activating server task\n"));
+ }
+
+ // Wait for the server thread to do some processing
+ me.wait ();
+
+ ACE_Argv_Type_Converter catc (argc, argv);
+ CORBA::ORB_var corb =
+ CORBA::ORB_init (catc.get_argc (),
+ catc.get_TCHAR_argv (),
+ client_orb.c_str ());
+
+ Client_Task client_task (input,
+ corb.in (),
+ ACE_Thread_Manager::instance ());
+
+ if (client_task.activate (THR_NEW_LWP | THR_JOINABLE,
+ 1,
+ 1) == -1)
+ {
+ ACE_ERROR ((LM_ERROR, "Error activating client task\n"));
+ }
+
+ // Wait for the client and server to finish
+ ACE_Thread_Manager::instance ()->wait ();
+
+ // Now that all threads have completed we can destroy the ORB
+ sorb->destroy ();
+ if (server_orb != client_orb)
+ {
+ corb->destroy ();
+ }
+ }
+ catch (const CORBA::Exception&)
+ {
+ // Ignore exceptions..
+ }
+ return 0;
+}
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Hello.cpp b/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Hello.cpp
new file mode 100644
index 00000000000..fe5d6fec8fa
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Hello.cpp
@@ -0,0 +1,68 @@
+//
+// $Id$
+//
+#include "Hello.h"
+#include "tao/ORB_Core.h"
+#include "tao/ORB_Table.h"
+#include "tao/ORB_Core_Auto_Ptr.h"
+#include "./tao/Collocation_Strategy.h"
+
+ Hello::Hello (CORBA::ORB_ptr orb,
+ ACE_thread_t thrid)
+ : orb_ (CORBA::ORB::_duplicate (orb))
+ , thr_id_ (thrid)
+{
+}
+
+char *
+Hello::get_string (void)
+{
+ ACE_DEBUG ((LM_DEBUG,
+ "(%P|%t) Upcall in process ..\n"));
+
+ // Use portable thread IDs
+ ACE_Thread_ID self_ID;
+ ACE_Thread_ID this_ID;
+ this_ID.id(this->thr_id_);
+
+ if (self_ID == this_ID)
+ {
+ if (this->orb_->orb_core ()->optimize_collocation_objects () &&
+ this->orb_->orb_core ()->use_global_collocation ())
+ {
+ ACE_ERROR ((LM_ERROR,
+ "(%P|%t) ERROR: A remote call has been made "
+ " exiting ..\n"));
+ ACE_OS::abort ();
+ }
+ else if (this->orb_->orb_core ()->optimize_collocation_objects () &&
+ this->orb_->orb_core ()->use_global_collocation () == 0)
+ {
+ TAO::ORB_Table * const orb_table =
+ TAO::ORB_Table::instance ();
+
+ TAO_ORB_Core_Auto_Ptr tmp (orb_table->find ("server_orb"));
+ if (tmp.get () == 0)
+ {
+ // We are running on a single ORB and this is an error.
+ ACE_ERROR ((LM_ERROR,
+ "(%P|%t) ERROR: A remote call has been made "
+ " with a single ORB "
+ " exiting ..\n"));
+ ACE_OS::abort ();
+ }
+ }
+ }
+
+ return CORBA::string_dup ("Hello there!");
+}
+
+void
+Hello::shutdown (void)
+{
+ // Give the client thread time to return from the collocated
+ // call to this method before shutting down the ORB. We sleep
+ // to avoid BAD_INV_ORDER exceptions on fast dual processor machines.
+ ACE_OS::sleep (1);
+ this->orb_->shutdown (0);
+}
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Hello.h b/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Hello.h
new file mode 100644
index 00000000000..1d5e27d075f
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Hello.h
@@ -0,0 +1,34 @@
+//
+// $Id$
+//
+
+#ifndef HELLO_H
+#define HELLO_H
+#include /**/ "ace/pre.h"
+
+#include "TestS.h"
+
+/// Implement the Test::Hello interface
+class Hello
+ : public virtual POA_Test::Hello
+{
+public:
+ /// Constructor
+ Hello (CORBA::ORB_ptr orb,
+ ACE_thread_t thr_id);
+
+ // = The skeleton methods
+ virtual char * get_string (void);
+
+ virtual void shutdown (void);
+
+private:
+ /// Use an ORB reference to conver strings to objects and shutdown
+ /// the application.
+ CORBA::ORB_var orb_;
+
+ ACE_thread_t thr_id_;
+};
+
+#include /**/ "ace/post.h"
+#endif /* HELLO_H */
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Server_Task.cpp b/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Server_Task.cpp
new file mode 100644
index 00000000000..98f37e052e3
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Server_Task.cpp
@@ -0,0 +1,87 @@
+//
+// $Id$
+//
+#include "Server_Task.h"
+#include "TestS.h"
+#include "Hello.h"
+
+#include "ace/Manual_Event.h"
+
+Server_Task::Server_Task (const ACE_TCHAR *output,
+ CORBA::ORB_ptr sorb,
+ ACE_Manual_Event &me,
+ ACE_Thread_Manager *thr_mgr)
+ : ACE_Task_Base (thr_mgr)
+ , output_ (output)
+ , me_ (me)
+ , sorb_ (CORBA::ORB::_duplicate (sorb))
+{
+}
+
+int
+Server_Task::svc (void)
+{
+ try
+ {
+ CORBA::Object_var poa_object =
+ this->sorb_->resolve_initial_references("RootPOA");
+
+ PortableServer::POA_var root_poa =
+ PortableServer::POA::_narrow (poa_object.in ());
+
+ if (CORBA::is_nil (root_poa.in ()))
+ ACE_ERROR_RETURN ((LM_ERROR,
+ " (%P|%t) Panic: nil RootPOA\n"),
+ 1);
+
+ PortableServer::POAManager_var poa_manager =
+ root_poa->the_POAManager ();
+
+ Hello *hello_impl;
+ ACE_NEW_RETURN (hello_impl,
+ Hello (this->sorb_.in (),
+ ACE_Thread::self ()),
+ 1);
+
+ PortableServer::ServantBase_var owner_transfer(hello_impl);
+
+ PortableServer::ObjectId_var id =
+ root_poa->activate_object (hello_impl);
+
+ CORBA::Object_var object = root_poa->id_to_reference (id.in ());
+
+ Test::Hello_var hello =
+ Test::Hello::_narrow (object.in ());
+
+ CORBA::String_var ior =
+ this->sorb_->object_to_string (hello.in ());
+
+ // Output the IOR to the <this->output_>
+ FILE *output_file= ACE_OS::fopen (this->output_,
+ "w");
+ if (output_file == 0)
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "Cannot open output file for writing IOR: %s",
+ this->output_),
+ 1);
+
+ ACE_OS::fprintf (output_file, "%s", ior.in ());
+ ACE_OS::fclose (output_file);
+
+ poa_manager->activate ();
+
+ // Signal the main thread before we call orb->run ();
+ this->me_.signal ();
+
+ this->sorb_->run ();
+
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) server - event loop finished\n"));
+ }
+ catch (const CORBA::Exception& ex)
+ {
+ ex._tao_print_exception ("Exception caught:");
+ return 1;
+ }
+
+ return 0;
+}
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Server_Task.h b/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Server_Task.h
new file mode 100644
index 00000000000..e42043c0711
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Server_Task.h
@@ -0,0 +1,48 @@
+// -*- C++ -*-
+//
+// $Id$
+
+#ifndef COLLOCATED_SERVER_TASK_H
+#define COLLOCATED_SERVER_TASK_H
+
+#include /**/ "ace/pre.h"
+
+#include "ace/Task.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#include "tao/ORB.h"
+
+ACE_BEGIN_VERSIONED_NAMESPACE_DECL
+class ACE_Manual_Event;
+ACE_END_VERSIONED_NAMESPACE_DECL
+
+/// Implement a Task to run the server in a single thread
+class Server_Task : public ACE_Task_Base
+{
+public:
+ /// Constructor
+ Server_Task (const ACE_TCHAR *output,
+ CORBA::ORB_ptr sorb,
+ ACE_Manual_Event &me,
+ ACE_Thread_Manager *thr_mgr);
+
+ /// Thread entry point
+ int svc (void);
+
+private:
+ /// Output file for IOR
+ const ACE_TCHAR *output_;
+
+ /// Manual event to wake up the main thread to create a client
+ /// thread.
+ ACE_Manual_Event &me_;
+
+ CORBA::ORB_var sorb_;
+};
+
+#include /**/ "ace/post.h"
+
+#endif /* COLLOCATED_SERVER_TASK_H */
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Test.idl b/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Test.idl
new file mode 100644
index 00000000000..3c0976e106d
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_ThuP/Test.idl
@@ -0,0 +1,20 @@
+//
+// $Id$
+//
+
+/// Put the interfaces in a module, to avoid global namespace pollution
+module Test
+{
+ /// A very simple interface
+ interface Hello
+ {
+ /// Return a simple string
+ string get_string ();
+
+ /// A method to shutdown the ORB
+ /**
+ * This method is used to simplify the test shutdown process
+ */
+ oneway void shutdown ();
+ };
+};
diff --git a/TAO/tests/Collocated_Best/Collocated_Best_ThuP/run_test.pl b/TAO/tests/Collocated_Best/Collocated_Best_ThuP/run_test.pl
new file mode 100755
index 00000000000..99836c08852
--- /dev/null
+++ b/TAO/tests/Collocated_Best/Collocated_Best_ThuP/run_test.pl
@@ -0,0 +1,44 @@
+eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
+ & eval 'exec perl -S $0 $argv:q'
+ if 0;
+
+# $Id$
+# -*- perl -*-
+
+use lib "$ENV{ACE_ROOT}/bin";
+use PerlACE::TestTarget;
+
+my $server = PerlACE::TestTarget::create_target(1) || die "Create target 1 failed\n";
+
+$iorbase = "test.ior";
+my $server_iorfile = $server->LocalFile ($iorbase);
+$server->DeleteFile($iorbase);
+
+$status = 0;
+
+$SV = $server->CreateProcess ("Collocated_Best_ThruP");
+
+$server->DeleteFile($iorbase);
+print STDERR "======== Running with ORBCollocationg = global, (default ORBCollocationStrategy = thru_poa)\n";
+$SV->Arguments ("-o $server_iorfile -k file://$server_iorfile -ORBCollocation global");
+$sv = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
+
+if ($sv != 0) {
+ print STDERR "ERROR in Collocated_Test\n";
+ $status = 1;
+}
+$server->DeleteFile($iorbase);
+
+print STDERR "======== Running with -ORBCollocation global -ORBCollocationStrategy best \n";
+$SV->Arguments ("-o $server_iorfile -k file://$server_iorfile -ORBCollocation global -ORBCollocationStrategy best");
+$sv = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
+
+if ($sv != 0) {
+ print STDERR "ERROR in Collocated_Test\n";
+ $status = 1;
+}
+
+$server->DeleteFile($iorbase);
+$server->GetStderrLog();
+
+exit $status;
diff --git a/TAO/tests/Collocated_Best/README b/TAO/tests/Collocated_Best/README
new file mode 100644
index 00000000000..8e436ff63d7
--- /dev/null
+++ b/TAO/tests/Collocated_Best/README
@@ -0,0 +1,23 @@
+// $Id$
+
+CollocationStrategy TAO_COLLOCATION_BEST:
+
+This tests performs a series of checks on CollocationStrategy 'best' (TAO_COLLOCATION_BEST) support in TAO.
+
+With CollocationStrategy 'best' the best possible collocation strategy is tried to perform.
+ If TAO_COLLOCATION_DIRECT is possible, this has to be used, else if TAO_COLLOCATION_THRU_POA
+ is possible this has to be used, else use remote stub.
+
+The test Collocated_Best_Direct uses IDLflags -Sp, to disable Thru_poa collocation
+ and -Gd, to enable Direct collocation.
+Starting the test with -ORBCollocationStrategy 'best' ,
+ the test should use TAO_COLLOCATION_DIRECT collocation.
+
+The test Collocated_Best_ThruP uses default IDLflags,so Thru_poa collocation is enabled
+and Direct collocation is default not enabled.
+Starting the test with -ORBCollocationStrategy 'best', the test should use
+TAO_COLLOCATION_THRU_POA collocation.
+
+The test Collocated_Best_ThruP uses IDLflags -Sp, to disable Thru_poa collocation
+and Direct collocation is default not enabled.
+Starting the test with -ORBCollocationStrategy 'best', the test should use no collocation, but remote stubs. \ No newline at end of file
diff --git a/TAO/tests/Collocated_DerivedIF/Client_Task.cpp b/TAO/tests/Collocated_DerivedIF/Client_Task.cpp
new file mode 100644
index 00000000000..0ea9453a73d
--- /dev/null
+++ b/TAO/tests/Collocated_DerivedIF/Client_Task.cpp
@@ -0,0 +1,69 @@
+//
+// $Id$
+//
+
+#include "Client_Task.h"
+#include "TestC.h"
+
+Client_Task::Client_Task (const ACE_TCHAR *ior,
+ CORBA::ORB_ptr corb,
+ ACE_Thread_Manager *thr_mgr)
+ : ACE_Task_Base (thr_mgr)
+ , input_ (ior)
+ , corb_ (CORBA::ORB::_duplicate (corb))
+
+{
+}
+
+int
+Client_Task::svc (void)
+{
+ int status = 0;
+
+ try
+ {
+ CORBA::Object_var tmp =
+ this->corb_->string_to_object (input_);
+
+ Test::HelloAgain_var hello_again =
+ Test::HelloAgain::_narrow(tmp.in ());
+
+ if (CORBA::is_nil (hello_again.in()))
+ {
+ ACE_ERROR_RETURN ((LM_DEBUG,
+ "Nil Test::HelloAgain reference <%s>\n",
+ input_),
+ 1);
+ }
+
+ CORBA::String_var the_string = hello_again->get_string ();
+ if (ACE_OS::strcmp (the_string.in (), "Hello there!") != 0)
+ {
+ ACE_ERROR ((LM_ERROR, "(%P|%t) - Error, incorrect string returned <%C>\n",
+ the_string.in ()));
+ status = 1;
+ }
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) - string from hello_again returned <%C>\n",
+ the_string.in ()));
+ the_string = hello_again->get_string_again ();
+
+ if (ACE_OS::strcmp (the_string.in (), "Bye!") != 0)
+ {
+ ACE_ERROR ((LM_ERROR, "(%P|%t) - Error, incorrect string returned <%C>\n",
+ the_string.in ()));
+ status = 1;
+ }
+
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) - string from hello_again returned <%C>\n",
+ the_string.in ()));
+ hello_again->shutdown ();
+ }
+ catch (const CORBA::Exception& ex)
+ {
+ ex._tao_print_exception ("Exception caught:");
+ status = 1;
+ }
+
+ return status;
+
+}
diff --git a/TAO/tests/Collocated_DerivedIF/Client_Task.h b/TAO/tests/Collocated_DerivedIF/Client_Task.h
new file mode 100644
index 00000000000..8f6557cdec8
--- /dev/null
+++ b/TAO/tests/Collocated_DerivedIF/Client_Task.h
@@ -0,0 +1,37 @@
+//
+// $Id$
+//
+
+#ifndef COLLOCATED_TEST_CLIENT_TASK_H
+#define COLLOCATED_TEST_CLIENT_TASK_H
+#include /**/ "ace/pre.h"
+#include "ace/Task.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+#include "tao/ORB.h"
+
+
+/// Implement a Task to run the client as a thread
+class Client_Task : public ACE_Task_Base
+{
+public:
+
+ /// Constructor
+ Client_Task (const ACE_TCHAR *input,
+ CORBA::ORB_ptr corb,
+ ACE_Thread_Manager *thr_mgr);
+
+ /// Thread entry point
+ int svc (void);
+
+private:
+ const ACE_TCHAR *input_;
+
+ CORBA::ORB_var corb_;
+
+};
+
+#include /**/ "ace/post.h"
+#endif /* COLLOCATED_TEST_CLIENT_TASK_H */
diff --git a/TAO/tests/Collocated_DerivedIF/Collocated_DerivedIF.mpc b/TAO/tests/Collocated_DerivedIF/Collocated_DerivedIF.mpc
new file mode 100644
index 00000000000..7fab7ae785c
--- /dev/null
+++ b/TAO/tests/Collocated_DerivedIF/Collocated_DerivedIF.mpc
@@ -0,0 +1,8 @@
+// -*- MPC -*-
+// $Id$
+
+// Thru_Pu is disabled, enable direct
+project(Collocated_DIF): taoserver {
+ exename = Collocated_DerivedIF
+ idlflags += -Sp -Gd
+}
diff --git a/TAO/tests/Collocated_DerivedIF/Collocated_Test.cpp b/TAO/tests/Collocated_DerivedIF/Collocated_Test.cpp
new file mode 100644
index 00000000000..282295ad5e3
--- /dev/null
+++ b/TAO/tests/Collocated_DerivedIF/Collocated_Test.cpp
@@ -0,0 +1,106 @@
+//$Id$
+#include "Server_Task.h"
+#include "Client_Task.h"
+#include "ace/Get_Opt.h"
+#include "ace/Argv_Type_Converter.h"
+#include "ace/SString.h"
+#include "ace/Manual_Event.h"
+
+const ACE_TCHAR *output = ACE_TEXT("test.ior");
+const ACE_TCHAR *input = ACE_TEXT("file://test.ior");
+// static int named_orbs = 0;
+ACE_CString server_orb;
+ACE_CString client_orb;
+int
+parse_args (int argc, ACE_TCHAR *argv[])
+{
+ ACE_Get_Opt get_opts (argc, argv, ACE_TEXT("k:o:n"));
+ int c;
+
+ while ((c = get_opts ()) != -1)
+ switch (c)
+ {
+ case 'o':
+ output = get_opts.opt_arg ();
+ break;
+ case 'k':
+ input = get_opts.opt_arg ();
+ break;
+ case 'n':
+ // named_orbs = 1;
+ server_orb.set ("server_orb");
+ client_orb.set ("client_orb");
+ break;
+ case '?':
+ default:
+ // This is a hack but that is okay!
+ return 0;
+ }
+ // Indicates successful parsing of the command line
+ return 0;
+}
+
+int
+ACE_TMAIN(int argc, ACE_TCHAR *argv[])
+{
+ if (parse_args (argc,
+ argv) == -1)
+ return -1;
+
+ try
+ {
+ ACE_Argv_Type_Converter satc (argc, argv);
+ CORBA::ORB_var sorb =
+ CORBA::ORB_init (satc.get_argc (),
+ satc.get_TCHAR_argv (),
+ server_orb.c_str ());
+
+ ACE_Manual_Event me;
+ Server_Task server_task (output,
+ sorb.in (),
+ me,
+ ACE_Thread_Manager::instance ());
+
+ if (server_task.activate (THR_NEW_LWP | THR_JOINABLE,
+ 1,
+ 1) == -1)
+ {
+ ACE_ERROR ((LM_ERROR, "Error activating server task\n"));
+ }
+
+ // Wait for the server thread to do some processing
+ me.wait ();
+
+ ACE_Argv_Type_Converter catc (argc, argv);
+ CORBA::ORB_var corb =
+ CORBA::ORB_init (catc.get_argc (),
+ catc.get_TCHAR_argv (),
+ client_orb.c_str ());
+
+ Client_Task client_task (input,
+ corb.in (),
+ ACE_Thread_Manager::instance ());
+
+ if (client_task.activate (THR_NEW_LWP | THR_JOINABLE,
+ 1,
+ 1) == -1)
+ {
+ ACE_ERROR ((LM_ERROR, "Error activating client task\n"));
+ }
+
+ // Wait for the client and server to finish
+ ACE_Thread_Manager::instance ()->wait ();
+
+ // Now that all threads have completed we can destroy the ORB
+ sorb->destroy ();
+ if (server_orb != client_orb)
+ {
+ corb->destroy ();
+ }
+ }
+ catch (const CORBA::Exception&)
+ {
+ // Ignore exceptions..
+ }
+ return 0;
+}
diff --git a/TAO/tests/Collocated_DerivedIF/Hello.cpp b/TAO/tests/Collocated_DerivedIF/Hello.cpp
new file mode 100644
index 00000000000..ad2dff673c9
--- /dev/null
+++ b/TAO/tests/Collocated_DerivedIF/Hello.cpp
@@ -0,0 +1,82 @@
+// $Id$
+
+#include "Hello.h"
+#include "tao/ORB_Core.h"
+#include "tao/ORB_Table.h"
+#include "tao/ORB_Core_Auto_Ptr.h"
+
+HelloAgain::HelloAgain (CORBA::ORB_ptr orb,
+ ACE_thread_t thrid)
+ : orb_ (CORBA::ORB::_duplicate (orb))
+ , thr_id_ (thrid)
+{
+}
+char *
+HelloAgain::get_string_again (void)
+{
+ ACE_DEBUG ((LM_DEBUG,
+ "(%P|%t) Upcall get_string_again in process ..\n"));
+
+ /// Use portable thread IDs
+ ACE_Thread_ID self_ID;
+ // Thread ID from Server
+ ACE_Thread_ID this_ID;
+ this_ID.id(this->thr_id_);
+
+ // Servant Thread ID same as Thread ID server, so a remote call,
+ // in case of a collocation the servant runs in calling thread (Client)
+ if (self_ID == this_ID)
+ {
+ ACE_ERROR ((LM_ERROR,"(%P|%t) ERROR: A remote call has been made \n"));
+ }
+ else
+ {
+ if (this->orb_->orb_core ()->optimize_collocation_objects () &&
+ this->orb_->orb_core ()->use_global_collocation ())
+ {
+ ACE_DEBUG ((LM_DEBUG,
+ "(%P|%t)OK: An expected collocated call has been made \n"));
+ }
+ }
+ return CORBA::string_dup ("Bye!");
+}
+
+char *
+HelloAgain::get_string (void)
+{
+ ACE_DEBUG ((LM_DEBUG,
+ "(%P|%t) HelloAgain::get_string Upcall get_string in process ..\n"));
+
+ // Use portable thread IDs
+ ACE_Thread_ID self_ID;
+ // Thread ID from Server
+ ACE_Thread_ID this_ID;
+ this_ID.id(this->thr_id_);
+
+ // Servant Thread ID same as Thread ID server, so a remote call,
+ // in case of a collocation the servant runs in calling thread (Client)
+ if (self_ID == this_ID)
+ {
+ ACE_ERROR ((LM_ERROR,"(%P|%t) ERROR: A remote call has been made \n"));
+ }
+ else
+ {
+ if (this->orb_->orb_core ()->optimize_collocation_objects () &&
+ this->orb_->orb_core ()->use_global_collocation ())
+ {
+ ACE_DEBUG ((LM_DEBUG,
+ "(%P|%t) OK: An expected collocated call has been made \n"));
+ }
+ }
+ return CORBA::string_dup ("Hello there!");
+}
+void
+HelloAgain::shutdown (void)
+{
+ // Give the client thread time to return from the collocated
+ // call to this method before shutting down the ORB. We sleep
+ // to avoid BAD_INV_ORDER exceptions on fast dual processor machines.
+ ACE_OS::sleep (1);
+ this->orb_->shutdown (0);
+}
+
diff --git a/TAO/tests/Collocated_DerivedIF/Hello.h b/TAO/tests/Collocated_DerivedIF/Hello.h
new file mode 100644
index 00000000000..a028b36b192
--- /dev/null
+++ b/TAO/tests/Collocated_DerivedIF/Hello.h
@@ -0,0 +1,36 @@
+//
+// $Id$
+//
+
+#ifndef HELLO_H
+#define HELLO_H
+#include /**/ "ace/pre.h"
+
+#include "TestS.h"
+
+ /// Implement the Test::HelloAgain interface
+ class HelloAgain
+ : //public virtual Test::Hello,
+ public virtual POA_Test::HelloAgain
+ {
+ public:
+ /// Constructor
+ HelloAgain(CORBA::ORB_ptr orb,
+ ACE_thread_t thr_id);
+
+ // = The skeleton methods
+ virtual char * get_string_again (void);
+ virtual char * get_string (void);
+ virtual void shutdown (void);
+
+
+ private:
+ /// Use an ORB reference to conver strings to objects and shutdown
+ /// the application.
+ CORBA::ORB_var orb_;
+ ACE_thread_t thr_id_;
+ };
+
+
+#include /**/ "ace/post.h"
+#endif /* HELLO_H */
diff --git a/TAO/tests/Collocated_DerivedIF/README b/TAO/tests/Collocated_DerivedIF/README
new file mode 100644
index 00000000000..a500775be3d
--- /dev/null
+++ b/TAO/tests/Collocated_DerivedIF/README
@@ -0,0 +1,6 @@
+// $Id$
+CollocationStrategy direct and interface inheritance.
+
+The base needs to be generated also with direct collocation enabled,
+otherwise no direct collocation.
+
diff --git a/TAO/tests/Collocated_DerivedIF/Server_Task.cpp b/TAO/tests/Collocated_DerivedIF/Server_Task.cpp
new file mode 100644
index 00000000000..4d1e74d4a9a
--- /dev/null
+++ b/TAO/tests/Collocated_DerivedIF/Server_Task.cpp
@@ -0,0 +1,91 @@
+//
+// $Id$
+//
+#include "Server_Task.h"
+#include "TestS.h"
+#include "Hello.h"
+
+#include "ace/Manual_Event.h"
+
+Server_Task::Server_Task (const ACE_TCHAR *output,
+ CORBA::ORB_ptr sorb,
+ ACE_Manual_Event &me,
+ ACE_Thread_Manager *thr_mgr)
+ : ACE_Task_Base (thr_mgr)
+ , output_ (output)
+ , me_ (me)
+ , sorb_ (CORBA::ORB::_duplicate (sorb))
+{
+}
+
+int
+Server_Task::svc (void)
+{
+ try
+ {
+ CORBA::Object_var poa_object =
+ this->sorb_->resolve_initial_references("RootPOA");
+
+ PortableServer::POA_var root_poa =
+ PortableServer::POA::_narrow (poa_object.in ());
+
+
+ if (CORBA::is_nil (root_poa.in ()))
+ ACE_ERROR_RETURN ((LM_ERROR,
+ " (%P|%t) Panic: nil RootPOA\n"),
+ 1);
+
+
+ PortableServer::POAManager_var poa_manager =
+ root_poa->the_POAManager ();
+
+ HelloAgain *hello_impl;
+ ACE_NEW_RETURN (hello_impl,
+ HelloAgain (this->sorb_.in (),
+ ACE_Thread::self ()),
+ 1);
+ PortableServer::ServantBase_var owner1_transfer(hello_impl);
+
+ PortableServer::ObjectId_var id =
+ root_poa->activate_object (hello_impl);
+
+ CORBA::Object_var object = root_poa->id_to_reference (id.in ());
+
+ Test::HelloAgain_var hello =
+ Test::HelloAgain::_narrow (object.in ());
+
+ CORBA::String_var ior =
+ this->sorb_->object_to_string (hello.in ());
+
+
+ // Output the IOR to the <this->output_>
+ FILE *output_file= ACE_OS::fopen (this->output_,
+ "w");
+ if (output_file == 0)
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "Cannot open output file for writing IOR: %s",
+ this->output_),
+ 1);
+
+ ACE_OS::fprintf (output_file, "%s", ior.in ());
+ // ACE_OS::fprintf (output_file, "%s", ior1.in ());
+
+ ACE_OS::fclose (output_file);
+
+ poa_manager->activate ();
+
+ // Signal the main thread before we call orb->run ();
+ this->me_.signal ();
+
+ this->sorb_->run ();
+
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) server - event loop finished\n"));
+ }
+ catch (const CORBA::Exception& ex)
+ {
+ ex._tao_print_exception ("Exception caught:");
+ return 1;
+ }
+
+ return 0;
+}
diff --git a/TAO/tests/Collocated_DerivedIF/Server_Task.h b/TAO/tests/Collocated_DerivedIF/Server_Task.h
new file mode 100644
index 00000000000..e42043c0711
--- /dev/null
+++ b/TAO/tests/Collocated_DerivedIF/Server_Task.h
@@ -0,0 +1,48 @@
+// -*- C++ -*-
+//
+// $Id$
+
+#ifndef COLLOCATED_SERVER_TASK_H
+#define COLLOCATED_SERVER_TASK_H
+
+#include /**/ "ace/pre.h"
+
+#include "ace/Task.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#include "tao/ORB.h"
+
+ACE_BEGIN_VERSIONED_NAMESPACE_DECL
+class ACE_Manual_Event;
+ACE_END_VERSIONED_NAMESPACE_DECL
+
+/// Implement a Task to run the server in a single thread
+class Server_Task : public ACE_Task_Base
+{
+public:
+ /// Constructor
+ Server_Task (const ACE_TCHAR *output,
+ CORBA::ORB_ptr sorb,
+ ACE_Manual_Event &me,
+ ACE_Thread_Manager *thr_mgr);
+
+ /// Thread entry point
+ int svc (void);
+
+private:
+ /// Output file for IOR
+ const ACE_TCHAR *output_;
+
+ /// Manual event to wake up the main thread to create a client
+ /// thread.
+ ACE_Manual_Event &me_;
+
+ CORBA::ORB_var sorb_;
+};
+
+#include /**/ "ace/post.h"
+
+#endif /* COLLOCATED_SERVER_TASK_H */
diff --git a/TAO/tests/Collocated_DerivedIF/Test.idl b/TAO/tests/Collocated_DerivedIF/Test.idl
new file mode 100644
index 00000000000..b0eef86c20b
--- /dev/null
+++ b/TAO/tests/Collocated_DerivedIF/Test.idl
@@ -0,0 +1,21 @@
+// $Id$
+
+/// Put the interfaces in a module, to avoid global namespace pollution
+module Test
+{
+ /// A very simple interface
+ interface Hello
+ {
+ /// Return a simple string
+ string get_string ();
+
+ /// A method to shutdown the ORB
+ oneway void shutdown ();
+ };
+
+ // A derived interface
+ interface HelloAgain : Hello
+ {
+ string get_string_again ();
+ };
+};
diff --git a/TAO/tests/Collocated_DerivedIF/run_test.pl b/TAO/tests/Collocated_DerivedIF/run_test.pl
new file mode 100755
index 00000000000..5ac1c3c5df3
--- /dev/null
+++ b/TAO/tests/Collocated_DerivedIF/run_test.pl
@@ -0,0 +1,33 @@
+eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
+ & eval 'exec perl -S $0 $argv:q'
+ if 0;
+
+# $Id$
+# -*- perl -*-
+
+use lib "$ENV{ACE_ROOT}/bin";
+use PerlACE::TestTarget;
+
+my $server = PerlACE::TestTarget::create_target(1) || die "Create target 1 failed\n";
+
+$iorbase = "test.ior";
+my $server_iorfile = $server->LocalFile ($iorbase);
+$server->DeleteFile($iorbase);
+
+$status = 0;
+
+$SV = $server->CreateProcess ("Collocated_DerivedIF");
+
+print STDERR "======== Running with -ORBCollocation global -ORBCollocationStrategy direct \n";
+$SV->Arguments ("-o $server_iorfile -k file://$server_iorfile -ORBCollocation global -ORBCollocationStrategy direct");
+$sv = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
+
+if ($sv != 0) {
+ print STDERR "ERROR in Collocated_Test\n";
+ $status = 1;
+}
+
+$server->DeleteFile($iorbase);
+$server->GetStderrLog();
+
+exit $status;
diff --git a/TAO/tests/Collocated_NoColl/Client_Task.cpp b/TAO/tests/Collocated_NoColl/Client_Task.cpp
new file mode 100644
index 00000000000..4708f2680d8
--- /dev/null
+++ b/TAO/tests/Collocated_NoColl/Client_Task.cpp
@@ -0,0 +1,62 @@
+//
+// $Id$
+//
+
+#include "Client_Task.h"
+#include "TestC.h"
+
+Client_Task::Client_Task (const ACE_TCHAR *ior,
+ CORBA::ORB_ptr corb,
+ ACE_Thread_Manager *thr_mgr)
+ : ACE_Task_Base (thr_mgr)
+ , input_ (ior)
+ , corb_ (CORBA::ORB::_duplicate (corb))
+
+{
+}
+
+int
+Client_Task::svc (void)
+{
+ int status = 0;
+
+ try
+ {
+ CORBA::Object_var tmp =
+ this->corb_->string_to_object (input_);
+
+ Test::Hello_var hello =
+ Test::Hello::_narrow(tmp.in ());
+
+ if (CORBA::is_nil (hello.in ()))
+ {
+ ACE_ERROR_RETURN ((LM_DEBUG,
+ "Nil Test::Hello reference <%s>\n",
+ input_),
+ 1);
+ }
+
+ CORBA::String_var the_string =
+ hello->get_string ();
+
+ if (ACE_OS::strcmp (the_string.in (), "Hello there!") != 0)
+ {
+ ACE_ERROR ((LM_ERROR, "(%P|%t) - Error, incorrect string returned <%C>\n",
+ the_string.in ()));
+ status = 1;
+ }
+
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) - string returned <%C>\n",
+ the_string.in ()));
+
+ hello->shutdown ();
+ }
+ catch (const CORBA::Exception& ex)
+ {
+ ex._tao_print_exception ("Exception caught:");
+ status = 1;
+ }
+
+ return status;
+
+}
diff --git a/TAO/tests/Collocated_NoColl/Client_Task.h b/TAO/tests/Collocated_NoColl/Client_Task.h
new file mode 100644
index 00000000000..8f6557cdec8
--- /dev/null
+++ b/TAO/tests/Collocated_NoColl/Client_Task.h
@@ -0,0 +1,37 @@
+//
+// $Id$
+//
+
+#ifndef COLLOCATED_TEST_CLIENT_TASK_H
+#define COLLOCATED_TEST_CLIENT_TASK_H
+#include /**/ "ace/pre.h"
+#include "ace/Task.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+#include "tao/ORB.h"
+
+
+/// Implement a Task to run the client as a thread
+class Client_Task : public ACE_Task_Base
+{
+public:
+
+ /// Constructor
+ Client_Task (const ACE_TCHAR *input,
+ CORBA::ORB_ptr corb,
+ ACE_Thread_Manager *thr_mgr);
+
+ /// Thread entry point
+ int svc (void);
+
+private:
+ const ACE_TCHAR *input_;
+
+ CORBA::ORB_var corb_;
+
+};
+
+#include /**/ "ace/post.h"
+#endif /* COLLOCATED_TEST_CLIENT_TASK_H */
diff --git a/TAO/tests/Collocated_NoColl/Collocated_NoColl.mpc b/TAO/tests/Collocated_NoColl/Collocated_NoColl.mpc
new file mode 100644
index 00000000000..8edb4eea37c
--- /dev/null
+++ b/TAO/tests/Collocated_NoColl/Collocated_NoColl.mpc
@@ -0,0 +1,8 @@
+// -*- MPC -*-
+// $Id$
+
+// Thru_Pu is default enabled
+project(Collocated_NoColl): taoserver {
+ exename = Collocated_NoColl
+
+}
diff --git a/TAO/tests/Collocated_NoColl/Collocated_Test.cpp b/TAO/tests/Collocated_NoColl/Collocated_Test.cpp
new file mode 100644
index 00000000000..282295ad5e3
--- /dev/null
+++ b/TAO/tests/Collocated_NoColl/Collocated_Test.cpp
@@ -0,0 +1,106 @@
+//$Id$
+#include "Server_Task.h"
+#include "Client_Task.h"
+#include "ace/Get_Opt.h"
+#include "ace/Argv_Type_Converter.h"
+#include "ace/SString.h"
+#include "ace/Manual_Event.h"
+
+const ACE_TCHAR *output = ACE_TEXT("test.ior");
+const ACE_TCHAR *input = ACE_TEXT("file://test.ior");
+// static int named_orbs = 0;
+ACE_CString server_orb;
+ACE_CString client_orb;
+int
+parse_args (int argc, ACE_TCHAR *argv[])
+{
+ ACE_Get_Opt get_opts (argc, argv, ACE_TEXT("k:o:n"));
+ int c;
+
+ while ((c = get_opts ()) != -1)
+ switch (c)
+ {
+ case 'o':
+ output = get_opts.opt_arg ();
+ break;
+ case 'k':
+ input = get_opts.opt_arg ();
+ break;
+ case 'n':
+ // named_orbs = 1;
+ server_orb.set ("server_orb");
+ client_orb.set ("client_orb");
+ break;
+ case '?':
+ default:
+ // This is a hack but that is okay!
+ return 0;
+ }
+ // Indicates successful parsing of the command line
+ return 0;
+}
+
+int
+ACE_TMAIN(int argc, ACE_TCHAR *argv[])
+{
+ if (parse_args (argc,
+ argv) == -1)
+ return -1;
+
+ try
+ {
+ ACE_Argv_Type_Converter satc (argc, argv);
+ CORBA::ORB_var sorb =
+ CORBA::ORB_init (satc.get_argc (),
+ satc.get_TCHAR_argv (),
+ server_orb.c_str ());
+
+ ACE_Manual_Event me;
+ Server_Task server_task (output,
+ sorb.in (),
+ me,
+ ACE_Thread_Manager::instance ());
+
+ if (server_task.activate (THR_NEW_LWP | THR_JOINABLE,
+ 1,
+ 1) == -1)
+ {
+ ACE_ERROR ((LM_ERROR, "Error activating server task\n"));
+ }
+
+ // Wait for the server thread to do some processing
+ me.wait ();
+
+ ACE_Argv_Type_Converter catc (argc, argv);
+ CORBA::ORB_var corb =
+ CORBA::ORB_init (catc.get_argc (),
+ catc.get_TCHAR_argv (),
+ client_orb.c_str ());
+
+ Client_Task client_task (input,
+ corb.in (),
+ ACE_Thread_Manager::instance ());
+
+ if (client_task.activate (THR_NEW_LWP | THR_JOINABLE,
+ 1,
+ 1) == -1)
+ {
+ ACE_ERROR ((LM_ERROR, "Error activating client task\n"));
+ }
+
+ // Wait for the client and server to finish
+ ACE_Thread_Manager::instance ()->wait ();
+
+ // Now that all threads have completed we can destroy the ORB
+ sorb->destroy ();
+ if (server_orb != client_orb)
+ {
+ corb->destroy ();
+ }
+ }
+ catch (const CORBA::Exception&)
+ {
+ // Ignore exceptions..
+ }
+ return 0;
+}
diff --git a/TAO/tests/Collocated_NoColl/Hello.cpp b/TAO/tests/Collocated_NoColl/Hello.cpp
new file mode 100644
index 00000000000..cfa1a886365
--- /dev/null
+++ b/TAO/tests/Collocated_NoColl/Hello.cpp
@@ -0,0 +1,76 @@
+//
+// $Id$
+//
+#include "Hello.h"
+#include "tao/ORB_Core.h"
+#include "tao/ORB_Table.h"
+#include "tao/ORB_Core_Auto_Ptr.h"
+
+ Hello::Hello (CORBA::ORB_ptr orb,
+ ACE_thread_t thrid)
+ : orb_ (CORBA::ORB::_duplicate (orb))
+ , thr_id_ (thrid)
+{
+}
+
+char *
+Hello::get_string (void)
+{
+ ACE_DEBUG ((LM_DEBUG,
+ "(%P|%t) Upcall in process ..\n"));
+
+ // Use portable thread IDs
+ ACE_Thread_ID self_ID;
+ // Thread ID from Server
+ ACE_Thread_ID this_ID;
+ this_ID.id(this->thr_id_);
+
+ // Servant Thread ID same as Thread ID server, so a remote call,
+ // in case of a collocation the servant runs in calling thread (Client)
+ if (self_ID == this_ID)
+ {
+ if (this->orb_->orb_core ()->optimize_collocation_objects () &&
+ this->orb_->orb_core ()->use_global_collocation ())
+ {
+ ACE_DEBUG ((LM_DEBUG,
+ "(%P|%t) OK: A remote call has been made \n"));
+ }
+ else if (this->orb_->orb_core ()->optimize_collocation_objects () &&
+ this->orb_->orb_core ()->use_global_collocation () == 0)
+ {
+ TAO::ORB_Table * const orb_table =
+ TAO::ORB_Table::instance ();
+
+ TAO_ORB_Core_Auto_Ptr tmp (orb_table->find ("server_orb"));
+ if (tmp.get () == 0)
+ {
+ // We are running on a single ORB and this is an error.
+ ACE_ERROR ((LM_ERROR,
+ "(%P|%t) ERROR: A remote call has been made "
+ " with a single ORB "
+ " exiting ..\n"));
+ ACE_OS::abort ();
+ }
+ }
+ }
+ else
+ {
+ if (this->orb_->orb_core ()->optimize_collocation_objects () &&
+ this->orb_->orb_core ()->use_global_collocation ())
+ {
+ ACE_ERROR ((LM_ERROR,
+ "(%P|%t) ERROR: An unexpected collocated call has been made \n"));
+ }
+ }
+ return CORBA::string_dup ("Hello there!");
+}
+
+void
+Hello::shutdown (void)
+{
+ // Give the client thread time to return from the collocated
+ // call to this method before shutting down the ORB. We sleep
+ // to avoid BAD_INV_ORDER exceptions on fast dual processor machines.
+ ACE_OS::sleep (1);
+ this->orb_->shutdown (0);
+}
diff --git a/TAO/tests/Collocated_NoColl/Hello.h b/TAO/tests/Collocated_NoColl/Hello.h
new file mode 100644
index 00000000000..1d5e27d075f
--- /dev/null
+++ b/TAO/tests/Collocated_NoColl/Hello.h
@@ -0,0 +1,34 @@
+//
+// $Id$
+//
+
+#ifndef HELLO_H
+#define HELLO_H
+#include /**/ "ace/pre.h"
+
+#include "TestS.h"
+
+/// Implement the Test::Hello interface
+class Hello
+ : public virtual POA_Test::Hello
+{
+public:
+ /// Constructor
+ Hello (CORBA::ORB_ptr orb,
+ ACE_thread_t thr_id);
+
+ // = The skeleton methods
+ virtual char * get_string (void);
+
+ virtual void shutdown (void);
+
+private:
+ /// Use an ORB reference to conver strings to objects and shutdown
+ /// the application.
+ CORBA::ORB_var orb_;
+
+ ACE_thread_t thr_id_;
+};
+
+#include /**/ "ace/post.h"
+#endif /* HELLO_H */
diff --git a/TAO/tests/Collocated_NoColl/Server_Task.cpp b/TAO/tests/Collocated_NoColl/Server_Task.cpp
new file mode 100644
index 00000000000..98f37e052e3
--- /dev/null
+++ b/TAO/tests/Collocated_NoColl/Server_Task.cpp
@@ -0,0 +1,87 @@
+//
+// $Id$
+//
+#include "Server_Task.h"
+#include "TestS.h"
+#include "Hello.h"
+
+#include "ace/Manual_Event.h"
+
+Server_Task::Server_Task (const ACE_TCHAR *output,
+ CORBA::ORB_ptr sorb,
+ ACE_Manual_Event &me,
+ ACE_Thread_Manager *thr_mgr)
+ : ACE_Task_Base (thr_mgr)
+ , output_ (output)
+ , me_ (me)
+ , sorb_ (CORBA::ORB::_duplicate (sorb))
+{
+}
+
+int
+Server_Task::svc (void)
+{
+ try
+ {
+ CORBA::Object_var poa_object =
+ this->sorb_->resolve_initial_references("RootPOA");
+
+ PortableServer::POA_var root_poa =
+ PortableServer::POA::_narrow (poa_object.in ());
+
+ if (CORBA::is_nil (root_poa.in ()))
+ ACE_ERROR_RETURN ((LM_ERROR,
+ " (%P|%t) Panic: nil RootPOA\n"),
+ 1);
+
+ PortableServer::POAManager_var poa_manager =
+ root_poa->the_POAManager ();
+
+ Hello *hello_impl;
+ ACE_NEW_RETURN (hello_impl,
+ Hello (this->sorb_.in (),
+ ACE_Thread::self ()),
+ 1);
+
+ PortableServer::ServantBase_var owner_transfer(hello_impl);
+
+ PortableServer::ObjectId_var id =
+ root_poa->activate_object (hello_impl);
+
+ CORBA::Object_var object = root_poa->id_to_reference (id.in ());
+
+ Test::Hello_var hello =
+ Test::Hello::_narrow (object.in ());
+
+ CORBA::String_var ior =
+ this->sorb_->object_to_string (hello.in ());
+
+ // Output the IOR to the <this->output_>
+ FILE *output_file= ACE_OS::fopen (this->output_,
+ "w");
+ if (output_file == 0)
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "Cannot open output file for writing IOR: %s",
+ this->output_),
+ 1);
+
+ ACE_OS::fprintf (output_file, "%s", ior.in ());
+ ACE_OS::fclose (output_file);
+
+ poa_manager->activate ();
+
+ // Signal the main thread before we call orb->run ();
+ this->me_.signal ();
+
+ this->sorb_->run ();
+
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) server - event loop finished\n"));
+ }
+ catch (const CORBA::Exception& ex)
+ {
+ ex._tao_print_exception ("Exception caught:");
+ return 1;
+ }
+
+ return 0;
+}
diff --git a/TAO/tests/Collocated_NoColl/Server_Task.h b/TAO/tests/Collocated_NoColl/Server_Task.h
new file mode 100644
index 00000000000..e42043c0711
--- /dev/null
+++ b/TAO/tests/Collocated_NoColl/Server_Task.h
@@ -0,0 +1,48 @@
+// -*- C++ -*-
+//
+// $Id$
+
+#ifndef COLLOCATED_SERVER_TASK_H
+#define COLLOCATED_SERVER_TASK_H
+
+#include /**/ "ace/pre.h"
+
+#include "ace/Task.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#include "tao/ORB.h"
+
+ACE_BEGIN_VERSIONED_NAMESPACE_DECL
+class ACE_Manual_Event;
+ACE_END_VERSIONED_NAMESPACE_DECL
+
+/// Implement a Task to run the server in a single thread
+class Server_Task : public ACE_Task_Base
+{
+public:
+ /// Constructor
+ Server_Task (const ACE_TCHAR *output,
+ CORBA::ORB_ptr sorb,
+ ACE_Manual_Event &me,
+ ACE_Thread_Manager *thr_mgr);
+
+ /// Thread entry point
+ int svc (void);
+
+private:
+ /// Output file for IOR
+ const ACE_TCHAR *output_;
+
+ /// Manual event to wake up the main thread to create a client
+ /// thread.
+ ACE_Manual_Event &me_;
+
+ CORBA::ORB_var sorb_;
+};
+
+#include /**/ "ace/post.h"
+
+#endif /* COLLOCATED_SERVER_TASK_H */
diff --git a/TAO/tests/Collocated_NoColl/Test.idl b/TAO/tests/Collocated_NoColl/Test.idl
new file mode 100644
index 00000000000..3c0976e106d
--- /dev/null
+++ b/TAO/tests/Collocated_NoColl/Test.idl
@@ -0,0 +1,20 @@
+//
+// $Id$
+//
+
+/// Put the interfaces in a module, to avoid global namespace pollution
+module Test
+{
+ /// A very simple interface
+ interface Hello
+ {
+ /// Return a simple string
+ string get_string ();
+
+ /// A method to shutdown the ORB
+ /**
+ * This method is used to simplify the test shutdown process
+ */
+ oneway void shutdown ();
+ };
+};
diff --git a/TAO/tests/Collocated_NoColl/run_test.pl b/TAO/tests/Collocated_NoColl/run_test.pl
new file mode 100755
index 00000000000..0b0ac76ed01
--- /dev/null
+++ b/TAO/tests/Collocated_NoColl/run_test.pl
@@ -0,0 +1,33 @@
+eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
+ & eval 'exec perl -S $0 $argv:q'
+ if 0;
+
+# $Id$
+# -*- perl -*-
+
+use lib "$ENV{ACE_ROOT}/bin";
+use PerlACE::TestTarget;
+
+my $server = PerlACE::TestTarget::create_target(1) || die "Create target 1 failed\n";
+
+$iorbase = "test.ior";
+my $server_iorfile = $server->LocalFile ($iorbase);
+$server->DeleteFile($iorbase);
+
+$status = 0;
+
+$SV = $server->CreateProcess ("Collocated_NoColl");
+
+print STDERR "======== Running with -ORBCollocation no \n";
+$SV->Arguments ("-o $server_iorfile -k file://$server_iorfile -ORBCollocation no");
+$sv = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
+
+if ($sv != 0) {
+ print STDERR "ERROR in Collocated_Test\n";
+ $status = 1;
+}
+
+$server->DeleteFile($iorbase);
+$server->GetStderrLog();
+
+exit $status;
diff --git a/TAO/tests/Collocated_ThruP_Sp/Client_Task.cpp b/TAO/tests/Collocated_ThruP_Sp/Client_Task.cpp
new file mode 100644
index 00000000000..7569e6ddb7b
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp/Client_Task.cpp
@@ -0,0 +1,65 @@
+//
+// $Id$
+//
+
+#include "Client_Task.h"
+#include "TestC.h"
+
+Client_Task::Client_Task (const ACE_TCHAR *ior,
+ CORBA::ORB_ptr corb,
+ ACE_Thread_Manager *thr_mgr)
+ : ACE_Task_Base (thr_mgr)
+ , input_ (ior)
+ , corb_ (CORBA::ORB::_duplicate (corb))
+
+{
+}
+
+int
+Client_Task::svc (void)
+{
+ CORBA::Boolean exception = false;
+ try
+ {
+ CORBA::Object_var tmp =
+ this->corb_->string_to_object (input_);
+
+ Test::Hello_var hello =
+ Test::Hello::_narrow(tmp.in ());
+
+ if (CORBA::is_nil (hello.in ()))
+ {
+ ACE_ERROR_RETURN ((LM_DEBUG,
+ "Nil Test::Hello reference <%s>\n",
+ input_),
+ 1);
+ }
+ try
+ {
+ CORBA::String_var the_string =
+ hello->get_string ();
+
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) - string returned <%C>\n",
+ the_string.in ()));
+
+ hello->shutdown ();
+ }
+ catch (CORBA::INTERNAL)
+ {
+ exception = true;
+ ACE_DEBUG ((LM_DEBUG, "OK: Client_Task Expected exception received\n"));
+ corb_->destroy ();
+ return 0;
+ }
+ }
+ catch (const CORBA::Exception& ex)
+ {
+ ex._tao_print_exception ("Exception caught:");
+ return 1;
+ }
+ if (!exception)
+ {
+ ACE_ERROR ((LM_ERROR, "(ERROR: Client_Task::svc Expected exception not received\n"));
+ }
+ return 0;
+}
diff --git a/TAO/tests/Collocated_ThruP_Sp/Client_Task.h b/TAO/tests/Collocated_ThruP_Sp/Client_Task.h
new file mode 100644
index 00000000000..8f6557cdec8
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp/Client_Task.h
@@ -0,0 +1,37 @@
+//
+// $Id$
+//
+
+#ifndef COLLOCATED_TEST_CLIENT_TASK_H
+#define COLLOCATED_TEST_CLIENT_TASK_H
+#include /**/ "ace/pre.h"
+#include "ace/Task.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+#include "tao/ORB.h"
+
+
+/// Implement a Task to run the client as a thread
+class Client_Task : public ACE_Task_Base
+{
+public:
+
+ /// Constructor
+ Client_Task (const ACE_TCHAR *input,
+ CORBA::ORB_ptr corb,
+ ACE_Thread_Manager *thr_mgr);
+
+ /// Thread entry point
+ int svc (void);
+
+private:
+ const ACE_TCHAR *input_;
+
+ CORBA::ORB_var corb_;
+
+};
+
+#include /**/ "ace/post.h"
+#endif /* COLLOCATED_TEST_CLIENT_TASK_H */
diff --git a/TAO/tests/Collocated_ThruP_Sp/Collocated_Test.cpp b/TAO/tests/Collocated_ThruP_Sp/Collocated_Test.cpp
new file mode 100644
index 00000000000..eade083328b
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp/Collocated_Test.cpp
@@ -0,0 +1,105 @@
+//$Id$
+#include "Server_Task.h"
+#include "Client_Task.h"
+#include "ace/Get_Opt.h"
+#include "ace/Argv_Type_Converter.h"
+#include "ace/SString.h"
+#include "ace/Manual_Event.h"
+
+const ACE_TCHAR *output = ACE_TEXT("test.ior");
+const ACE_TCHAR *input = ACE_TEXT("file://test.ior");
+// static int named_orbs = 0;
+ACE_CString server_orb;
+ACE_CString client_orb;
+int
+parse_args (int argc, ACE_TCHAR *argv[])
+{
+ ACE_Get_Opt get_opts (argc, argv, ACE_TEXT("k:o:n"));
+ int c;
+
+ while ((c = get_opts ()) != -1)
+ switch (c)
+ {
+ case 'o':
+ output = get_opts.opt_arg ();
+ break;
+ case 'k':
+ input = get_opts.opt_arg ();
+ break;
+ case 'n':
+ // named_orbs = 1;
+ server_orb.set ("server_orb");
+ client_orb.set ("client_orb");
+ break;
+ case '?':
+ default:
+ // This is a hack but that is okay!
+ return 0;
+ }
+ // Indicates successful parsing of the command line
+ return 0;
+}
+
+int
+ACE_TMAIN(int argc, ACE_TCHAR *argv[])
+{
+ if (parse_args (argc, argv) == -1)
+ return -1;
+
+ try
+ {
+ ACE_Argv_Type_Converter satc (argc, argv);
+ CORBA::ORB_var sorb =
+ CORBA::ORB_init (satc.get_argc (),
+ satc.get_TCHAR_argv (),
+ server_orb.c_str ());
+
+ ACE_Manual_Event me;
+ Server_Task server_task (output,
+ sorb.in (),
+ me,
+ ACE_Thread_Manager::instance ());
+
+ if (server_task.activate (THR_NEW_LWP | THR_JOINABLE,
+ 1,
+ 1) == -1)
+ {
+ ACE_ERROR ((LM_ERROR, "Error activating server task\n"));
+ }
+
+ // Wait for the server thread to do some processing
+ me.wait ();
+
+ ACE_Argv_Type_Converter catc (argc, argv);
+ CORBA::ORB_var corb =
+ CORBA::ORB_init (catc.get_argc (),
+ catc.get_TCHAR_argv (),
+ client_orb.c_str ());
+
+ Client_Task client_task (input,
+ corb.in (),
+ ACE_Thread_Manager::instance ());
+
+ if (client_task.activate (THR_NEW_LWP | THR_JOINABLE,
+ 1,
+ 1) == -1)
+ {
+ ACE_ERROR ((LM_ERROR, "Error activating client task\n"));
+ }
+
+ // Wait for the client and server to finish
+ ACE_Thread_Manager::instance ()->wait ();
+
+ // Now that all threads have completed we can destroy the ORB
+ sorb->destroy ();
+ if (server_orb != client_orb)
+ {
+ corb->destroy ();
+ }
+ }
+ catch (const CORBA::Exception&)
+ {
+ // Ignore exceptions..
+ }
+ return 0;
+}
diff --git a/TAO/tests/Collocated_ThruP_Sp/Collocated_ThruP_Sp.mpc b/TAO/tests/Collocated_ThruP_Sp/Collocated_ThruP_Sp.mpc
new file mode 100644
index 00000000000..86c10ace774
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp/Collocated_ThruP_Sp.mpc
@@ -0,0 +1,9 @@
+// -*- MPC -*-
+// $Id$
+
+// Disable THRU_POA Collocation
+
+project(Collocated_ThruP_Sp): taoserver {
+ exename = Collocated_ThruP_Sp
+ idlflags += -Sp
+}
diff --git a/TAO/tests/Collocated_ThruP_Sp/Hello.cpp b/TAO/tests/Collocated_ThruP_Sp/Hello.cpp
new file mode 100644
index 00000000000..e77d95e07bc
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp/Hello.cpp
@@ -0,0 +1,32 @@
+//
+// $Id$
+//
+#include "Hello.h"
+#include "tao/ORB_Core.h"
+#include "tao/ORB_Table.h"
+#include "tao/ORB_Core_Auto_Ptr.h"
+
+ Hello::Hello (CORBA::ORB_ptr orb,
+ ACE_thread_t thrid)
+ : orb_ (CORBA::ORB::_duplicate (orb))
+ , thr_id_ (thrid)
+{
+}
+
+char *
+Hello::get_string (void)
+{
+ ACE_ERROR ((LM_DEBUG,
+ "(%P|%t) ERROR: Upcall in process ..\n"));
+ return CORBA::string_dup ("Hello there!");
+}
+
+void
+Hello::shutdown (void)
+{
+ // Give the client thread time to return from the collocated
+ // call to this method before shutting down the ORB. We sleep
+ // to avoid BAD_INV_ORDER exceptions on fast dual processor machines.
+ ACE_OS::sleep (1);
+ this->orb_->shutdown (0);
+}
diff --git a/TAO/tests/Collocated_ThruP_Sp/Hello.h b/TAO/tests/Collocated_ThruP_Sp/Hello.h
new file mode 100644
index 00000000000..1d5e27d075f
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp/Hello.h
@@ -0,0 +1,34 @@
+//
+// $Id$
+//
+
+#ifndef HELLO_H
+#define HELLO_H
+#include /**/ "ace/pre.h"
+
+#include "TestS.h"
+
+/// Implement the Test::Hello interface
+class Hello
+ : public virtual POA_Test::Hello
+{
+public:
+ /// Constructor
+ Hello (CORBA::ORB_ptr orb,
+ ACE_thread_t thr_id);
+
+ // = The skeleton methods
+ virtual char * get_string (void);
+
+ virtual void shutdown (void);
+
+private:
+ /// Use an ORB reference to conver strings to objects and shutdown
+ /// the application.
+ CORBA::ORB_var orb_;
+
+ ACE_thread_t thr_id_;
+};
+
+#include /**/ "ace/post.h"
+#endif /* HELLO_H */
diff --git a/TAO/tests/Collocated_ThruP_Sp/README b/TAO/tests/Collocated_ThruP_Sp/README
new file mode 100644
index 00000000000..e475dc45576
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp/README
@@ -0,0 +1,6 @@
+// $Id$
+
+This test is build with idlflag -Sp, to disable Thru_poa collocation.
+Running this test with -ORBCollocationStrategy Thru_poa should result in an Exception.
+
+
diff --git a/TAO/tests/Collocated_ThruP_Sp/Server_Task.cpp b/TAO/tests/Collocated_ThruP_Sp/Server_Task.cpp
new file mode 100644
index 00000000000..2cca42206ee
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp/Server_Task.cpp
@@ -0,0 +1,87 @@
+//
+// $Id$
+//
+#include "Server_Task.h"
+#include "TestS.h"
+#include "Hello.h"
+
+#include "ace/Manual_Event.h"
+
+Server_Task::Server_Task (const ACE_TCHAR *output,
+ CORBA::ORB_ptr sorb,
+ ACE_Manual_Event &me,
+ ACE_Thread_Manager *thr_mgr)
+ : ACE_Task_Base (thr_mgr)
+ , output_ (output)
+ , me_ (me)
+ , sorb_ (CORBA::ORB::_duplicate (sorb))
+{
+}
+
+int
+Server_Task::svc (void)
+{
+ try
+ {
+ CORBA::Object_var poa_object =
+ this->sorb_->resolve_initial_references("RootPOA");
+
+ PortableServer::POA_var root_poa =
+ PortableServer::POA::_narrow (poa_object.in ());
+
+ if (CORBA::is_nil (root_poa.in ()))
+ ACE_ERROR_RETURN ((LM_ERROR,
+ " (%P|%t) Panic: nil RootPOA\n"),
+ 1);
+
+ PortableServer::POAManager_var poa_manager =
+ root_poa->the_POAManager ();
+
+ Hello *hello_impl = 0;
+ ACE_NEW_RETURN (hello_impl,
+ Hello (this->sorb_.in (),
+ ACE_Thread::self ()),
+ 1);
+
+ PortableServer::ServantBase_var owner_transfer(hello_impl);
+
+ PortableServer::ObjectId_var id =
+ root_poa->activate_object (hello_impl);
+
+ CORBA::Object_var object = root_poa->id_to_reference (id.in ());
+
+ Test::Hello_var hello =
+ Test::Hello::_narrow (object.in ());
+
+ CORBA::String_var ior =
+ this->sorb_->object_to_string (hello.in ());
+
+ // Output the IOR to the <this->output_>
+ FILE *output_file= ACE_OS::fopen (this->output_,
+ "w");
+ if (output_file == 0)
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "Cannot open output file for writing IOR: %s",
+ this->output_),
+ 1);
+
+ ACE_OS::fprintf (output_file, "%s", ior.in ());
+ ACE_OS::fclose (output_file);
+
+ poa_manager->activate ();
+
+ // Signal the main thread before we call orb->run ();
+ this->me_.signal ();
+
+ this->sorb_->run ();
+
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) server - event loop finished\n"));
+ }
+ catch (const CORBA::Exception& ex)
+ {
+ ex._tao_print_exception ("Exception caught:");
+ return 1;
+ }
+
+ return 0;
+}
diff --git a/TAO/tests/Collocated_ThruP_Sp/Server_Task.h b/TAO/tests/Collocated_ThruP_Sp/Server_Task.h
new file mode 100644
index 00000000000..e42043c0711
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp/Server_Task.h
@@ -0,0 +1,48 @@
+// -*- C++ -*-
+//
+// $Id$
+
+#ifndef COLLOCATED_SERVER_TASK_H
+#define COLLOCATED_SERVER_TASK_H
+
+#include /**/ "ace/pre.h"
+
+#include "ace/Task.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#include "tao/ORB.h"
+
+ACE_BEGIN_VERSIONED_NAMESPACE_DECL
+class ACE_Manual_Event;
+ACE_END_VERSIONED_NAMESPACE_DECL
+
+/// Implement a Task to run the server in a single thread
+class Server_Task : public ACE_Task_Base
+{
+public:
+ /// Constructor
+ Server_Task (const ACE_TCHAR *output,
+ CORBA::ORB_ptr sorb,
+ ACE_Manual_Event &me,
+ ACE_Thread_Manager *thr_mgr);
+
+ /// Thread entry point
+ int svc (void);
+
+private:
+ /// Output file for IOR
+ const ACE_TCHAR *output_;
+
+ /// Manual event to wake up the main thread to create a client
+ /// thread.
+ ACE_Manual_Event &me_;
+
+ CORBA::ORB_var sorb_;
+};
+
+#include /**/ "ace/post.h"
+
+#endif /* COLLOCATED_SERVER_TASK_H */
diff --git a/TAO/tests/Collocated_ThruP_Sp/Test.idl b/TAO/tests/Collocated_ThruP_Sp/Test.idl
new file mode 100644
index 00000000000..3c0976e106d
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp/Test.idl
@@ -0,0 +1,20 @@
+//
+// $Id$
+//
+
+/// Put the interfaces in a module, to avoid global namespace pollution
+module Test
+{
+ /// A very simple interface
+ interface Hello
+ {
+ /// Return a simple string
+ string get_string ();
+
+ /// A method to shutdown the ORB
+ /**
+ * This method is used to simplify the test shutdown process
+ */
+ oneway void shutdown ();
+ };
+};
diff --git a/TAO/tests/Collocated_ThruP_Sp/run_test.pl b/TAO/tests/Collocated_ThruP_Sp/run_test.pl
new file mode 100755
index 00000000000..a0812ae4f8e
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp/run_test.pl
@@ -0,0 +1,60 @@
+eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
+ & eval 'exec perl -S $0 $argv:q'
+ if 0;
+
+# $Id$
+# -*- perl -*-
+
+use lib "$ENV{ACE_ROOT}/bin";
+use PerlACE::TestTarget;
+
+my $server = PerlACE::TestTarget::create_target(1) || die "Create target 1 failed\n";
+
+$iorbase = "test.ior";
+my $server_iorfile = $server->LocalFile ($iorbase);
+$server->DeleteFile($iorbase);
+
+$status = 0;
+$debug_level = '0';
+
+foreach $i (@ARGV) {
+ if ($i eq '-debug') {
+ $debug_level = '10';
+ }
+}
+
+$SV = $server->CreateProcess ("Collocated_ThruP_Sp");
+
+print STDERR "======== Running in Default Mode \n";
+$SV->Arguments ("-ORBdebuglevel $debug_level -o $server_iorfile -k file://$server_iorfile");
+$sv = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
+
+if ($sv != 0) {
+ print STDERR "ERROR in Collocated_Test\n";
+ $status = 1;
+}
+$server->DeleteFile($iorbase);
+
+print STDERR "======== Running with global ORBCollocationStrategy\n";
+$SV->Arguments ("-ORBdebuglevel $debug_level -o $server_iorfile -k file://$server_iorfile -ORBCollocation global");
+$sv = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
+
+if ($sv != 0) {
+ print STDERR "ERROR in Collocated_Test\n";
+ $status = 1;
+}
+$server->DeleteFile($iorbase);
+
+print STDERR "======== Running with global ORBCollocationStrategy thru_poa\n";
+$SV->Arguments ("-ORBdebuglevel $debug_level -o $server_iorfile -k file://$server_iorfile -ORBCollocation global -ORBCollocationStrategy thru_poa");
+$sv = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
+
+if ($sv != 0) {
+ print STDERR "ERROR in Collocated_Test\n";
+ $status = 1;
+}
+
+$server->DeleteFile($iorbase);
+$server->GetStderrLog();
+
+exit $status;
diff --git a/TAO/tests/Collocated_ThruP_Sp_Gd/Client_Task.cpp b/TAO/tests/Collocated_ThruP_Sp_Gd/Client_Task.cpp
new file mode 100644
index 00000000000..7569e6ddb7b
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp_Gd/Client_Task.cpp
@@ -0,0 +1,65 @@
+//
+// $Id$
+//
+
+#include "Client_Task.h"
+#include "TestC.h"
+
+Client_Task::Client_Task (const ACE_TCHAR *ior,
+ CORBA::ORB_ptr corb,
+ ACE_Thread_Manager *thr_mgr)
+ : ACE_Task_Base (thr_mgr)
+ , input_ (ior)
+ , corb_ (CORBA::ORB::_duplicate (corb))
+
+{
+}
+
+int
+Client_Task::svc (void)
+{
+ CORBA::Boolean exception = false;
+ try
+ {
+ CORBA::Object_var tmp =
+ this->corb_->string_to_object (input_);
+
+ Test::Hello_var hello =
+ Test::Hello::_narrow(tmp.in ());
+
+ if (CORBA::is_nil (hello.in ()))
+ {
+ ACE_ERROR_RETURN ((LM_DEBUG,
+ "Nil Test::Hello reference <%s>\n",
+ input_),
+ 1);
+ }
+ try
+ {
+ CORBA::String_var the_string =
+ hello->get_string ();
+
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) - string returned <%C>\n",
+ the_string.in ()));
+
+ hello->shutdown ();
+ }
+ catch (CORBA::INTERNAL)
+ {
+ exception = true;
+ ACE_DEBUG ((LM_DEBUG, "OK: Client_Task Expected exception received\n"));
+ corb_->destroy ();
+ return 0;
+ }
+ }
+ catch (const CORBA::Exception& ex)
+ {
+ ex._tao_print_exception ("Exception caught:");
+ return 1;
+ }
+ if (!exception)
+ {
+ ACE_ERROR ((LM_ERROR, "(ERROR: Client_Task::svc Expected exception not received\n"));
+ }
+ return 0;
+}
diff --git a/TAO/tests/Collocated_ThruP_Sp_Gd/Client_Task.h b/TAO/tests/Collocated_ThruP_Sp_Gd/Client_Task.h
new file mode 100644
index 00000000000..8f6557cdec8
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp_Gd/Client_Task.h
@@ -0,0 +1,37 @@
+//
+// $Id$
+//
+
+#ifndef COLLOCATED_TEST_CLIENT_TASK_H
+#define COLLOCATED_TEST_CLIENT_TASK_H
+#include /**/ "ace/pre.h"
+#include "ace/Task.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+#include "tao/ORB.h"
+
+
+/// Implement a Task to run the client as a thread
+class Client_Task : public ACE_Task_Base
+{
+public:
+
+ /// Constructor
+ Client_Task (const ACE_TCHAR *input,
+ CORBA::ORB_ptr corb,
+ ACE_Thread_Manager *thr_mgr);
+
+ /// Thread entry point
+ int svc (void);
+
+private:
+ const ACE_TCHAR *input_;
+
+ CORBA::ORB_var corb_;
+
+};
+
+#include /**/ "ace/post.h"
+#endif /* COLLOCATED_TEST_CLIENT_TASK_H */
diff --git a/TAO/tests/Collocated_ThruP_Sp_Gd/Collocated_Test.cpp b/TAO/tests/Collocated_ThruP_Sp_Gd/Collocated_Test.cpp
new file mode 100644
index 00000000000..282295ad5e3
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp_Gd/Collocated_Test.cpp
@@ -0,0 +1,106 @@
+//$Id$
+#include "Server_Task.h"
+#include "Client_Task.h"
+#include "ace/Get_Opt.h"
+#include "ace/Argv_Type_Converter.h"
+#include "ace/SString.h"
+#include "ace/Manual_Event.h"
+
+const ACE_TCHAR *output = ACE_TEXT("test.ior");
+const ACE_TCHAR *input = ACE_TEXT("file://test.ior");
+// static int named_orbs = 0;
+ACE_CString server_orb;
+ACE_CString client_orb;
+int
+parse_args (int argc, ACE_TCHAR *argv[])
+{
+ ACE_Get_Opt get_opts (argc, argv, ACE_TEXT("k:o:n"));
+ int c;
+
+ while ((c = get_opts ()) != -1)
+ switch (c)
+ {
+ case 'o':
+ output = get_opts.opt_arg ();
+ break;
+ case 'k':
+ input = get_opts.opt_arg ();
+ break;
+ case 'n':
+ // named_orbs = 1;
+ server_orb.set ("server_orb");
+ client_orb.set ("client_orb");
+ break;
+ case '?':
+ default:
+ // This is a hack but that is okay!
+ return 0;
+ }
+ // Indicates successful parsing of the command line
+ return 0;
+}
+
+int
+ACE_TMAIN(int argc, ACE_TCHAR *argv[])
+{
+ if (parse_args (argc,
+ argv) == -1)
+ return -1;
+
+ try
+ {
+ ACE_Argv_Type_Converter satc (argc, argv);
+ CORBA::ORB_var sorb =
+ CORBA::ORB_init (satc.get_argc (),
+ satc.get_TCHAR_argv (),
+ server_orb.c_str ());
+
+ ACE_Manual_Event me;
+ Server_Task server_task (output,
+ sorb.in (),
+ me,
+ ACE_Thread_Manager::instance ());
+
+ if (server_task.activate (THR_NEW_LWP | THR_JOINABLE,
+ 1,
+ 1) == -1)
+ {
+ ACE_ERROR ((LM_ERROR, "Error activating server task\n"));
+ }
+
+ // Wait for the server thread to do some processing
+ me.wait ();
+
+ ACE_Argv_Type_Converter catc (argc, argv);
+ CORBA::ORB_var corb =
+ CORBA::ORB_init (catc.get_argc (),
+ catc.get_TCHAR_argv (),
+ client_orb.c_str ());
+
+ Client_Task client_task (input,
+ corb.in (),
+ ACE_Thread_Manager::instance ());
+
+ if (client_task.activate (THR_NEW_LWP | THR_JOINABLE,
+ 1,
+ 1) == -1)
+ {
+ ACE_ERROR ((LM_ERROR, "Error activating client task\n"));
+ }
+
+ // Wait for the client and server to finish
+ ACE_Thread_Manager::instance ()->wait ();
+
+ // Now that all threads have completed we can destroy the ORB
+ sorb->destroy ();
+ if (server_orb != client_orb)
+ {
+ corb->destroy ();
+ }
+ }
+ catch (const CORBA::Exception&)
+ {
+ // Ignore exceptions..
+ }
+ return 0;
+}
diff --git a/TAO/tests/Collocated_ThruP_Sp_Gd/Collocated_ThruP_Sp_Gd.mpc b/TAO/tests/Collocated_ThruP_Sp_Gd/Collocated_ThruP_Sp_Gd.mpc
new file mode 100644
index 00000000000..a5b5b6fdf8e
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp_Gd/Collocated_ThruP_Sp_Gd.mpc
@@ -0,0 +1,9 @@
+// -*- MPC -*-
+// $Id$
+
+// Disable THRU_POA Collocation, enable Direct Collocation
+
+project(Coll_ThruP_Sp-Gd): taoserver {
+ exename = Coll_ThruP_Sp_Gd
+ idlflags += -Sp -Gd
+}
diff --git a/TAO/tests/Collocated_ThruP_Sp_Gd/Hello.cpp b/TAO/tests/Collocated_ThruP_Sp_Gd/Hello.cpp
new file mode 100644
index 00000000000..e77d95e07bc
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp_Gd/Hello.cpp
@@ -0,0 +1,32 @@
+//
+// $Id$
+//
+#include "Hello.h"
+#include "tao/ORB_Core.h"
+#include "tao/ORB_Table.h"
+#include "tao/ORB_Core_Auto_Ptr.h"
+
+ Hello::Hello (CORBA::ORB_ptr orb,
+ ACE_thread_t thrid)
+ : orb_ (CORBA::ORB::_duplicate (orb))
+ , thr_id_ (thrid)
+{
+}
+
+char *
+Hello::get_string (void)
+{
+ ACE_ERROR ((LM_DEBUG,
+ "(%P|%t) ERROR: Upcall in process ..\n"));
+ return CORBA::string_dup ("Hello there!");
+}
+
+void
+Hello::shutdown (void)
+{
+ // Give the client thread time to return from the collocated
+ // call to this method before shutting down the ORB. We sleep
+ // to avoid BAD_INV_ORDER exceptions on fast dual processor machines.
+ ACE_OS::sleep (1);
+ this->orb_->shutdown (0);
+}
diff --git a/TAO/tests/Collocated_ThruP_Sp_Gd/Hello.h b/TAO/tests/Collocated_ThruP_Sp_Gd/Hello.h
new file mode 100644
index 00000000000..1d5e27d075f
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp_Gd/Hello.h
@@ -0,0 +1,34 @@
+//
+// $Id$
+//
+
+#ifndef HELLO_H
+#define HELLO_H
+#include /**/ "ace/pre.h"
+
+#include "TestS.h"
+
+/// Implement the Test::Hello interface
+class Hello
+ : public virtual POA_Test::Hello
+{
+public:
+ /// Constructor
+ Hello (CORBA::ORB_ptr orb,
+ ACE_thread_t thr_id);
+
+ // = The skeleton methods
+ virtual char * get_string (void);
+
+ virtual void shutdown (void);
+
+private:
+ /// Use an ORB reference to conver strings to objects and shutdown
+ /// the application.
+ CORBA::ORB_var orb_;
+
+ ACE_thread_t thr_id_;
+};
+
+#include /**/ "ace/post.h"
+#endif /* HELLO_H */
diff --git a/TAO/tests/Collocated_ThruP_Sp_Gd/README b/TAO/tests/Collocated_ThruP_Sp_Gd/README
new file mode 100644
index 00000000000..c385fcfe91b
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp_Gd/README
@@ -0,0 +1,7 @@
+// $Id$
+
+This test is build with idlflag -Sp and Gd, to disable Thru_poa collocation,
+but enable direct collocation.
+Running this test with -ORBCollocationStrategy Thru_poa should result in an Exception.
+
+
diff --git a/TAO/tests/Collocated_ThruP_Sp_Gd/Server_Task.cpp b/TAO/tests/Collocated_ThruP_Sp_Gd/Server_Task.cpp
new file mode 100644
index 00000000000..98f37e052e3
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp_Gd/Server_Task.cpp
@@ -0,0 +1,87 @@
+//
+// $Id$
+//
+#include "Server_Task.h"
+#include "TestS.h"
+#include "Hello.h"
+
+#include "ace/Manual_Event.h"
+
+Server_Task::Server_Task (const ACE_TCHAR *output,
+ CORBA::ORB_ptr sorb,
+ ACE_Manual_Event &me,
+ ACE_Thread_Manager *thr_mgr)
+ : ACE_Task_Base (thr_mgr)
+ , output_ (output)
+ , me_ (me)
+ , sorb_ (CORBA::ORB::_duplicate (sorb))
+{
+}
+
+int
+Server_Task::svc (void)
+{
+ try
+ {
+ CORBA::Object_var poa_object =
+ this->sorb_->resolve_initial_references("RootPOA");
+
+ PortableServer::POA_var root_poa =
+ PortableServer::POA::_narrow (poa_object.in ());
+
+ if (CORBA::is_nil (root_poa.in ()))
+ ACE_ERROR_RETURN ((LM_ERROR,
+ " (%P|%t) Panic: nil RootPOA\n"),
+ 1);
+
+ PortableServer::POAManager_var poa_manager =
+ root_poa->the_POAManager ();
+
+ Hello *hello_impl;
+ ACE_NEW_RETURN (hello_impl,
+ Hello (this->sorb_.in (),
+ ACE_Thread::self ()),
+ 1);
+
+ PortableServer::ServantBase_var owner_transfer(hello_impl);
+
+ PortableServer::ObjectId_var id =
+ root_poa->activate_object (hello_impl);
+
+ CORBA::Object_var object = root_poa->id_to_reference (id.in ());
+
+ Test::Hello_var hello =
+ Test::Hello::_narrow (object.in ());
+
+ CORBA::String_var ior =
+ this->sorb_->object_to_string (hello.in ());
+
+ // Output the IOR to the <this->output_>
+ FILE *output_file= ACE_OS::fopen (this->output_,
+ "w");
+ if (output_file == 0)
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "Cannot open output file for writing IOR: %s",
+ this->output_),
+ 1);
+
+ ACE_OS::fprintf (output_file, "%s", ior.in ());
+ ACE_OS::fclose (output_file);
+
+ poa_manager->activate ();
+
+ // Signal the main thread before we call orb->run ();
+ this->me_.signal ();
+
+ this->sorb_->run ();
+
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) server - event loop finished\n"));
+ }
+ catch (const CORBA::Exception& ex)
+ {
+ ex._tao_print_exception ("Exception caught:");
+ return 1;
+ }
+
+ return 0;
+}
diff --git a/TAO/tests/Collocated_ThruP_Sp_Gd/Server_Task.h b/TAO/tests/Collocated_ThruP_Sp_Gd/Server_Task.h
new file mode 100644
index 00000000000..e42043c0711
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp_Gd/Server_Task.h
@@ -0,0 +1,48 @@
+// -*- C++ -*-
+//
+// $Id$
+
+#ifndef COLLOCATED_SERVER_TASK_H
+#define COLLOCATED_SERVER_TASK_H
+
+#include /**/ "ace/pre.h"
+
+#include "ace/Task.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#include "tao/ORB.h"
+
+ACE_BEGIN_VERSIONED_NAMESPACE_DECL
+class ACE_Manual_Event;
+ACE_END_VERSIONED_NAMESPACE_DECL
+
+/// Implement a Task to run the server in a single thread
+class Server_Task : public ACE_Task_Base
+{
+public:
+ /// Constructor
+ Server_Task (const ACE_TCHAR *output,
+ CORBA::ORB_ptr sorb,
+ ACE_Manual_Event &me,
+ ACE_Thread_Manager *thr_mgr);
+
+ /// Thread entry point
+ int svc (void);
+
+private:
+ /// Output file for IOR
+ const ACE_TCHAR *output_;
+
+ /// Manual event to wake up the main thread to create a client
+ /// thread.
+ ACE_Manual_Event &me_;
+
+ CORBA::ORB_var sorb_;
+};
+
+#include /**/ "ace/post.h"
+
+#endif /* COLLOCATED_SERVER_TASK_H */
diff --git a/TAO/tests/Collocated_ThruP_Sp_Gd/Test.idl b/TAO/tests/Collocated_ThruP_Sp_Gd/Test.idl
new file mode 100644
index 00000000000..3c0976e106d
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp_Gd/Test.idl
@@ -0,0 +1,20 @@
+//
+// $Id$
+//
+
+/// Put the interfaces in a module, to avoid global namespace pollution
+module Test
+{
+ /// A very simple interface
+ interface Hello
+ {
+ /// Return a simple string
+ string get_string ();
+
+ /// A method to shutdown the ORB
+ /**
+ * This method is used to simplify the test shutdown process
+ */
+ oneway void shutdown ();
+ };
+};
diff --git a/TAO/tests/Collocated_ThruP_Sp_Gd/run_test.pl b/TAO/tests/Collocated_ThruP_Sp_Gd/run_test.pl
new file mode 100755
index 00000000000..504290188c1
--- /dev/null
+++ b/TAO/tests/Collocated_ThruP_Sp_Gd/run_test.pl
@@ -0,0 +1,60 @@
+eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
+ & eval 'exec perl -S $0 $argv:q'
+ if 0;
+
+# $Id$
+# -*- perl -*-
+
+use lib "$ENV{ACE_ROOT}/bin";
+use PerlACE::TestTarget;
+
+my $server = PerlACE::TestTarget::create_target(1) || die "Create target 1 failed\n";
+
+$iorbase = "test.ior";
+my $server_iorfile = $server->LocalFile ($iorbase);
+$server->DeleteFile($iorbase);
+
+$status = 0;
+$debug_level = '0';
+
+foreach $i (@ARGV) {
+ if ($i eq '-debug') {
+ $debug_level = '10';
+ }
+}
+
+$SV = $server->CreateProcess ("Coll_ThruP_Sp_Gd");
+
+print STDERR "======== Running in Default Mode \n";
+$SV->Arguments ("-ORBdebuglevel $debug_level -o $server_iorfile -k file://$server_iorfile");
+$sv = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
+
+if ($sv != 0) {
+ print STDERR "ERROR in Collocated_Test\n";
+ $status = 1;
+}
+$server->DeleteFile($iorbase);
+
+print STDERR "======== Running with global ORBCollocationStrategy\n";
+$SV->Arguments ("-ORBdebuglevel $debug_level -o $server_iorfile -k file://$server_iorfile -ORBCollocation global");
+$sv = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
+
+if ($sv != 0) {
+ print STDERR "ERROR in Collocated_Test\n";
+ $status = 1;
+}
+$server->DeleteFile($iorbase);
+
+print STDERR "======== Running with global ORBCollocationStrategy thru_poa\n";
+$SV->Arguments ("-ORBdebuglevel $debug_level -o $server_iorfile -k file://$server_iorfile -ORBCollocation global -ORBCollocationStrategy thru_poa");
+$sv = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
+
+if ($sv != 0) {
+ print STDERR "ERROR in Collocated_Test\n";
+ $status = 1;
+}
+
+$server->DeleteFile($iorbase);
+$server->GetStderrLog();
+
+exit $status;
diff --git a/TAO/tests/Collocation/README b/TAO/tests/Collocation/README
index cc1bcde0a5b..98dc2cd4023 100644
--- a/TAO/tests/Collocation/README
+++ b/TAO/tests/Collocation/README
@@ -1,3 +1,5 @@
+$Id$
+
This program performs a series of sanity check on the collocation
support in TAO. It also serves as an example of how to separate stub
and skeleton + implementation from the main program.
diff --git a/TAO/tests/Collocation_Opportunities/README b/TAO/tests/Collocation_Opportunities/README
index b5a02b94815..8011930e666 100644
--- a/TAO/tests/Collocation_Opportunities/README
+++ b/TAO/tests/Collocation_Opportunities/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
diff --git a/TAO/tests/Collocation_Opportunities/run_test.pl b/TAO/tests/Collocation_Opportunities/run_test.pl
index 689d8586e95..91e99715397 100755
--- a/TAO/tests/Collocation_Opportunities/run_test.pl
+++ b/TAO/tests/Collocation_Opportunities/run_test.pl
@@ -8,9 +8,17 @@ eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
use lib "$ENV{ACE_ROOT}/bin";
use PerlACE::TestTarget;
+$debug_level = '0';
+
+foreach $i (@ARGV) {
+ if ($i eq '-debug') {
+ $debug_level = '10';
+ }
+}
+
my $server = PerlACE::TestTarget::create_target (1) || die "Create target 1 failed\n";
-$SV = $server->CreateProcess ("Collocation_Opportunities");
+$SV = $server->CreateProcess ("Collocation_Opportunities", "-ORBdebuglevel $debug_level");
$test = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
diff --git a/TAO/tests/Connect_Strategy_Test/README b/TAO/tests/Connect_Strategy_Test/README
index 06be22c2caa..2f8603f8fed 100644
--- a/TAO/tests/Connect_Strategy_Test/README
+++ b/TAO/tests/Connect_Strategy_Test/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Connect_Strategy Test README File
The simplest possible test for connection strategies in TAO.
@@ -8,7 +10,7 @@ be argued that it is in fact too simple to make any conclusions based
on the results from this test.
Please refrain from "improving", extending or expanding this
-test, if you need to change
+test, if you need to change
To run the test use the run_test.pl script:
diff --git a/TAO/tests/Connection_Failure/README b/TAO/tests/Connection_Failure/README
index 7ae5b95d45d..41afe0f7593 100644
--- a/TAO/tests/Connection_Failure/README
+++ b/TAO/tests/Connection_Failure/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Connection_Failure Test README File
A simple test for connection failures. The client tries to connect to
diff --git a/TAO/tests/Connection_Purging/README b/TAO/tests/Connection_Purging/README
index 8f8ec152c3b..a3306694e07 100644
--- a/TAO/tests/Connection_Purging/README
+++ b/TAO/tests/Connection_Purging/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Connection Purging
------------------
@@ -12,7 +12,7 @@ Usage: run_test.pl [-u | -s]
There are four configurator files, one for each strategy. Each configurator
file sets the -ORBConnectionCacheMax to 10 and the
--ORBConnectionCachePurgePercentage to 30 (excluding client.null.conf).
+-ORBConnectionCachePurgePercentage to 30 (excluding client.null.conf).
After 10 separate connections are made, 30% of the transport cache is
purged in a way that corresponds to the chosen purging strategy.
diff --git a/TAO/tests/Connection_Timeout/README b/TAO/tests/Connection_Timeout/README
index 05a7ee90273..3a5326987e8 100644
--- a/TAO/tests/Connection_Timeout/README
+++ b/TAO/tests/Connection_Timeout/README
@@ -1,12 +1,14 @@
/**
+$Id$
+
@page Connection_Timeout Test README File
The simplest possible test for the proprietary
Connection_Timeouts. This test sets the connection timeouts through a
policy. The client tries to connect to an non-existent server. The
timeout for the connection is controlled by the value supplied by that
-policy.
+policy.
$ ./run_test.pl
diff --git a/TAO/tests/Crash_On_Write/README b/TAO/tests/Crash_On_Write/README
index b674ec1d873..5ea0ff49deb 100644
--- a/TAO/tests/Crash_On_Write/README
+++ b/TAO/tests/Crash_On_Write/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Crash_On_Write Test README File
Test the behavior of the ORB when the server crashes in the
diff --git a/TAO/tests/Crashed_Callback/README b/TAO/tests/Crashed_Callback/README
index 3d94e37c2c5..02cdc33edb7 100644
--- a/TAO/tests/Crashed_Callback/README
+++ b/TAO/tests/Crashed_Callback/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Crashed Callback Test README File
On TAO-1.1.12 the ORB would dead-lock when trying to send a
diff --git a/TAO/tests/DII_AMI_Forward/README b/TAO/tests/DII_AMI_Forward/README
index 2c493a3c740..360d01250ab 100644
--- a/TAO/tests/DII_AMI_Forward/README
+++ b/TAO/tests/DII_AMI_Forward/README
@@ -1,22 +1,23 @@
/**
+
$Id$
@page DII_AMI_Forward Test README File
This test illustrates the new feature outlined in bug 3105 for
-supporting the detection and handling of a LOCATION FORWARD
+supporting the detection and handling of a LOCATION FORWARD
exception within a DII based asynch invocation.
DII Asynch reply handlers operate very close to the TAO internals,
receiving raw CDR buffers as parameters rather than collections of
arguments. This example is built on apriori knowledge of the nature
-of the call and its return type in order to work. A more general
-purpose handler would take a reference to the request instance in
+of the call and its return type in order to work. A more general
+purpose handler would take a reference to the request instance in
order to handle a variety of responses. As such, it is impractical
to have a single instance of the reply handler supporting more than
one pending invocation.
-This test is designed around a server that, on the receipt of the
+This test is designed around a server that, on the receipt of the
first invocation raises a location forward exception. The client's
DII asynch reply handler then reissues the invocation using the new
object reference and finally handles the reply.
diff --git a/TAO/tests/DII_Collocation_Tests/oneway/README b/TAO/tests/DII_Collocation_Tests/oneway/README
index cc947507808..2720f2002e4 100644
--- a/TAO/tests/DII_Collocation_Tests/oneway/README
+++ b/TAO/tests/DII_Collocation_Tests/oneway/README
@@ -1,26 +1,24 @@
-# $Id$
+$Id$
Description:
-This test is used to test the bug fix on collocated dii oneway request
-invocation via send_oneway() crash on get_in_arg() when the request has multiple
+This test is used to test the bug fix on collocated dii oneway request
+invocation via send_oneway() crash on get_in_arg() when the request has multiple
"IN" parameters.
The test.idl defines oneway operations with all sorts SArgument to test the
-conversion of the DII parameters in NVList to the list of arguments.
+conversion of the DII parameters in NVList to the list of arguments.
It also defines the operations with multiple "IN" arguments to test the
bug fix.
-
This test is a modification of the Collocation_Tests. The big difference is
this test invokes the oneway operations using DII while the Collocation_Tests
invoke a simple twoway operations.
-
Usage:
=====
The run_test.pl runs several test cases listed below. The test result will be printed
-after the test completes. To debug the test failure, the operation "-d" can be passed
+after the test completes. To debug the test failure, the operation "-d" can be passed
to have verbose log.
@@ -41,7 +39,7 @@ Collocated_Test -o test.ior -k file://test.ior -ORBCollocation no
======== Running in default mode and two ORBS
-Collocated_Test -o test.ior -k file://test.ior -n
+Collocated_Test -o test.ior -k file://test.ior -n
======== Running in per-orb mode and two ORBS
diff --git a/TAO/tests/DII_Collocation_Tests/twoway/README b/TAO/tests/DII_Collocation_Tests/twoway/README
index 77df8565097..b73deb93730 100644
--- a/TAO/tests/DII_Collocation_Tests/twoway/README
+++ b/TAO/tests/DII_Collocation_Tests/twoway/README
@@ -1,23 +1,23 @@
-# $Id$
+$Id$
-NOTE: This test has not completed yet !!!. This test currently just tested with "IN"
-arguments. The OUT, INOUT and RETURN arguments test cases need be added.
+NOTE: This test has not completed yet !!!. This test currently just tested with "IN"
+arguments. The OUT, INOUT and RETURN arguments test cases need be added.
Description:
-This test is used to test the bug fix on collocated dii twoway request
-invocation via invoke() crash on get_in_arg() when the request has multiple
+This test is used to test the bug fix on collocated dii twoway request
+invocation via invoke() crash on get_in_arg() when the request has multiple
"IN" parameters.
The test.idl defines twoway operations with all sorts "IN" SArgument to test the
-conversion of the DII parameters in NVList to the list of arguments.
+conversion of the DII parameters in NVList to the list of arguments.
It also defines the operations with multiple "IN" arguments to test the
bug fix.
-This test is a modification of the DII_Collocation_Tests/oneway test. The
+This test is a modification of the DII_Collocation_Tests/oneway test. The
idl interfaces define twoway method instead of oneway and the client invokes
-the twoway operations via invoke() instead of oneway operations via
+the twoway operations via invoke() instead of oneway operations via
send_oneway().
diff --git a/TAO/tests/DIOP/README b/TAO/tests/DIOP/README
index 552c089c512..0bde0f7ad43 100644
--- a/TAO/tests/DIOP/README
+++ b/TAO/tests/DIOP/README
@@ -1,3 +1,5 @@
+$Id$
+
DIOP - UDP Based Pluggable Protocol - Example
=============================================
diff --git a/TAO/tests/DSI_AMH/README b/TAO/tests/DSI_AMH/README
index 28fca90fe3f..e72c1bce8dc 100644
--- a/TAO/tests/DSI_AMH/README
+++ b/TAO/tests/DSI_AMH/README
@@ -1,2 +1,4 @@
+$Id$
+
This is a simple test of the DSI+AMH feature in TAO.
To run it, just execute the script run_test.pl.
diff --git a/TAO/tests/DSI_AMI_Gateway/README b/TAO/tests/DSI_AMI_Gateway/README
index 93f3c77df24..89fa9f9b0a5 100644
--- a/TAO/tests/DSI_AMI_Gateway/README
+++ b/TAO/tests/DSI_AMI_Gateway/README
@@ -1 +1,3 @@
-a simple test to experience the whole AMI+DII+AMH+DSI feature.
+$Id$
+
+a simple test to experience the whole AMI+DII+AMH+DSI feature.
diff --git a/TAO/tests/DSI_Gateway/README b/TAO/tests/DSI_Gateway/README
index aad5b8f69e1..bba3618e1ac 100644
--- a/TAO/tests/DSI_Gateway/README
+++ b/TAO/tests/DSI_Gateway/README
@@ -1,13 +1,13 @@
-# $Id$
+$Id$
- A simple test for the DSI/DII gateway support. TAO can
+A simple test for the DSI/DII gateway support. TAO can
optimize some demarshaling/marshaling and data copying in the
implementation of DSI/DII based gateways. The DSI/DII gateway can
also pass requests and replies that are not in native (the
gateway's) byte order. NOTE - For this last feature to work, you
must compile ACE with ACE_ENABLE_SWAP_ON_WRITE defined.
- This is a smoke test and simple example for those
+This is a smoke test and simple example for those
features. Use
$ server -o server.ior
@@ -16,20 +16,20 @@ features. Use
or run the run_test.pl script.
- A second perl script, run_exception_test.pl,
+A second perl script, run_exception_test.pl,
tests the exception handling of the gateway. The script
runs the client twice, first calling a method that raises
a user exception (containing several fields of information),
then calling a method that raises a CORBA system exception.
- To run these tests by hand, start the server and gateway
+To run these tests by hand, start the server and gateway
as shown above, then use
- $ client -k file://gw.ior -u
+ $ client -k file://gw.ior -u
for the user exception test and
- $ client -k file://gw.ior -s
+ $ client -k file://gw.ior -s
for the system exception test. For these tests, the -x
option (server shutdown) and -i option (# of calls)
diff --git a/TAO/tests/DiffServ/README b/TAO/tests/DiffServ/README
index fbbbf2ae943..5c3b5e9d224 100644
--- a/TAO/tests/DiffServ/README
+++ b/TAO/tests/DiffServ/README
@@ -3,7 +3,7 @@ $Id$
This is a unit test for setting DiffServ Codepoint both in the
requests sent and the replies received.
-To run (on Unix):
+To run (on Unix):
-----------------
$ ./server -ORBdebuglevel 1 -p 20000
diff --git a/TAO/tests/Explicit_Event_Loop/README b/TAO/tests/Explicit_Event_Loop/README
index 939e4134b7e..b793aeeef99 100644
--- a/TAO/tests/Explicit_Event_Loop/README
+++ b/TAO/tests/Explicit_Event_Loop/README
@@ -6,38 +6,38 @@ an loop in which work_pending() and perform_work() are called
explicitly. Its usage is specified below.
______________________________________________________________________________
-This test has been adapted from code in chapter 3 of "Advanced CORBA
-Programming with C++" by Michi Henning and Steve Vinoski. Copyright 1999.
-Addison-Wesley, Reading, MA. To make the examples work with TAO, some minor
-modifications to the source code have been made, with permission, by Mike
-Moran <mm4@cs.wustl.edu>. All of these changes are documented in the file
+This test has been adapted from code in chapter 3 of "Advanced CORBA
+Programming with C++" by Michi Henning and Steve Vinoski. Copyright 1999.
+Addison-Wesley, Reading, MA. To make the examples work with TAO, some minor
+modifications to the source code have been made, with permission, by Mike
+Moran <mm4@cs.wustl.edu>. All of these changes are documented in the file
CHANGES in this directory.
______________________________________________________________________________
Summary:
This is the simple time server given in chapter 3 of the book.
- There is a server process which holds a servant object which can return
- the current Greenwich time, and a client process which can acess this
+ There is a server process which holds a servant object which can return
+ the current Greenwich time, and a client process which can acess this
object.
Building:
- This test uses the ACE_TRY macros, and does not need to use native
- C++ exceptions. Make sure to use TAO_FLAG Ge=1 to ensure that
- CORBA::Environment variables are created in the IDL generated stubs
+ This test uses the ACE_TRY macros, and does not need to use native
+ C++ exceptions. Make sure to use TAO_FLAG Ge=1 to ensure that
+ CORBA::Environment variables are created in the IDL generated stubs
and skeletons.
- With GNU make, simply type
-
+ With GNU make, simply type
+
% make
to create the executable server and client
server:
- The server takes no parameters nor command line options and returns an
+ The server takes no parameters nor command line options and returns an
IOR to stdout. The server then waits infinitely for clients requests.
client:
- The client takes an IOR from the command line, prints out the current
+ The client takes an IOR from the command line, prints out the current
time, and terminates.
run_test.pl:
diff --git a/TAO/tests/FL_Cube/README b/TAO/tests/FL_Cube/README
index b50b764e52c..83d94dfc82f 100644
--- a/TAO/tests/FL_Cube/README
+++ b/TAO/tests/FL_Cube/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Test the integration of the FL toolkit and TAO.
diff --git a/TAO/tests/Faults/README b/TAO/tests/Faults/README
index 4994b397e2a..40205f4c3cb 100644
--- a/TAO/tests/Faults/README
+++ b/TAO/tests/Faults/README
@@ -1,5 +1,5 @@
-# $Id$
+$Id$
- A little test to check the the ORB can handle server and
+A little test to check the the ORB can handle server and
client crashes. It is a bit tricky to run so better check the
run_test.pl script for details.
diff --git a/TAO/tests/File_IO/README b/TAO/tests/File_IO/README
index 1362696a08a..47c3d055f59 100644
--- a/TAO/tests/File_IO/README
+++ b/TAO/tests/File_IO/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page File_IO Test README File
A stress test for receiving large replies. The replies are
@@ -7,7 +9,7 @@
1002 to the surface. The test doesnt seem to have anything
special, but just to be sure that bug 1002 doesnt show up
again in some other form. This test was donated by Jonathan
- Reis <reis@stentor.com>.
+ Reis <reis@stentor.com>.
To run the test use the run_test.pl script:
diff --git a/TAO/tests/ForwardOnceUponException/README b/TAO/tests/ForwardOnceUponException/README
index b89698324df..0683b945505 100755
--- a/TAO/tests/ForwardOnceUponException/README
+++ b/TAO/tests/ForwardOnceUponException/README
@@ -1,37 +1,37 @@
/**
-@page ForwardOnceOnException Test README File
-
$Id$
- This is test for feature of request forwarding ONCE when client
+@page ForwardOnceOnException Test README File
+
+ This is test for feature of request forwarding ONCE when client
receives OBJECT_NOT_EXIST, COMM_FAILURE, TRANSIENT or INV_OBJREF
- exceptions from server. The forward once feature defaults to be off.
+ exceptions from server. The forward once feature defaults to be off.
They can be enabled and disabled by -ORBForwardOnceOnObjectNotExist
-ORBForwardOnceOnCommFailure, -ORBForwardOnceOnTransient and
-ORBForwardOnceOnInvObjref options with value 0(disable) and 1(enable).
-
- The servant implementation is made to raise the exceptions.
- This is to simulate the server exception reply regardless the actual
- meaning of the exceptions. The test also takes advantage of the
+
+ The servant implementation is made to raise the exceptions.
+ This is to simulate the server exception reply regardless the actual
+ meaning of the exceptions. The test also takes advantage of the
IORTable facilities in TAO to create a simple corbaloc IOR, TAO
- always responds with a LOCATION_FORWARD message when a request is
+ always responds with a LOCATION_FORWARD message when a request is
made for an object in the IORTable. This would make the stub have the
- forward address upon receiving the exceptions so it can perform the
- forwarding.
-
+ forward address upon receiving the exceptions so it can perform the
+ forwarding.
+
TAO defaults to forwarding request upon COMM_FAILURE and TRANSIENT
- exceptions. With forwarding once feature enabled, the client will
- catch the exceptions and servant should be called twice for each
- request, otherwise, the request will be looping between server and
- client.
-
- TAO defaults to not forwarding request upon OBJECT_NOT_EXIST and
+ exceptions. With forwarding once feature enabled, the client will
+ catch the exceptions and servant should be called twice for each
+ request, otherwise, the request will be looping between server and
+ client.
+
+ TAO defaults to not forwarding request upon OBJECT_NOT_EXIST and
INV_OBJREF exceptions from server so the client should catch the exception
and servant should be called once for each request. If the forwarding
- once feature is on, the client should catch the exception and servant
+ once feature is on, the client should catch the exception and servant
should be called twice.
-
+
To execute the test simply run:
$ ./run_test.pl
diff --git a/TAO/tests/ForwardOnceUponException/run_test.pl b/TAO/tests/ForwardOnceUponException/run_test.pl
index cf934765749..cb9019cd1bb 100755
--- a/TAO/tests/ForwardOnceUponException/run_test.pl
+++ b/TAO/tests/ForwardOnceUponException/run_test.pl
@@ -93,7 +93,7 @@ my $server = PerlACE::TestTarget::create_target (1) || die "Create target 1 fail
my $client = PerlACE::TestTarget::create_target (2) || die "Create target 2 failed\n";
my $iorbase = "test.ior";
-my $host = $server->HostName(); #"localhost";
+my $host = $server->HostName();
my $server_iorfile = $server->LocalFile ($iorbase);
my $client_iorfile = $client->LocalFile ($iorbase);
diff --git a/TAO/tests/ForwardUponObjectNotExist/README b/TAO/tests/ForwardUponObjectNotExist/README
index c6ad499922b..1893326c217 100755
--- a/TAO/tests/ForwardUponObjectNotExist/README
+++ b/TAO/tests/ForwardUponObjectNotExist/README
@@ -7,15 +7,15 @@ $Id$
This is test for feature of request forwarding when client receives
OBJECT_NOT_EXIST exception. The feature is enabled and disabled by
-ORBForwardInvocationOnObjectNotExist [0|1] option.
-
- The servant implementation is made to raise OBJECT_NOT_EXIST exception.
- This is to simulate the server exception reply regardless the actual
- meaning of the OBJECT_NOT_EXIST exception. The test also takes advantage
+
+ The servant implementation is made to raise OBJECT_NOT_EXIST exception.
+ This is to simulate the server exception reply regardless the actual
+ meaning of the OBJECT_NOT_EXIST exception. The test also takes advantage
of the IORTable facilities in TAO to create a simple corbaloc IOR, TAO
- always responds with a LOCATION_FORWARD message when a request is
+ always responds with a LOCATION_FORWARD message when a request is
made for an object in the IORTable. This would make the stub have the
forward address upon receiving OBJECT_NOT_EXIST exception so it can
- perform the forwarding. If client runs with the feature disabled
+ perform the forwarding. If client runs with the feature disabled
(-ORBForwardInvocationOnObjectNotExist 0) then the client should catch
the OBJECT_NOT_EXIST exception, otherwise, the request will be looping
between server and client and the invocation never ends. The invocation
diff --git a/TAO/tests/ForwardUponObjectNotExist/client.cpp b/TAO/tests/ForwardUponObjectNotExist/client.cpp
index 783d187e115..70666db32e1 100755
--- a/TAO/tests/ForwardUponObjectNotExist/client.cpp
+++ b/TAO/tests/ForwardUponObjectNotExist/client.cpp
@@ -178,7 +178,6 @@ Worker::run_test (void)
return;
}
-
CORBA::Boolean r =
server->test_is_a ("IDL:Foo:1.0");
diff --git a/TAO/tests/ForwardUponObjectNotExist/server.cpp b/TAO/tests/ForwardUponObjectNotExist/server.cpp
index eb95494366b..133182484f3 100755
--- a/TAO/tests/ForwardUponObjectNotExist/server.cpp
+++ b/TAO/tests/ForwardUponObjectNotExist/server.cpp
@@ -97,6 +97,10 @@ ACE_TMAIN(int argc, ACE_TCHAR *argv[])
orb->run ();
ACE_DEBUG ((LM_DEBUG, "(%P|%t)server: event loop finished\n"));
+
+ root_poa->destroy (1, 1);
+
+ orb->destroy ();
}
catch (const CORBA::Exception& ex)
{
diff --git a/TAO/tests/Forwarding/README b/TAO/tests/Forwarding/README
index 12c0bd3a90c..ff4ce9af985 100644
--- a/TAO/tests/Forwarding/README
+++ b/TAO/tests/Forwarding/README
@@ -25,6 +25,6 @@ $ ./run_test.pl
@todo The test is not nearly a complete test for location forwarding,
for example, it does not test deeeply nested location forwards
or the interactions between location forwarding and multiple
- profiles.
+ profiles.
*/
diff --git a/TAO/tests/GIOP_Fragments/PMB_With_Fragments/README b/TAO/tests/GIOP_Fragments/PMB_With_Fragments/README
index f29f1d236ec..7453eea6644 100644
--- a/TAO/tests/GIOP_Fragments/PMB_With_Fragments/README
+++ b/TAO/tests/GIOP_Fragments/PMB_With_Fragments/README
@@ -1,3 +1,5 @@
+$Id$
+
In order to regenerate the data files, you will need to perform the
following steps:
diff --git a/TAO/tests/HandleExhaustion/README b/TAO/tests/HandleExhaustion/README
index 5b96077a24c..a801f6019a3 100644
--- a/TAO/tests/HandleExhaustion/README
+++ b/TAO/tests/HandleExhaustion/README
@@ -1,3 +1,5 @@
+$Id$
+
This test is designed to test the very rare situation where an accept() will
fail due to the fact that no file descriptors are available to the process
(or system). It assumes that file handles and socket handles come from the
diff --git a/TAO/tests/Hello/README b/TAO/tests/Hello/README
index ee77329decb..7c7991772b9 100644
--- a/TAO/tests/Hello/README
+++ b/TAO/tests/Hello/README
@@ -1,12 +1,14 @@
/**
+$Id$
+
@page Hello Test README File
- The simplest possible test for TAO. This is a very simple
+The simplest possible test for TAO. This is a very simple
test for TAO, it can be argued that it is in fact too simple to do
anything useful, i.e. chances are that this test will always pass.
- The goals of writing this test are:
+ The goals of writing this test are:
- Provide a very simple, very fast 'smoke test' for ORB developers.
If Hello does not pass then something is extremely broken and you
@@ -25,13 +27,13 @@ anything useful, i.e. chances are that this test will always pass.
there is no dependency on it if the client and server do not use
type codes or Anys.
- Please refrain from "improving", extending or expanding this
-test, if you need to change
+Please refrain from "improving", extending or expanding this
+test, if you need to change
- To run the test use the run_test.pl script:
+ To run the test use the run_test.pl script:
$ ./run_test.pl
- the script returns 0 if the test was successful.
+ the script returns 0 if the test was successful.
*/
diff --git a/TAO/tests/Hello/run_test.pl b/TAO/tests/Hello/run_test.pl
index 719974e5c50..f45d4729c86 100755
--- a/TAO/tests/Hello/run_test.pl
+++ b/TAO/tests/Hello/run_test.pl
@@ -10,11 +10,14 @@ use PerlACE::TestTarget;
$status = 0;
$debug_level = '0';
-
+$cdebug_level = '0';
foreach $i (@ARGV) {
if ($i eq '-debug') {
$debug_level = '10';
}
+ if ($i eq '-cdebug') {
+ $cdebug_level = '10';
+ }
}
my $server = PerlACE::TestTarget::create_target (1) || die "Create target 1 failed\n";
@@ -27,7 +30,7 @@ $server->DeleteFile($iorbase);
$client->DeleteFile($iorbase);
$SV = $server->CreateProcess ("server", "-ORBdebuglevel $debug_level -o $server_iorfile");
-$CL = $client->CreateProcess ("client", "-k file://$client_iorfile");
+$CL = $client->CreateProcess ("client", "-ORBdebuglevel $cdebug_level -k file://$client_iorfile");
$server_status = $SV->Spawn ();
if ($server_status != 0) {
diff --git a/TAO/tests/ICMG_Any_Bug/README b/TAO/tests/ICMG_Any_Bug/README
index 28e5ee3c61d..11491c506a3 100644
--- a/TAO/tests/ICMG_Any_Bug/README
+++ b/TAO/tests/ICMG_Any_Bug/README
@@ -1,15 +1,19 @@
/**
+$Id$
+
+
+
@page ICMG_Any Test README File
- The goals of writing this test are:
+ The goals of writing this test are:
- 1. To test TAO's implementaion of Any_to_object ().
+ 1. To test TAO's implementation of Any_to_object ().
- To run the test use the run_test.pl script:
+ To run the test use the run_test.pl script:
$ ./run_test.pl
- the script returns 0 if the test was successful.
+ the script returns 0 if the test was successful.
*/
diff --git a/TAO/tests/IDL_Inherited_Operation/README b/TAO/tests/IDL_Inherited_Operation/README
index 2bde20e4f2a..4e4434a5e6c 100644
--- a/TAO/tests/IDL_Inherited_Operation/README
+++ b/TAO/tests/IDL_Inherited_Operation/README
@@ -1,33 +1,35 @@
/**
+$Id$
+
@page IDL Inherited Operation Test README File
This test checks that an IDL compiler bug, fixed by
-
+
Fri Mar 20 16:04:58 UTC 2009 Jeff Parsons <j.parsons@vanderbilt.edu>
never gets re-introduced. The IDL declarations that caused the
original bug are:
-
+
- A base interface, with an operation, is declared inside 2
- nested modules.
+ nested modules.
- The nested modules are closed.
- The nested modules are reopened, and forward declaration of
- the base interface appears inside.
+ the base interface appears inside.
- The nested modules are closed.
- The outer module is reopened, and a derived interface
declaration appears inside, using the partially scoped
name of the base interface.
-
+
This type of IDL caused the base interface operation to be missing
from the operation table in generated code for the derived
interface. Client calls to this operation on a derived object
would result in a BAD_OPERATION exception.
-
+
The test is here instead of in the IDL_Test directory because
the bug can be detected only at runtime, by a remote call.
IDL_Test is designed to catch only:
-
+
- Error messages incorrectly caused by legal IDL
- Errors from incompilable generated code
- Incorrect repository IDs, fetched by a local stub call
diff --git a/TAO/tests/IDL_Test/README b/TAO/tests/IDL_Test/README
index 9165d90c57e..5f5dce0ab93 100644
--- a/TAO/tests/IDL_Test/README
+++ b/TAO/tests/IDL_Test/README
@@ -1,17 +1,4 @@
-// $Id$
-
-// ============================================================================
-//
-// = LIBRARY
-// TAO/tests/IDL_Test
-//
-// = FILENAME
-// README
-//
-// = AUTHOR
-// Jeff Parsons <j.parsons@vanderbilt.edu>
-//
-// ============================================================================
+$Id$
This test is a collection of IDL files that once caused IDL compiler
or C++ compiler errors, plus a dummy main.cpp for the build. There is
@@ -27,7 +14,7 @@ are uncovered and fixed, new examples will be added to the suite, to
ensure that the bugs do not recur.
The -GA option has been added to the IDL compiler command line. This
-option generates the implementations of type codes and Any
+option generates the implementations of type codes and Any
insertion/extraction operators in a separate file with the
extension *A.cpp. These files have been added to the build, to make
sure that the option functions correctly for all the IDL types
@@ -48,7 +35,7 @@ that will then be compiled by the C++ compiler on your platform.
To run the test, type 'main' at the command line. The generation of
correct IOR prefixes in pragma.idl is checked in the body of main().
-The rest of the .idl files need only to build cleanly. To test the
-client/server functionality of the various IDL types and operations,
+The rest of the .idl files need only to build cleanly. To test the
+client/server functionality of the various IDL types and operations,
see the test suite in ACE_wrappers/TAO/tests/Param_Test.
diff --git a/TAO/tests/IORManipulation/README b/TAO/tests/IORManipulation/README
index 10fb424eccc..2aaf48aec27 100644
--- a/TAO/tests/IORManipulation/README
+++ b/TAO/tests/IORManipulation/README
@@ -1,3 +1,5 @@
+$Id$
+
This program test the basic operation of TAO's IORManipulation
interface.
@@ -10,4 +12,4 @@ Comments:
- The various stages of the test are printed out. Each
generated IOR and all error conditions. Currently
- the NotFound exception is tested for.
+ the NotFound exception is tested for.
diff --git a/TAO/tests/IPV6/README b/TAO/tests/IPV6/README
index 656145f5902..9547b2adb13 100644
--- a/TAO/tests/IPV6/README
+++ b/TAO/tests/IPV6/README
@@ -1,14 +1,16 @@
/**
+$Id$
+
@page IPV6 Test README File
This test is designed to test a list of IPV6 specific
connection conditions.
- To run the test use the run_test.pl script:
+To run the test use the run_test.pl script:
$ ./run_test.pl
- the script returns 0 if the test was successful.
+the script returns 0 if the test was successful.
*/
diff --git a/TAO/tests/InterOp-Naming/README b/TAO/tests/InterOp-Naming/README
index 296e8b9cd5a..7f9a3abd77c 100644
--- a/TAO/tests/InterOp-Naming/README
+++ b/TAO/tests/InterOp-Naming/README
@@ -1,3 +1,5 @@
+$Id$
+
CORBA InterOperable Naming Service :
-------------------------------------
@@ -13,12 +15,12 @@ $(TAO_ROOT)/docs/Options.html
The InterOp_test :
The test server adds the argument specified with the -i option and the
-IOR of the INS_i servant to the IOR table. The test client calls
+IOR of the INS_i servant to the IOR table. The test client calls
resolve_initial_references on argv[1].
TEST 1: Single Profile corbalocs using -ORBInitRef
-InterOp-Naming> INS_test_server -i ins -nd -ORBObjRefStyle URL
+InterOp-Naming> INS_test_server -i ins -nd -ORBObjRefStyle URL
// -i Adds the ins:IOR mapping to
// the ORB table.
// -n Use the Naming Service.
@@ -29,7 +31,7 @@ InterOp-Naming> INS_test_client arbit_service \
TEST 2: Multiple Profile corbalocs using -ORBInitRef
-InterOp-Naming> INS_test_server -i ins -nd -ORBobjrefstyle url
+InterOp-Naming> INS_test_server -i ins -nd -ORBobjrefstyle url
// -i Adds the ins:IOR mapping to
// the ORB table.
@@ -43,7 +45,7 @@ InterOp-Naming> INS_test_client arbit_service \
TEST 3: Single Profile corbaloc using -ORBDefautlInitRef
-InterOp-Naming> INS_test_server -i ins -nd -ORBObjRefStyle URL
+InterOp-Naming> INS_test_server -i ins -nd -ORBObjRefStyle URL
// -i Adds the ins:IOR mapping to
// the ORB table.
@@ -54,7 +56,7 @@ InterOp-Naming> INS_test_client ins \
TEST 4: Multiple Profile corbaloc using -ORBDefaultInitRef
-InterOp-Naming> INS_test_server -i ins -nd -ORBobjrefstyle url
+InterOp-Naming> INS_test_server -i ins -nd -ORBobjrefstyle url
// -i Adds the ins:IOR mapping to
// the ORB table.
diff --git a/TAO/tests/Leader_Followers/README b/TAO/tests/Leader_Followers/README
index 725c92f1ad0..9e9c378b14b 100644
--- a/TAO/tests/Leader_Followers/README
+++ b/TAO/tests/Leader_Followers/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
diff --git a/TAO/tests/LongUpcalls/README b/TAO/tests/LongUpcalls/README
index 3e7e6a576b1..a26d9dae352 100644
--- a/TAO/tests/LongUpcalls/README
+++ b/TAO/tests/LongUpcalls/README
@@ -1,36 +1,38 @@
/**
+$Id$
+
@page Long Upcalls Test README File
- Verify that the ORB does not dead-lock, even in the presence
+Verify that the ORB does not dead-lock, even in the presence
of very long or unbounded upcalls. This is a regression test for:
http://ace.cs.wustl.edu/bugzilla/show_bug.cgi?id=175
- In the old days the leader thread would not allow any
+In the old days the leader thread would not allow any
followers to take over while a long upcall or reply handler
was running. This could produce deadlocks as in some cases the upcall
may want for follower threads before returning.
- To execute the test simply run
+To execute the test simply run
$ ./run_test.pl
- The test returns 0 on success.
+The test returns 0 on success.
@section Known problems
- This test can also be used to verify that bug
+This test can also be used to verify that bug
http://ace.cs.wustl.edu/bugzilla/show_bug.cgi?id=575
- is still unresolved, all you need to do is run the following
+is still unresolved, all you need to do is run the following
programs:
$ ./ami_server -ORBSvcConf svc.conf -o test.ior
$ ./ami_client -ORBSvcConf svc.conf -k file://test.ior
- the client will deadlock.
+the client will deadlock.
*/
diff --git a/TAO/tests/MProfile/README b/TAO/tests/MProfile/README
index cb231703e4f..9ef2ab1092b 100644
--- a/TAO/tests/MProfile/README
+++ b/TAO/tests/MProfile/README
@@ -1,3 +1,5 @@
+$Id$
+
This program tests fundamentals of TAO's ORB fault tolerance by
merging multiple profiles in a single object reference.
diff --git a/TAO/tests/MProfile_Connection_Timeout/README b/TAO/tests/MProfile_Connection_Timeout/README
index 85dc6e4d7ed..5027ec5338c 100644
--- a/TAO/tests/MProfile_Connection_Timeout/README
+++ b/TAO/tests/MProfile_Connection_Timeout/README
@@ -1,24 +1,26 @@
/**
+$Id$
+
@page MProfile_Connection_Tiemout Test README File
- The simplest possible test for connection timeouts across
+The simplest possible test for connection timeouts across
multiple profiles aka BUGID 1284. The aim of this test is to
see whether TAO client fails over to the next profile if a connection
timeout policy is set. If connection_timeout policy is set and if the
client is not anle to establish connection using one of the profiles,
the client should fail over to the next profile seamlessly. The test
has been constructed to check for this feature.
-
- Please refrain from "improving", extending or expanding this
-test.
-@todo: We need to write a MT test for this feature.
+Please refrain from "improving", extending or expanding this
+test.
+
+@todo: We need to write a MT test for this feature.
- To run the test use the run_test.pl script:
+To run the test use the run_test.pl script:
$ ./run_test.pl
- the script returns 0 if the test was successful.
+the script returns 0 if the test was successful.
*/
diff --git a/TAO/tests/MProfile_Forwarding/README b/TAO/tests/MProfile_Forwarding/README
index 518d6d7ec14..9a8dee07935 100644
--- a/TAO/tests/MProfile_Forwarding/README
+++ b/TAO/tests/MProfile_Forwarding/README
@@ -1,10 +1,12 @@
+$Id$
+
This test evalutes ORB fault tolerance support, based on one of the
problems that was reported by the DOORS team at Lucent. The test is
aimed at testing the following scenario.
1. We will have three copies of the same server running. Let me call
them as ref1, ref2 & ref3.
-
+
2. We will have a manager application which does the following. Hosts
a POA with the policies set for a Servant_Locator. Then it creates
the reference on that and does the following
@@ -17,7 +19,7 @@ aimed at testing the following scenario.
3. The client starts by reading the IOR written to a file by the
Manager, that was created by 2a. The client basically makes a remote
- call and a shutdown call on the remote objects in a loop ie. multiple times.
+ call and a shutdown call on the remote objects in a loop ie. multiple times.
a. When the first call is made, the call is responded by the server who published
ref1. He is then shutdown.
@@ -25,9 +27,9 @@ aimed at testing the following scenario.
is also shutdown next.
c. On the third call, the call first comes to the preinvoke () method in the
Locator class who throws the ForwardRequest exception with the IOR created in
- 2b.
+ 2b.
d. After the exception is thrown the calls get resolved on the server
- who published ref3. He is also shutdown next.
+ who published ref3. He is also shutdown next.
The above sequence SHOULD be seen to consider the test as being
succesfull.
@@ -37,20 +39,20 @@ To run the test
* Start three copies of the server like this
- $ ./server -o file1.ior
- $ ./server -o file2.ior
- $ ./server -o file3.ior
+ $ ./server -o file1.ior
+ $ ./server -o file2.ior
+ $ ./server -o file3.ior
* Then start the Manager like this
$ ./Manager -a file://file1.ior -b file://file2.ior -c \
- file://file3.ior -d file4.ior
+ file://file3.ior -d file4.ior
(The above should be on the same line in the command prompt. The
file4.ior is for publishing the first merged IOR (refer step 2.a).
* The start the client like this
-
+
$ ./client -o file://file4.ior
diff --git a/TAO/tests/MT_BiDir/README b/TAO/tests/MT_BiDir/README
index d836ac886ec..280b1487680 100644
--- a/TAO/tests/MT_BiDir/README
+++ b/TAO/tests/MT_BiDir/README
@@ -1,15 +1,17 @@
/**
+$Id$
+
@page MT_BiDir Test README File
This is a stress test that exercises the birectional GIOP
-connection implementation with multiple threads in TAO.
+connection implementation with multiple threads in TAO.
- To run the test use the run_test.pl script:
+To run the test use the run_test.pl script:
$ ./run_test.pl
- the script returns 0 if the test was successful.
+the script returns 0 if the test was successful.
*/
diff --git a/TAO/tests/MT_Client/README b/TAO/tests/MT_Client/README
index 64e499a3524..f1fcb5e2fe1 100644
--- a/TAO/tests/MT_Client/README
+++ b/TAO/tests/MT_Client/README
@@ -1,18 +1,17 @@
-
-# $Id$
+$Id$
Description:
- This is a simple test for multi-threaded clients; it just
-creates a simple server process and runs a client with multiple thread
+This is a simple test for multi-threaded clients; it just
+creates a simple server process and runs a client with multiple thread
sharing the same object reference.
Expected output:
- The server prints out the IOR of the object it serves. The
+The server prints out the IOR of the object it serves. The
client shouldn't print out anything, it returns 0 on success.
How to run:
- You can use the run_test.pl script to run it or:
+You can use the run_test.pl script to run it or:
$ server -o test.ior
$ client -k file://test.ior -n 4 -i 1000
diff --git a/TAO/tests/MT_NoUpcall_Client_Leader/README b/TAO/tests/MT_NoUpcall_Client_Leader/README
index f8174c18bc2..bb44e5784dc 100644
--- a/TAO/tests/MT_NoUpcall_Client_Leader/README
+++ b/TAO/tests/MT_NoUpcall_Client_Leader/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
The test simulates a case when an incomming requests is being detected while a
client-leader thread is waiting in the reactor event loop for its own reply.
@@ -16,14 +16,14 @@ in the reactor event loop for its own reply. Thus, if any follower threads are
available, they can pick it up and process it eventually.
A rapidly increasing spin prevention back-off delay helps to mitigate the
-negative influence of this solution over the processor utilization.
+negative influence of this solution over the processor utilization.
Run the test by starting the server:
./server -ORBSvcConf mt_noupcall.conf
-
+
And the client:
./client
-
+
If any requests get "ignored" the server process will hang indefinitely.
diff --git a/TAO/tests/MT_Server/README b/TAO/tests/MT_Server/README
index 7820727a22f..fca3a602673 100644
--- a/TAO/tests/MT_Server/README
+++ b/TAO/tests/MT_Server/README
@@ -1,17 +1,17 @@
-# $Id$
+$Id$
Description:
- This is a simple test for a thread-pool server. It creates a
-server process with a variable number of threads, multiple clients can
+This is a simple test for a thread-pool server. It creates a
+server process with a variable number of threads, multiple clients can
send requests to it, the requests are handled in different threads.
Expected output:
- The server prints out the IOR of the object it serves and the
+The server prints out the IOR of the object it serves and the
thread that handles each request.
How to run:
- You can use the run_test.pl script to run it or:
+You can use the run_test.pl script to run it or:
$ server -o test.ior -n 4 -ORBSvcConf server.conf
$ client -k file://test.ior -i 1000
diff --git a/TAO/tests/MT_Timeout/README b/TAO/tests/MT_Timeout/README
index 2a14e349105..49e7c955f5a 100644
--- a/TAO/tests/MT_Timeout/README
+++ b/TAO/tests/MT_Timeout/README
@@ -1,14 +1,16 @@
/**
+$Id$
+
@page MT_Timeout Test README File
- Test the roundtrip delay timeouts in a multithreaded
+Test the roundtrip delay timeouts in a multithreaded
client/server scenario.
- To run the test use the run_test.pl script:
+To run the test use the run_test.pl script:
$ ./run_test.pl
- the script returns 0 if the test was successful.
+the script returns 0 if the test was successful.
*/
diff --git a/TAO/tests/Multiple/README b/TAO/tests/Multiple/README
index 069e8d9bfd2..f27664de8e6 100644
--- a/TAO/tests/Multiple/README
+++ b/TAO/tests/Multiple/README
@@ -1,4 +1,4 @@
-<$Id$>
+$Id$
This test make sure that the collocation scheme works fine in case
of diamond shaped multiple inheritance. The case taken into account
diff --git a/TAO/tests/Multiple_Inheritance/README b/TAO/tests/Multiple_Inheritance/README
index 09e5a587400..cad1d77db0c 100644
--- a/TAO/tests/Multiple_Inheritance/README
+++ b/TAO/tests/Multiple_Inheritance/README
@@ -1,3 +1,5 @@
+$Id$
+
This module is used as a test for IDL interfaces that inherit from
multiple interfaces. The "diamond of death" inheritance hierarchy is
used in this example where there is a common base class (A), two
diff --git a/TAO/tests/Muxed_GIOP_Versions/README b/TAO/tests/Muxed_GIOP_Versions/README
index 195cc3067c3..0ff081724d0 100644
--- a/TAO/tests/Muxed_GIOP_Versions/README
+++ b/TAO/tests/Muxed_GIOP_Versions/README
@@ -1,15 +1,17 @@
/**
+$Id$
+
@page Muxed_GIOP_Versions Test README File
This is stress test to make sure that TAO doesnt share the GIOP
parsers between threads processing different GIOP versions.
- To run the test use the run_test.pl script:
+To run the test use the run_test.pl script:
$ ./run_test.pl
- the script returns 0 if the test was successful.
+the script returns 0 if the test was successful.
*/
diff --git a/TAO/tests/Muxing/README b/TAO/tests/Muxing/README
index eff764aa910..8ea354d7494 100644
--- a/TAO/tests/Muxing/README
+++ b/TAO/tests/Muxing/README
@@ -1,16 +1,18 @@
/**
+$Id$
+
@page Muxing Test README File
- A stress test for connection muxing. Just send a lot of
+A stress test for connection muxing. Just send a lot of
requests concurrently, using the muxed connections configuration. The
test was written to rule out problems with this feature while testing
something else.
- To run the test use the run_test.pl script:
+To run the test use the run_test.pl script:
$ ./run_test.pl
- the script returns 0 if the test was successful.
+the script returns 0 if the test was successful.
*/
diff --git a/TAO/tests/Native_Exceptions/README b/TAO/tests/Native_Exceptions/README
index 89ada33539c..f8b2b5d0905 100644
--- a/TAO/tests/Native_Exceptions/README
+++ b/TAO/tests/Native_Exceptions/README
@@ -1,12 +1,12 @@
-# $Id$
+$Id$
- Simple test to show (and verify) that TAO can generate code
+Simple test to show (and verify) that TAO can generate code
for platforms with native exception support, including passing the
exception around.
- To run just do:
+To run just do:
$ server -o test.ior
$ client -k file://test.ior
- or use the run_test.pl script
+or use the run_test.pl script
diff --git a/TAO/tests/NestedUpcall/MT_Client_Test/README b/TAO/tests/NestedUpcall/MT_Client_Test/README
index e1827ccb167..823d15c3018 100644
--- a/TAO/tests/NestedUpcall/MT_Client_Test/README
+++ b/TAO/tests/NestedUpcall/MT_Client_Test/README
@@ -1,10 +1,11 @@
+$Id$
Multiple Client and global resources test
=========================================
This test uses global resources, meaning one ORB and one Reactor.
-Several client threads are created, which call one of the two servers.
+Several client threads are created, which call one of the two servers.
This means, two server instances should be running. Also one
server thread is running, doing nested upcalls to the same server.
@@ -12,7 +13,7 @@ The intention is to see if global resources with multiple threads work.
The client understands the following switches:
--f file of the ior of the first server, used by approx. half of the
+-f file of the ior of the first server, used by approx. half of the
client threads and the local server thread.
-g file of the ior of the second server
diff --git a/TAO/tests/NestedUpcall/Simple/README b/TAO/tests/NestedUpcall/Simple/README
index d373edf247f..b57e8629d81 100644
--- a/TAO/tests/NestedUpcall/Simple/README
+++ b/TAO/tests/NestedUpcall/Simple/README
@@ -1,3 +1,5 @@
+$Id$
+
This is a test of the nested upcall feature in TAO. The client will
start off by calling the server and providing a callback object and a
time-to-live number. The server will callback the client (using the
diff --git a/TAO/tests/NestedUpcall/Triangle_Test/README b/TAO/tests/NestedUpcall/Triangle_Test/README
index d946e466421..b6a37c5c9b9 100644
--- a/TAO/tests/NestedUpcall/Triangle_Test/README
+++ b/TAO/tests/NestedUpcall/Triangle_Test/README
@@ -1,23 +1,24 @@
$Id$
+
Documentation about the Triangle test
Purpose:
Is to show how nested upcalls are handled.
-Three objects exist:
+Three objects exist:
Object A, Object B and the Initiator
The initiator calls a two-way call foo on object A,
object A calls foo_object_B, a one-way call, on the initiator,
this causes initiator to call foo on object B,
this causes object B to (oneway) call finish on object A,
-this causes object A to return from its first two-way call
+this causes object A to return from its first two-way call
(before object B returns from its two-way call),
after a second or so object B returns from its two-way call.
-The printed order should show, that the replies are
-handled in the stack order, but not in the actual
+The printed order should show, that the replies are
+handled in the stack order, but not in the actual
arriving order.
To start:
diff --git a/TAO/tests/Nested_Event_Loop/README b/TAO/tests/Nested_Event_Loop/README
index e5bd434ecf1..5222a2e290e 100644
--- a/TAO/tests/Nested_Event_Loop/README
+++ b/TAO/tests/Nested_Event_Loop/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
diff --git a/TAO/tests/No_Server_MT_Connect_Test/README b/TAO/tests/No_Server_MT_Connect_Test/README
index 95bcacddc97..f49b8e2090b 100644
--- a/TAO/tests/No_Server_MT_Connect_Test/README
+++ b/TAO/tests/No_Server_MT_Connect_Test/README
@@ -1,23 +1,25 @@
/**
+$Id$
+
@page No_Server_MT_Connect_Test README File
- The objective of the test is to track the behavior of the
+The objective of the test is to track the behavior of the
multi-threaded client when no server is present to connect. The client
uses all the connect strategies provided by the ORB. All the client
-threads should exit gracefully.
+threads should exit gracefully.
This test is to make sure (hopefully) the refcount mechanism on the
handler used that safeguards handlers getting deleted when the
-connection establishment fails.
+connection establishment fails.
- Please refrain from "improving", extending or expanding this
-test, if you need to change
+Please refrain from "improving", extending or expanding this
+test, if you need to change
- To run the test use the run_test.pl script:
+To run the test use the run_test.pl script:
$ ./run_test.pl
- the script returns 0 if the test was successful.
+the script returns 0 if the test was successful.
*/
diff --git a/TAO/tests/OBV/Any/README b/TAO/tests/OBV/Any/README
index d8242a24fc1..b33a737848d 100644
--- a/TAO/tests/OBV/Any/README
+++ b/TAO/tests/OBV/Any/README
@@ -1,15 +1,17 @@
/**
+$Id$
+
@page OBV/Any Test README File
- This is a very simple test to show and verify basic OBV-and-Any
- functionality.
+ This is a very simple test to show and verify basic OBV-and-Any
+ functionality.
- To run the test either use the run_test.pl script:
+ To run the test either use the run_test.pl script:
$ ./run_test.pl
- or start the client and the server manually:
+ or start the client and the server manually:
$ server -o ior
$ client -k file://ior
diff --git a/TAO/tests/OBV/Factory/README b/TAO/tests/OBV/Factory/README
index 24c5d14e509..6b9397e7769 100644
--- a/TAO/tests/OBV/Factory/README
+++ b/TAO/tests/OBV/Factory/README
@@ -1,9 +1,11 @@
/**
+$Id$
+
@page OBV/Factory Test README File
- This is a very simple test to show and verify basic OBV
- factory construct functionality.
+ This is a very simple test to show and verify basic OBV
+ factory construct functionality.
To run the test either use the run_test.pl script:
diff --git a/TAO/tests/OBV/Forward/README b/TAO/tests/OBV/Forward/README
index 4ab2e6d3fdc..deab3103ab0 100644
--- a/TAO/tests/OBV/Forward/README
+++ b/TAO/tests/OBV/Forward/README
@@ -1,9 +1,11 @@
/**
+$Id$
+
@page OBV/Forward Test README File
- This is a very simple test to show and verify
- forward declaration of valuetypes.
+ This is a very simple test to show and verify
+ forward declaration of valuetypes.
To run the test either use the run_test.pl script:
diff --git a/TAO/tests/OBV/Indirection/README b/TAO/tests/OBV/Indirection/README
index a7312c5a46b..a472dc56416 100755
--- a/TAO/tests/OBV/Indirection/README
+++ b/TAO/tests/OBV/Indirection/README
@@ -1,12 +1,12 @@
-// $Id$
+$Id$
This directory contains a CORBA example illustrating a simple client and
a server. The idl is similar to jacorb demo/value test. The test is used to
test indirection support in TAO and also can be used as interoperability
-test between TAO and JacORB.
+test between TAO and JacORB.
-How to Run
+How to Run
----------
Start the server :
@@ -31,10 +31,10 @@ above. This script can be run via the following command:
NOTE:
- If you run on Windows platform, go to Debug or Release directory to run the
- script via following command:
-
+ If you run on Windows platform, go to Debug or Release directory to run the
+ script via following command:
+
perl ../run_test.pl
-
+
diff --git a/TAO/tests/OBV/README b/TAO/tests/OBV/README
index a6796ec644d..568d07d64f6 100644
--- a/TAO/tests/OBV/README
+++ b/TAO/tests/OBV/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
The following TAO applications test and illustate various Object
By Value (OBV or valuetypes) functionality and their usage scenarios.
@@ -9,7 +9,7 @@ By Value (OBV or valuetypes) functionality and their usage scenarios.
of valuetypes inside CORBA Any type.
. Factory
-
+
The example tests OBV factory construct.
. Forward
diff --git a/TAO/tests/OBV/Supports/README b/TAO/tests/OBV/Supports/README
index e708dff9ed8..66fa8d4d873 100644
--- a/TAO/tests/OBV/Supports/README
+++ b/TAO/tests/OBV/Supports/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
The Supports_Test example tests the ability of valuetypes to support concrete
interfaces. Valuetypes are manipulated both as normal valuetypes and as object
diff --git a/TAO/tests/OBV/TC_Alignment/README b/TAO/tests/OBV/TC_Alignment/README
index dc1a595747e..0c747c84158 100644
--- a/TAO/tests/OBV/TC_Alignment/README
+++ b/TAO/tests/OBV/TC_Alignment/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page OBV/TC_ALignment Test README File
This is a test of the traversal of the typecode tree for valuetypes.
@@ -11,7 +13,7 @@ an 8-byte boundary. This problem has been fixed - the test is to ensure that
the problem does not recur as a result of future changes to the TAO TypeCode
class.
- Four valuetypes are declared in an IDL file, named in such a way
+ Four valuetypes are declared in an IDL file, named in such a way
that their repository IDs (including the terminal null byte) have lengths
of 25, 27, 29, and 31. The test method is called 4 times. In each call,
one of these valuetypes is inserted into an Any and returned to the client,
diff --git a/TAO/tests/OBV/Truncatable/README b/TAO/tests/OBV/Truncatable/README
index 74473f9019e..202f21a0406 100644
--- a/TAO/tests/OBV/Truncatable/README
+++ b/TAO/tests/OBV/Truncatable/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page OBV/Any Test README File
This test shows and verifies truncatable inheritence functionality.
diff --git a/TAO/tests/ORB_Local_Config/Bug_1459/README b/TAO/tests/ORB_Local_Config/Bug_1459/README
index 590c65fc374..d19e548f922 100644
--- a/TAO/tests/ORB_Local_Config/Bug_1459/README
+++ b/TAO/tests/ORB_Local_Config/Bug_1459/README
@@ -1,2 +1,4 @@
+$Id$
+
This test was borrowed from bugzilla 1459 and intends to test the
ability to use differently configured ORBs within the same process.
diff --git a/TAO/tests/ORB_Local_Config/Bug_3049/README b/TAO/tests/ORB_Local_Config/Bug_3049/README
index 5e1b1ae4c33..d19e548f922 100644
--- a/TAO/tests/ORB_Local_Config/Bug_3049/README
+++ b/TAO/tests/ORB_Local_Config/Bug_3049/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This test was borrowed from bugzilla 1459 and intends to test the
ability to use differently configured ORBs within the same process.
diff --git a/TAO/tests/ORB_Local_Config/README b/TAO/tests/ORB_Local_Config/README
index 013590337f7..1500d3fa229 100644
--- a/TAO/tests/ORB_Local_Config/README
+++ b/TAO/tests/ORB_Local_Config/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This is a collection of tests for the refactoring of the Service Configurator.
The following executables are self-sufficient test suites:
diff --git a/TAO/tests/ORB_Local_Config/Service_Dependency/Service_Config_Test.conf.xml b/TAO/tests/ORB_Local_Config/Service_Dependency/Service_Config_Test.conf.xml
index f3273f0cb93..a83de7d8053 100644
--- a/TAO/tests/ORB_Local_Config/Service_Dependency/Service_Config_Test.conf.xml
+++ b/TAO/tests/ORB_Local_Config/Service_Dependency/Service_Config_Test.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from Service_Config_Test.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Dynamically loading each of the Service Objects below causes a -->
<!-- number of threads to be spawned, each one invoking the Service -->
<!-- Configurator (e.g. ACE_Service_Config::process_directive(). If the -->
diff --git a/TAO/tests/ORB_Local_Config/Two_DLL_ORB/README b/TAO/tests/ORB_Local_Config/Two_DLL_ORB/README
index 46638e311ec..2d5b913edf6 100644
--- a/TAO/tests/ORB_Local_Config/Two_DLL_ORB/README
+++ b/TAO/tests/ORB_Local_Config/Two_DLL_ORB/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This test is intended to demonstrate the ORB-specific configuration
feature. It excesses two basic scenarios, in which a client and a
diff --git a/TAO/tests/ORB_destroy/README b/TAO/tests/ORB_destroy/README
index 8169383ef0e..569f358ff8f 100644
--- a/TAO/tests/ORB_destroy/README
+++ b/TAO/tests/ORB_destroy/README
@@ -1,2 +1,4 @@
+$Id$
+
Simple ORB destruction test to make sure that it's possible to destroy
the ORB correctly.
diff --git a/TAO/tests/ORB_init/Portspan/README b/TAO/tests/ORB_init/Portspan/README
index 8eb4f91abd0..cdfc626f004 100644
--- a/TAO/tests/ORB_init/Portspan/README
+++ b/TAO/tests/ORB_init/Portspan/README
@@ -1,16 +1,16 @@
- $Id$
+$Id$
portspan Test
-------------
The portspan test verifies that the portspan option to the ORB_init() call
-behaves correctly. This option allows you to restrict the port that a
+behaves correctly. This option allows you to restrict the port that a
server-side ORB will use to listen for IIOP requests, from a given range
of port numbers, starting at a given initial port.
The test works by starting a simple ORB on an endpoint with a portspan of 2.
server -ORBEndpoint iiop://:5555/portspan=2
The test script does this three times and reports an error if the first two
-don't succeed, or if the third call doesn't fail.
+don't succeed, or if the third call doesn't fail.
diff --git a/TAO/tests/ORB_shutdown/README b/TAO/tests/ORB_shutdown/README
index 8fc118e49db..3a701dcc060 100644
--- a/TAO/tests/ORB_shutdown/README
+++ b/TAO/tests/ORB_shutdown/README
@@ -1,9 +1,11 @@
/**
+$Id$
+
@page ORB_shutdown Test README File
The simplest possible test for TAO's shutdown procedure. This
-test is basically a regression for BUG 1265. Please see BUG 1265 in
+test is basically a regression for BUG 1265. Please see BUG 1265 in
http://deuce.doc.wustl.edu/bugzilla/show_bug.cgi?id=1265
diff --git a/TAO/tests/ORT/README b/TAO/tests/ORT/README
index 8a1c6f8f18f..048010a8a8b 100644
--- a/TAO/tests/ORT/README
+++ b/TAO/tests/ORT/README
@@ -1,8 +1,8 @@
-# $Id$
+$Id$
This is to test the functionality of the Object Reference Template and
the various other conditions that have to be met according to the ORT
-spec.
+spec.
The various conditions that are tested here are
@@ -12,7 +12,7 @@ The various conditions that are tested here are
For this, I just create some POAs and keep a count on how
many times the establish components is called.
-2. An ORT is initialized every time a new POA is created.
+2. An ORT is initialized every time a new POA is created.
3. Check the identity of the ORT using the adapter_name() and such other
methods in the Object Reference Template abstract valuetype.
@@ -24,16 +24,16 @@ methods should be invoked when a POA is created.
4. The other thing to test is that when ever the state of the POA
manager changes, the adapter_manager_state_changed() method is
invoked. I am not going to do anything about it .. may be just have a
-debug statement.
+debug statement.
5. And, of course that the application's implementation of the
-make_object() is invoked. I wont do anything in it .. just call
-create_reference_with_id() again .. may be.
+make_object() is invoked. I wont do anything in it .. just call
+create_reference_with_id() again .. may be.
6. Simple checks are for checking if -ORBId and -ORBServerId are
working. But, this can be checked by passing command line parameters
and invoking the corresponding functions to check if they are working
-perfectly.
+perfectly.
How to run:
===========
diff --git a/TAO/tests/Object_Loader/README b/TAO/tests/Object_Loader/README
index 71faaabc8cf..b6543b80f56 100644
--- a/TAO/tests/Object_Loader/README
+++ b/TAO/tests/Object_Loader/README
@@ -4,13 +4,13 @@
$Id$
- Test the DLL-style IORs. For more details on the DLL-style
-IORs please read the documentation in $TAO_ROOT/tao/DLL_Parser.h.
+ Test the DLL-style IORs. For more details on the DLL-style
+ IORs please read the documentation in $TAO_ROOT/tao/DLL_Parser.h.
- To execute the test simply run
+ To execute the test simply run
$ ./driver
- or run the run_test.pl script. The test returns 0 on success.
+ or run the run_test.pl script. The test returns 0 on success.
*/
diff --git a/TAO/tests/Objref_Sequence_Test/README b/TAO/tests/Objref_Sequence_Test/README
index bae3893870e..c8a6edc960f 100644
--- a/TAO/tests/Objref_Sequence_Test/README
+++ b/TAO/tests/Objref_Sequence_Test/README
@@ -1,22 +1,24 @@
/**
+$Id$
+
@page Large Object Reference Sequence Test README File
This test is for testing large Sequences of Object
references. The test was donated by Petr Tuma
<petr.tuma@mff.cuni.cz> with the necessary TAO'ification by Bala.
This test failed in TAO 1.2 and 1.2.1.
-
+
Run the test as follows
$ ./server -o file.ior
$ ./client -k file://file.ior
The test takes a long time to complete. Please do not include it
- in the daily builds.
+ in the daily builds.
$ ./run_test.pl
- the script returns 0 if the test was successful.
+ the script returns 0 if the test was successful.
*/
diff --git a/TAO/tests/OctetSeq/README b/TAO/tests/OctetSeq/README
index de0d10c571c..e8249001e71 100644
--- a/TAO/tests/OctetSeq/README
+++ b/TAO/tests/OctetSeq/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
= server, client
diff --git a/TAO/tests/Ondemand_Write/README b/TAO/tests/Ondemand_Write/README
index ee77329decb..dec8197b103 100644
--- a/TAO/tests/Ondemand_Write/README
+++ b/TAO/tests/Ondemand_Write/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Hello Test README File
The simplest possible test for TAO. This is a very simple
@@ -26,7 +28,7 @@ anything useful, i.e. chances are that this test will always pass.
type codes or Anys.
Please refrain from "improving", extending or expanding this
-test, if you need to change
+test, if you need to change
To run the test use the run_test.pl script:
diff --git a/TAO/tests/Oneway_Buffering/Oneway_Buffering.mpc b/TAO/tests/Oneway_Buffering/Oneway_Buffering.mpc
index 92fe4fbd3bc..f04ccc6e29a 100644
--- a/TAO/tests/Oneway_Buffering/Oneway_Buffering.mpc
+++ b/TAO/tests/Oneway_Buffering/Oneway_Buffering.mpc
@@ -24,7 +24,6 @@ project(*Server): messaging, taoserver {
project(*Client): messaging, taoclient {
exename = client
- requires += corba_messaging
after += *idl
Source_Files {
diff --git a/TAO/tests/Oneway_Buffering/README b/TAO/tests/Oneway_Buffering/README
index c2a90e9b932..04ceca39e57 100644
--- a/TAO/tests/Oneway_Buffering/README
+++ b/TAO/tests/Oneway_Buffering/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Oneway_Buffering Test README File
A regression test for oneway buffering. The test verifies
diff --git a/TAO/tests/Oneways_Invoking_Twoways/README b/TAO/tests/Oneways_Invoking_Twoways/README
index 240db115c96..c7fe5301bf8 100644
--- a/TAO/tests/Oneways_Invoking_Twoways/README
+++ b/TAO/tests/Oneways_Invoking_Twoways/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Oneways_Invoking_Twoways Test README File
This is a sort of a stress test for bug 575. The design of the
diff --git a/TAO/tests/Optimized_Connection/README b/TAO/tests/Optimized_Connection/README
index 2d0a010eff2..1aef4452c93 100644
--- a/TAO/tests/Optimized_Connection/README
+++ b/TAO/tests/Optimized_Connection/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Optimized_Connection Test README File
This is a test of the Optimized Connection Endpoint Selector.
diff --git a/TAO/tests/POA/Adapter_Activator/README b/TAO/tests/POA/Adapter_Activator/README
index 628cdc198be..0ae94695be2 100644
--- a/TAO/tests/POA/Adapter_Activator/README
+++ b/TAO/tests/POA/Adapter_Activator/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This example is very similar to the Explicit_Activation example except
that the POAs are deleted once the object references have been
diff --git a/TAO/tests/POA/Bug_1592_Regression/README b/TAO/tests/POA/Bug_1592_Regression/README
index d707901a31e..7ebfe0d126d 100644
--- a/TAO/tests/POA/Bug_1592_Regression/README
+++ b/TAO/tests/POA/Bug_1592_Regression/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This test verifies that server side interceptor flow is correct when a
PortableServer::ServantLocator is in use.
diff --git a/TAO/tests/POA/DSI/README b/TAO/tests/POA/DSI/README
index f2da382e968..4cd8c7e93c6 100644
--- a/TAO/tests/POA/DSI/README
+++ b/TAO/tests/POA/DSI/README
@@ -1,4 +1,5 @@
$Id$
+
Note: If you run the test, and nothing happens, that's a good thing. This
is more of an example than a test, and therefore is not very
verbose.
diff --git a/TAO/tests/POA/Default_Servant2/README b/TAO/tests/POA/Default_Servant2/README
index e4fe4e37088..b1d3de0348d 100644
--- a/TAO/tests/POA/Default_Servant2/README
+++ b/TAO/tests/POA/Default_Servant2/README
@@ -1,12 +1,12 @@
-// $Id$
+$Id$
Default_Servants
================
-
+
By using the USE_DEFAULT_SERVANT policy, the developer can create
a POA that will use a single servant to implement all of its objects.
- This approach is useful when there is very little data associated
+ This approach is useful when there is very little data associated
with each object, so little that the data can be encoded in the
Object Id.
@@ -23,12 +23,12 @@ SERVER:
======
1. To run the server, type
-
+
% server [-ORBobjrefstyle URL]
-
+
CLIENT:
======
- The client tries to create a file "test" and writes a message to
+ The client tries to create a file "test" and writes a message to
the file and reads it back and prints it.
1. To run the client, type
@@ -37,9 +37,9 @@ CLIENT:
where the IOR is got from the server output.
-
-
-
-
+
+
+
+
diff --git a/TAO/tests/POA/EndpointPolicy/README b/TAO/tests/POA/EndpointPolicy/README
index e2d37c6e6e9..c0f92d32704 100644
--- a/TAO/tests/POA/EndpointPolicy/README
+++ b/TAO/tests/POA/EndpointPolicy/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page EndpointPolicy Test README File
This test validates the TAO-specific Endpoint Policy. The Endpoint Policy
@@ -28,7 +30,7 @@ $ ./run_test.pl
Beyond the basic test run using run_test.pl, there are two variants,
a localhost based test and a "defaulted host" test. The localhost test
- uses "localhost" as the hostname rather than allowing the server to
+ uses "localhost" as the hostname rather than allowing the server to
get the systems hostname. The Localhost test is not when autorunning
on the vxworks platform.
@@ -36,7 +38,7 @@ $ ./run_test.pl
$ ./run_test_lh.pl
- In the defaulted host test, the hostname argument supplied to the
+ In the defaulted host test, the hostname argument supplied to the
endpoint policy is "". As discussed in Bug #3256, the behavior of
using defaulted hosts is changed so that unless more than one
protocol are involved, a defaulted hostname is not allowed in the
diff --git a/TAO/tests/POA/Etherealization/run_test.pl b/TAO/tests/POA/Etherealization/run_test.pl
index b62766a5e7e..c55d9411bd9 100755
--- a/TAO/tests/POA/Etherealization/run_test.pl
+++ b/TAO/tests/POA/Etherealization/run_test.pl
@@ -8,9 +8,17 @@ eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
use lib "$ENV{ACE_ROOT}/bin";
use PerlACE::TestTarget;
+$debug_level = '0';
+
+foreach $i (@ARGV) {
+ if ($i eq '-debug') {
+ $debug_level = '10';
+ }
+}
+
my $server = PerlACE::TestTarget::create_target (1) || die "Create target 1 failed\n";
-$SV = $server->CreateProcess ("Etherealization");
+$SV = $server->CreateProcess ("Etherealization", "-ORBdebuglevel $debug_level");
$test = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
diff --git a/TAO/tests/POA/Explicit_Activation/Alt_Resources/README b/TAO/tests/POA/Explicit_Activation/Alt_Resources/README
index ec8d77de73f..b1b000fad46 100644
--- a/TAO/tests/POA/Explicit_Activation/Alt_Resources/README
+++ b/TAO/tests/POA/Explicit_Activation/Alt_Resources/README
@@ -1,3 +1,5 @@
+$Id$
+
This module shows how to modify the default TAO Resource Factory to do
something user specific. In this example, the reactor() accessor is
modified to provide the ORB with an instance of the ACE_WFMO_Reactor
diff --git a/TAO/tests/POA/Explicit_Activation/README b/TAO/tests/POA/Explicit_Activation/README
index fd31291356c..4b4e0f9e554 100644
--- a/TAO/tests/POA/Explicit_Activation/README
+++ b/TAO/tests/POA/Explicit_Activation/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This application demostrates explicit activation of Servant objects.
diff --git a/TAO/tests/POA/Explicit_Activation/alternate.conf.xml b/TAO/tests/POA/Explicit_Activation/alternate.conf.xml
index 35d76be275b..66c5699e835 100644
--- a/TAO/tests/POA/Explicit_Activation/alternate.conf.xml
+++ b/TAO/tests/POA/Explicit_Activation/alternate.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from ./examples/POA/Explicit_Activation/alternate.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Refer to Alternate_Resource_Factory/README for details -->
<dynamic id="Resource_Factory" type="Service_Object">
<initializer path="Alt_Resources/Alt_Resource_Factory" init="_make_My_Resource_Factory"/>
diff --git a/TAO/tests/POA/FindPOA/README b/TAO/tests/POA/FindPOA/README
index 9ac212956d3..3fe30a5f6a6 100644
--- a/TAO/tests/POA/FindPOA/README
+++ b/TAO/tests/POA/FindPOA/README
@@ -1,3 +1,4 @@
+$Id$
FindPOA test:
============
diff --git a/TAO/tests/POA/Generic_Servant/README b/TAO/tests/POA/Generic_Servant/README
index fd37775219e..de69d3bdd23 100644
--- a/TAO/tests/POA/Generic_Servant/README
+++ b/TAO/tests/POA/Generic_Servant/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
Generic Servant:
===============
@@ -17,6 +17,6 @@ Typing
creates an executable client and server library.
-To run the client, type
+To run the client, type
% client -k file://ior
diff --git a/TAO/tests/POA/Loader/README b/TAO/tests/POA/Loader/README
index db78c9c5df6..4edd1726efe 100644
--- a/TAO/tests/POA/Loader/README
+++ b/TAO/tests/POA/Loader/README
@@ -28,7 +28,7 @@ Object-to-Servant association is added to the Active Object Map
maintained by the POA. This association becomes invalid when the POA
is destroyed or/and the Object is deactivated. In contrast, for the
Servant_Locator example operation request from the client causes the
-servant to be linked, processed, destroyed, and unlinked.
+servant to be linked, processed, destroyed, and unlinked.
For all examples, the dynamic configuration granularity is at the POA
level,i.e., a Servant Activator or Servant Locator is associated with
@@ -57,4 +57,4 @@ example:
The output will demonstrate the different actions performed by the
Servant_Manager via the Servant_Activator and the Servant_Locator
-interfaces.
+interfaces.
diff --git a/TAO/tests/POA/Nested_Non_Servant_Upcalls/run_test.pl b/TAO/tests/POA/Nested_Non_Servant_Upcalls/run_test.pl
index 8da0c1f582c..edac726c827 100755
--- a/TAO/tests/POA/Nested_Non_Servant_Upcalls/run_test.pl
+++ b/TAO/tests/POA/Nested_Non_Servant_Upcalls/run_test.pl
@@ -8,9 +8,17 @@ eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
use lib "$ENV{ACE_ROOT}/bin";
use PerlACE::TestTarget;
+$debug_level = '0';
+
+foreach $i (@ARGV) {
+ if ($i eq '-debug') {
+ $debug_level = '10';
+ }
+}
+
my $server = PerlACE::TestTarget::create_target (1) || die "Create target 1 failed\n";
-$SV = $server->CreateProcess ("Nested_Non_Servant_Upcalls");
+$SV = $server->CreateProcess ("Nested_Non_Servant_Upcalls", "-ORBdebuglevel $debug_level");
$test = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
diff --git a/TAO/tests/POA/NewPOA/README b/TAO/tests/POA/NewPOA/README
index 347c22c8df2..3700fe4124b 100644
--- a/TAO/tests/POA/NewPOA/README
+++ b/TAO/tests/POA/NewPOA/README
@@ -1,3 +1,5 @@
+$Id$
+
This application explains the usage scenario, where new POAs will have
to be created.
@@ -8,8 +10,8 @@ Run this example as follows.
Comments :
=========
- - Creates the POA hierarchy as given in the header of the NewPOA.cpp
+ - Creates the POA hierarchy as given in the header of the NewPOA.cpp
file.
-
+
- Prints out names of all the POAs.
diff --git a/TAO/tests/POA/On_Demand_Act_Direct_Coll/Client_Task.cpp b/TAO/tests/POA/On_Demand_Act_Direct_Coll/Client_Task.cpp
new file mode 100644
index 00000000000..50882492aad
--- /dev/null
+++ b/TAO/tests/POA/On_Demand_Act_Direct_Coll/Client_Task.cpp
@@ -0,0 +1,85 @@
+// $Id$
+
+#include "Client_Task.h"
+#include "testC.h"
+
+Client_Task::Client_Task (const ACE_TCHAR *ior,
+ CORBA::ORB_ptr corb,
+ ACE_Thread_Manager *thr_mgr,
+ CORBA::Boolean except)
+ : ACE_Task_Base (thr_mgr)
+ , input_ (ior)
+ , corb_ (CORBA::ORB::_duplicate (corb))
+ , except_ (except)
+{
+}
+
+int
+Client_Task::svc (void)
+{
+ int status = 0;
+ try
+ {
+ // Get an object reference from the argument string.
+ CORBA::Object_var tmp =
+ this->corb_->string_to_object (input_);
+
+ // Try to narrow the object reference to a test reference.
+ test_var test = test::_narrow (tmp.in ());
+ if (CORBA::is_nil (test.in ()))
+ {
+ ACE_ERROR_RETURN ((LM_DEBUG,
+ "Nil Test::Hello reference <%s>\n",
+ input_),
+ 1);
+ }
+
+ CORBA::String_var ior =
+ this->corb_->object_to_string (test.in ());
+
+ ACE_DEBUG ((LM_DEBUG,
+ "\nConnecting to: %C\n\n",
+ ior.in ()));
+ try
+ {
+ CORBA::String_var the_string = test->get_string ();
+ if (ACE_OS::strcmp (the_string.in (), "Hello there!") != 0)
+ {
+ ACE_ERROR ((LM_ERROR, "(%P|%t) - Error, incorrect string returned <%C>\n",
+ the_string.in ()));
+ }
+ else
+ {
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) - OK , correct string returned <%C>\n",
+ the_string.in ()));
+ }
+ }
+ catch (const CORBA::INTERNAL&)
+ {
+ if (this->except_)
+ {
+ ACE_DEBUG ((LM_DEBUG,
+ "OK: Client_Task Expected excep with "
+ "direct collocation received\n"));
+ status = 0;
+ }
+ else
+ {
+ ACE_ERROR ((LM_ERROR,
+ "ERROR: Client_Task Unxpected exception with"
+ "thru_poa collocation received\n"));
+ status = 1;
+ }
+ corb_->destroy ();
+ return 1;
+ }
+ }
+ catch (const CORBA::Exception& ex)
+ {
+ ex._tao_print_exception ("Exception caught:");
+ status = 1;
+ }
+ corb_->destroy ();
+ return status;
+
+}
diff --git a/TAO/tests/POA/On_Demand_Act_Direct_Coll/Client_Task.h b/TAO/tests/POA/On_Demand_Act_Direct_Coll/Client_Task.h
new file mode 100644
index 00000000000..f1b20a22fbf
--- /dev/null
+++ b/TAO/tests/POA/On_Demand_Act_Direct_Coll/Client_Task.h
@@ -0,0 +1,39 @@
+//
+// $Id$
+//
+
+#ifndef COLLOCATED_TEST_CLIENT_TASK_H
+#define COLLOCATED_TEST_CLIENT_TASK_H
+#include /**/ "ace/pre.h"
+#include "ace/Task.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+#include "tao/ORB.h"
+
+
+/// Implement a Task to run the client as a thread
+class Client_Task : public ACE_Task_Base
+{
+public:
+
+ /// Constructor
+ Client_Task (const ACE_TCHAR *input,
+ CORBA::ORB_ptr corb,
+ ACE_Thread_Manager *thr_mgr,
+ CORBA::Boolean exception);
+
+ /// Thread entry point
+ int svc (void);
+
+private:
+ const ACE_TCHAR *input_;
+
+ CORBA::ORB_var corb_;
+ CORBA::Boolean except_;
+
+};
+
+#include /**/ "ace/post.h"
+#endif /* COLLOCATED_TEST_CLIENT_TASK_H */
diff --git a/TAO/tests/POA/On_Demand_Act_Direct_Coll/Collocated_Test.cpp b/TAO/tests/POA/On_Demand_Act_Direct_Coll/Collocated_Test.cpp
new file mode 100644
index 00000000000..741fb6c3ba6
--- /dev/null
+++ b/TAO/tests/POA/On_Demand_Act_Direct_Coll/Collocated_Test.cpp
@@ -0,0 +1,111 @@
+//$Id$
+#include "Server_Task.h"
+#include "Client_Task.h"
+#include "ace/Get_Opt.h"
+#include "ace/Argv_Type_Converter.h"
+#include "ace/SString.h"
+#include "ace/Manual_Event.h"
+
+const ACE_TCHAR *output = ACE_TEXT("test.ior");
+const ACE_TCHAR *input = ACE_TEXT("file://test.ior");
+CORBA::Boolean exception_occured = false;
+ACE_CString server_orb;
+ACE_CString client_orb;
+
+int
+parse_args (int argc, ACE_TCHAR *argv[])
+{
+ ACE_Get_Opt get_opts (argc, argv, ACE_TEXT("k:o:td:"));
+ int c;
+
+ while ((c = get_opts ()) != -1)
+ switch (c)
+ {
+ case 'o':
+ output = get_opts.opt_arg ();
+ break;
+ case 'k':
+ input = get_opts.opt_arg ();
+ break;
+ case 't':
+ // no exception expected
+ exception_occured = false;
+ break;
+ case 'd':
+ // exception expected
+ exception_occured = true;
+ break;
+ case '?':
+ default:
+ // This is a hack but that is okay!
+ return 0;
+ }
+ // Indicates successful parsing of the command line
+ return 0;
+}
+
+int
+ACE_TMAIN(int argc, ACE_TCHAR *argv[])
+{
+
+ if (parse_args (argc,
+ argv) == -1)
+ return -1;
+
+ try
+ {
+ ACE_Argv_Type_Converter satc (argc, argv);
+ CORBA::ORB_var sorb =
+ CORBA::ORB_init (satc.get_argc (),
+ satc.get_TCHAR_argv (),
+ server_orb.c_str());
+
+ ACE_Manual_Event me;
+ Server_Task server_task (output,
+ sorb.in (),
+ me,
+ ACE_Thread_Manager::instance ());
+
+ if (server_task.activate (THR_NEW_LWP | THR_JOINABLE,
+ 1,
+ 1) == -1)
+ {
+ ACE_ERROR ((LM_ERROR, "Error activating server task\n"));
+ }
+
+ // Wait for the server thread to do some processing
+ me.wait ();
+ ACE_Argv_Type_Converter catc (argc, argv);
+ CORBA::ORB_var corb =
+ CORBA::ORB_init (catc.get_argc (),
+ catc.get_TCHAR_argv (),
+ client_orb.c_str());
+
+ Client_Task client_task (input,
+ corb.in (),
+ ACE_Thread_Manager::instance (),
+ exception_occured);
+
+ if (client_task.activate (THR_NEW_LWP | THR_JOINABLE,
+ 1,
+ 1) == -1)
+ {
+ ACE_ERROR ((LM_ERROR, "Error activating client task\n"));
+ }
+
+ // Wait for the client and server to finish
+ ACE_Thread_Manager::instance ()->wait ();
+
+ // Now that all threads have completed we can destroy the ORB
+ sorb->destroy ();
+ if (server_orb != client_orb)
+ {
+ corb->destroy();
+ }
+ }
+ catch (const CORBA::Exception&)
+ {
+ // Ignore exceptions..
+ }
+ return 0;
+}
diff --git a/TAO/tests/POA/On_Demand_Act_Direct_Coll/On_Demand_Act_D_Coll.mpc b/TAO/tests/POA/On_Demand_Act_Direct_Coll/On_Demand_Act_D_Coll.mpc
new file mode 100644
index 00000000000..75835257324
--- /dev/null
+++ b/TAO/tests/POA/On_Demand_Act_Direct_Coll/On_Demand_Act_D_Coll.mpc
@@ -0,0 +1,15 @@
+// -*- MPC -*-
+// $Id$
+
+project(On_Demand_Act_D_Coll): taoserver, portableserver, avoids_minimum_corba, avoids_corba_e_compact, avoids_corba_e_micro {
+ exename = On_Demand_Act_D_Coll
+ idlflags += -Gd
+
+ Source_Files {
+ Collocated_Test.cpp
+ Server_Task.cpp
+ Client_Task.cpp
+ Servant_Activator.cpp
+ test_i.cpp
+ }
+}
diff --git a/TAO/tests/POA/On_Demand_Act_Direct_Coll/Servant_Activator.cpp b/TAO/tests/POA/On_Demand_Act_Direct_Coll/Servant_Activator.cpp
new file mode 100644
index 00000000000..646f86ba81b
--- /dev/null
+++ b/TAO/tests/POA/On_Demand_Act_Direct_Coll/Servant_Activator.cpp
@@ -0,0 +1,64 @@
+
+//=============================================================================
+/**
+ * @file Servant_Activator.cpp
+ *
+ * $Id$
+ *
+ * Implementation of ServantActivator, which is used by a POA with
+ * a RETAIN policy.
+ *
+ *
+ * @author Irfan Pyarali
+ */
+//=============================================================================
+
+
+#include "Servant_Activator.h"
+#include "test_i.h"
+#include "ace/OS_NS_string.h"
+
+ServantActivator::ServantActivator (CORBA::ORB_ptr orb,
+ ACE_thread_t thrid)
+ : orb_ (CORBA::ORB::_duplicate (orb)),
+ thr_id_ (thrid)
+{
+ ACE_DEBUG ((LM_DEBUG,
+ ACE_TEXT ("ServantActivator::ServantActivator\n")));
+}
+
+PortableServer::Servant
+ServantActivator::incarnate (const PortableServer::ObjectId &oid,
+ PortableServer::POA_ptr poa)
+{
+ ACE_DEBUG ((LM_DEBUG,
+ ACE_TEXT ("ServantActivator::incarnate\n")));
+ // Convert ObjectId to String.
+ CORBA::String_var s = PortableServer::ObjectId_to_string (oid);
+
+ // If ObjectId string has a test substring, create and return a
+ // test_i.
+
+ if (ACE_OS::strstr (s.in (), "test") != 0)
+ return new test_i (this->orb_.in (), poa, this->thr_id_);
+ else
+ {
+ throw CORBA::OBJECT_NOT_EXIST ();
+ }
+}
+
+
+void
+ServantActivator::etherealize (const PortableServer::ObjectId &,
+ PortableServer::POA_ptr ,
+ PortableServer::Servant servant,
+ CORBA::Boolean ,
+ CORBA::Boolean remaining_activations)
+{
+ ACE_DEBUG ((LM_DEBUG,
+ ACE_TEXT ("ServantActivator::etherealize\n")));
+ // If there are no remaining activations i.e ObjectIds associated
+ // with test_i delete it.
+ if (!remaining_activations)
+ delete servant;
+}
diff --git a/TAO/tests/POA/On_Demand_Act_Direct_Coll/Servant_Activator.h b/TAO/tests/POA/On_Demand_Act_Direct_Coll/Servant_Activator.h
new file mode 100644
index 00000000000..db87624ce55
--- /dev/null
+++ b/TAO/tests/POA/On_Demand_Act_Direct_Coll/Servant_Activator.h
@@ -0,0 +1,49 @@
+// -*- C++ -*-
+
+//=============================================================================
+/**
+ * @file Servant_Activator.h
+ *
+ * $Id$
+ *
+ * Defines a ServantActivator class.
+ *
+ *
+ * @author Irfan Pyarali
+ */
+//=============================================================================
+
+
+#include "tao/PortableServer/PortableServer.h"
+#include "tao/PortableServer/ServantActivatorC.h"
+#include "tao/LocalObject.h"
+
+#include "tao/ORB.h"
+
+class ServantActivator :
+ public virtual PortableServer::ServantActivator,
+ public virtual ::CORBA::LocalObject
+{
+public:
+ ServantActivator (CORBA::ORB_ptr orb, ACE_thread_t thrid);
+
+ /**
+ * This method is invoked by a POA with USE_SERVANT_MANAGER and
+ * RETAIN policies, whenever it receives a request for a test object
+ * that is not currently active.
+ */
+ PortableServer::Servant incarnate (const PortableServer::ObjectId &oid,
+ PortableServer::POA_ptr poa);
+
+ /// This method is invoked whenever a test object is deactivated.
+ void etherealize (const PortableServer::ObjectId &oid,
+ PortableServer::POA_ptr adapter,
+ PortableServer::Servant servant,
+ CORBA::Boolean cleanup_in_progress,
+ CORBA::Boolean remaining_activations);
+
+private:
+ /// A reference to the ORB.
+ CORBA::ORB_var orb_;
+ ACE_thread_t thr_id_;
+};
diff --git a/TAO/tests/POA/On_Demand_Act_Direct_Coll/Server_Task.cpp b/TAO/tests/POA/On_Demand_Act_Direct_Coll/Server_Task.cpp
new file mode 100644
index 00000000000..687ad1e98b6
--- /dev/null
+++ b/TAO/tests/POA/On_Demand_Act_Direct_Coll/Server_Task.cpp
@@ -0,0 +1,148 @@
+//
+// $Id$
+//
+#include "Server_Task.h"
+#include "Servant_Activator.h"
+#include "ace/OS_NS_stdio.h"
+#include "ace/Manual_Event.h"
+
+static const ACE_TCHAR *ior_output_file = ACE_TEXT("test.ior");
+
+static int
+write_iors_to_file (const char *first_ior)
+{
+ FILE *output_file = ACE_OS::fopen (ior_output_file, "w");
+ if (output_file == 0 )
+ ACE_ERROR_RETURN ((LM_ERROR, "Cannot open output files for writing IORs: %Cn",
+ ior_output_file),
+ -1);
+
+ int result = ACE_OS::fprintf (output_file,
+ "%s",
+ first_ior);
+ if (result <= 0
+ || static_cast<size_t> (result) != ACE_OS::strlen (first_ior))
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "ACE_OS::fprintf failed while writing %C to %s\n",
+ first_ior,
+ ior_output_file),
+ -1);
+
+ ACE_OS::fclose (output_file);
+ return 0;
+}
+
+Server_Task::Server_Task (const ACE_TCHAR *output,
+ CORBA::ORB_ptr sorb,
+ ACE_Manual_Event &me,
+ ACE_Thread_Manager *thr_mgr)
+ : ACE_Task_Base (thr_mgr)
+ , output_ (output)
+ , me_ (me)
+ , sorb_ (CORBA::ORB::_duplicate (sorb))
+{
+}
+
+int
+Server_Task::svc (void)
+{
+ try
+ {
+ CORBA::Object_var poa_object =
+ this->sorb_->resolve_initial_references("RootPOA");
+
+ PortableServer::POA_var root_poa =
+ PortableServer::POA::_narrow (poa_object.in ());
+
+ if (CORBA::is_nil (root_poa.in ()))
+ ACE_ERROR_RETURN ((LM_ERROR,
+ " (%P|%t) Panic: nil RootPOA\n"),
+ 1);
+
+ PortableServer::POAManager_var poa_manager =
+ root_poa->the_POAManager ();
+
+
+ CORBA::PolicyList policies (4);
+ policies.length (4);
+
+ // ID Assignment Policy
+ policies[0] =
+ root_poa->create_id_assignment_policy (PortableServer::USER_ID);
+
+ // Lifespan Policy
+ policies[1] =
+ root_poa->create_lifespan_policy (PortableServer::PERSISTENT);
+
+ // Request Processing Policy
+ policies[2] =
+ root_poa->create_request_processing_policy (PortableServer::USE_SERVANT_MANAGER);
+
+ PortableServer::POA_var first_poa;
+ {
+ // Servant Retention Policy
+ policies[3] =
+ root_poa->create_servant_retention_policy (PortableServer::RETAIN);
+
+ ACE_CString name = "firstPOA";
+
+ // Create firstPOA as the child of RootPOA with the above policies
+ // firstPOA will use SERVANT_ACTIVATOR because of RETAIN policy.
+ first_poa = root_poa->create_POA (name.c_str (),
+ poa_manager.in (),
+ policies);
+
+ }
+
+ // Destroy the policy objects as they have been passed to
+ // create_POA and no longer needed.
+ for (CORBA::ULong i = 0;
+ i < policies.length ();
+ ++i)
+ {
+ CORBA::Policy_ptr policy = policies[i];
+ policy->destroy ();
+ }
+ // Allocate the servant activator.
+ ServantActivator activator (this->sorb_.in (), ACE_Thread::self ());
+ // Set ServantActivator object as the servant_manager of
+ // firstPOA.
+
+ first_poa->set_servant_manager (&activator);
+ // Create a reference with user created ID in firstPOA which uses
+ // the ServantActivator.
+
+ PortableServer::ObjectId_var first_test_oid =
+ PortableServer::string_to_ObjectId ("first test");
+
+ CORBA::Object_var first_test =
+ first_poa->create_reference_with_id (first_test_oid.in (), "IDL:test:1.0");
+ // Invoke object_to_string on the references created in firstPOA
+
+ CORBA::String_var first_test_ior =
+ this->sorb_->object_to_string (first_test.in ());
+
+ // Print the ior's of first_test.
+ ACE_DEBUG((LM_DEBUG,"<%C>\n",
+ first_test_ior.in ()));
+
+ int write_result = write_iors_to_file (first_test_ior.in ());
+ if (write_result != 0)
+ return write_result;
+
+ // Set the poa_manager state to active, ready to process requests.
+ poa_manager->activate ();
+ this->me_.signal ();
+ // Run the ORB.
+ this->sorb_->run ();
+
+ ACE_DEBUG ((LM_DEBUG, "(%P|%t) server - event loop finished\n"));
+ }
+ catch (const CORBA::Exception& ex)
+ {
+ ex._tao_print_exception ("Exception caught:");
+ return 1;
+ }
+
+ return 0;
+}
diff --git a/TAO/tests/POA/On_Demand_Act_Direct_Coll/Server_Task.h b/TAO/tests/POA/On_Demand_Act_Direct_Coll/Server_Task.h
new file mode 100644
index 00000000000..e42043c0711
--- /dev/null
+++ b/TAO/tests/POA/On_Demand_Act_Direct_Coll/Server_Task.h
@@ -0,0 +1,48 @@
+// -*- C++ -*-
+//
+// $Id$
+
+#ifndef COLLOCATED_SERVER_TASK_H
+#define COLLOCATED_SERVER_TASK_H
+
+#include /**/ "ace/pre.h"
+
+#include "ace/Task.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#include "tao/ORB.h"
+
+ACE_BEGIN_VERSIONED_NAMESPACE_DECL
+class ACE_Manual_Event;
+ACE_END_VERSIONED_NAMESPACE_DECL
+
+/// Implement a Task to run the server in a single thread
+class Server_Task : public ACE_Task_Base
+{
+public:
+ /// Constructor
+ Server_Task (const ACE_TCHAR *output,
+ CORBA::ORB_ptr sorb,
+ ACE_Manual_Event &me,
+ ACE_Thread_Manager *thr_mgr);
+
+ /// Thread entry point
+ int svc (void);
+
+private:
+ /// Output file for IOR
+ const ACE_TCHAR *output_;
+
+ /// Manual event to wake up the main thread to create a client
+ /// thread.
+ ACE_Manual_Event &me_;
+
+ CORBA::ORB_var sorb_;
+};
+
+#include /**/ "ace/post.h"
+
+#endif /* COLLOCATED_SERVER_TASK_H */
diff --git a/TAO/tests/POA/On_Demand_Act_Direct_Coll/run_test.pl b/TAO/tests/POA/On_Demand_Act_Direct_Coll/run_test.pl
new file mode 100755
index 00000000000..39409d83955
--- /dev/null
+++ b/TAO/tests/POA/On_Demand_Act_Direct_Coll/run_test.pl
@@ -0,0 +1,44 @@
+eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
+ & eval 'exec perl -S $0 $argv:q'
+ if 0;
+
+# $Id$
+# -*- perl -*-
+
+use lib "$ENV{ACE_ROOT}/bin";
+use PerlACE::TestTarget;
+
+my $server = PerlACE::TestTarget::create_target(1) || die "Create target 1 failed\n";
+
+$iorbase = "test.ior";
+my $server_iorfile = $server->LocalFile ($iorbase);
+$server->DeleteFile($iorbase);
+
+$status = 0;
+
+$SV = $server->CreateProcess ("On_Demand_Act_D_Coll");
+
+print STDERR "======== Running with ORBCollocationg = global, -ORBCollocationStrategy = thru_poa)\n";
+$SV->Arguments ("-o $server_iorfile -k file://$server_iorfile -t -ORBCollocation global -ORBCollocationStrategy thru_poa");
+$sv = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
+
+if ($sv != 0) {
+ print STDERR "ERROR in On_Demand_Act_D_Coll test: Servant Activator and Collocation test\n";
+ $status = 1;
+}
+$server->DeleteFile($iorbase);
+
+
+print STDERR "======== Running with -ORBCollocation global -ORBCollocationStrategy direct \n";
+$SV->Arguments ("-o $server_iorfile -k file://$server_iorfile -d -ORBCollocation global -ORBCollocationStrategy direct");
+$sv = $SV->SpawnWaitKill ($server->ProcessStartWaitInterval());
+
+if ($sv != 0) {
+ print STDERR "ERROR in On_Demand_Act_D_Coll test: Servant Activator and Collocation test\n";
+ $status = 1;
+}
+
+$server->DeleteFile($iorbase);
+$server->GetStderrLog();
+
+exit $status;
diff --git a/TAO/tests/POA/On_Demand_Act_Direct_Coll/test.idl b/TAO/tests/POA/On_Demand_Act_Direct_Coll/test.idl
new file mode 100644
index 00000000000..ccb6713f7d3
--- /dev/null
+++ b/TAO/tests/POA/On_Demand_Act_Direct_Coll/test.idl
@@ -0,0 +1,11 @@
+// $Id$
+
+interface test
+{
+ /// Return a simple string
+ string get_string ();
+
+ void method ();
+ // A twoway operation.
+
+};
diff --git a/TAO/tests/POA/On_Demand_Act_Direct_Coll/test_i.cpp b/TAO/tests/POA/On_Demand_Act_Direct_Coll/test_i.cpp
new file mode 100644
index 00000000000..1deaae764e1
--- /dev/null
+++ b/TAO/tests/POA/On_Demand_Act_Direct_Coll/test_i.cpp
@@ -0,0 +1,49 @@
+// $Id$
+
+#include "test_i.h"
+#include "ace/OS_NS_unistd.h"
+#include "ace/OS_NS_string.h"
+
+// Constructor
+test_i::test_i (CORBA::ORB_ptr orb,
+ PortableServer::POA_ptr poa,
+ ACE_thread_t thrid)
+ : orb_ (CORBA::ORB::_duplicate (orb))
+ ,poa_ (PortableServer::POA::_duplicate (poa))
+ ,thr_id_ (thrid)
+{
+}
+
+void
+test_i::method (void)
+{
+}
+
+char *
+test_i::get_string (void)
+{
+ ACE_DEBUG ((LM_DEBUG,
+ "(%P|%t) Upcall in process ..\n"));
+ // Use portable thread IDs
+ ACE_Thread_ID self_ID;
+ // Thread ID from Server
+ ACE_Thread_ID this_ID;
+ this_ID.id(this->thr_id_);
+
+ // Servant Thread ID same as Thread ID server, so a remote call,
+ // in case of a collocation the servant runs in calling thread (Client)
+ if (self_ID == this_ID)
+ {
+ ACE_ERROR ((LM_ERROR,
+ "(%P|%t) ERROR: A remote call has been made "
+ " exiting ..\n"));
+ ACE_OS::abort ();
+ }
+ else
+ {
+ ACE_DEBUG ((LM_DEBUG,
+ "(%P|%t) OK: A collocated invocation has been made.\n"));
+ }
+ return CORBA::string_dup ("Hello there!");
+}
+
diff --git a/TAO/tests/POA/On_Demand_Act_Direct_Coll/test_i.h b/TAO/tests/POA/On_Demand_Act_Direct_Coll/test_i.h
new file mode 100644
index 00000000000..b4937835efb
--- /dev/null
+++ b/TAO/tests/POA/On_Demand_Act_Direct_Coll/test_i.h
@@ -0,0 +1,40 @@
+//=============================================================================
+/**
+ * @file test_i.h
+ *
+ * $Id$
+ *
+ * Defines test_i class for the test interface
+ *
+ *
+ * @author Irfan Pyarali
+ */
+//=============================================================================
+
+
+#include "testS.h"
+
+class test_i : public POA_test
+{
+public:
+ /// Constructor - takes a POA and a value parameter
+ test_i (CORBA::ORB_ptr orb,
+ PortableServer::POA_ptr poa,
+ ACE_thread_t thr_id);
+
+ /// A twoway operation.
+ void method (void);
+
+ /// A twoway operation.
+ char *
+ get_string (void);
+
+protected:
+ /// Our ORB.
+ CORBA::ORB_var orb_;
+
+ /// Our POA.
+ PortableServer::POA_var poa_;
+private:
+ ACE_thread_t thr_id_;
+};
diff --git a/TAO/tests/POA/On_Demand_Activation/README b/TAO/tests/POA/On_Demand_Activation/README
index d5fbc21506c..56c7cdd24fd 100644
--- a/TAO/tests/POA/On_Demand_Activation/README
+++ b/TAO/tests/POA/On_Demand_Activation/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
On_Demand_Activation Tests:
==========================
@@ -64,7 +64,7 @@ Servant Activator:
2. Get the IOR for "first test" from the server output .
-3. Run client -k IOR
+3. Run client -k IOR
4. You should get an output
diff --git a/TAO/tests/POA/On_Demand_Loading/README b/TAO/tests/POA/On_Demand_Loading/README
index 1e54111f6f9..56e45bd4ad7 100644
--- a/TAO/tests/POA/On_Demand_Loading/README
+++ b/TAO/tests/POA/On_Demand_Loading/README
@@ -53,5 +53,5 @@ interfaces.
NOTE: If directly running run_test.pl srcipt then by default the example
uses Generic_Servant as the servant. Hence its necessary to build
-$TAO_ROOT/examples/POA/Generic_Servant before you build and run this
+$TAO_ROOT/examples/POA/Generic_Servant before you build and run this
example.
diff --git a/TAO/tests/POA/POA_BiDir/README b/TAO/tests/POA/POA_BiDir/README
index 347c22c8df2..3700fe4124b 100644
--- a/TAO/tests/POA/POA_BiDir/README
+++ b/TAO/tests/POA/POA_BiDir/README
@@ -1,3 +1,5 @@
+$Id$
+
This application explains the usage scenario, where new POAs will have
to be created.
@@ -8,8 +10,8 @@ Run this example as follows.
Comments :
=========
- - Creates the POA hierarchy as given in the header of the NewPOA.cpp
+ - Creates the POA hierarchy as given in the header of the NewPOA.cpp
file.
-
+
- Prints out names of all the POAs.
diff --git a/TAO/tests/POA/Persistent_ID/README b/TAO/tests/POA/Persistent_ID/README
index 976de6c96e0..c7fb17322fa 100644
--- a/TAO/tests/POA/Persistent_ID/README
+++ b/TAO/tests/POA/Persistent_ID/README
@@ -1,7 +1,7 @@
$Id$
This test checks the combination of PERSISTENT & SYSTEM_ID POA
-policies.
+policies.
A servant is registered on the RootPOA. The client tells the server to
create a POA with PERSISTENT & SYSTEM_ID policies. The server does so
diff --git a/TAO/tests/POA/README b/TAO/tests/POA/README
index 7a91ff44028..39e2a4fa7cf 100644
--- a/TAO/tests/POA/README
+++ b/TAO/tests/POA/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
The following TAO applications test and illustate various Portable
Object Adapter (POA) interfaces and their usage scenarios.
diff --git a/TAO/tests/POA/Reference_Counted_Servant/README b/TAO/tests/POA/Reference_Counted_Servant/README
index effa3c1cdd2..fc8c40776db 100644
--- a/TAO/tests/POA/Reference_Counted_Servant/README
+++ b/TAO/tests/POA/Reference_Counted_Servant/README
@@ -1,4 +1,4 @@
-// $Id$
+$Id$
This application demostrates reference counted servants.
diff --git a/TAO/tests/POA/RootPOA/README b/TAO/tests/POA/RootPOA/README
index c2f0c5749b4..0c0dd6a55f4 100644
--- a/TAO/tests/POA/RootPOA/README
+++ b/TAO/tests/POA/RootPOA/README
@@ -1,3 +1,5 @@
+$Id$
+
This program obtains the name of the Root POA.
Run the application as follows.
diff --git a/TAO/tests/Parallel_Connect_Strategy/README b/TAO/tests/Parallel_Connect_Strategy/README
index 75dac13ce01..935cb38543c 100644
--- a/TAO/tests/Parallel_Connect_Strategy/README
+++ b/TAO/tests/Parallel_Connect_Strategy/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Parallel Connect Strategy Test README File
This test is intended to demonstrate that the Parallel Connect
diff --git a/TAO/tests/Param_Test/README b/TAO/tests/Param_Test/README
index 3bd468d2ff3..b53c2e9d7eb 100644
--- a/TAO/tests/Param_Test/README
+++ b/TAO/tests/Param_Test/README
@@ -1,17 +1,4 @@
-// $Id$
-
-// ============================================================================
-//
-// = LIBRARY
-// TAO/tests/Param_Test
-//
-// = FILENAME
-// README
-//
-// = AUTHOR
-// Aniruddha Gokhale
-//
-// ============================================================================
+$Id$
This directory contains an application that tests all the parameter
passing conventions in CORBA for a number of OMG IDL data types.
@@ -35,7 +22,7 @@ To run the server, type
arguments to ORB_init start with the letters -ORB. Please
see TAO documentattion on all the supported arguments
- -d for debugging.
+ -d for debugging.
-o <ior_output_file> for outputting the servant IOR to a file.
To run the client, type
@@ -47,7 +34,7 @@ To run the client, type
[-d] debugging
[-n loopcount] number of times to run the test
[-f servant-IOR-file] reads the servant-IOR from the
- specified file.
+ specified file.
[-k Param_Test-obj-ref-key] object key of Param_Test object
[-i invocation (sii/dii)] default is static invocation
interface. To use DII, type
@@ -91,7 +78,7 @@ the client:
1. Using the -f option to read the IOR from a file.
- 2. Using the -k option to read the IOR from the
+ 2. Using the -k option to read the IOR from the
command line.
run_test.pl:
@@ -99,8 +86,8 @@ run_test.pl:
There is a perl script in this directory named run_test.pl to
test all the types. It starts the server first and then runs
the client with the different data type parameters. The
- arguments it takes are:
-
+ arguments it takes are:
+
-n num -- runs the client num times (default is 5)
-d -- runs each in debug mode
-onewin -- keeps all tests in one window on NT
diff --git a/TAO/tests/Param_Test/anyop.cpp b/TAO/tests/Param_Test/anyop.cpp
index 006d174f24e..c440b8198b2 100644
--- a/TAO/tests/Param_Test/anyop.cpp
+++ b/TAO/tests/Param_Test/anyop.cpp
@@ -87,10 +87,7 @@ ACE_TMAIN (int argc, ACE_TCHAR *argv[])
orb->string_to_object ("corbaloc:iiop:localhost:1234/Foo/Bar");
Param_Test_var param_test =
- TAO::Narrow_Utils<Param_Test>::unchecked_narrow (
- obj.in (),
- _TAO_Param_Test_Proxy_Broker_Factory_function_pointer
- );
+ TAO::Narrow_Utils<Param_Test>::unchecked_narrow (obj.in ());
TAO_Stub *stub = param_test->_stubobj ();
stub->type_id = CORBA::string_dup ("IDL:Param_Test:1.0");
diff --git a/TAO/tests/Permanent_Forward/README b/TAO/tests/Permanent_Forward/README
index 283aa20a87d..654843474f6 100644
--- a/TAO/tests/Permanent_Forward/README
+++ b/TAO/tests/Permanent_Forward/README
@@ -1,3 +1,5 @@
+$Id$
+
This program tests the various forward and forward-permanent
combinations possible in applications. The tests operates directly on
Objects and TAO_Stub interfaces.
diff --git a/TAO/tests/Policies/Manipulation.cpp b/TAO/tests/Policies/Manipulation.cpp
index 2feb981f76d..7e1169fb0f6 100644
--- a/TAO/tests/Policies/Manipulation.cpp
+++ b/TAO/tests/Policies/Manipulation.cpp
@@ -92,9 +92,7 @@ ACE_TMAIN(int argc, ACE_TCHAR *argv[])
orb->string_to_object ("corbaloc:iiop:localhost:12345/FakeIOR");
Test_var test =
- TAO::Narrow_Utils<Test>::unchecked_narrow (
- object.in (),
- _TAO_Test_Proxy_Broker_Factory_function_pointer);
+ TAO::Narrow_Utils<Test>::unchecked_narrow (object.in ());
if (CORBA::is_nil (test.in ()))
{
diff --git a/TAO/tests/Policies/Policies.mpc b/TAO/tests/Policies/Policies.mpc
index 353c7a0ccec..05a385e23a3 100644
--- a/TAO/tests/Policies/Policies.mpc
+++ b/TAO/tests/Policies/Policies.mpc
@@ -3,5 +3,4 @@
project(Policies Manipulation): taoserver, messaging {
exename = Manipulation
- requires += corba_messaging
}
diff --git a/TAO/tests/Policies/README b/TAO/tests/Policies/README
index 8e30efc9f9d..c7d1433248e 100644
--- a/TAO/tests/Policies/README
+++ b/TAO/tests/Policies/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
diff --git a/TAO/tests/Portable_Interceptors/AdvSlotDblCpy/README b/TAO/tests/Portable_Interceptors/AdvSlotDblCpy/README
index 0ccccc13a8c..ee6cae4ddfb 100644
--- a/TAO/tests/Portable_Interceptors/AdvSlotDblCpy/README
+++ b/TAO/tests/Portable_Interceptors/AdvSlotDblCpy/README
@@ -1,3 +1,5 @@
+$Id$
+
The test should complete without exceptions or asserts.
This test checks that simply calling GetSlot works at every
diff --git a/TAO/tests/Portable_Interceptors/Benchmark/README b/TAO/tests/Portable_Interceptors/Benchmark/README
index 17bd3d2d88d..defaa8a8153 100644
--- a/TAO/tests/Portable_Interceptors/Benchmark/README
+++ b/TAO/tests/Portable_Interceptors/Benchmark/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This test allows you to visually check the correct invocation of
TAO's portable interceptors, especially the Dynamic interface.
diff --git a/TAO/tests/Portable_Interceptors/Bug_2133/README b/TAO/tests/Portable_Interceptors/Bug_2133/README
index b2d570b8158..343f8b57a61 100644
--- a/TAO/tests/Portable_Interceptors/Bug_2133/README
+++ b/TAO/tests/Portable_Interceptors/Bug_2133/README
@@ -2,7 +2,7 @@ $Id$
This test attempts to contact a server IOR with no connectable profile in it (on account of how there is no server running).
-The method invocation should fail but the installed client request interceptor should have its send_request and receive_exception methods invoked regardless.
+The method invocation should fail but the installed client request interceptor should have its send_request and receive_exception methods invoked regardless.
The expected result looks like:
diff --git a/TAO/tests/Portable_Interceptors/Dynamic/README b/TAO/tests/Portable_Interceptors/Dynamic/README
index 4abad34898c..85d6e2c9a2b 100644
--- a/TAO/tests/Portable_Interceptors/Dynamic/README
+++ b/TAO/tests/Portable_Interceptors/Dynamic/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This test allows you to visually check the correct invocation of
TAO's pseudo-portable interceptors, especially the Dynamic interface.
diff --git a/TAO/tests/Portable_Interceptors/ForwardRequest/README b/TAO/tests/Portable_Interceptors/ForwardRequest/README
index eaa07bba8fc..827de373219 100644
--- a/TAO/tests/Portable_Interceptors/ForwardRequest/README
+++ b/TAO/tests/Portable_Interceptors/ForwardRequest/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This test verifies that the PortableInterceptor::ForwardRequest
exception support is working properly. There are four cases that it
diff --git a/TAO/tests/Portable_Interceptors/IORInterceptor/README b/TAO/tests/Portable_Interceptors/IORInterceptor/README
index fe3af0388b9..a2299e77326 100644
--- a/TAO/tests/Portable_Interceptors/IORInterceptor/README
+++ b/TAO/tests/Portable_Interceptors/IORInterceptor/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This test verifies that IOR interceptor support is working properly.
It does so by adding a unique tagged component to the IOR. If the
diff --git a/TAO/tests/Portable_Interceptors/ORB_Shutdown/README b/TAO/tests/Portable_Interceptors/ORB_Shutdown/README
index 285817b4223..783876da55b 100644
--- a/TAO/tests/Portable_Interceptors/ORB_Shutdown/README
+++ b/TAO/tests/Portable_Interceptors/ORB_Shutdown/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This test verifies that the ServerRequestInterceptor::destroy() method
is not called prematurely, e.g. during ORB::shutdown() and before
diff --git a/TAO/tests/Portable_Interceptors/PICurrent/README b/TAO/tests/Portable_Interceptors/PICurrent/README
index 275a73e9974..ab98fd05e9d 100644
--- a/TAO/tests/Portable_Interceptors/PICurrent/README
+++ b/TAO/tests/Portable_Interceptors/PICurrent/README
@@ -1,6 +1,4 @@
-#
-# $Id$
-#
+$Id$
This test verifies that the "PICurrent" object semantics are correct
on both the client side and the server side. In particular, it
diff --git a/TAO/tests/Portable_Interceptors/PolicyFactory/README b/TAO/tests/Portable_Interceptors/PolicyFactory/README
index b9ba6219524..2cf03ef8c49 100644
--- a/TAO/tests/Portable_Interceptors/PolicyFactory/README
+++ b/TAO/tests/Portable_Interceptors/PolicyFactory/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
This test verifies that PolicyFactory support is working properly.
Working PolicyFactory support requires the following on the server side:
@@ -22,5 +22,5 @@ Run the test as follows:
Output should be very similar to the following:
==== Running PolicyFactory test
-
+
PolicyFactory test succeeded.
diff --git a/TAO/tests/Portable_Interceptors/Request_Interceptor_Flow/README b/TAO/tests/Portable_Interceptors/Request_Interceptor_Flow/README
index 2db42413933..1b8d0200fcc 100644
--- a/TAO/tests/Portable_Interceptors/Request_Interceptor_Flow/README
+++ b/TAO/tests/Portable_Interceptors/Request_Interceptor_Flow/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
NOTE: The code in this test is highly specialized and very brittle.
Do not use it as a model for "real world" interceptor code.
diff --git a/TAO/tests/QtTests/README b/TAO/tests/QtTests/README
index 29393ece1f1..4689ee85656 100644
--- a/TAO/tests/QtTests/README
+++ b/TAO/tests/QtTests/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Introduction:
@@ -8,7 +8,7 @@ creates a dialog with a quit button & a slider. On dragging the slider
the display on the server dialog box will change. On pressing the Quit
button the ORB would be shutdown and the movement of the slider will
NOT be communicated to the server. The user can kill the windows to
-exit.
+exit.
To run the server and the client simply do the following:
diff --git a/TAO/tests/README b/TAO/tests/README
index e261411484a..00fc72b00cc 100644
--- a/TAO/tests/README
+++ b/TAO/tests/README
@@ -9,12 +9,12 @@ how to run the following tests:
This is a simple test for AMI callback model.
. AMI_Buffering
-
+
Test the buffering constraint policy when applied to AMI
requests.
. AMI_Timeouts
-
+
This is a simple test for AMI callback model in combination with
timeouts (relative roundtrip timeout policy).
@@ -59,7 +59,7 @@ how to run the following tests:
TAO-1.1.12 leaked handles, this test tries to verify that
the problem does not happen any longer by connecting a
- client to 1000 servers.
+ client to 1000 servers.
. Codec
@@ -74,7 +74,7 @@ how to run the following tests:
. Collocation_Opportunities
A test for making sure the ORB avails all collocation
- opportunities it is presented with.
+ opportunities it is presented with.
. Connection_Purging
@@ -82,7 +82,7 @@ how to run the following tests:
and checks whether cached handlers are purged effectively
when the process runs out of descriptors.
- . Connection_Failure
+ . Connection_Failure
A simple test for connection failures. The client tries to
connect to an non-existent server.
@@ -110,7 +110,7 @@ how to run the following tests:
unloading (i.e. finalization).
. DSI_Gateway
-
+
A simple test for the DSI/DII gateway support. TAO can
optimize some demarshaling/marshaling and data copying in
the implementation of DSI/DII based gateways.
@@ -132,12 +132,12 @@ how to run the following tests:
This tests the methods work_pending() and perform_work()
methods of the orb.
- . Exposed_Policies
-
+ . Exposed_Policies
+
This directory contains a test case used to verify that the
client exposed policies get embedded correctly in the IOR
and exposed to the client in the object reference.
-
+
. FL_Cube
Test the integration of the FL toolkit and TAO.
@@ -166,7 +166,7 @@ how to run the following tests:
main.cpp.
. ior_corbaloc
-
+
This is test to exercise the corbaname: style URL.
. IORManipulation
@@ -187,8 +187,8 @@ how to run the following tests:
threads (threads making remote calls) starting before event
loop threads (threads running the event loop).
- . LongUpcalls
-
+ . LongUpcalls
+
Regression test for bugs #175 and #575
. MProfile
@@ -218,10 +218,10 @@ how to run the following tests:
Test the ORB timeouts in multithreaded configurations.
. Multiple
-
+
This test make sure that the collocation scheme works fine
in case of diamond shaped multiple inheritance.
-
+
. Multiple_Inheritance
This test exercises IDL interfaces that inherit from
@@ -256,16 +256,16 @@ how to run the following tests:
sizes and timeouts work correctly.
. ORB_destroy
-
+
A simple ORB destruction test.
-
+
. ORB_init
The ORB_init test simply verifies that the CORBA::ORB_init()
call behaves as defined in the OMG CORBA specification.
- . Object_Loader
-
+ . Object_Loader
+
Regression test for the DLL-style IORs.
. OctetSeq
@@ -284,13 +284,13 @@ how to run the following tests:
Tests all the features of TAO's protocol engine.
. Policies
-
- This is a stress test for the ORB's Policy interfaces.
-
+
+ This is a stress test for the ORB's Policy interfaces.
+
. Portable_Interceptors
-
+
A series of tests for the Portable Interceptors feature.
-
+
. QtTests
This example illustrates the usage of the QtReactor from TAO.
@@ -308,11 +308,11 @@ how to run the following tests:
can be found in $TAO_ROOT/performance-tests/RTCorba.
. Single_Read
-
+
This is a stress test for TAO's "single read" feature.
. Server_Leaks
-
+
Try to make the server-side leak resources by connecting and
disconnecting multiple clients.
@@ -322,7 +322,7 @@ how to run the following tests:
specify a proxy in plaec of the default proxy (stub).
. Strategies
-
+
This test helps show the various ways in which the default
and advanced TAO strategies can be dynamically loaded.
diff --git a/TAO/tests/RTCORBA/Banded_Connections/svc.conf.xml b/TAO/tests/RTCORBA/Banded_Connections/svc.conf.xml
index b589f90605b..311554c9baa 100644
--- a/TAO/tests/RTCORBA/Banded_Connections/svc.conf.xml
+++ b/TAO/tests/RTCORBA/Banded_Connections/svc.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- No options required for regular testing -->
<!-- For real-time testing, uncomment the following line: -->
<!-- static RT_ORB_Loader "-ORBSchedPolicy SCHED_FIFO -ORBScopePolicy SYSTEM" -->
diff --git a/TAO/tests/RTCORBA/Client_Propagated/svc.conf.xml b/TAO/tests/RTCORBA/Client_Propagated/svc.conf.xml
index b589f90605b..311554c9baa 100644
--- a/TAO/tests/RTCORBA/Client_Propagated/svc.conf.xml
+++ b/TAO/tests/RTCORBA/Client_Propagated/svc.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- No options required for regular testing -->
<!-- For real-time testing, uncomment the following line: -->
<!-- static RT_ORB_Loader "-ORBSchedPolicy SCHED_FIFO -ORBScopePolicy SYSTEM" -->
diff --git a/TAO/tests/RTCORBA/Client_Protocol/svc.conf.xml b/TAO/tests/RTCORBA/Client_Protocol/svc.conf.xml
index 0c3f02e1362..f94914a38d6 100644
--- a/TAO/tests/RTCORBA/Client_Protocol/svc.conf.xml
+++ b/TAO/tests/RTCORBA/Client_Protocol/svc.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Options for SHMIOP protocol -->
<static id="SHMIOP_Factory" params="-MMAPFilePrefix server_shmiop"/>
</ACE_Svc_Conf>
diff --git a/TAO/tests/RTCORBA/Collocation/README b/TAO/tests/RTCORBA/Collocation/README
index ddf7fbe3ce4..99ea2f32275 100644
--- a/TAO/tests/RTCORBA/Collocation/README
+++ b/TAO/tests/RTCORBA/Collocation/README
@@ -9,7 +9,7 @@ There are multiple servants in this test:
thread pool.
- One servant is in a POA with the CLIENT_PROPAGATED policy and is
- serviced by a thread pool without lanes.
+ serviced by a thread pool without lanes.
- Two servants are in a POA with the SERVER_DECLARED policy and is
serviced by a thread pool without lanes. One of the servant is at
diff --git a/TAO/tests/RTCORBA/Collocation/continuous.conf.xml b/TAO/tests/RTCORBA/Collocation/continuous.conf.xml
index f297697bc7c..6f522e75855 100644
--- a/TAO/tests/RTCORBA/Collocation/continuous.conf.xml
+++ b/TAO/tests/RTCORBA/Collocation/continuous.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from continuous.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Option for platforms where direct mapping doesn't work -->
<static id="RT_ORB_Loader" params="-ORBPriorityMapping continuous"/>
</ACE_Svc_Conf>
diff --git a/TAO/tests/RTCORBA/Collocation/svc.conf.xml b/TAO/tests/RTCORBA/Collocation/svc.conf.xml
index b589f90605b..311554c9baa 100644
--- a/TAO/tests/RTCORBA/Collocation/svc.conf.xml
+++ b/TAO/tests/RTCORBA/Collocation/svc.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- No options required for regular testing -->
<!-- For real-time testing, uncomment the following line: -->
<!-- static RT_ORB_Loader "-ORBSchedPolicy SCHED_FIFO -ORBScopePolicy SYSTEM" -->
diff --git a/TAO/tests/RTCORBA/Destroy_Thread_Pool/continuous.conf.xml b/TAO/tests/RTCORBA/Destroy_Thread_Pool/continuous.conf.xml
index f297697bc7c..6f522e75855 100644
--- a/TAO/tests/RTCORBA/Destroy_Thread_Pool/continuous.conf.xml
+++ b/TAO/tests/RTCORBA/Destroy_Thread_Pool/continuous.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from continuous.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Option for platforms where direct mapping doesn't work -->
<static id="RT_ORB_Loader" params="-ORBPriorityMapping continuous"/>
</ACE_Svc_Conf>
diff --git a/TAO/tests/RTCORBA/Diffserv/README b/TAO/tests/RTCORBA/Diffserv/README
index f1a80b25b34..245664fbf74 100644
--- a/TAO/tests/RTCORBA/Diffserv/README
+++ b/TAO/tests/RTCORBA/Diffserv/README
@@ -24,7 +24,7 @@ policy. This ensures that all replies sent from the POA have the dscp
set. It registers a servant with this POA. Client obtains the object
reference. Client then performs several invocations on the object.
-To run (on Unix):
+To run (on Unix):
-----------------
$ ./server -ORBdebuglevel 1 -p 20000
diff --git a/TAO/tests/RTCORBA/Dynamic_Thread_Pool/continuous.conf.xml b/TAO/tests/RTCORBA/Dynamic_Thread_Pool/continuous.conf.xml
index bbb864e64b0..3ee25d061f6 100644
--- a/TAO/tests/RTCORBA/Dynamic_Thread_Pool/continuous.conf.xml
+++ b/TAO/tests/RTCORBA/Dynamic_Thread_Pool/continuous.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from continuous.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Option for platforms where direct mapping doesn't work -->
<static id="RT_ORB_Loader" params="-ORBPriorityMapping continuous -RTORBDynamicThreadIdleTimeout 1000000"/>
</ACE_Svc_Conf>
diff --git a/TAO/tests/RTCORBA/Dynamic_Thread_Pool/server.cpp b/TAO/tests/RTCORBA/Dynamic_Thread_Pool/server.cpp
index b703aff675d..43f0d5d83f7 100644
--- a/TAO/tests/RTCORBA/Dynamic_Thread_Pool/server.cpp
+++ b/TAO/tests/RTCORBA/Dynamic_Thread_Pool/server.cpp
@@ -219,7 +219,7 @@ Task::svc (void)
poa_manager->activate ();
CORBA::ULong stacksize = 0;
- CORBA::Boolean allow_request_buffering = 0;
+ CORBA::Boolean allow_request_buffering = false;
CORBA::ULong max_buffered_requests = 0;
CORBA::ULong max_request_buffer_size = 0;
@@ -235,7 +235,7 @@ Task::svc (void)
CORBA::Policy_var threadpool_policy_1 =
rt_orb->create_threadpool_policy (threadpool_id_1);
- CORBA::Boolean allow_borrowing = 0;
+ CORBA::Boolean allow_borrowing = false;
RTCORBA::ThreadpoolLanes lanes (1);
lanes.length (1);
diff --git a/TAO/tests/RTCORBA/Dynamic_Thread_Pool/svc.conf.xml b/TAO/tests/RTCORBA/Dynamic_Thread_Pool/svc.conf.xml
index 24f6033f25e..e0ce22dfd3d 100644
--- a/TAO/tests/RTCORBA/Dynamic_Thread_Pool/svc.conf.xml
+++ b/TAO/tests/RTCORBA/Dynamic_Thread_Pool/svc.conf.xml
@@ -1,5 +1,8 @@
<?xml version='1.0'?>
<!-- Converted from svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<static RT_ORB_Loader "-RTORBDynamicThreadIdleTimeout 100000">
</ACE_Svc_Conf>
diff --git a/TAO/tests/RTCORBA/Explicit_Binding/README b/TAO/tests/RTCORBA/Explicit_Binding/README
index d3f8558d143..95f3e0ea492 100644
--- a/TAO/tests/RTCORBA/Explicit_Binding/README
+++ b/TAO/tests/RTCORBA/Explicit_Binding/README
@@ -3,8 +3,8 @@ $Id$
This is a test for <Object::_validate_connection> method, i.e.,
explicit binding functionality.
-Description.
---------
+Description.
+--------
The goal of this test is to check that <validate_connection>
establishes connections appropriate for the effective policy
overrides, and that it detects policy misconfigurations and reports
diff --git a/TAO/tests/RTCORBA/Explicit_Binding/svc.conf.xml b/TAO/tests/RTCORBA/Explicit_Binding/svc.conf.xml
index 0c3f02e1362..f94914a38d6 100644
--- a/TAO/tests/RTCORBA/Explicit_Binding/svc.conf.xml
+++ b/TAO/tests/RTCORBA/Explicit_Binding/svc.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Options for SHMIOP protocol -->
<static id="SHMIOP_Factory" params="-MMAPFilePrefix server_shmiop"/>
</ACE_Svc_Conf>
diff --git a/TAO/tests/RTCORBA/Linear_Priority/README b/TAO/tests/RTCORBA/Linear_Priority/README
index 5064c84bdce..9fab4ff8822 100644
--- a/TAO/tests/RTCORBA/Linear_Priority/README
+++ b/TAO/tests/RTCORBA/Linear_Priority/README
@@ -31,6 +31,6 @@ ORBScopePolicy options in svc.conf file.
NO YES YES NO
NO NO NO YES
YES NO NO YES
- YES YES NO YES
+ YES YES NO YES
NO NO YES YES
NO YES YES YES
diff --git a/TAO/tests/RTCORBA/Linear_Priority/svc.conf.xml b/TAO/tests/RTCORBA/Linear_Priority/svc.conf.xml
index b798a25865d..85d3bad7468 100644
--- a/TAO/tests/RTCORBA/Linear_Priority/svc.conf.xml
+++ b/TAO/tests/RTCORBA/Linear_Priority/svc.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Options required for regular testing -->
<static id="RT_ORB_Loader" params="-ORBPriorityMapping linear"/>
<!-- For real-time testing, uncomment the following line: -->
diff --git a/TAO/tests/RTCORBA/MT_Client_Protocol_Priority/svc.conf.xml b/TAO/tests/RTCORBA/MT_Client_Protocol_Priority/svc.conf.xml
index 20e6e885da4..513ed1cd083 100644
--- a/TAO/tests/RTCORBA/MT_Client_Protocol_Priority/svc.conf.xml
+++ b/TAO/tests/RTCORBA/MT_Client_Protocol_Priority/svc.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Options for SHMIOP protocol -->
<static id="SHMIOP_Factory" params="-MMAPFilePrefix server_shmiop"/>
<!-- No other options required for regular testing -->
diff --git a/TAO/tests/RTCORBA/Persistent_IOR/continuous.conf.xml b/TAO/tests/RTCORBA/Persistent_IOR/continuous.conf.xml
index f297697bc7c..6f522e75855 100644
--- a/TAO/tests/RTCORBA/Persistent_IOR/continuous.conf.xml
+++ b/TAO/tests/RTCORBA/Persistent_IOR/continuous.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from continuous.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Option for platforms where direct mapping doesn't work -->
<static id="RT_ORB_Loader" params="-ORBPriorityMapping continuous"/>
</ACE_Svc_Conf>
diff --git a/TAO/tests/RTCORBA/Policy_Combinations/svc.conf.xml b/TAO/tests/RTCORBA/Policy_Combinations/svc.conf.xml
index 575234501d6..59a5887e4a7 100644
--- a/TAO/tests/RTCORBA/Policy_Combinations/svc.conf.xml
+++ b/TAO/tests/RTCORBA/Policy_Combinations/svc.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Options required for regular testing -->
<static id="RT_ORB_Loader" params="-ORBPriorityMapping continuous"/>
<!-- For real-time testing, uncomment the following line: -->
diff --git a/TAO/tests/RTCORBA/Priority_Inversion_With_Bands/README b/TAO/tests/RTCORBA/Priority_Inversion_With_Bands/README
index d49a4f22696..1a7df3eb88f 100644
--- a/TAO/tests/RTCORBA/Priority_Inversion_With_Bands/README
+++ b/TAO/tests/RTCORBA/Priority_Inversion_With_Bands/README
@@ -1,4 +1,3 @@
-
$Id$
Description:
@@ -35,7 +34,7 @@ different connections.
(c) shows priority inversion as low priority requests get processed
before high priority requests. This is because only one connection is
used for both low and high priority requests. Therefore, the high
-priority requests are queued behind the low priority requests.
+priority requests are queued behind the low priority requests.
(d) shows improvement on (c) since using bands allows the high
priority requests to go on a different connection than the low
diff --git a/TAO/tests/RTCORBA/Priority_Inversion_With_Bands/continuous.conf.xml b/TAO/tests/RTCORBA/Priority_Inversion_With_Bands/continuous.conf.xml
index f297697bc7c..6f522e75855 100644
--- a/TAO/tests/RTCORBA/Priority_Inversion_With_Bands/continuous.conf.xml
+++ b/TAO/tests/RTCORBA/Priority_Inversion_With_Bands/continuous.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from continuous.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Option for platforms where direct mapping doesn't work -->
<static id="RT_ORB_Loader" params="-ORBPriorityMapping continuous"/>
</ACE_Svc_Conf>
diff --git a/TAO/tests/RTCORBA/Priority_Inversion_With_Bands/svc.conf.xml b/TAO/tests/RTCORBA/Priority_Inversion_With_Bands/svc.conf.xml
index b589f90605b..311554c9baa 100644
--- a/TAO/tests/RTCORBA/Priority_Inversion_With_Bands/svc.conf.xml
+++ b/TAO/tests/RTCORBA/Priority_Inversion_With_Bands/svc.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- No options required for regular testing -->
<!-- For real-time testing, uncomment the following line: -->
<!-- static RT_ORB_Loader "-ORBSchedPolicy SCHED_FIFO -ORBScopePolicy SYSTEM" -->
diff --git a/TAO/tests/RTCORBA/Private_Connection/README b/TAO/tests/RTCORBA/Private_Connection/README
index 8ba353b0f57..1e4041f64e7 100644
--- a/TAO/tests/RTCORBA/Private_Connection/README
+++ b/TAO/tests/RTCORBA/Private_Connection/README
@@ -2,8 +2,8 @@ $Id$
This is a unit test for RTCORBA::PrivateConnectionPolicy.
-Description.
---------
+Description.
+--------
The server creates two servants, registers them with the Root POA,
prints out their IORs and waits for the requests from the client. The
client obtains the IORs, makes several invocations on the objects,
diff --git a/TAO/tests/RTCORBA/Profile_And_Endpoint_Selection/README b/TAO/tests/RTCORBA/Profile_And_Endpoint_Selection/README
index ba49c18a341..dc2992f1d9a 100644
--- a/TAO/tests/RTCORBA/Profile_And_Endpoint_Selection/README
+++ b/TAO/tests/RTCORBA/Profile_And_Endpoint_Selection/README
@@ -8,28 +8,28 @@ below.
Client: The client does the following:
-- vanilla invocations
+- vanilla invocations
- sets private connection
-- vanilla invocations
+- vanilla invocations
- reset
- sets client protocols
-- vanilla invocations
+- vanilla invocations
- sets private connection
-- vanilla invocations
+- vanilla invocations
- reset
- set bands
- priority invocations
- sets private connection
-- priority invocations
+- priority invocations
- reset
- set bands
- sets client protocols
-- priority invocations
+- priority invocations
- sets private connection
-- priority invocations
+- priority invocations
- reset
This test can be configured in several ways (72 to be precise) as
diff --git a/TAO/tests/RTCORBA/README b/TAO/tests/RTCORBA/README
index 18a3531b923..5c6cbf1dcab 100644
--- a/TAO/tests/RTCORBA/README
+++ b/TAO/tests/RTCORBA/README
@@ -5,7 +5,7 @@ for features defined in the RT-CORBA specification. Tests which exercise
TAO-specific RT features can be found in $TAO_ROOT/performance-tests/RTCorba.
OMG Real-time CORBA specification is available at:
http://cgi.omg.org/cgi-bin/doc?ptc/99-05-03 (or check the OMG website
-for a more recent version).
+for a more recent version).
More information on TAO's implementation of RT-CORBA 1.0 specification
is available at:
@@ -29,7 +29,7 @@ includes the following:
Test for RTCORBA::ClientProtocol policy.
. Collocation
-
+
Test for collocation when using thread pools and lanes.
. Destroy_Thread_Pool
@@ -54,7 +54,7 @@ includes the following:
. ORB_init
Test for creation and destruction of multiple RT ORBs.
-
+
. Persistent_IOR
Test for -ORBEndpoint option. Also makes sure that user
@@ -94,5 +94,5 @@ includes the following:
Test for RTCORBA::ServerProtocol policy.
. Thread_Pool
-
+
Tests the creation and use of thread pools.
diff --git a/TAO/tests/RTCORBA/Server_Declared/README b/TAO/tests/RTCORBA/Server_Declared/README
index 43152bf757a..c83a1e6e83f 100644
--- a/TAO/tests/RTCORBA/Server_Declared/README
+++ b/TAO/tests/RTCORBA/Server_Declared/README
@@ -8,7 +8,7 @@ Scenario:
The server creates a POA with RTCORBA::SERVER_DECLARED priority model
policy. Two objects are created using this POA, one inherits the POA
priority and the second one overrides POA priority with its own.
-Server threadpool resources are configured appropriately.
+Server threadpool resources are configured appropriately.
The client obtains two object references and invokes a method on each
several times. On each invocation, the client passes object's server
diff --git a/TAO/tests/RTCORBA/Server_Declared/continuous.conf.xml b/TAO/tests/RTCORBA/Server_Declared/continuous.conf.xml
index f297697bc7c..6f522e75855 100644
--- a/TAO/tests/RTCORBA/Server_Declared/continuous.conf.xml
+++ b/TAO/tests/RTCORBA/Server_Declared/continuous.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from continuous.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Option for platforms where direct mapping doesn't work -->
<static id="RT_ORB_Loader" params="-ORBPriorityMapping continuous"/>
</ACE_Svc_Conf>
diff --git a/TAO/tests/RTCORBA/Server_Declared/svc.conf.xml b/TAO/tests/RTCORBA/Server_Declared/svc.conf.xml
index b589f90605b..311554c9baa 100644
--- a/TAO/tests/RTCORBA/Server_Declared/svc.conf.xml
+++ b/TAO/tests/RTCORBA/Server_Declared/svc.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- No options required for regular testing -->
<!-- For real-time testing, uncomment the following line: -->
<!-- static RT_ORB_Loader "-ORBSchedPolicy SCHED_FIFO -ORBScopePolicy SYSTEM" -->
diff --git a/TAO/tests/RTCORBA/Server_Protocol/server_iiop.conf.xml b/TAO/tests/RTCORBA/Server_Protocol/server_iiop.conf.xml
index a4aed9ed5d7..fc93725bbdf 100644
--- a/TAO/tests/RTCORBA/Server_Protocol/server_iiop.conf.xml
+++ b/TAO/tests/RTCORBA/Server_Protocol/server_iiop.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from server_iiop.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Protocol options -->
<static id="Advanced_Resource_Factory" params="-ORBProtocolFactory IIOP_Factory"/>
</ACE_Svc_Conf>
diff --git a/TAO/tests/RTCORBA/Server_Protocol/server_reverse.conf.xml b/TAO/tests/RTCORBA/Server_Protocol/server_reverse.conf.xml
index 9154765d4dd..e739e797ddf 100644
--- a/TAO/tests/RTCORBA/Server_Protocol/server_reverse.conf.xml
+++ b/TAO/tests/RTCORBA/Server_Protocol/server_reverse.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from server_reverse.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Options for SHMIOP protocol -->
<static id="SHMIOP_Factory" params="-MMAPFilePrefix server_shmiop"/>
<!-- Protocol options -->
diff --git a/TAO/tests/RTCORBA/Server_Protocol/server_reverse_nt.conf.xml b/TAO/tests/RTCORBA/Server_Protocol/server_reverse_nt.conf.xml
index dc1e7f12579..2e857d26d6c 100644
--- a/TAO/tests/RTCORBA/Server_Protocol/server_reverse_nt.conf.xml
+++ b/TAO/tests/RTCORBA/Server_Protocol/server_reverse_nt.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from server_reverse_nt.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Options for SHMIOP protocol -->
<static id="SHMIOP_Factory" params="-MMAPFilePrefix server_shmiop"/>
<!-- Protocol options -->
diff --git a/TAO/tests/RTCORBA/Server_Protocol/server_shmiop.conf.xml b/TAO/tests/RTCORBA/Server_Protocol/server_shmiop.conf.xml
index 9ffdb8c899f..38ad1bef88e 100644
--- a/TAO/tests/RTCORBA/Server_Protocol/server_shmiop.conf.xml
+++ b/TAO/tests/RTCORBA/Server_Protocol/server_shmiop.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from server_shmiop.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Options for SHMIOP protocol -->
<static id="SHMIOP_Factory" params="-MMAPFilePrefix server_shmiop"/>
<!-- Protocol options -->
diff --git a/TAO/tests/RTCORBA/Server_Protocol/server_uiop.conf.xml b/TAO/tests/RTCORBA/Server_Protocol/server_uiop.conf.xml
index 911f616d4fa..20812d9f07f 100644
--- a/TAO/tests/RTCORBA/Server_Protocol/server_uiop.conf.xml
+++ b/TAO/tests/RTCORBA/Server_Protocol/server_uiop.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from server_uiop.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Protocol options -->
<static id="Advanced_Resource_Factory" params="-ORBProtocolFactory UIOP_Factory "/>
</ACE_Svc_Conf>
diff --git a/TAO/tests/RTCORBA/Thread_Pool/continuous.conf.xml b/TAO/tests/RTCORBA/Thread_Pool/continuous.conf.xml
index f297697bc7c..6f522e75855 100644
--- a/TAO/tests/RTCORBA/Thread_Pool/continuous.conf.xml
+++ b/TAO/tests/RTCORBA/Thread_Pool/continuous.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from continuous.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- Option for platforms where direct mapping doesn't work -->
<static id="RT_ORB_Loader" params="-ORBPriorityMapping continuous"/>
</ACE_Svc_Conf>
diff --git a/TAO/tests/RTCORBA/Thread_Pool/svc.conf.xml b/TAO/tests/RTCORBA/Thread_Pool/svc.conf.xml
index b589f90605b..311554c9baa 100644
--- a/TAO/tests/RTCORBA/Thread_Pool/svc.conf.xml
+++ b/TAO/tests/RTCORBA/Thread_Pool/svc.conf.xml
@@ -1,6 +1,9 @@
<?xml version='1.0'?>
<!-- Converted from svc.conf by svcconf-convert.pl -->
<ACE_Svc_Conf>
+ <!-- -->
+ <!-- $Id$ -->
+ <!-- -->
<!-- No options required for regular testing -->
<!-- For real-time testing, uncomment the following line: -->
<!-- static RT_ORB_Loader "-ORBSchedPolicy SCHED_FIFO -ORBScopePolicy SYSTEM" -->
diff --git a/TAO/tests/RTScheduling/Current/README b/TAO/tests/RTScheduling/Current/README
index 83f2fdd84be..574bf9c3c2e 100644
--- a/TAO/tests/RTScheduling/Current/README
+++ b/TAO/tests/RTScheduling/Current/README
@@ -1,4 +1,4 @@
-//$Id$
+$Id$
Case
----
diff --git a/TAO/tests/RTScheduling/DT_Spawn/README b/TAO/tests/RTScheduling/DT_Spawn/README
index dfb0a850b48..2892f4c7512 100644
--- a/TAO/tests/RTScheduling/DT_Spawn/README
+++ b/TAO/tests/RTScheduling/DT_Spawn/README
@@ -1,4 +1,4 @@
-//$Id$
+$Id$
Case
----
diff --git a/TAO/tests/RTScheduling/Scheduling_Interceptor/README b/TAO/tests/RTScheduling/Scheduling_Interceptor/README
index 4f3d8e50831..c9fe2600475 100644
--- a/TAO/tests/RTScheduling/Scheduling_Interceptor/README
+++ b/TAO/tests/RTScheduling/Scheduling_Interceptor/README
@@ -1,4 +1,4 @@
-//$Id$
+$Id$
Case
----
@@ -52,7 +52,7 @@ Server_Interceptor::send_reply
Server_Interceptor::receive_request_service_contexts
Server_Interceptor::receive_request
Request from Distributable Thread
-The Guid is 1
+The Guid is 1
Two-Way Message = file:///project/ace/yamuna/ior_file
Server_Interceptor::send_reply
Distributable Thread - 1 is cancelled
@@ -66,7 +66,7 @@ Client
Making a one-way request
Client_Interceptor::send_request
-The Guid is 2
+The Guid is 2
Client_Interceptor::receive_other
Making a two-way request
Client_Interceptor::send_request
diff --git a/TAO/tests/RTScheduling/Thread_Cancel/README b/TAO/tests/RTScheduling/Thread_Cancel/README
index c0f693bff7a..f82d3b788e2 100644
--- a/TAO/tests/RTScheduling/Thread_Cancel/README
+++ b/TAO/tests/RTScheduling/Thread_Cancel/README
@@ -1,4 +1,4 @@
-//$Id$
+$Id$
Case
----
diff --git a/TAO/tests/RTScheduling/VoidData/README b/TAO/tests/RTScheduling/VoidData/README
index 27e919b034c..b6fe761562c 100644
--- a/TAO/tests/RTScheduling/VoidData/README
+++ b/TAO/tests/RTScheduling/VoidData/README
@@ -1,4 +1,4 @@
-//$Id$
+$Id$
Case
----
diff --git a/TAO/tests/Reliable_Oneways/README b/TAO/tests/Reliable_Oneways/README
index 97330c1ecbf..87f72eadc05 100644
--- a/TAO/tests/Reliable_Oneways/README
+++ b/TAO/tests/Reliable_Oneways/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Reliable_Oneways Test README File
A regression test for reliable oneways. The test verifies
diff --git a/TAO/tests/Sequence_Unit_Tests/README b/TAO/tests/Sequence_Unit_Tests/README
index 0c533dfa228..c477f9d7d34 100644
--- a/TAO/tests/Sequence_Unit_Tests/README
+++ b/TAO/tests/Sequence_Unit_Tests/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Sequence Unit Tests
Implement unit tests for the TAO CORBA sequence implementation.
diff --git a/TAO/tests/Server_Leaks/README b/TAO/tests/Server_Leaks/README
index 38faffb9dfd..c19072afef2 100644
--- a/TAO/tests/Server_Leaks/README
+++ b/TAO/tests/Server_Leaks/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Client Leaks Test README File
On TAO-1.1.12 the ORB was leaking handles on the server-side.
diff --git a/TAO/tests/Server_Port_Zero/README b/TAO/tests/Server_Port_Zero/README
index b6a82e48d5c..4d3ed992a60 100644
--- a/TAO/tests/Server_Port_Zero/README
+++ b/TAO/tests/Server_Port_Zero/README
@@ -1,5 +1,7 @@
/**
+$Id$
+
@page Server_Port_Zero Test README File
A very simple test that checks whether the server can be
diff --git a/TAO/tests/Single_Read/README b/TAO/tests/Single_Read/README
index 84073bb124a..0686a815963 100644
--- a/TAO/tests/Single_Read/README
+++ b/TAO/tests/Single_Read/README
@@ -1,3 +1,5 @@
+$Id$
+
This is a stress test for TAO's "single read" feature. This test sends
different sized octet sequences as one-way calls to the server. The
server should not lose any of the calls. The client and server can be
diff --git a/TAO/tests/Smart_Proxies/Collocation/README b/TAO/tests/Smart_Proxies/Collocation/README
index bcdad70d063..92501e62be3 100644
--- a/TAO/tests/Smart_Proxies/Collocation/README
+++ b/TAO/tests/Smart_Proxies/Collocation/README
@@ -1,3 +1,5 @@
+$Id$
+
This program performs a series of sanity check on the collocation support in TAO.
After building the example, you'll get:
diff --git a/TAO/tests/Smart_Proxies/Policy/README b/TAO/tests/Smart_Proxies/Policy/README
index f24653ec589..bda209b8df8 100644
--- a/TAO/tests/Smart_Proxies/Policy/README
+++ b/TAO/tests/Smart_Proxies/Policy/README
@@ -26,11 +26,11 @@ be provided by the user and must derive from the generated
TAO_Default_Proxy_Factory class.
This test particularly is used to test out the different policies for the
-smart proxy. If the same smart proxy is needed for the interface the
+smart proxy. If the same smart proxy is needed for the interface the
"one-shot" policy is to be used by which once a smart proxy factory is
registered it is retained until the program terminates. This is the default
behavior. But if a more flexible option is desired where the smart proxy
-can be different with every instance of the target object, then the
+can be different with every instance of the target object, then the
one-shot plolicy has to be disabled by passing a 0 at creation time.
For execution of the test:
@@ -39,7 +39,7 @@ For execution of the test:
2) ./server -o test2.ior
-2) ./client
+2) ./client
The -f0 option tries out the "per-object" policy and the -f1 (default)
tries out the "one-shot" aka "per-interface" policy.
diff --git a/TAO/tests/Smart_Proxies/dtor/README b/TAO/tests/Smart_Proxies/dtor/README
index 9124b5aebf4..7f057fb2a05 100644
--- a/TAO/tests/Smart_Proxies/dtor/README
+++ b/TAO/tests/Smart_Proxies/dtor/README
@@ -1,8 +1,8 @@
$Id$
-This test is to test if the destruction process
-and the _non_existent() function in the smart proxy
-is working properly.
+This test is to test if the destruction process
+and the _non_existent() function in the smart proxy
+is working properly.
For execution of the test:
diff --git a/TAO/tests/Stack_Recursion/README b/TAO/tests/Stack_Recursion/README
index 419e6cf040f..9526beafff9 100644
--- a/TAO/tests/Stack_Recursion/README
+++ b/TAO/tests/Stack_Recursion/README
@@ -2,6 +2,7 @@
@page Stack_Recursion Test README File
+$Id$
Begin Comment added August 14, 2007 <wilsond@ociweb.com>
The original README starts below.
@@ -16,18 +17,18 @@ The client starts 8 tasks (aka threads.) Each task calls the ping method
pings opens one or more connections to the server. The actual number of
connections varies from test run to test run.
-After that the client calls the get_data method 1000 times. Each call
-returns a sequence of octets containing 1048576 bytes (1Mb). The test
-succeeds if these replys are received by the client in 960 seconds
+After that the client calls the get_data method 1000 times. Each call
+returns a sequence of octets containing 1048576 bytes (1Mb). The test
+succeeds if these replys are received by the client in 960 seconds
(16 minutes).
-A successful test executes 8800 CORBA calls in 16 minutes (550 calls a
-minute = 9+ calls/second) and returns 8000 megabytes (500 megabytes/minute
+A successful test executes 8800 CORBA calls in 16 minutes (550 calls a
+minute = 9+ calls/second) and returns 8000 megabytes (500 megabytes/minute
= 8.3 megabytes/second) via a local host connection.
A typical failure for this test is a client timeout at the end of 16 minutes.
This can happen if the test system is too slow or heavily loaded to handle
-this much data (including the necessary mallocs & frees (16M per call), or
+this much data (including the necessary mallocs & frees (16M per call), or
if there is a significant bottleneck or hang in the ORB. Because the test
is sensitive to other loads on the test system, the results will be intermittent.
@@ -41,17 +42,17 @@ End Comment added August 14, 2007 <wilsond@ociweb.com>
A stress test for the stack recursion outlined in the bugzilla
-under id 1125. Here is the link for the bug
+under id 1125. Here is the link for the bug
http://deuce.doc.wustl.edu/bugzilla/show_bug.cgi?id=1125
This test is designed to show the bug. The test has a server running 4
threads and clients running 16 threads requesting around 30 MB of
-data.
+data.
@@NOTE: Once the bug is fixed we may have to change the timings in the
test so that the test can run to completion.
-
+
To run the test use the run_test.pl script:
$ ./run_test.pl
diff --git a/TAO/tests/Strategies/README b/TAO/tests/Strategies/README
index d6116565696..711b37b29c6 100644
--- a/TAO/tests/Strategies/README
+++ b/TAO/tests/Strategies/README
@@ -1,11 +1,11 @@
-// $Id$
+$Id$
This test helps show the various ways in which the default and
-advanced TAO Strategies can be dynamically loaded.
+advanced TAO Strategies can be dynamically loaded.
The default TAO strategies are defined in tao/default_resource.cpp and
the advanced TAO strategies are defined in
-tao/Strategies/advanced_resource.cpp.
+tao/Strategies/advanced_resource.cpp.
The advanced TAO strategies can be loaded dynamically or
statically linked. To load these strategies dynamically, we need to
@@ -14,7 +14,7 @@ statically, we need to link the library and include the header file.
This test shows a simple case where in only the default
strategies are used. It also shows the advanced case where in the
-advanced strategies are used.
+advanced strategies are used.
The test can be run using the perl script available or
manually.
diff --git a/TAO/tests/Timed_Buffered_Oneways/README b/TAO/tests/Timed_Buffered_Oneways/README
index 41888706f3d..71c2f3be193 100644
--- a/TAO/tests/Timed_Buffered_Oneways/README
+++ b/TAO/tests/Timed_Buffered_Oneways/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
diff --git a/TAO/tests/Timeout/README b/TAO/tests/Timeout/README
index b8a5bee950b..f428dbf511e 100644
--- a/TAO/tests/Timeout/README
+++ b/TAO/tests/Timeout/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
A simple test for timeouts. The client sets each one of the
policy overrides (object, thread and ORB) and issues requests using
diff --git a/TAO/tests/TransportCurrent/Framework/README b/TAO/tests/TransportCurrent/Framework/README
index 4ca496c01a5..f89cb0ff3ab 100644
--- a/TAO/tests/TransportCurrent/Framework/README
+++ b/TAO/tests/TransportCurrent/Framework/README
@@ -1,3 +1,4 @@
+$Id$
This test intents to show the usage and the expected behavior of the
Transport Current framework. The topology is the same as in the basic
Hello test: a client invokes a method on the server and then shuts it
diff --git a/TAO/tests/TransportCurrent/IIOP/README b/TAO/tests/TransportCurrent/IIOP/README
index b340cfcab02..63b2d99d26a 100644
--- a/TAO/tests/TransportCurrent/IIOP/README
+++ b/TAO/tests/TransportCurrent/IIOP/README
@@ -1,6 +1,8 @@
+$Id$
+
This test has two parts, which run automatically:
-Part 1:
+Part 1:
IIOP_Transport_Current test: Demonstrates how in the application the
user can resolve the IIOP_Transport_Current and use it to obtain
diff --git a/TAO/tests/Two_Objects/README b/TAO/tests/Two_Objects/README
index bd19ac387b8..6ca5e26dfe4 100644
--- a/TAO/tests/Two_Objects/README
+++ b/TAO/tests/Two_Objects/README
@@ -1,13 +1,15 @@
/**
+$Id$
+
@page Two_Objects Test README File
- This is used as an extended test for bug fix #575.
+ This is used as an extended test for bug fix #575.
There are two objects managed by the same POA. Before the
bug fix, the calls to the objects on the same connection
-were serialized even when the first call was a one way call.
+were serialized even when the first call was a one way call.
The connection handle in the reactor was not 'resumed' until
-the upcall after was completed. The fix resumes the handle
+the upcall after was completed. The fix resumes the handle
before the upcall is made, so that another thread could listen
for subsequent requests on the same connection handle.
@@ -22,10 +24,10 @@ a two way call to Servant 2. Servant 1 handles the oneway
request and waits for a signal from Servant 2. Servant 2 gets
the two way request, handles it and then wakes up Servant 1.
We do an assertion that there is only one connection in the
-transport cache manager. If the bug fix was not working,
-Servant 2 would have never received the request and Servant 1
-will wait for ever.
-
+transport cache manager. If the bug fix was not working,
+Servant 2 would have never received the request and Servant 1
+will wait for ever.
+
To run the test use the run_test.pl script:
$ ./run_test.pl
diff --git a/TAO/tests/UNKNOWN_Exception/README b/TAO/tests/UNKNOWN_Exception/README
index ee867ed21f7..abbeda80b6b 100644
--- a/TAO/tests/UNKNOWN_Exception/README
+++ b/TAO/tests/UNKNOWN_Exception/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Description:
@@ -13,7 +13,7 @@ the UNKNOWN exceptions.
Expected output:
-A successful run is one without any asserts.
+A successful run is one without any asserts.
The server should say:
diff --git a/TAO/tests/Xt_Stopwatch/README b/TAO/tests/Xt_Stopwatch/README
index 85040fb2895..c0998566d29 100644
--- a/TAO/tests/Xt_Stopwatch/README
+++ b/TAO/tests/Xt_Stopwatch/README
@@ -1,4 +1,4 @@
-# $Id$
+$Id$
Introduction:
diff --git a/TAO/tests/ZIOP/README.txt b/TAO/tests/ZIOP/README.txt
index 9915cab3621..5691f91b565 100644
--- a/TAO/tests/ZIOP/README.txt
+++ b/TAO/tests/ZIOP/README.txt
@@ -1,3 +1,5 @@
+$Id$
+
This test is for ZIOP. Below the output when running this with -debug,
most important, check the hex dumps to see that the application data
is compressed
diff --git a/TAO/utils/NamingViewer/README b/TAO/utils/NamingViewer/README
index 000c94ad24e..754080f6b2b 100644
--- a/TAO/utils/NamingViewer/README
+++ b/TAO/utils/NamingViewer/README
@@ -7,19 +7,19 @@ Features
--------
. Displays the entries of a naming context graphically in a
- tree control.
+ tree control.
. Supports configuration of different naming servers.
- Configuration is stored in the registry.
+ Configuration is stored in the registry.
- . Double clicking on an object in the tree will open a dialog to
+ . Double clicking on an object in the tree will open a dialog to
examine the object reference. This dialog will display the
stringified object reference, repository ID and profile
- information.
+ information.
. Supports binding, unbinding, context creation and context
destroying. User the right mouse button to pull up the
- context menu.
+ context menu.
. Supports iterator returned from listing a context
@@ -53,7 +53,7 @@ TO-DO List
. Add support for cutting/moving/copying objects in the tree?
. Add ability to configure what is displayed for each entry in
- a context.
+ a context.
. Right now its just the id and kind, but we could also add in
the repository id and primary profile.
@@ -63,7 +63,7 @@ Issues/Bugs
. Need to find a better way of displaying the kind attribute
in a Name. Right now we use "." which is ambiguous.
- Perhaps a different color?
+ Perhaps a different color?
. Consider getting rid of the Select NS button and the name of
the name service from the main window. Put the name of the
diff --git a/TAO/utils/README b/TAO/utils/README
index 4dba0ab072f..187fb087454 100644
--- a/TAO/utils/README
+++ b/TAO/utils/README
@@ -3,17 +3,17 @@ $Id$
This directory contains the following useful utilities for working
with TAO.
- . catior -- This utility that takes in a stringified IOR and
+ . catior -- This utility that takes in a stringified IOR and
decodes it, printing out the information contained in it.
. IOR-parser -- The "ior-parser" utility is similar to catior,
i.e,. parses IORs generated by ORBs.
- . logWalker -- A way to make sense of large, complicated
+ . logWalker -- A way to make sense of large, complicated
TAO debug output logs.
. nslist -- This utility lists the current entries in the
- Naming Service in a nicely formatter manner.
+ Naming Service in a nicely formatter manner.
. NamingViewer -- This utility is an MFC-based CosNaming
viewer that allows users to manipulate a Naming Context
diff --git a/TAO/utils/logWalker/HostProcess.cpp b/TAO/utils/logWalker/HostProcess.cpp
index 7b9f9fa8bd5..40c99037617 100644
--- a/TAO/utils/logWalker/HostProcess.cpp
+++ b/TAO/utils/logWalker/HostProcess.cpp
@@ -9,7 +9,8 @@
PeerNode::PeerNode (long h, PeerProcess *p)
:handle_ (h),
- peer_ (p)
+ peer_ (p),
+ closed_ (false)
{
}
@@ -100,8 +101,8 @@ HostProcess::find_peer (const ACE_CString &addr)
return pp;
}
-PeerProcess *
-HostProcess::find_peer (long h)
+PeerNode *
+HostProcess::find_peer_i (long h)
{
if (this->by_handle_.size() == 0)
return 0;
@@ -111,8 +112,19 @@ HostProcess::find_peer (long h)
{
PeerNode *node = reinterpret_cast<PeerNode *>(i.next()->item_);
if (node->handle_ == h)
- return node->peer_;
+ return node;
}
+
+ return 0;
+}
+
+
+PeerProcess *
+HostProcess::find_peer (long h, bool ignore_closed)
+{
+ PeerNode *node = this->find_peer_i (h);
+ if (node != 0 && !(ignore_closed && node->closed_) )
+ return node->peer_;
return 0;
}
@@ -155,8 +167,8 @@ void
HostProcess::add_peer(long handle, PeerProcess *peer)
{
peer->set_owner (this);
- PeerProcess *existing = this->find_peer(handle);
- if (existing != 0)
+ PeerNode *node = this->find_peer_i(handle);
+ if (node != 0 && !node->closed_ )
{
ACE_DEBUG ((LM_DEBUG,
"add_peer, found existing for %d\n",
@@ -164,15 +176,29 @@ HostProcess::add_peer(long handle, PeerProcess *peer)
}
const ACE_CString &addr = peer->is_server() ?
peer->server_addr() : peer->last_client_addr();
+ errno = 0;
+
int result = this->by_addr_.bind (addr,peer);
- if (result != 0)
- ACE_ERROR ((LM_ERROR,"add_peer, cannot bind to addr %s %p\n", addr.c_str(), "by_addr_.bind"));
- PeerNode *node = new PeerNode (handle,peer);
- this->by_handle_.insert_tail(node);
+ if (result == -1)
+ {
+ ACE_ERROR ((LM_ERROR,"add_peer, cannot bind handle %d to addr %s %p\n",
+ handle, addr.c_str(), "by_addr_.bind"));
+ }
+
+ if (node == 0)
+ {
+ node = new PeerNode (handle,peer);
+ this->by_handle_.insert_tail(node);
+ }
+ else
+ {
+ node->closed_ = false;
+ node->peer_ = peer;
+ }
}
void
-HostProcess::remove_peer(long h)
+HostProcess::close_peer(long h)
{
if (this->by_handle_.size() == 0)
return;
@@ -183,7 +209,7 @@ HostProcess::remove_peer(long h)
PeerNode *node = reinterpret_cast<PeerNode *>(i.next()->item_);
if (node->handle_ == h)
{
- this->by_handle_.remove(i.next());
+ node->closed_ = true;
return;
}
}
diff --git a/TAO/utils/logWalker/HostProcess.h b/TAO/utils/logWalker/HostProcess.h
index 659cb298d13..045d2ce0ab9 100644
--- a/TAO/utils/logWalker/HostProcess.h
+++ b/TAO/utils/logWalker/HostProcess.h
@@ -29,6 +29,7 @@ struct PeerNode
PeerNode (long h, PeerProcess *p);
long handle_;
PeerProcess *peer_;
+ bool closed_;
};
typedef ACE_DLList<Thread> ThreadList;
@@ -83,12 +84,9 @@ public:
// locate a peer process by handle or address
PeerProcess *find_peer (const ACE_CString& addr);
- PeerProcess *find_peer (long handle);
+ PeerProcess *find_peer (long handle, bool ignore_closed);
- void remove_peer (long handle);
-
- // remove a peer by handle, noting the line.
- void close_peer (long handle, size_t offset);
+ void close_peer (long handle);
// various output methods
void dump_ident (ostream &strm, const char *extra);
@@ -104,6 +102,8 @@ public:
void reconcile_peers (Session *session);
private:
+ PeerNode *find_peer_i (long handle);
+
void iterate_peers (int group,
int operation,
ostream *strm = 0,
diff --git a/TAO/utils/logWalker/Log.cpp b/TAO/utils/logWalker/Log.cpp
index 2402d13e690..b8ebdb070a9 100644
--- a/TAO/utils/logWalker/Log.cpp
+++ b/TAO/utils/logWalker/Log.cpp
@@ -340,7 +340,7 @@ Log::parse_got_existing (Log *this_, char *line, size_t offset)
char *hpos = ACE_OS::strchr(line,'[');
long handle = ACE_OS::strtol(hpos+1,0,10);
- PeerProcess *pp = hp->find_peer(handle);
+ PeerProcess *pp = hp->find_peer(handle, true);
if (pp == 0)
{
ACE_ERROR ((LM_ERROR,
@@ -366,7 +366,7 @@ Log::parse_muxed_tms (Log *this_, char *line, size_t offset)
long handle = ACE_OS::strtol(hpos+1,0,10);
hpos = ACE_OS::strchr(hpos, '<');
long req_id = ACE_OS::strtol(hpos+1,0,10);
- PeerProcess *pp = hp->find_peer(handle);
+ PeerProcess *pp = hp->find_peer(handle, true);
if (pp == 0)
{
ACE_ERROR ((LM_ERROR,
@@ -395,7 +395,7 @@ Log::parse_exclusive_tms (Log *this_, char *line, size_t offset)
Thread *thr = hp == 0 ? 0 : hp->find_thread (tid);
long handle = thr->active_handle();
- PeerProcess *pp = hp->find_peer(handle);
+ PeerProcess *pp = hp->find_peer(handle, true);
if (pp == 0)
{
ACE_ERROR ((LM_ERROR,
@@ -427,7 +427,7 @@ Log::parse_process_parsed_msgs (Log *this_, char *line, size_t offset)
char *hpos = ACE_OS::strchr(line,'[');
long handle = ACE_OS::strtol(hpos+1,0,10);
- PeerProcess *pp = hp->find_peer(handle);
+ PeerProcess *pp = hp->find_peer(handle, true);
if (pp == 0)
{
ACE_ERROR ((LM_ERROR,
@@ -454,13 +454,12 @@ Log::parse_wait_for_event (Log *this_, char *line, size_t offset)
HostProcess *hp = this_->get_host(pid);
Thread *thr = hp == 0 ? 0 : hp->find_thread (tid);
-// char *pos = ACE_OS::strchr (line,'[');
-// long rid = ACE_OS::strtol(pos+1, 0, 10);
+
PeerProcess *pp = thr->incoming();
if (pp == 0)
{
ACE_ERROR((LM_ERROR,
- "%d: wait_for_event, could not find pp for incoming, text = %s\n",
+ "%d: wait_for_event, could not find peer process for incoming, text = %s\n",
offset, line));
return;
}
@@ -501,7 +500,14 @@ Log::parse_cleanup_queue (Log *this_, char *line, size_t offset)
char *hpos = ACE_OS::strchr(line,'[');
long handle = ACE_OS::strtol(hpos+1,0,10);
- PeerProcess *pp = hp->find_peer(handle);
+ PeerProcess *pp = hp->find_peer(handle, false);
+ if (pp == 0)
+ {
+ ACE_ERROR ((LM_ERROR,
+ "%d: cleanup queue, could not find peer for handle %d\n",
+ offset, handle));
+ return;
+ }
Thread *original_thr = thr;
Invocation::GIOP_Buffer *target = original_thr->giop_target();
@@ -564,7 +570,7 @@ Log::parse_close_connection (Log *this_, char *line, size_t offset)
char *hpos = ACE_OS::strchr(line,'[');
long handle = ACE_OS::strtol(hpos+1,0,10);
- PeerProcess *pp = hp->find_peer(handle);
+ PeerProcess *pp = hp->find_peer(handle, false);
if (pp != 0)
{
Transport *t = pp->find_transport (handle);
@@ -572,7 +578,7 @@ Log::parse_close_connection (Log *this_, char *line, size_t offset)
t->close_offset_ = offset;
}
- hp->remove_peer(handle);
+ hp->close_peer(handle);
}
void
diff --git a/TAO/utils/logWalker/README b/TAO/utils/logWalker/README
index bc67b032cef..c16fe7256c4 100644
--- a/TAO/utils/logWalker/README
+++ b/TAO/utils/logWalker/README
@@ -5,7 +5,7 @@ files generated with -ORBDebuglevel 10. The utility summarizes thread,
connection, and invocation details for a collection of related processes.
This is a work in progress. It currently is limited to parsing logs of
-IIOP based apps only.
+IIOP based apps only.
The executable is installed as $ACE_ROOT/bin/tao_logWalker.
@@ -33,17 +33,17 @@ The command line options are:
-a <name=value> allows for substitution of addresses. Some endpoints
may be logged using a hostname, while other instances
may appear as an IP address. This is a simple means
- of substituting one for the other to improve the
- recognition of a peer process.
+ of substituting one for the other to improve the
+ recognition of a peer process.
-m <filename> read argument from the named manifest file. For
repeated analysis of may perhaps distributed log files,
use a manifest file to minimize keying in long command
lines. Each line of the file contains one full argument.
- [alias=]logfile provide as many log files as needed. The optional
+ [alias=]logfile provide as many log files as needed. The optional
alias gives a way to assign a useful name to the process
- that generated the log output in the file. If many
+ that generated the log output in the file. If many
processes shared a logfile so that their output is
comingled or consecutive, each process instance will be
given an indexed alias such as alias_1, alias_2, etc.
@@ -62,7 +62,7 @@ Host process HelloClient pid(8448) from logfile helloClient.log
-Session detail threads report:
+Session detail threads report:
Host process HelloServer pid (8447) thread details:
Thread[1] tid = 2147483647 2 encounters
@@ -72,7 +72,7 @@ Host process HelloClient pid (8448) thread details:
-Session detail peer process report:
+Session detail peer process report:
Host process HelloServer pid (8447) peer processes:
0 clients
@@ -86,25 +86,25 @@ Host process HelloClient pid (8448) peer processes:
-Session detail object report:
+Session detail object report:
-Host process HelloServer pid (8447) peer objects:
+Host process HelloServer pid (8447) peer objects:
1 Objects referenced in proc_0:
0 has 2 invocations
-Total of 2 invocations
+Total of 2 invocations
-Host process HelloClient pid (8448) peer objects:
+Host process HelloClient pid (8448) peer objects:
1 Objects referenced in proc_1:
0 has 2 invocations
-Total of 2 invocations
+Total of 2 invocations
-Session detail invocation report:
+Session detail invocation report:
-Host process HelloServer pid (8447) invocations:
+Host process HelloServer pid (8447) invocations:
2 Invocations with proc_0:
1 for obj_0 from HelloClient [get_string] Request, line 30 Thread[1] Reply, line 37 log offset = 7
@@ -112,7 +112,7 @@ Host process HelloServer pid (8447) invocations:
Host process HelloServer pid (8447) end invocation report
-Host process HelloClient pid (8448) invocations:
+Host process HelloClient pid (8448) invocations:
2 Invocations with proc_1:
1 to obj_0 in HelloServer [get_string] Request, line 27 Thread[1] Reply, line 49 log offset = 22
diff --git a/TAO/utils/wxNamingViewer/README b/TAO/utils/wxNamingViewer/README
index e30a84220ca..d0234fc3e84 100644
--- a/TAO/utils/wxNamingViewer/README
+++ b/TAO/utils/wxNamingViewer/README
@@ -1,3 +1,5 @@
+$Id$
+
wxNamingViewer - a wxWindows implementation of NamingViewer
Author: Charlie Frasch <cfrasch@atdesk.com>
@@ -7,8 +9,8 @@ Based on NamingViewer by Chris Hafey (chris@stentorsoft.com)
1. This is an (almost) exact port of NamingViewer to wxWindows. There are some
differences and a few minor improvements. The port was done with
ACE 5.1.4/TAO 1.1.4 and wxWindows 2.1.5 on Borland C++ Builder 4. Chris Hafey
-contributed changes for MSVC. It has recently (11/11/03) been updated for
-ACE 5.3.1/TAO 1.3.1, wxWindows2.4.2 and linux.
+contributed changes for MSVC. It has recently (11/11/03) been updated for
+ACE 5.3.1/TAO 1.3.1, wxWindows2.4.2 and linux.
*) put <null> as the "root" of the naming context if a naming service cannot be
found
@@ -53,11 +55,11 @@ For linux/gcc:
*) Build the the dynamically linked release version of ACE and TAO.
-*) optionally use MPC to generate the makefile
+*) optionally use MPC to generate the makefile
-) enable the wxwindows feature
vi $ACE_ROOT/bin/MakeProjectCreator/config/default.features
- and add/change
+ and add/change
wxWindows = 1
-) build the Makefile
@@ -65,7 +67,7 @@ For linux/gcc:
mwc.pl -type gnuace -recurse
*) Make the wxNamingViewer
- must have wxWindows=1 on make line or in
+ must have wxWindows=1 on make line or in
$ACE_ROOT/include/makeinclude/platform_macros.GNU
For others: (TBD)