https://bugs.openldap.org/show_bug.cgi?id=9239
Bug ID: 9239
Summary: test007 failed on Solaris 10: slapmodify crashed
Product: OpenLDAP
Version: 2.5
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: ---
Component: slapd
Assignee: bugs(a)openldap.org
Reporter: ryan(a)openldap.org
Target Milestone: ---
./configure CPPFLAGS=-I/opt/csw/include LDFLAGS="-L/opt/csw/lib -R/opt/csw/lib"
&& make && make check
>>>>> Starting test007-slapmodify for mdb...
running defines.sh
Running slapadd to build slapd database...
Testing modify, add, and delete using slapmodify...
Segmentation Fault - core dumped
slapmodify failed (139)!
>>>>> test007-slapmodify failed for mdb after $(( %s - %s )) seconds
(exit 139)
-bash-3.2$ dbx servers/slapd/slapd tests/core
[...]
program terminated by signal SEGV (no mapping at the fault address)
0xfead646c: strlen+0x000c: movl (%eax),%edx
Current function is lutil_debug
74 len = vsnprintf( buffer+off, sizeof(buffer)-off, fmt, vl );
(dbx) where
[1] strlen(0x0), at 0xfead646c
[2] _ndoprnt(0x823a44b, 0x8046ebc, 0x8045e60, 0x0), at 0xfeb31bce
[3] vsnprintf(0x8045e99, 0xff7, 0x823a430, 0x8046ebc), at 0xfeb34d8f
=>[4] lutil_debug(debug = 16645, level = 1, fmt = 0x823a430 "oc_check_required
entry (%s), objectClass "%s"\n", ... = <value unavailable>, ...), line 74 in
"debug.c"
[5] oc_check_required(e = 0x8534ad4, oc = 0x831a890, ocname = 0x852a1b8),
line 514 in "schema_check.c"
[6] entry_schema_check(op = 0x804718c, e = 0x8534ad4, oldattrs = (nil),
manage = 0, add = 1, socp = (nil), text = 0x80475d0, textbuf = 0x804708c "",
textlen = 256U), line 430 in "schema_check.c"
[7] slap_tool_entry_check(progname = 0x824a964 "slapmodify", op = 0x804718c,
e = 0x8534ad4, lineno = 3, text = 0x80475d0, textbuf = 0x804708c "", textlen =
256U), line 1186 in "slapcommon.c"
[8] slapmodify(argc = 10, argv = 0x8047838), line 446 in "slapmodify.c"
[9] main(argc = 10, argv = 0x8047838), line 670 in "main.c"
(dbx) up
Current function is oc_check_required
514 Debug( LDAP_DEBUG_TRACE,
(dbx) list
514 Debug( LDAP_DEBUG_TRACE,
515 "oc_check_required entry (%s), objectClass \"%s\"\n",
516 e->e_dn, ocname->bv_val );
517
518
519 /* check for empty oc_required */
520 if(oc->soc_required == NULL) {
521 return NULL;
522 }
523
(dbx) print e->e_dn
e->e_dn = (nil)
(dbx) print ocname->bv_val
ocname->bv_val = 0x852a1a0 "OpenLDAPperson"
On other systems, the debug output is:
5ea0dcca oc_check_required entry ((null)), objectClass "OpenLDAPperson"
It appears this version of vsnprintf cannot handle the %s argument being NULL.
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugs.openldap.org/show_bug.cgi?id=9237
Bug ID: 9237
Summary: Remove back-perl
Product: OpenLDAP
Version: 2.5
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: ---
Component: backends
Assignee: bugs(a)openldap.org
Reporter: quanah(a)openldap.org
Target Milestone: ---
For 2.5, we will be removing back perl.
In master, remove the ability to build back perl, but keep the source
for the 2.5 branch, remove the source as well.
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugs.openldap.org/show_bug.cgi?id=9236
Bug ID: 9236
Summary: Remove back-shell
Product: OpenLDAP
Version: 2.5
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: ---
Component: backends
Assignee: bugs(a)openldap.org
Reporter: quanah(a)openldap.org
Target Milestone: ---
For 2.5+ remove back-shell from being built.
In master, keep the source code for now (Delete for 2.6+)
For 2.5 branch, delete the source as well.
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugs.openldap.org/show_bug.cgi?id=9235
Bug ID: 9235
Summary: Stop building libldap
Product: OpenLDAP
Version: 2.5
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: ---
Component: libraries
Assignee: bugs(a)openldap.org
Reporter: quanah(a)openldap.org
Target Milestone: ---
For 2.5+, we will no longer build libldap, only libldap_r
Source should remain in the tree
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugs.openldap.org/show_bug.cgi?id=9234
Bug ID: 9234
Summary: Disable back-sql with --enable-backends
Product: OpenLDAP
Version: 2.5
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: ---
Component: backends
Assignee: bugs(a)openldap.org
Reporter: quanah(a)openldap.org
Target Milestone: ---
Similar to what was done for back-ndb, disable back-sql building when
--enable-backends is given
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugs.openldap.org/show_bug.cgi?id=9232
Bug ID: 9232
Summary: [PATCH] Implement caseIgnoreListSubstringsMatch
Product: OpenLDAP
Version: unspecified
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: ---
Component: slapd
Assignee: bugs(a)openldap.org
Reporter: fredrik(a)roubert.name
Target Milestone: ---
As far as I've been able to figure out by searching the mailing list archives,
the sole reason for this not being implemented yet is simply that no-one has
cared to do it yet:
https://www.openldap.org/lists/openldap-software/200502/msg00232.htmlhttps://www.openldap.org/lists/openldap-software/200605/msg00208.html
Now I myself would like to use caseIgnoreListSubstringsMatch on my own OpenLDAP
server, so I've written this patch:
https://roubert.name/fredrik/software/openldap/0001-Implement-caseIgnoreLis…
Notice of Origin:
The attached patch file is derived from OpenLDAP Software. All of the
modifications to OpenLDAP Software represented in the following patch(es) were
developed by Fredrik Roubert <fredrik(a)roubert.name>. I have not assigned rights
and/or interest in this work to any party.
Rights Statement:
I, Fredrik Roubert, hereby place the following modifications to OpenLDAP
Software (and only these modifications) into the public domain. Hence, these
modifications may be freely used and/or redistributed for any purpose with or
without attribution and/or other notice.
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugs.openldap.org/show_bug.cgi?id=9226
Bug ID: 9226
Summary: MinGW build fails to link rewrite program with
--enable-dynamic
Product: OpenLDAP
Version: 2.5
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: ---
Component: build
Assignee: bugs(a)openldap.org
Reporter: ryan(a)openldap.org
Target Milestone: ---
/bin/sh ../../libtool --mode=link cc -g -O2 -o rewrite rewrite.o parse.o
librewrite.a ../../libraries/libldap_r/libldap_r.la
../../libraries/liblber/liblber.la ../../libraries/liblutil/liblutil.a
-lregex -lws2_32
libtool: link: cc -g -O2 -o .libs/rewrite rewrite.o parse.o librewrite.a
../../libraries/libldap_r/.libs/libldap_r.dll.a
/home/ryan/openldap/libraries/liblber/.libs/liblber.dll.a
../../libraries/liblber/.libs/liblber.dll.a ../../libraries/liblutil/liblutil.a
-lregex -lws2_32 -L/mingw64/lib
C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/9.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
../../libraries/liblutil/liblutil.a(utils.o): in function `lutil_str2bin':
C:\msys64\home\ryan\openldap\libraries\liblutil/utils.c:933: undefined
reference to `__imp_ber_memfree_x'
C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/9.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
C:\msys64\home\ryan\openldap\libraries\liblutil/utils.c:887: undefined
reference to `__imp_ber_memalloc_x'
collect2.exe: error: ld returned 1 exit status
make[2]: *** [Makefile:292: rewrite] Error 1
I think this is caused by the order of libraries on the link line. MinGW's
import libraries (.dll.a) behave like static libraries with one .o per
function, so liblutil.a should come before liblber.dll.a. I guess it doesn't
occur on UNIX because the shared libraries are scanned differently. It doesn't
occur with static linking because entire objects are linked and
liblber.a/memory.o is already pulled in by libldap.
N.B.: RE24 with --enable-dynamic fails to link liblber; the error looks
superficially similar but it is not the same. RE24's issue is a libtool bug,
already fixed in master by upgrading libtool.
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugs.openldap.org/show_bug.cgi?id=9215
Bug ID: 9215
Summary: Embedded _XOPEN_SOURCE breaks Solaris build
[regression]
Product: OpenLDAP
Version: unspecified
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: ---
Component: libraries
Assignee: bugs(a)openldap.org
Reporter: grapvar(a)gmail.com
Target Milestone: ---
The commit [2020-03-26 57b7003 | thr_posix.c: fix implicit function declaration
for 'pthread_setconcurrency']
introduced in the bug 8676, comment 8:
> --- a/libraries/libldap_r/thr_posix.c
> +++ b/libraries/libldap_r/thr_posix.c
> @@ -15,4 +15,6 @@
> */
>
> +#define _XOPEN_SOURCE 500 /* For pthread_setconcurrency() on glibc */
> +
> #include "portable.h"
breaks build on Solaris (likely any version; irrelevant compiling options
omitted):
| cc ... -c ../../../libraries/libldap_r/thr_posix.c -o .libs/thr_posix.o
| "/usr/include/sys/feature_tests.h", line 354: #error: "Compiler or options
invalid for pre-UNIX 03 X/Open applications and pre-2001 POSIX applications"
The system headers bear in mind:
"If you are using c99-compatible compiler ..."
and we all are using such compilers in 2020, isn't it?
"... and want to use X/Open CAE, it must be at least Issue 6"
i.e., not the Issue 5 (_XOPEN_SOURCE=500).
This part of system headers came from the times when Solaris was Sun yet. Given
the long respectful history of Sun's commitment to standard conformance, I
trust this assertion.
The problem, however, is not an incorrect X/Open version this patch employs.
1st of all, this patch is a system-specific hack, that targets not even
GNU-based systems, but, I suppose, specifically, GNU linux, maybe, even
specific version and distro. E.g., there are no problems with
pthread_setconcurrency() visibility on Solaris.
2nd of all, the influence of configuration macros _XOPEN_SOURCE, _POSIX_SOURCE,
_POSIX_C_SOURCE, _XOPEN_VERSION, _XOPEN_SOURCE_EXTENDED, __EXTENSIONS__ etc is
very system- and compiler- specific, and embedding these macros directly in a
source is likely to cause problems.
I believe the best course of action is to put a test in autoconf to check what
is the best way to achieve pthread_setconcurrency() visibility on any given
system.
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugs.openldap.org/show_bug.cgi?id=9213
Bug ID: 9213
Summary: undefined reference in back_ldap when
--enable-ldap=mod and --disable-dynamic
Product: OpenLDAP
Version: 2.4.49
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: ---
Component: build
Assignee: bugs(a)openldap.org
Reporter: ryan(a)openldap.org
Target Milestone: ---
./configure --enable-modules --enable-ldap=mod
doesn't link back_ldap with libldap (--enable-dynamic is disabled per default).
The resulting binary doesn't work; slapd has libldap statically linked, but
doesn't include all the symbols back_ldap uses: specifically ldap_modify_ext.
slaptest passes, but back_ldap fails at runtime (test022 fails). Not sure if
other modules would have the same problem.
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugs.openldap.org/show_bug.cgi?id=9212
Bug ID: 9212
Summary: [2.5] entry_schema_check can leave text uninitialized
Product: OpenLDAP
Version: 2.5
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: ---
Component: slapd
Assignee: bugs(a)openldap.org
Reporter: ryan(a)openldap.org
Target Milestone: ---
76df74dbeab47195e42946a474c3a5f8557c168d removed some important snprintfs in
schema_check.c. Now we can get uninitialized data in *text for these cases. For
example:
$ ./clients/tools/ldapmodify -H ldap://:9000 -x -D cn=admin,dc=example,dc=com
-w secret
dn: cn=test,dc=example,dc=com
changetype: add
objectclass: device
adding new entry "cn=test,dc=example,dc=com"
dn: cn=test,dc=example,dc=com
add: sn
sn: test
modifying entry "cn=test,dc=example,dc=com"
ldap_modify: Object class violation (65)
additional info: |
$ ./clients/tools/ldapmodify -H ldap://:9000 -x -D cn=admin,dc=example,dc=com
-w secret
dn: cn=test,dc=example,dc=com
add: sn
sn: test
modifying entry "cn=test,dc=example,dc=com"
ldap_modify: Object class violation (65)
additional info:
^[[?1;2c
$
--
You are receiving this mail because:
You are on the CC list for the bug.