shibd abort in Solaris 10

Steven D. Brewer sbrewer at bio.umass.edu
Thu Nov 15 09:07:11 EST 2012


On 11/8/12 1:52 PM, Cantor, Scott wrote:
> It would have to be stepped to find the throw. That's where the actual bug
> would be.

After your comment, I investigated a bit.  I tried to load shibd into
gdb and run it -- I couldn't get that to work.  I only play a unix
programmer on TV.

I finally found the command-line option to run the daemon without
dissociating from the controlling terminal and saw this:

> # /usr/local/shibboleth/sbin/shibd -u shibd -g shibd -f -F -c /usr/local/shibboleth/etc/shibboleth/shibboleth2.xml
> terminate called after throwing an instance of 'xercesc_3_1::TranscodingException'
> Abort (core dumped)

This suggested that the problem was in the Xerces Transcoding library.
When compiling Xerces (and things that linked against it), I had run
into some problem with undefined symbols:

> Undefined                       first referenced
>  symbol                             in file
> libiconv_close                      /usr/local/shibboleth/lib/libxerces-c.so
> libiconv_open                       /usr/local/shibboleth/lib/libxerces-c.so
> libiconv                            /usr/local/shibboleth/lib/libxerces-c.so
> ld: fatal: Symbol referencing errors. No output written to conftest

I had worked around them by adding a -liconv to the end of the LDFLAGS,
which allowed me to successfully build stuff, but was a clue as to where
the problem was.

Our gnuiconv was from unixpackages.org.  I recompiled xerces using the
iconv from Solaris.

> # ./configure --prefix=/usr/local/shibboleth --enable-netaccessor-socket --enable-transcoder-iconv

After recompiling everything that depended on xerces, I now have a shibd
that appears to work correctly.

Cheers!

-- 
Steven D. BREWER <sbrewer at bio.umass.edu>
http://www.bio.umass.edu/bcrc/sb.html
Sanktfigurojn ornamas kaj homojn malamas.


More information about the users mailing list