[SSSD] 1.9.93 git fails using id_provider=ad

steve steve at steve-ss.com
Wed May 15 07:29:20 UTC 2013


On 15/05/13 09:00, Lukas Slebodnik wrote:
> On (14/05/13 23:42), steve wrote:
>> On 14/05/13 23:11, Lukas Slebodnik wrote:
>>> On (14/05/13 23:00), steve wrote:
>>>> Hi
>>>> with id_provider=ad, sssd exits after e.g. issuing d <user>
>>>> It works fine with id_provider=ldap
>>>>
>>>> here are te errors with the ad:
>>>>
>>>> (Tue May 14 22:55:31 2013) [sssd[pam]] [sbus_reconnect] (0x0080):
>>>> Making reconnection attempt 3 to
>>>> [unix:path=/usr/local/var/lib/sss/pipes/private/sbus-dp_default]
>>>> (Tue May 14 22:55:31 2013) [sssd[pam]] [sbus_reconnect] (0x0080):
>>>> Reconnected to
>>>> [unix:path=/usr/local/var/lib/sss/pipes/private/sbus-dp_default]
>>>> (Tue May 14 22:55:31 2013) [sssd[pam]] [pam_dp_reconnect_init]
>>>> (0x0020): Reconnected to the Data Provider.
>>>> (Tue May 14 22:55:31 2013) [sssd[nss]] [sbus_reconnect] (0x0080):
>>>> Making reconnection attempt 3 to
>>>> [unix:path=/usr/local/var/lib/sss/pipes/private/sbus-dp_default]
>>>> (Tue May 14 22:55:31 2013) [sssd[nss]] [sbus_reconnect] (0x0080):
>>>> Reconnected to
>>>> [unix:path=/usr/local/var/lib/sss/pipes/private/sbus-dp_default]
>>>> (Tue May 14 22:55:31 2013) [sssd[nss]] [nss_dp_reconnect_init]
>>>> (0x0020): Reconnected to the Data Provider.
>>>> (Tue May 14 22:55:31 2013) [sssd[nss]] [nss_cmd_getby_dp_callback]
>>>> (0x0040): Unable to get information from Data Provider
>>>> Error: 3, 5, (null)
>>>> Will try to return what we have in cache
>>>> (Tue May 14 22:55:31 2013) [sssd[be[default]]] [be_run_online_cb]
>>>> (0x0080): Going online. Running callbacks.
>>>> (Tue May 14 22:55:32 2013) [sssd] [sbus_dispatch] (0x0080):
>>>> Connection is not open for dispatching.
>>>> (Tue May 14 22:55:32 2013) [sssd[pam]] [sbus_dispatch] (0x0020):
>>>> Performing auto-reconnect
>>>> (Tue May 14 22:55:32 2013) [sssd[nss]] [sbus_dispatch] (0x0020):
>>>> Performing auto-reconnect
>>>> (Tue May 14 22:55:32 2013) [sssd] [mt_svc_exit_handler] (0x0040):
>>>> Child [default] terminated with signal [11]
>>
>>> Signal 11 is SIGSEGV and it is bad.
>>> Could you generate a backtrace?
>>
>> (gdb) bt full
>> #0  0xb7fdd416 in __kernel_vsyscall ()
>> No symbol table info available.
>> #1  0xb7d95f18 in epoll_wait () from /lib/i386-linux-gnu/libc.so.6
>> No symbol table info available.
>> #2  0xb7ee1a8a in ?? () from /usr/lib/i386-linux-gnu/libtevent.so.0
>> No symbol table info available.
>> #3  0xb7eddef8 in _tevent_loop_once ()
>>    from /usr/lib/i386-linux-gnu/libtevent.so.0
>> No symbol table info available.
>> #4  0xb7ede0cc in tevent_common_loop_wait ()
>>    from /usr/lib/i386-linux-gnu/libtevent.so.0
>> No symbol table info available.
>> #5  0xb7ede167 in _tevent_loop_wait ()
>>    from /usr/lib/i386-linux-gnu/libtevent.so.0
>> No symbol table info available.
>> #6  0xb7f525de in server_loop (main_ctx=0x8070490) at src/util/server.c:602
>> No locales.
>> #7  0x0804bd65 in main (argc=3, argv=0xbffff804) at
>> src/monitor/monitor.c:2801
>>         opt = <optimized out>
>>         pc = <optimized out>
>>         opt_daemon = 0
>>         opt_interactive = 1
>>         opt_version = 0
>>
>> How do I build to get the debugging?
>>
> You have debug symbols in sssd (frame #7,#6), but you don't have debug symbols
> in library libtevent (frame #5-#2) and glibc (frame #1,#0)
>
> It seems that either you found bug in libteven or you did not properly generate
> backtrace. It is litle bit tricky to debug multi process application.
>
> The best way, how to obtain backtrace is from core dump file.
>
> Core file is not generated by default. You can allow it with command:
>
> sh4.2# ulimit -c unlimited
> //then you have to run sssd from the same terminal, debug level is optional in
> //this case
> sh4.2# sssd -i -d7
> //perform action to reproduce bug (segfault)
> //New file(core) should be created in current directory
> //It is very likely, that core will be generated from sssd_be (I guess)
> //You can check it by calling command
> sh4.2# file ./core
> //you can see similar output from file command
> //./core: ELF 64-bit LSB core file x86-64, version 1 (SYSV), SVR4-style, from 'xterm'
>                                                                               ^^^^^^^^
>                                                    This information is important
>                                                    name_of_segfaulted_process
>
> //run gdb
> sh4.2# gdb <name_of_segfaulted_proces> ./core
> (gdb) bt full
>
> LS

Hi Thanks for the explanation. It was sssd_be

steve at pinoso:~$ sudo file ./core
./core: ELF 32-bit LSB core file Intel 80386, version 1 (SYSV), 
SVR4-style, from '/usr/local/libexec/sssd/sssd_be --domain default -d 
0x00f0'

steve at pinoso:~$ sudo gdb /usr/local/libexec/sssd/sssd_be ./core
GNU gdb (GDB) 7.5.91.20130417-cvs-ubuntu
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later 
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-linux-gnu".
Para las instrucciones de informe de errores, vea:
<http://www.gnu.org/software/gdb/bugs/>...
Leyendo símbolos desde /usr/local/libexec/sssd/sssd_be...hecho.
[Nuevo LWP 27356]

aviso: No se puede leer el nombre de la ruta para cargar el mapa: Error 
de entrada/salida.
[Depuración de hilo usando libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
El núcleo se generó por «/usr/local/libexec/sssd/sssd_be --domain 
default -d 0x00f0».
El programa terminó con la señal 11, Segmentation fault.
#0  0xb65c3a7c in ad_subdomains_get_netlogon_done (req=0x0)
     at src/providers/ad/ad_subdomains.c:317
317	    ret = sysdb_attrs_get_el(reply[0], AD_AT_NETLOGON, &el);
(gdb) bt full
#0  0xb65c3a7c in ad_subdomains_get_netlogon_done (req=0x0)
     at src/providers/ad/ad_subdomains.c:317
         ret = <optimized out>
         reply_count = 0
         reply = 0x0
         ctx = 0x843c3f8
         el = <optimized out>
         blob = {data = 0x1 <Address 0x1 out of bounds>, length = 
3075350213}
         ndr_err = <optimized out>
         ndr_pull = 0x0
         response = {ntver = 3077177344, data = {nt4 = {command = 
138736448,
               pdc_name = 0x0, user_name = 0x844f370 "",
               domain_name = 0xb769b885 
"\213D$\034\213\070\205\377\017\205\363\376\377\377\203\304<[^_]Ð\215t&", nt_version 
= 0, lmnt_token = 60952,
               lm20_token = 49116}, nt5 = {command = 138736448, pdc_name 
= 0x0,
               user_name = 0x844f370 "",
               domain_name = 0xb769b885 
"\213D$\034\213\070\205\377\017\205\363\376\377\377\203\304<[^_]Ð\215t&", domain_uuid 
= {time_low = 0,
                 time_mid = 60952, time_hi_and_version = 49116,
                 clock_seq = "\330;", node = "ڶ@\244a\267"}, zero_uuid = {
                 time_low = 138754536, time_mid = 60968,
                 time_hi_and_version = 49116, clock_seq = "\001",
                 node = "\000\000\324\016E\b"}, forest = 0x0,
---Type <return> to continue, or q <return> to quit---
---Type <return> to continue, or q <return> to quit---
               dns_domain = 0x8450ef8 "",
               pdc_dns_name = 0xb769da50 "TALLOC_FREE_FILL",
               pdc_ip = 0x5 <Address 0x5 out of bounds>,
               server_type = 3067879244, nt_version = 3218927144,
               lmnt_token = 46937, lm20_token = 46953}, nt5_ex = {
               command = 138736448, sbz = 0, server_type = 138736496,
               domain_uuid = {time_low = 3077159045, time_mid = 0,
                 time_hi_and_version = 0,
                 clock_seq = <incomplete sequence \356>, node = "ܿ\330;ڶ"},
               forest = 0xb761a440 "", dns_domain = 0x84539e8 "",
               pdc_dns_name = 0xbfdcee28 "\350\071E\b",
               domain_name = 0x1 <Address 0x1 out of bounds>,
               pdc_name = 0x8450ed4 "", user_name = 0x0,
               server_site = 0x8450ef8 "",
               client_site = 0xb769da50 "TALLOC_FREE_FILL",
               sockaddr_size = 5 '\005', sockaddr = {
                 sockaddr_family = 3067879244,
                 pdc_ip = 0xbfdcee28 "\350\071E\b", remaining = {
                   data = 0xb769b759 "\201çH", length = 3077177344}},
               next_closest_site = 0x844f068 "\300\016E\b\030\370D\b 
\370D\b",
               nt_version = 0, lmnt_token = 3832, lm20_token = 2117}}}
         __FUNCTION__ = "ad_subdomains_get_netlogon_done"
#1  0xb76a5043 in _tevent_req_notify_callback ()
---Type <return> to continue, or q <return> to quit---
    from /usr/lib/i386-linux-gnu/libtevent.so.0
No symbol table info available.
#2  0xb76a51fa in _tevent_req_done ()
    from /usr/lib/i386-linux-gnu/libtevent.so.0
No symbol table info available.
#3  0xb641117a in sdap_get_generic_done (subreq=0x0)
     at src/providers/ldap/sdap_async.c:1558
         req = 0x844f758
         ret = 0
         __FUNCTION__ = "sdap_get_generic_done"
#4  0xb76a5043 in _tevent_req_notify_callback ()
    from /usr/lib/i386-linux-gnu/libtevent.so.0
No symbol table info available.
#5  0xb76a51fa in _tevent_req_done ()
    from /usr/lib/i386-linux-gnu/libtevent.so.0
No symbol table info available.
#6  0xb64177da in sdap_get_generic_ext_done (op=0x8450430, reply=0x844f168,
     error=0, pvt=0x844f098) at src/providers/ldap/sdap_async.c:1407
         req = 0x844f098
         state = <optimized out>
         errmsg = 0x0
         result = 0
         ret = <optimized out>
---Type <return> to continue, or q <return> to quit---
         lret = <optimized out>
         total_count = <optimized out>
         cookie = {bv_len = 3077177344, bv_val = 0xb773a000 "P\016\a"}
         returned_controls = 0x0
         page_control = <optimized out>
         __FUNCTION__ = "sdap_get_generic_ext_done"
#7  0xb64159e1 in sdap_process_message (msg=0x8457138, ev=<optimized out>,
     sh=<optimized out>) at src/providers/ldap/sdap_async.c:366
         msgtype = <optimized out>
         ret = 0
         reply = 0x844f168
         op = 0x8450430
         msgid = <optimized out>
#8  sdap_process_result (ev=<optimized out>, pvt=<optimized out>)
     at src/providers/ldap/sdap_async.c:209
         sh = <optimized out>
         no_timeout = {tv_sec = 0, tv_usec = 0}
         te = <optimized out>
         msg = 0x8457138
         ret = 101
         __FUNCTION__ = "sdap_process_result"
#9  0xb76a7b4b in ?? () from /usr/lib/i386-linux-gnu/libtevent.so.0
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#10 0xb76a3ef8 in _tevent_loop_once ()
    from /usr/lib/i386-linux-gnu/libtevent.so.0
No symbol table info available.
#11 0xb76a40cc in tevent_common_loop_wait ()
    from /usr/lib/i386-linux-gnu/libtevent.so.0
No symbol table info available.
#12 0xb76a4167 in _tevent_loop_wait ()
    from /usr/lib/i386-linux-gnu/libtevent.so.0
No symbol table info available.
#13 0xb77195de in server_loop (main_ctx=0x841a788) at src/util/server.c:602
No locales.
#14 0x0804c423 in main (argc=5, argv=0xbfdcf304)
     at src/providers/data_provider_be.c:2771
         opt = <optimized out>
         pc = <optimized out>
         be_domain = 0x8419230 "default"
         srv_name = <optimized out>
         main_ctx = 0x841a788
         confdb_path = <optimized out>
         ret = <optimized out>
         long_options = {{longName = 0x0, shortName = 0 '\000', argInfo 
= 4,
             arg = 0x8085520 <poptHelpOptions@@LIBPOPT_0>, val = 0,
             descrip = 0x8079b1b "Help options:", argDescrip = 0x0}, {
---Type <return> to continue, or q <return> to quit---
             longName = 0x8079b29 "debug-level", shortName = 100 'd',
             argInfo = 2, arg = 0x8085590 <debug_level>, val = 0,
             descrip = 0x8079b35 "Debug level", argDescrip = 0x0}, {
             longName = 0x8079b41 "debug-to-files", shortName = 102 'f',
             argInfo = 0, arg = 0x8085510 <debug_to_file>, val = 0,
             descrip = 0x807b078 "Send the debug output to files instead 
of stderr", argDescrip = 0x0}, {longName = 0x8079b50 "debug-timestamps",
             shortName = 0 '\000', argInfo = 2,
             arg = 0x8085500 <debug_timestamps>, val = 0,
             descrip = 0x8079b61 "Add debug timestamps", argDescrip = 
0x0}, {
             longName = 0x8079b76 "debug-microseconds", shortName = 0 
'\000',
             argInfo = 2, arg = 0x8085594 <debug_microseconds>, val = 0,
             descrip = 0x807b0ac "Show timestamps with microseconds",
             argDescrip = 0x0}, {longName = 0x807b67c "domain",
             shortName = 0 '\000', argInfo = 1, arg = 0xbfdcf164, val = 0,
             descrip = 0x807b0d0 "Domain of the information provider 
(mandatory)", argDescrip = 0x0}, {longName = 0x0, shortName = 0 '\000', 
argInfo = 0,
             arg = 0x0, val = 0, descrip = 0x0, argDescrip = 0x0}}
         __FUNCTION__ = "main"
(gdb)





More information about the sssd-devel mailing list