Bug 447590 - dna plugin causing ns-slapd to core
Summary: dna plugin causing ns-slapd to core
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: freeIPA
Classification: Retired
Component: ipa-server
Version: 1.0
Hardware: All
OS: Linux
high
high
Target Milestone: ---
Assignee: Simo Sorce
QA Contact: Chandrasekar Kannan
URL:
Whiteboard:
Depends On:
Blocks: 429034
TreeView+ depends on / blocked
 
Reported: 2008-05-20 17:43 UTC by Rob Crittenden
Modified: 2015-01-04 23:32 UTC (History)
1 user (show)

Fixed In Version: freeipa-2.0.0-1.fc15
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description Rob Crittenden 2008-05-20 17:43:22 UTC
Description of problem:

Doing an ipa-adduser will cause ns-slapd to segfault with:

ns-slapd[4029]: segfault at ffffffff eip 00bf844b esp a8ed3d0c error 4

Version-Release number of selected component (if applicable):

ipa-server-1.0.0GIT32179e5-2.fc7

#0  0x00bf844b in strlen () from /lib/libc.so.6
#1  0x0798728d in ?? () from /usr/lib/libnspr4.so
#2  0x079874fe in PR_vsmprintf () from /usr/lib/libnspr4.so
#3  0x0013b4fd in slapi_ch_smprintf () from /usr/lib/dirsrv/libslapd.so.0
#4  0x003c7972 in dna_first_free_value (config_entry=0x952afd0, 
    newval=0xae97a014, maxval=4294967295, increment=4) at dna.c:833
#5  0x003c7e1f in dna_get_next_value (config_entry=0x952afd0, 
    next_value_ret=0xae97a0e8) at dna.c:1013
#6  0x003c84be in dna_pre_op (pb=0x96b6540, modtype=1) at dna.c:1272
#7  0x003c872a in dna_add_pre_op (pb=0x96b6540) at dna.c:1357
#8  0x00176d78 in ?? () from /usr/lib/dirsrv/libslapd.so.0
#9  0x00176f3c in plugin_call_plugins () from /usr/lib/dirsrv/libslapd.so.0
#10 0x00133a31 in ?? () from /usr/lib/dirsrv/libslapd.so.0
#11 0x00134dc4 in do_add () from /usr/lib/dirsrv/libslapd.so.0
#12 0x08057584 in sasl_map_config_add ()
#13 0x0799f1dd in ?? () from /usr/lib/libnspr4.so
#14 0x00d1744b in start_thread () from /lib/libpthread.so.0
#15 0x00c5a80e in clone () from /lib/libc.so.6
(gdb) print config_entry->filter
$1 = 0x9476e70 "(objectclass=posixAccount)"
(gdb) print type
$2 = 0x9453960 "uidNumber"
(gdb) print tmpval
$3 = 1100
(gdb) print maxval
$4 = 4294967295
(gdb) print prefix
$5 = 0x0

Comment 1 Rob Crittenden 2008-05-20 18:25:55 UTC
It is a 32 vs 64-bit issue.

The format string has '%llu' but on 32-bit machines tmpval and maxval are long
unsigned int and not long long unsigned int

As a quick confirmation I replaced %llu with %lu on my 32-bit machine and things
worked as expected.

Comment 2 Simo Sorce 2008-05-20 18:29:38 UTC
ok I had already plans to explicitly use a 64 bit type, patch coming soon

Comment 3 Yi Zhang 2008-05-29 16:00:48 UTC
QA Verified on May 29, 2008 (Yi)

Build used: May 29, 2008 (i386)

ipaserver[05/29/08 08:58] ipa-adduser -c GECOS -d /home/u101 -f user -l 101 -p
redhat123 -s /bin/bash u101
u101 successfully added
ipaserver[05/29/08 09:00] ipa-finduser u101
Full Name: user 101
Home Directory: /home/u101
Login Shell: /bin/bash
Login: u101

ipaserver[05/29/08 09:00] 



Note You need to log in before you can comment on or make changes to this bug.