<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <HTML> <HEAD> <TITLE>ldb</TITLE> </HEAD> <BODY BGCOLOR="#ffffff" TEXT="#000000" VLINK="#292555" LINK="#292555" ALINK="#cc0033"> <h1>ldb</h1> ldb is a LDAP-like embedded database. It is not at all <a href="http://en.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol">LDAP</a> standards compliant, so if you want a standards compliant database then please see the excellent <a href="http://www.openldap.org/">OpenLDAP</a> project.<p> What ldb does is provide a fast database with an LDAP-like API designed to be used within an application. In some ways it can be seen as a intermediate solution between key-value pair databases and a real LDAP database.<p> ldb is the database engine used in Samba4. <h2>Features</h2> The main features that separate ldb from other solutions are: <ul> <li>Safe multi-reader, multi-writer, using byte range locking <li><a href="http://en.wikipedia.org/wiki/LDAP_Application_Program_Interface">LDAP-like API</a> <li>fast operation <li>choice of local tdb or remote LDAP backends <li>integration with <a href="http://talloc.samba.org">talloc</a> <li>schema-less operation, for trivial setup <li>modules for extensions (such as schema support) <li>easy setup of indexes and attribute properties <li><a href="http://en.wikipedia.org/wiki/LDAP_Data_Interchange_Format">LDIF</a> for import/export <li>ldbedit tool for database (via LDIF) editing (reminiscent of 'vipw') </ul> <h2>Documentation</h2> Currently ldb is completely lacking in programmer or user documentation. This is your opportunity to make a contribution! Start with the public functions declared in <a href="http://samba.org/ftp/unpacked/ldb/include/ldb.h">ldb.h</a> and the example code in the <a href="http://samba.org/ftp/unpacked/ldb/tools/">tools directory</a>. Documentation in the same docbook format used by Samba would be preferred. <h2>Discussion and bug reports</h2> ldb does not currently have its own mailing list or bug tracking system. For now, please use the <a href="https://lists.samba.org/mailman/listinfo/samba-technical">samba-technical</a> mailing list or the <a href="https://lists.samba.org/mailman/listinfo/ldb">ldb</a> mailing list, and the <a href="http://bugzilla.samba.org/">Samba bugzilla</a> bug tracking system. <h2>Download</h2> You can download the latest release either via rsync or through git.<br> <br> To fetch via git see the following guide:<br> <a href="http://wiki.samba.org/index.php/Using_Git_for_Samba_Development">Using Git for Samba Development</a><br> Once you have cloned the tree switch to the v4-0-test branch and cd into the source/lib/ldb directory.<br> <br> To fetch via rsync use these commands: <pre> rsync -Pavz samba.org::ftp/unpacked/ldb . rsync -Pavz samba.org::ftp/unpacked/tdb . rsync -Pavz samba.org::ftp/unpacked/talloc . rsync -Pavz samba.org::ftp/unpacked/libreplace . </pre> and build in ldb. It will find the other libraries in the directory above automatically. <hr> <tiny> <a href="http://samba.org/~tridge/">Andrew Tridgell</a><br> ldb AT tridgell.net </tiny> </BODY> </HTML>