9.2. ldif

ldif automatically formats LDIF files and creates base-64 encoded attribute values. Base-64 encoding makes it possible to represent binary data, such as a JPEG image, in LDIF. Base-64 encoded data is represented using a double colon (::) symbol. For example:
jpegPhoto:: encoded data
In addition to binary data, other values that must be base-64 encoded can identified with other symbols, including the following:
  • Any value that begins with a space.
  • Any value that begins with a single colon (:).
  • Any value that contains non-ASCII data, including newlines.
The ldif command-line utility will take any input and format it with the correct line continuation and appropriate attribute information. The ldif utility also senses whether the input requires base-64 encoding.

The ldif command has the following format:

ldif [ -b ] [ attrtypes ] [ optional_options ]



Table 9.2. ldif Options

Option Description
Specifies that the ldif utility should interpret the entire input as a single binary value. If -b is not present, each line is considered to be a separate input value.
As an alternative to the -b option, use the :< URL specifier notation. For example:
jpegphoto:< file:///tmp/myphoto.jpg
Although the official notation requires three ///, the use of one / is accepted.


The :< URL specifier notation only works if LDIF statement is version 1 or later, meaning version: 1 is inserted in the LDIF file. Otherwise, the file URL is appended as the attribute value rather than the contents of the file.