[Ace-users] Re: [tao-users] server aborts with SSLIOP configuration
Johnny Willemsen
jwillemsen at remedy.nl
Fri Aug 17 02:18:49 CDT 2007
Hi,
This is strange, the ORBInitInfo is just passed to each initializer.
Probably the best thing todo is to make a small regression test as
reproducer and then add this to bugzilla.
Regards,
Johnny Willemsen
Remedy IT
Postbus 101
2650 AC Berkel en Rodenrijs
The Netherlands
www.theaceorb.nl / www.remedy.nl
*** Integrated compile and test statistics see
http://scoreboard.theaceorb.nl <http://scoreboard.theaceorb.nl/> ***
*** Commercial service and support for ACE/TAO/CIAO ***
*** See http://www.theaceorb.nl/en/support.html ***
________________________________
From: tao-users-bounces at cse.wustl.edu
[mailto:tao-users-bounces at cse.wustl.edu] On Behalf Of Vikram Karandikar
Sent: Friday, August 17, 2007 9:13 AM
To: tao-users at cse.wustl.edu
Subject: Re: [tao-users] server aborts with SSLIOP configuration
some more observations
in step #10 i guess this method is called
TAO::ORBInitializer_Registry::pre_init(./TAO/tao/PI/ORBInitializer_Registry_
Impl.cpp)
which in a for loop calls TAO::Security::ORBInitializer::pre_init
(TAO/orbsvcs/orbsvcs/Security/Security_ORBInitializer.cpp)
now in the TAO::ORBInitializer_Registry::pre_init the orb_core
parameter is valid (orb_core=0x8697a58) but when the
TAO::Security::ORBInitializer::pre_init funciton is called the orb_core
becomes NULL
#9 0x08399c88 in TAO::Security::ORBInitializer::pre_init
(this=0x86a7220, info=0x869b258)
at
../../../../../TAO/orbsvcs/orbsvcs/Security/Security_ORBInitializer.cpp:90
(gdb) print *info
$10 = {<CORBA::Object> = {_vptr.Object = 0x84de09c, is_local_ =
true, is_evaluated_ = true, ior_ = {<TAO_Var_Base_T<IOP::IOR>> = {
ptr_ = 0x0}, <No data fields>}, orb_core_ = 0x0,
protocol_proxy_ = 0x0, refcount_ = {type_ =
TAO_Configurable_Refcount::TAO_THREAD_LOCK,
null_refcount_ = {own_mutex_ = {lock_ = 0}, impl_ = {mutex_ =
@0x869b288, value_ = 1}}, mutex_refcount_ = {value_ = 1,
static increment_fn_ = 0x834aed8 <(anonymous
namespace)::multi_cpu_increment(long volatile*)>,
static decrement_fn_ = 0x834aeec <(anonymous
namespace)::multi_cpu_decrement(long volatile*)>,
static exchange_fn_ = 0x834af00 <(anonymous
namespace)::multi_cpu_exchange(long volatile*, long)>,
static exchange_add_fn_ = 0x834af10 <(anonymous
namespace)::multi_cpu_exchange_add(long volatile*, long)>}},
object_init_lock_ = 0x0},
_vptr.ORBInitInfo = 0x84ddfe0, static _tc_ObjectId = 0x8670abc,
static _tc_DuplicateName = 0x8670aa4, static _tc_InvalidName = 0x8670a8c}
(gdb) up
#10 0x0827dd43 in TAO::ORBInitializer_Registry::pre_init
(this=0x867af70, orb_core=0x8697a58, argc=2, argv=0x8696aa0,
slotid=@0x804775c)
any help in this regard?
On 8/17/07, Vikram Karandikar <softking at gmail.com> wrote:
ACE VERSION: 5.5.8
TAO VERSION: 1.5.8
HOST MACHINE:
$ uname -a
SunOS ipms-x4200-2 5.10 Generic_118855-33 i86pc i386 i86pc
Problem:
server gets SIGABRT signal when configured with SSLIOP
Description:
i am configuring my server with following parameters
char *options[] = {
"-ORBSvcConfDirective", "static
Server_Strategy_Factory \"-ORBConcurrency thread-per-connection\"" ,
"-ORBSvcConfDirective", "static
Client_Strategy_Factory \"-ORBTransportMuxStrategy EXCLUSIVE\"" ,
"-ORBSvcConfDirective", "static
Advanced_Resource_Factory \"-ORBProtocolFactory SSLIOP_Factory\"" ,
"-ORBSvcConfDirective", "static SSLIOP_Factory
\"-SSLAuthenticate SERVER\"" ,
"-ORBSvcConfDirective", "static SSLIOP_Factory
\"-SSLCertificate PEM:ssl/cacert.pem\"" ,
"-ORBSvcConfDirective", "static SSLIOP_Factory
\"-SSLPrivateKey PEM:ssl/privkey.pem\"" };
after running the server i get following crash
(gdb) r
Starting program:
/net/storm4/vkarandi/ipms-clone/master/packages/ipms/obj/bin/ipmsquerymgr
terminate called after throwing an instance of
'PortableInterceptor::ORBInitInfo::InvalidName'
Program received signal SIGABRT, Aborted.
0xfeb60c57 in _lwp_kill () from /lib/libc.so.1
(gdb) where
#0 0xfeb60c57 in _lwp_kill () from /lib/libc.so.1
#1 0xfeb5e40e in thr_kill () from /lib/libc.so.1
#2 0xfeb0d083 in raise () from /lib/libc.so.1
#3 0xfeaf0b19 in abort () from /lib/libc.so.1
#4 0xfecde9ef in __gnu_cxx::__verbose_terminate_handler ()
from /usr/local/lib/libstdc++.so.6
#5 0xfecdca0c in __cxxabiv1::__terminate () from
/usr/local/lib/libstdc++.so.6
#6 0xfecdca44 in std::terminate () from
/usr/local/lib/libstdc++.so.6
#7 0xfecdcb90 in __cxa_throw () from
/usr/local/lib/libstdc++.so.6
#8 0x0827a2fa in
TAO_ORBInitInfo::register_initial_reference (this=0x869b258, id=0x86b4398
"hâM\b°Ck\bð\035k\bT\037ä\222A", obj=0x86b430c)
at ../../../../TAO/tao/PI/ORBInitInfo.cpp:159
#9 0x08399c88 in TAO::Security::ORBInitializer::pre_init
(this=0x86a7220, info=0x869b258)
at
../../../../../TAO/orbsvcs/orbsvcs/Security/Security_ORBInitializer.cpp:90
#10 0x0827dd43 in TAO::ORBInitializer_Registry::pre_init
(this=0x867af70, orb_core=0x8697a58, argc=2, argv=0x8696aa0,
slotid=@0x804775c)
at Array_Base.inl:93
#11 0x08304c45 in CORBA::ORB_init (argc=@0x8047884,
argv=0x8696aa0, orbid=0x0) at ORB_Core_Auto_Ptr.inl:16
when i tried to look into the following files
TAO/orbsvcs/orbsvcs/Security/Security_ORBInitializer.cpp and
TAO/tao/PI/ORBInitInfo.cpp
i observed that the "id" parameter is garbage when it comes
to the TAO_ORBInitInfo::register_initial_reference
the call is as following
// Register the SecurityLevel2::Current object reference
with the
// ORB.
info->register_initial_reference
("SecurityLevel3:SecurityCurrent",
security_current3.in
());
what would the cause?
--
"Even if a snake is not poisonous, it should pretend to be
venomous."
Chanakya quotes (Indian politician, strategist and writer,
350 BC-275 BC)
- Vikram Karandikar
--
"Even if a snake is not poisonous, it should pretend to be
venomous."
Chanakya quotes (Indian politician, strategist and writer, 350
BC-275 BC)
- Vikram Karandikar
More information about the Ace-users
mailing list