Issue 88 - Multiple blank lines in LDIF files
Summary: Multiple blank lines in LDIF files
Status: VERIFIED FIXED
Alias: None
Product: OpenLDAP
Classification: Unclassified
Component: slapd (show other issues)
Version: unspecified
Hardware: All All
: --- normal
Target Milestone: ---
Assignee: OpenLDAP project
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 1999-03-03 11:38 UTC by ck@ix.heise.de
Modified: 2014-08-01 21:07 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description ck@ix.heise.de 1999-03-03 11:38:38 UTC
Full_Name: Christian Kirsch
Version: 1.2
OS: Linux
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (195.35.2.98)


When I have several consecutive lines in an LDIF2 file,
the second one kinda puts an entry into the database. This shows up as
a number without any data when I use ldbmcat on the generated number.
 
However, the LDIF draft says that entries should be separated by
"1*SEP", and RFC 822 explains :
       "1*element" requires at  least  one (element);
which for me means that there can be more than one SEP between
entries.  

Sample LDIF file:

--- Cut here ---
dn: dc=heise, dc=de
objectclass: organization
o: Heinz Heise Verlag

dn: ou=ct, dc=heise, dc=de
objectClass: organizationalUnit
ou: ct

dn: ou=ix, dc=heise, dc=de
objectclass: organizationalUnit
ou: ix

dn: uid=ck, ou=ix, dc=heise, dc=de
objectclass: person
ou: ix
cn: Christian Kirsch
uid: ck

dn: uid=cp, ou=ct, dc=heise, dc=de
objectclass: person
ou: ct
cn: Christian Persson
uid: cp


dn: uid=hb, ou=ix, dc=heise, dc=de
objectclass: person
ou: ix
cn: Henning Behme
uid: hb
------------ Cut Here ---------

ldif2ldbm happily feeds this file into the database. However, 
	ldapsearch "(&(ou=ix)(objectclass=person))"
returns only the first entry (uid=ck).
If I remove the second empty line between "uid: cp" and "dn: uid=hb..." 
use ldif2ldbm again on this file, ldapsearch returns the two entries it 
should (uid=ck and uid=hb). 


Comment 1 Mail Delivery Subsystem 1999-03-03 16:03:13 UTC
    **********************************************
    **      THIS IS A WARNING MESSAGE ONLY      **
    **  YOU DO NOT NEED TO RESEND YOUR MESSAGE  **
    **********************************************

The original message was received at Wed, 3 Mar 1999 12:37:12 +0100
from smap@localhost

   ----- The following addresses had transient non-fatal errors -----
<ck@held.mind.de>

   ----- Transcript of session follows -----
<ck@held.mind.de>... Deferred: Connection timed out with mail.mind.de.
Warning: message still undelivered after 4 hours
Will keep trying until message is 5 days old
Comment 2 Mail Delivery Subsystem 1999-03-03 16:03:13 UTC

    
Comment 3 Mail Delivery Subsystem 1999-03-03 16:03:13 UTC

    
Comment 4 Mail Delivery Subsystem 1999-03-03 16:03:13 UTC
*** THIS IS AN AUTOMATICALLY GENERATED REPLY ***

Thanks for your report to openldap-its@OpenLDAP.org.  Your report
has been placed into our Issue Tracking System and has been assigned
the tracking number ITS#88.

One of support engineers will look at your report in due course.
Note that this may take some time because our support engineers
are volunteers.  They only work on OpenLDAP when they have spare
time.

You may follow the progress of this message by loading the following
URL in a web browser:

        http://www.OpenLDAP.org/its/index.cgi?findid=88

Please remember to retain your issue tracking number (ITS#88)
on any further messages you send to us regarding this message.  If
you don't then you'll just waste our time and yours because we
won't be able to properly track the message.

Now to the main point of this autoreply!  In our experience many
people ask questions that have been asked before.  So we include
below the current ITS FAQ for OpenLDAP. This has been automatically
generated from the common replies we send from our bug tracking
system.  We hope it is useful for you!

1) Building OpenLDAP under Solaris
2) Configure cannot locate local libraries
3) Reporting OpenLDAP crashes
4) configure fails to find suitable LDBM backend
5) configure fails to recognize Pthreads on Linux


----------------------------------------
1) Building OpenLDAP under Solaris

Some versions of Solaris 2.x contains pthread functions which are
not compatible with <pthread.h> and are not useable.  The autoconf
system will detect this incompatibility but does not attempts to
resolve it. configure will exit using out-of-the-box settings with
the error: 

  checking if pthread_create() works... no
  configure: error: pthread.h and pthread_create are not compatible

To resolve this problem, the installer must specify the proper Pthreads libraries: 

  LIBS="-lpthread -lposix4"; export LIBS
  ./configure --with-threads

Note: the configure option '--without-threads' cannot be used on
some versions of Solaris.

See also:
  http://www.openldap.org/faq/index.cgi?file=11
  http://www.openldap.org/software/release/install.html

----------------------------------------
2) Configure cannot locate local libraries

configure looks in default system locations for libraries and such.
If you would like for configure to search libraries installed in
/usr/local/{include,lib}, use CPPFLAGS and LDFLAGS environmental
variables.

	CPPFLAGS="-I/usr/local/include"
	LDFLAGS="-L/usr/local/lib"

Additional information concerning configure and environmental
variables can be found in the INSTALL document.

See also:
  http://www.openldap.org/faq/index.cgi?file=43
  http://www.openldap.org/software/release/install.html

----------------------------------------
3) Reporting OpenLDAP crashes

If you are reporting a crash in which an OpenLDAP executable is able
to dump 'core', please provide a debugger back trace.  A back trace
can be obtained using the 'bt' command in most Unix debuggers.

% gdb path/to/executable /path/to/corefile
(gdb) bt
[back trace]
(gdb) quit

You may reply to this message and provide the backtrace in the
body of your message.

Relevant portions of logs (-d 1) are often quite useful as well.

----------------------------------------
4) configure fails to find suitable LDBM backend

Building of the standalone LDAP server (slapd), in general, requires
a suitable "LDBM" backend database package such as Berkeley DB or GDBM.
If configure cannot detect the presense of these packages you will get
the following:

  configure: warning: skipping automatic checking for NDBM, must be manually enabled.
  configure: warning: could not find suitable LDBM backend
  configure: error: select appropriate LDBM options or disable

To use LDBM, you must have Berkeley DB or GDBM installed.

If Berkeley DB or GDBM are installed you may just have to
specify alternative CPPFLAGS and LDFLAGS in your environment.

See Also:
  http://www.openldap.org/software/release/install.html
  http://www.openldap.org/faq/index.cgi?file=8

----------------------------------------
5) configure fails to recognize Pthreads on Linux

The <pthread.h> on some Linux systems uses a preprocessor macro
definition to select the type of threads to use. The default
is not compatible with OpenLDAP. Use: 

  make veryclean
  CPPFLAGS=-D_MIT_POSIX_THREADS
  ./configure 

to select a compatible POSIX thread implementation.

Environmental variable details are provided in the release INSTALL
document.

See also:
  http://www.openldap.org/faq/index.cgi?file=19
  http://www.openldap.org/software/release/install.html

----------------------------------------

Copyright 1999 The OpenLDAP Foundation All Rights Reserved.


Comment 5 Hallvard Furuseth 1999-03-03 20:58:23 UTC
moved from Incoming to Software Bugs
Comment 6 Kurt Zeilenga 1999-03-26 19:05:33 UTC
changed notes
changed state Open to Feedback
moved from Software Bugs to Software Enhancements
Comment 7 Kurt Zeilenga 1999-08-07 03:17:46 UTC
changed notes
changed state Feedback to Test
Comment 8 Kurt Zeilenga 1999-12-12 00:50:36 UTC
changed notes
changed state Test to Closed
Comment 9 OpenLDAP project 2014-08-01 21:07:00 UTC
We don't support LDIF2.
Treat as request for enhancement.
New LDIF parsing added to -devel.