Print

Print


URL:
  <http://savannah.cern.ch/bugs/?98451>

                 Summary: Reading GSI private key occasionally dumps core
(xrdgsiproxy)
                 Project: XROOTD
            Submitted by: jsalmon
            Submitted on: 2012-10-25 13:40
                Severity: 3 - Normal
                Priority: 5 - Normal
                  Status: None
                 Privacy: Public
             Assigned to: None
        Originator Email: 
             Open/Closed: Open
         Discussion Lock: Any
      Fixed by commit(s): 

    _______________________________________________________

Details:

I'm using the latest RPMs (SLC6) from the master branch. Running the
command:


xrdgsiproxy init -debug -cert /etc/grid-security/xrd/xrdcert.pem -key
/etc/grid-security/xrd/xrdkey.pem


occasionally segfaults (maybe 20-30% of the time) like this:


121025 15:11:51 1677 crypto_Factory::GetCryptoFactory: loading ssl crypto
factory object from libXrdCrypto.so
121025 15:11:51 1677 crypto_Factory::GetCryptoFactory: loading ssl crypto
factory object from libXrdCryptossl.so
121025 15:11:51 1677 sut_Rndm::GetBuffer: enter: len: 32
121025 15:11:51 1677 sut_Rndm::Init: taking seed from /dev/urandom
121025 15:11:51 1677 crypto_X509CreateProxy: EEC certificate loaded from
file: /etc/grid-security/xrd/xrdcert.pem
121025 15:11:51 1677 cryptossl_ASN1toUTC:  UTC: 1382703101  isdst: 1
121025 15:11:51 1677 crypto_X509CreateProxy: Your identity:
[log in to unmask]
/bin/sh: line 29:  1677 Segmentation fault      (core dumped) xrdgsiproxy
init -debug -cert /etc/grid-security/xrd/xrdcert.pem -key
/etc/grid-security/xrd/xrdkey.pem


Here's the stacktrace from the core dump:


Core was generated by `xrdgsiproxy init -debug -cert
/etc/grid-security/xrd/xrdcert.pem -key /etc/grid'.
Program terminated with signal 11, Segmentation fault.
#0  0x00007f78ebceb234 in RSA_free () from /usr/lib64/libcrypto.so.10
#0  0x00007f78ebceb234 in RSA_free () from /usr/lib64/libcrypto.so.10
#1  0x00007f78ebd1042b in ?? () from /usr/lib64/libcrypto.so.10
#2  0x00007f78ebd106cd in ?? () from /usr/lib64/libcrypto.so.10
#3  0x00007f78ebd107f9 in EVP_PKEY_assign () from /usr/lib64/libcrypto.so.10
#4  0x00007f78ebcee073 in ?? () from /usr/lib64/libcrypto.so.10
#5  0x00007f78ebd20282 in d2i_PrivateKey () from /usr/lib64/libcrypto.so.10
#6  0x00007f78ebd35380 in PEM_read_bio_PrivateKey () from
/usr/lib64/libcrypto.so.10
#7  0x00007f78ebd354a1 in PEM_read_PrivateKey () from
/usr/lib64/libcrypto.so.10
#8  0x00007f78ed43f192 in XrdSslgsiX509CreateProxy (fnc=, fnk=0xabd040
"/etc/grid-security/xrd/xrdkey.pem", pxopt=, xp=0xadb850, kp=0x7fff9c6a2f28,
fnp=0xabc1f0 "/tmp/x509up_u0") at
/usr/src/debug/xrootd/xrootd/src/XrdCrypto/XrdCryptosslgsiAux.cc:543
#9  0x000000000040522e in main (argc=, argv=) at
/usr/src/debug/xrootd/xrootd/src/XrdSecgsi/XrdSecgsiProxy.cc:178


I also get the same thing occasionally when starting xrootd. I have another
stack trace for that, but I didn't have the debuginfo package installed at
that time:


Core was generated by `/usr/bin/xrootd -l /var/log/xrootd/xrootd.log -c
/etc/xrootd/xrd_cluster_005_gs'.
Program terminated with signal 11, Segmentation fault.
#0  0x00007f0c8a61c234 in RSA_free () from /usr/lib64/libcrypto.so.10
#0  0x00007f0c8a61c234 in RSA_free () from /usr/lib64/libcrypto.so.10
#1  0x00007f0c8a64142b in ?? () from /usr/lib64/libcrypto.so.10
#2  0x00007f0c8a6416cd in ?? () from /usr/lib64/libcrypto.so.10
#3  0x00007f0c8a6417f9 in EVP_PKEY_assign () from /usr/lib64/libcrypto.so.10
#4  0x00007f0c8a61f073 in ?? () from /usr/lib64/libcrypto.so.10
#5  0x00007f0c8a651282 in d2i_PrivateKey () from /usr/lib64/libcrypto.so.10
#6  0x00007f0c8a666380 in PEM_read_bio_PrivateKey () from
/usr/lib64/libcrypto.so.10
#7  0x00007f0c8a6664a1 in PEM_read_PrivateKey () from
/usr/lib64/libcrypto.so.10
#8  0x00007f0c8ada275b in XrdCryptosslX509::XrdCryptosslX509(char const*,
char const*) () from /usr/lib64/libXrdCryptossl.so.1
#9  0x00007f0c8ad9dd54 in XrdCryptosslFactory::X509(char const*, char const*)
() from /usr/lib64/libXrdCryptossl.so.1
#10 0x00007f0c8afc84a9 in XrdSecProtocolgsi::GetSrvCertEnt(XrdCryptoFactory*,
long, XrdOucString&) () from /usr/lib64/libXrdSecgsi.so
#11 0x00007f0c8afce8ad in XrdSecProtocolgsi::Init(gsiOptions, XrdOucErrInfo*)
() from /usr/lib64/libXrdSecgsi.so
#12 0x00007f0c8afd16e7 in XrdSecProtocolgsiInit () from
/usr/lib64/libXrdSecgsi.so
#13 0x00007f0c8b1e04e1 in XrdSecPManager::ldPO(XrdOucErrInfo*, char, char
const*, char const*, char const*) () from /usr/lib64/libXrdSec.so
#14 0x00007f0c8b1e1b62 in XrdSecServer::xprot(XrdOucStream&, XrdSysError&) ()
from /usr/lib64/libXrdSec.so
#15 0x00007f0c8b1e2bab in XrdSecServer::ConfigFile(char const*) () from
/usr/lib64/libXrdSec.so
#16 0x00007f0c8b1e2e59 in XrdSecServer::Configure(char const*) () from
/usr/lib64/libXrdSec.so
#17 0x00007f0c8b1e2eec in XrdSecgetService () from /usr/lib64/libXrdSec.so
#18 0x0000000000417202 in XrdXrootdloadSecurity(XrdSysError*, char*, char*,
void**) ()
#19 0x0000000000413856 in XrdXrootdProtocol::Configure(char*,
XrdProtocol_Config*) ()
#20 0x000000000041c1cd in XrdgetProtocol ()
#21 0x00007f0c8d4ae38f in XrdProtLoad::Load(char const*, char const*, char*,
XrdProtocol_Config*) () from /usr/lib64/libXrdUtils.so.1
#22 0x00007f0c8d8fa6a6 in XrdConfig::Setup(char*) () from
/usr/lib64/libXrdMain.so.1
#23 0x00007f0c8d8fb0ea in XrdConfig::Configure(int, char**) () from
/usr/lib64/libXrdMain.so.1
#24 0x00007f0c8d8fba4d in main () from /usr/lib64/libXrdMain.so.1
#25 0x00007f0c8c315cdd in __libc_start_main () from /lib64/libc.so.6
#26 0x000000000040d249 in _start ()


Both failures seem to happen in libcrypto, so I guess they are related.




    _______________________________________________________

Reply to this item at:

  <http://savannah.cern.ch/bugs/?98451>

_______________________________________________
  Message sent via/by LCG Savannah
  http://savannah.cern.ch/

########################################################################
Use REPLY-ALL to reply to list

To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1