Problem
- Product Name: VisiBroker for C
- Product Version: All
- Product Component: Security
The application using VisiSecure crashed at "vbsec::CSIV2IORInterceptor::establish_components" when overriding the security policies with CORBA::SET_OVERRIDE.
The crash stack trace is:
(gdb) bt
#0 0x009fe219 in vbsec::CSIV2IORInterceptor::establish_components (this=0xa0e3308,
info=0xa10c7f8) at CSIV2IORInterceptor.cpp:217
#1 0x014c96bf in VISChainPIIORInterceptor::establish_components (this=0xa109d48,
info=0xa10c7f8) at vpiiorint.C:72
#2 0x0166c994 in VISPOA::initialize (this=0xa0e48f8, policies=@0xbfcb0cc0) at vpoa.C:3422
#3 0x01673501 in VISPOA::root_POA () at vpoa.C:3932
#4 0x0167e564 in VISPOAServiceResolver::resolve (this=0x18e9040, service=0x690a15
RootPOA) at vpoa.C:638
#5 0x0150ed58 in VISServiceResolverManager::resolve (this=0xa0bfd58, name=0x690a15
RootPOA) at vmiscint.C:57
#6 0x016a052e in VISORB::resolve_initial_references (this=0xa0bf788, name=0x690a15
RootPOA) at vorb.C:933
#7 0x006739c8 in CTServer::initORB () from /opt/IBM/ITM/li6263/cq/lib/libKfwORBInit.so
#8 0x0804e0d6 in main ()
Resolution
This problem can be resolved by changing the policy CORBA::SET_OVERRIDE to CORBA::ADD_OVERRIDE.
When CORBA::ADD_OVERRIDE is used, the previously set security policies will not be overwritten. Consequently, the core dump/ program crash is avoided.
#vbsec--CSIV2IORInterceptor--establish_components
#VisiBroker
#ADD_OVERRIDE
#Security
#SET_OVERRIDE




