Samba PDC dumping a core on Solaris 9

From: Bousquet Francois (Francois.Bousquet@cgi.com)
Date: Wed Oct 05 2005 - 10:32:11 EDT


I have compile and build a Samba PDC with an OpenLDAP backend to work on
Solaris.

I am running the package perfectly fine on Solaris 7 sparc (with pam &
nss_ldap from www.padl.com using SSL). I am trying to run the same package
on Solaris 9 sparc (with native ldapclient using SSL).

When starting the smbd I got the following error :

# /opt/samba/sbin/smbd -d 5 -D -s/opt/samba/lib/smb.conf
Illegal Instruction (core dumped)

After some investigations, I managed to recompile my Openldap libs & Samba
binairies on Solaris 9 and then retry but got the same error.

In attachment, you will find a truss of that deamon execution and the pstack
of the core.

It seems to crash in a Solaris library (maybe libsldap) when connecting to
ldap with ssl.

I was able to make Samba working on another Solaris 9 server with same level
of patch but not exactly the same packages installed and network config.

What can I do more with a core file and that truss output ?

Frangois Bousquet
Unix System Administrator

 <<pstack_core.txt>> <<truss.txt>>
# /opt/samba/sbin/smbd -d 5 -D -s/opt/samba/lib/smb.conf
Illegal Instruction (core dumped)
# cd /var/cores
# ls -l
total 2064
-rw------- 1 root root 1040848 Sep 28 13:50 smbd.ud1981win12.373.core
# pstack smbd.ud1981win12.373.core
core 'smbd.ud1981win12.373.core' of 373: /opt/samba/sbin/smbd -d 5 -D -s/opt/samba/lib/smb.conf
 002cc290 ???????? (2dcc78, 27c, 0, febe0000, 0, 0)
 feb32d54 ldapssl_init (2d8448, 27c, 1, 0, 0, 322e3136) + 2c
 fec225b4 openConnection (1, 0, 0, a, 2b6be4, 1) + 400
 fec21ab8 makeConnection (1, 2d8448, 2d6f48, fec4450c, fec44508, 2b6be4) + 1d8
 fec2370c __s_api_getConnection (1, 2d64a0, 0, 2d64b0, 2d64c0, 1) + 428
 fec19850 get_current_session (2b6b98, fec1a4dc, 2c4108, 4, fec1a4dc, ff00) + 30
 fec1a658 search_state_machine (5, 0, fec42000, 1, d, e) + 12c
 fec1b20c __ns_ldap_list (2b6b98, 2d83d0, 2b6be4, 3, 0, 0) + 240
 fec5ad08 _nss_ldap_nocb_lookup (2c2428, ffbfeab8, fec6ed40, ffbfe9b8, 0, fec5b3f0) + 3c
 fec54860 getbymember (2c2428, ffbfefc4, 30, 2b6b30, 72000000, 72000000) + 104
 fef4e704 nss_search (2, fec5475c, 2c23d0, ffbfefc4, 4e455449, fefbf01c) + 1d8
 fef98900 _getgroupsbymember (2d6350, 2b6ae8, 10, 1, 0, 2b6b31) + a4
 fef430e8 initgroups (2d6350, ea61, 0, 0, 0, 0) + 6c
 0017d9e8 ???????? (2d6350, ea61, 2d8250, ffbff18c, 0, 5)
 0017dc90 ???????? (2d6350, ea61, 2d8250, ffbff18c, 0, 0)
 0017dce4 getgroups_user (0, ea61, ffbff9dc, ffbff9e4, 0, 0) + 34
 0017de3c pdb_default_enum_group_memberships (ffbff3e4, 2d6350, ea61, ffbff9e0, ffbff9dc, ffbff9e4) + 14
 001722fc ???????? (2b39e0, 2d6350, ea61, ffbff9e0, ffbff9dc, 24b400)
 00166b28 ???????? (2b39e0, 2d6350, ea61, ffbff9e0, ffbff9dc, ffbff9e4)
 00168740 pdb_enum_group_memberships (2d6350, ea61, ffbff9e0, ffbff9dc, ffbff9e4, ff00) + 40
 001d2b04 ???????? (2d6350, ea61, ea61, ffbff9e4, ffbff9e0, ffbff9dc)
 001d2f08 ???????? (2a0b08, 2d6350, 2b3820, ea61, ea61, ea61)
 001d324c make_server_info_sam (ffbffae8, 2b3778, 0, 0, 0, ffbffaf0) + 150
 001d3494 ???????? (2a0b08, 0, 0, 0, 0, 0)
 001d3624 init_guest_info (1, 272188, 272190, 0, 0, 5) + 24
 001fa1f8 main (ffffffff, 28a400, ffbffdd4, 2a16dc, 0, 0) + 23c
 0003d618 _start (0, 0, 0, 0, 0, 0) + 5c
# truss -f -t open -s\!all /opt/samba/sbin/smbd -d 3 -D
-s/opt/samba/lib/smb.conf
20549: open("/var/ld/ld.config", O_RDONLY) = 3
20549: open("/usr/lib/libthread.so.1", O_RDONLY) = 3
20549: open("/opt/openldap/lib/libldap-2.2.so.7", O_RDONLY) = 3
20549: open("/opt/openldap/lib/liblber-2.2.so.7", O_RDONLY) = 3
20549: open("/usr/lib/libsendfile.so.1", O_RDONLY) = 3
20549: open("/usr/lib/libsec.so.1", O_RDONLY) = 3
20549: open("/usr/lib/libgen.so.1", O_RDONLY) = 3
20549: open("/usr/lib/libresolv.so.2", O_RDONLY) = 3
20549: open("/usr/lib/libsocket.so.1", O_RDONLY) = 3
20549: open("/usr/lib/libnsl.so.1", O_RDONLY) = 3
20549: open("/usr/lib/libdl.so.1", O_RDONLY) = 3
20549: open("/usr/local/lib/libiconv.so.2", O_RDONLY) = 3
20549: open("/usr/local/lib/libpopt.so.0", O_RDONLY) = 3
20549: open("/usr/lib/libc.so.1", O_RDONLY) = 3
20549: open("/usr/local/ssl/lib/libssl.so.0.9.7", O_RDONLY) = 3
20549: open("/usr/local/ssl/lib/libcrypto.so.0.9.7", O_RDONLY) = 3
20549: open("/usr/lib/libmp.so.2", O_RDONLY) = 3
20549: open("/usr/local/lib/libgcc_s.so.1", O_RDONLY) = 3
20549: open("/usr/platform/SUNW,Ultra-4/lib/libc_psr.so.1", O_RDONLY) = 3
20549: open64("/opt/samba/lib/upcase.dat", O_RDONLY) = 3
20549: open64("/opt/samba/lib/lowcase.dat", O_RDONLY) = 3
20549: open64("/dev/urandom", O_RDONLY) = 3
20549: open("/usr/share/lib/zoneinfo/Canada/Eastern", O_RDONLY) = 4
20549: open64("/opt/samba/var/log.smbd", O_WRONLY|O_APPEND|O_CREAT, 0644) =
4
20549: open64("/opt/samba/var/log.smbd", O_WRONLY|O_APPEND|O_CREAT, 0644) =
5
20549: open64("/opt/samba/var/log.smbd", O_WRONLY|O_APPEND|O_CREAT, 0644) =
4
20549: open64("/opt/samba/lib/smb.conf", O_RDONLY) = 5
20549: open64("/opt/samba/lib/valid.dat", O_RDONLY) = 5
20550: open("/var/ld/ld.config", O_RDONLY) = 5
20550: open("/usr/lib/libprint.so.2", O_RDONLY) = 5
20550: open("/usr/lib/libc.so.1", O_RDONLY) = 5
20550: open("/usr/lib/libnsl.so.1", O_RDONLY) = 5
20550: open("/usr/lib/libsocket.so.1", O_RDONLY) = 5
20550: open("/usr/lib/libdl.so.1", O_RDONLY) = 5
20550: open("/usr/lib/libldap.so.5", O_RDONLY) = 5
20550: open("/usr/lib/libmp.so.2", O_RDONLY) = 5
20550: open("/usr/lib/librt.so.1", O_RDONLY) = 5
20550: open("/usr/lib/libmd5.so.1", O_RDONLY) = 5
20550: open("/usr/lib/libaio.so.1", O_RDONLY) = 5
20550: open("/usr/platform/SUNW,Ultra-4/lib/libc_psr.so.1", O_RDONLY) = 5
20550: open("/dev/conslog", O_WRONLY) = 5
20550: open("/usr/share/lib/zoneinfo/Canada/Eastern", O_RDONLY) = 6
20550: open("/var/run/syslog_door", O_RDONLY) = 6
20550: open("/etc/nsswitch.conf", O_RDONLY|O_LARGEFILE) = 6
20550: open("/usr/lib/nss_user.so.1", O_RDONLY) = 6
20550: open("/export/home/sup?)56", O_RDONLY) Err#2 ENOENT
20550: open("/usr/lib/nss_files.so.1", O_RDONLY) = 6
20550: open("/etc/printers.conf", O_RDONLY) = 6
20550: open("/var/run/syslog_door", O_RDONLY) = 6
20550: open("/usr/lib/nss_user.so.1", O_RDONLY) = 6
20550: open("/export/home/support/.printers", O_RDONLY) Err#2 ENOENT
20550: open("/usr/lib/nss_files.so.1", O_RDONLY) = 6
20550: open("/etc/printers.conf", O_RDONLY) = 6
20550: open("", O_RDONLY) Err#2 ENOENT
20550: open("", O_RDONLY) Err#2 ENOENT
20550: open("/etc/printers.conf", O_RDONLY) = 6
20550: open("/var/run/syslog_door", O_RDONLY) = 6
20550: open("/usr/lib/nss_user.so.1", O_RDONLY) = 6
20550: open("/export/home/support/.printers", O_RDONLY) Err#2 ENOENT
20550: open("/usr/lib/nss_files.so.1", O_RDONLY) = 6
20550: open("/etc/printers.conf", O_RDONLY) = 6
20550: open("/var/run/syslog_door", O_RDONLY) = 6
20550: open("/usr/lib/nss_user.so.1", O_RDONLY) = 6
20550: open("/export/home/support/.printers", O_RDONLY) Err#2 ENOENT
20550: open("/usr/lib/nss_files.so.1", O_RDONLY) = 6
20550: open("/etc/printers.conf", O_RDONLY) = 6
20550: open("", O_RDONLY) Err#2 ENOENT
20550: open("", O_RDONLY) Err#2 ENOENT
20550: open("/etc/printers.conf", O_RDONLY) = 6
20552: open("/var/ld/ld.config", O_RDONLY) = 5
20552: open("/usr/lib/libprint.so.2", O_RDONLY) = 5
20552: open("/usr/lib/libc.so.1", O_RDONLY) = 5
20552: open("/usr/lib/libnsl.so.1", O_RDONLY) = 5
20552: open("/usr/lib/libsocket.so.1", O_RDONLY) = 5
20552: open("/usr/lib/libdl.so.1", O_RDONLY) = 5
20552: open("/usr/lib/libldap.so.5", O_RDONLY) = 5
20552: open("/usr/lib/libmp.so.2", O_RDONLY) = 5
20552: open("/usr/lib/librt.so.1", O_RDONLY) = 5
20552: open("/usr/lib/libmd5.so.1", O_RDONLY) = 5
20552: open("/usr/lib/libaio.so.1", O_RDONLY) = 5
20552: open("/usr/platform/SUNW,Ultra-4/lib/libc_psr.so.1", O_RDONLY) = 5
20552: open("/dev/conslog", O_WRONLY) = 5
20552: open("/usr/share/lib/zoneinfo/Canada/Eastern", O_RDONLY) = 6
20552: open("/var/run/syslog_door", O_RDONLY) = 6
20552: open("/etc/nsswitch.conf", O_RDONLY|O_LARGEFILE) = 6
20552: open("/usr/lib/nss_user.so.1", O_RDONLY) = 6
20552: open("/export/home/sup?)56", O_RDONLY) Err#2 ENOENT
20552: open("/usr/lib/nss_files.so.1", O_RDONLY) = 6
20552: open("/etc/printers.conf", O_RDONLY) = 6
20552: open("/var/run/syslog_door", O_RDONLY) = 6
20552: open("/usr/lib/nss_user.so.1", O_RDONLY) = 6
20552: open("/export/home/support/.printers", O_RDONLY) Err#2 ENOENT
20552: open("/usr/lib/nss_files.so.1", O_RDONLY) = 6
20552: open("/etc/printers.conf", O_RDONLY) = 6
20552: open("", O_RDONLY) Err#2 ENOENT
20552: open("", O_RDONLY) Err#2 ENOENT
20552: open("/etc/printers.conf", O_RDONLY) = 6
20552: open("/var/run/syslog_door", O_RDONLY) = 6
20552: open("/usr/lib/nss_user.so.1", O_RDONLY) = 6
20552: open("/export/home/support/.printers", O_RDONLY) Err#2 ENOENT
20552: open("/usr/lib/nss_files.so.1", O_RDONLY) = 6
20552: open("/etc/printers.conf", O_RDONLY) = 6
20552: open("/var/run/syslog_door", O_RDONLY) = 6
20552: open("/usr/lib/nss_user.so.1", O_RDONLY) = 6
20552: open("/export/home/support/.printers", O_RDONLY) Err#2 ENOENT
20552: open("/usr/lib/nss_files.so.1", O_RDONLY) = 6
20552: open("/etc/printers.conf", O_RDONLY) = 6
20552: open("", O_RDONLY) Err#2 ENOENT
20552: open("", O_RDONLY) Err#2 ENOENT
20552: open("/etc/printers.conf", O_RDONLY) = 6
20549: open64("/opt/samba/var/log.smbd", O_WRONLY|O_APPEND|O_CREAT, 0644) =
5
20549: open64("/opt/samba/var/log.smbd", O_WRONLY|O_APPEND|O_CREAT, 0644) =
4
20549: open64("/opt/samba/private/secrets.tdb", O_RDWR|O_CREAT, 0600) = 5
20549: open("/etc/netconfig", O_RDONLY|O_LARGEFILE) = 6
20549: open("/dev/udp", O_RDONLY) = 6
20549: open64("/var/run/name_service_door", O_RDONLY) Err#2 ENOENT
20549: open("/etc/nsswitch.conf", O_RDONLY|O_LARGEFILE) = 6
20549: open("/usr/lib/nss_files.so.1", O_RDONLY) = 6
20549: open("/etc/hosts", O_RDONLY) = 6
20549: open("/opt/openldap/etc/openldap/ldap.conf", O_RDONLY) = 6
20549: open("/export/home/support/ldaprc", O_RDONLY) Err#2 ENOENT
20549: open("/export/home/support/.ldaprc", O_RDONLY) Err#2 ENOENT
20549: open("ldaprc", O_RDONLY) Err#2 ENOENT
20549: open64("/var/run/name_service_door", O_RDONLY) Err#2 ENOENT
20549: open("/etc/hosts", O_RDONLY) = 6
20549: open("/export/home/support/.rnd", O_RDONLY) = 7
20549: open("/dev/urandom", O_RDONLY|O_NONBLOCK|O_NOCTTY) = 7
20549: open("/export/home/support/.rnd", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 7
20549: open("/opt/openldap/etc/openldap/CA_BLC.pem", O_RDONLY) = 7
20549: open("/usr/local/ssl/cert.pem", O_RDONLY) Err#2 ENOENT
20549: open("/opt/openldap/etc/openldap/CA_BLC.pem", O_RDONLY) = 7
20549: open64("/var/run/name_service_door", O_RDONLY) Err#2 ENOENT
20549: open("/etc/passwd", O_RDONLY) = 7
20549: open("/etc/default/nss", O_RDONLY|O_LARGEFILE) = 7
20549: open("/etc/group", O_RDONLY) = 7
20549: open("/usr/lib/nss_ldap.so.1", O_RDONLY) = 7
20549: open("/usr/lib/libsldap.so.1", O_RDONLY) = 7
20549: open("/usr/lib/libldap.so.5", O_RDONLY) = 7
20549: open("/usr/lib/libdoor.so.1", O_RDONLY) = 7
20549: open("/usr/lib/librt.so.1", O_RDONLY) = 7
20549: open("/usr/lib/libmd5.so.1", O_RDONLY) = 7
20549: open("/usr/lib/libaio.so.1", O_RDONLY) = 7
20549: open("/var/run/ldap_cache_door", O_RDONLY) = 7
20549: open("/dev/urandom", O_RDONLY) = 8
20549: open("/dev/urandom", O_RDONLY) = 8
20549: open("/var/ldap/cert7.db", O_RDONLY) = 8
20549: open("/var/ldap/key3.db", O_RDONLY) = 9
20549: open("/var/ldap/secmod.db", O_RDONLY) = 10
20549: Incurred fault #1, FLTILL %pc = 0x002D872C
20549: siginfo: SIGILL ILL_ILLOPC addr=0x002D872C
#
_______________________________________________
sunmanagers mailing list
sunmanagers@sunmanagers.org
http://www.sunmanagers.org/mailman/listinfo/sunmanagers



This archive was generated by hypermail 2.1.7 : Wed Apr 09 2008 - 23:32:10 EDT