first commit

This commit is contained in:
yo
2023-06-04 10:14:27 +02:00
commit 7ed7926b00
16 changed files with 1256 additions and 0 deletions

427
files/man/ldb.3 Normal file
View File

@ -0,0 +1,427 @@
'\" t
.\" Title: ldb
.\" Author: [see the "Author" section]
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 09/23/2020
.\" Manual: System Administration tools
.\" Source: LDB 1.1
.\" Language: English
.\"
.TH "LDB" "3" "09/23/2020" "LDB 1\&.1" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
ldb \- A light\-weight database library
.SH "SYNOPSIS"
.sp
.nf
#include <ldb\&.h>
.fi
.SH "DESCRIPTION"
.PP
ldb is a light weight embedded database library and API\&. With a programming interface that is very similar to LDAP, ldb can store its data either in a tdb(3) database or in a real LDAP database\&.
.PP
When used with the tdb backend ldb does not require any database daemon\&. Instead, ldb function calls are processed immediately by the ldb library, which does IO directly on the database, while allowing multiple readers/writers using operating system byte range locks\&. This leads to an API with very low overheads, often resulting in speeds of more than 10x what can be achieved with a more traditional LDAP architecture\&.
.PP
In a taxonomy of databases ldb would sit half way between key/value pair databases (such as berkley db or tdb) and a full LDAP database\&. With a structured attribute oriented API like LDAP and good indexing capabilities, ldb can be used for quite sophisticated applications that need a light weight database, without the administrative overhead of a full LDAP installation\&.
.PP
Included with ldb are a number of useful command line tools for manipulating a ldb database\&. These tools are similar in style to the equivalent ldap command line tools\&.
.PP
In its default mode of operation with a tdb backend, ldb can also be seen as a "schema\-less LDAP"\&. By default ldb does not require a schema, which greatly reduces the complexity of getting started with ldb databases\&. As the complexity of you application grows you can take advantage of some of the optional schema\-like attributes that ldb offers, or you can migrate to using the full LDAP api while keeping your exiting ldb code\&.
.PP
If you are new to ldb, then I suggest starting with the manual pages for ldbsearch(1) and ldbedit(1), and experimenting with a local database\&. Then I suggest you look at the ldb_connect(3) and ldb_search(3) manual pages\&.
.SH "TOOLS"
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
ldbsearch(1)
\- command line ldb search utility
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
ldbedit(1)
\- edit all or part of a ldb database using your favourite editor
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
ldbadd(1)
\- add records to a ldb database using LDIF formatted input
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
ldbdel(1)
\- delete records from a ldb database
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
ldbmodify(1)
\- modify records in a ldb database using LDIF formatted input
.RE
.SH "FUNCTIONS"
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_connect(3)\fR
\- connect to a ldb backend
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_search(3)\fR
\- perform a database search
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_add(3)\fR
\- add a record to the database
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_delete(3)\fR
\- delete a record from the database
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_modify(3)\fR
\- modify a record in the database
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_errstring(3)\fR
\- retrieve extended error information from the last operation
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_ldif_write(3)\fR
\- write a LDIF formatted message
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_ldif_write_file(3)\fR
\- write a LDIF formatted message to a file
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_ldif_read(3)\fR
\- read a LDIF formatted message
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_ldif_read_free(3)\fR
\- free the result of a ldb_ldif_read()
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_ldif_read_file(3)\fR
\- read a LDIF message from a file
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_ldif_read_string(3)\fR
\- read a LDIF message from a string
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_msg_find_element(3)\fR
\- find an element in a ldb_message
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_val_equal_exact(3)\fR
\- compare two ldb_val structures
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_msg_find_val(3)\fR
\- find an element by value
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_msg_add_empty(3)\fR
\- add an empty message element to a ldb_message
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_msg_add(3)\fR
\- add a non\-empty message element to a ldb_message
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_msg_element_compare(3)\fR
\- compare two ldb_message_element structures
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_msg_find_int(3)\fR
\- return an integer value from a ldb_message
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_msg_find_uint(3)\fR
\- return an unsigned integer value from a ldb_message
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_msg_find_double(3)\fR
\- return a double value from a ldb_message
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_msg_find_string(3)\fR
\- return a string value from a ldb_message
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_set_alloc(3)\fR
\- set the memory allocation function to be used by ldb
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_set_debug(3)\fR
\- set a debug handler to be used by ldb
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fBldb_set_debug_stderr(3)\fR
\- set a debug handler for stderr output
.RE
.SH "AUTHOR"
.PP
ldb was written by
\m[blue]\fBAndrew Tridgell\fR\m[]\&\s-2\u[1]\d\s+2\&.
.PP
If you wish to report a problem or make a suggestion then please see the
\m[blue]\fB\%http://ldb.samba.org/\fR\m[]
web site for current contact and maintainer information\&.
.PP
ldb is released under the GNU Lesser General Public License version 2 or later\&. Please see the file COPYING for license details\&.
.SH "NOTES"
.IP " 1." 4
Andrew Tridgell
.RS 4
\%https://www.samba.org/~tridge/
.RE

78
files/man/ldbadd.1 Normal file
View File

@ -0,0 +1,78 @@
'\" t
.\" Title: ldbadd
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 09/23/2020
.\" Manual: System Administration tools
.\" Source: LDB 1.1
.\" Language: English
.\"
.TH "LDBADD" "1" "09/23/2020" "LDB 1\&.1" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
ldbadd \- Command\-line utility for adding records to an LDB
.SH "SYNOPSIS"
.HP \w'\fBldbadd\fR\ 'u
\fBldbadd\fR [\-h] [\-H\ LDB\-URL] [ldif\-file1] [ldif\-file2] [\&.\&.\&.]
.SH "DESCRIPTION"
.PP
ldbadd adds records to an ldb(3) database\&. It reads the ldif(5) files specified on the command line and adds the records from these files to the LDB database, which is specified by the \-H option or the LDB_URL environment variable\&.
.PP
If \- is specified as a ldb file, the ldif input is read from standard input\&.
.SH "OPTIONS"
.PP
\-h
.RS 4
Show list of available options\&.
.RE
.PP
\-H <ldb\-url>
.RS 4
LDB URL to connect to\&. See ldb(3) for details\&.
.RE
.SH "ENVIRONMENT"
.PP
LDB_URL
.RS 4
LDB URL to connect to (can be overridden by using the \-H command\-line option\&.)
.RE
.SH "VERSION"
.PP
This man page is correct for version 1\&.1 of LDB\&.
.SH "SEE ALSO"
.PP
ldb(3), ldbmodify, ldbdel, ldif(5)
.SH "AUTHOR"
.PP
ldb was written by
\m[blue]\fBAndrew Tridgell\fR\m[]\&\s-2\u[1]\d\s+2\&.
.PP
If you wish to report a problem or make a suggestion then please see the
\m[blue]\fB\%http://ldb.samba.org/\fR\m[]
web site for current contact and maintainer information\&.
.PP
This manpage was written by Jelmer Vernooij\&.
.SH "NOTES"
.IP " 1." 4
Andrew Tridgell
.RS 4
\%https://www.samba.org/~tridge/
.RE

80
files/man/ldbdel.1 Normal file
View File

@ -0,0 +1,80 @@
'\" t
.\" Title: ldbdel
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 09/23/2020
.\" Manual: System Administration tools
.\" Source: LDB 1.1
.\" Language: English
.\"
.TH "LDBDEL" "1" "09/23/2020" "LDB 1\&.1" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
ldbdel \- Command\-line program for deleting LDB records
.SH "SYNOPSIS"
.HP \w'\fBldbdel\fR\ 'u
\fBldbdel\fR [\-h] [\-H\ LDB\-URL] [dn] [\&.\&.\&.]
.SH "DESCRIPTION"
.PP
ldbdel deletes records from an ldb(3) database\&. It deletes the records identified by the dn\*(Aqs specified on the command\-line\&.
.PP
ldbdel uses either the database that is specified with the \-H option or the database specified by the LDB_URL environment variable\&.
.SH "OPTIONS"
.PP
\-h
.RS 4
Show list of available options\&.
.RE
.PP
\-H <ldb\-url>
.RS 4
LDB URL to connect to\&. See ldb(3) for details\&.
.RE
.SH "ENVIRONMENT"
.PP
LDB_URL
.RS 4
LDB URL to connect to (can be overridden by using the \-H command\-line option\&.)
.RE
.SH "VERSION"
.PP
This man page is correct for version 1\&.1 of LDB\&.
.SH "SEE ALSO"
.PP
ldb(3), ldbmodify, ldbadd, ldif(5)
.SH "AUTHOR"
.PP
ldb was written by
\m[blue]\fBAndrew Tridgell\fR\m[]\&\s-2\u[1]\d\s+2\&.
.PP
If you wish to report a problem or make a suggestion then please see the
\m[blue]\fB\%http://ldb.samba.org/\fR\m[]
web site for current contact and maintainer information\&.
.PP
ldbdel was written by Andrew Tridgell\&.
.PP
This manpage was written by Jelmer Vernooij\&.
.SH "NOTES"
.IP " 1." 4
Andrew Tridgell
.RS 4
\%https://www.samba.org/~tridge/
.RE

111
files/man/ldbedit.1 Normal file
View File

@ -0,0 +1,111 @@
'\" t
.\" Title: ldbedit
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 09/23/2020
.\" Manual: System Administration tools
.\" Source: LDB 1.1
.\" Language: English
.\"
.TH "LDBEDIT" "1" "09/23/2020" "LDB 1\&.1" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
ldbedit \- Edit LDB databases using your preferred editor
.SH "SYNOPSIS"
.HP \w'\fBldbedit\fR\ 'u
\fBldbedit\fR [\-?] [\-\-usage] [\-s\ base|one|sub] [\-b\ basedn] [\-a] [\-e\ editor] [\-H\ LDB\-URL] [expression] [attributes...]
.SH "DESCRIPTION"
.PP
ldbedit is a utility that allows you to edit LDB entries (in tdb files, sqlite files or LDAP servers) using your preferred editor\&. ldbedit generates an LDIF file based on your query, allows you to edit the LDIF, and then merges that LDIF back into the LDB backend\&.
.SH "OPTIONS"
.PP
\-?, \-\-help
.RS 4
Show list of available options, and a phrase describing what that option does\&.
.RE
.PP
\-\-usage
.RS 4
Show list of available options\&. This is similar to the help option, however it does not provide any description, and is hence shorter\&.
.RE
.PP
\-H <ldb\-url>
.RS 4
LDB URL to connect to\&. For a tdb database, this will be of the form tdb://\fIfilename\fR\&. For a LDAP connection over unix domain sockets, this will be of the form ldapi://\fIsocket\fR\&. For a (potentially remote) LDAP connection over TCP, this will be of the form ldap://\fIhostname\fR\&. For an SQLite database, this will be of the form sqlite://\fIfilename\fR\&.
.RE
.PP
\-s one|sub|base
.RS 4
Search scope to use\&. One\-level, subtree or base\&.
.RE
.PP
\-a, \-all
.RS 4
Edit all records\&. This allows you to apply the same change to a number of records at once\&. You probably want to combine this with an expression of the form "objectclass=*"\&.
.RE
.PP
\-e editor, \-\-editor editor
.RS 4
Specify the editor that should be used (overrides the VISUAL and EDITOR environment variables)\&. If this option is not used, and neither VISUAL nor EDITOR environment variables are set, then the vi editor will be used\&.
.RE
.PP
\-b basedn
.RS 4
Specify Base Distinguished Name to use\&.
.RE
.PP
\-v, \-\-verbose
.RS 4
Make ldbedit more verbose about the operations that are being performed\&. Without this option, ldbedit will only provide a summary change line\&.
.RE
.SH "ENVIRONMENT"
.PP
LDB_URL
.RS 4
LDB URL to connect to\&. This can be overridden by using the \-H command\-line option\&.)
.RE
.PP
VISUAL and EDITOR
.RS 4
Environment variables used to determine what editor to use\&. VISUAL takes precedence over EDITOR, and both are overridden by the \-e command\-line option\&.
.RE
.SH "VERSION"
.PP
This man page is correct for version 1\&.1 of LDB\&.
.SH "SEE ALSO"
.PP
ldb(3), ldbmodify(1), ldbdel(1), ldif(5), vi(1)
.SH "AUTHOR"
.PP
ldb was written by
\m[blue]\fBAndrew Tridgell\fR\m[]\&\s-2\u[1]\d\s+2\&.
.PP
If you wish to report a problem or make a suggestion then please see the
\m[blue]\fB\%http://ldb.samba.org/\fR\m[]
web site for current contact and maintainer information\&.
.PP
This manpage was written by Jelmer Vernooij and updated by Brad Hards\&.
.SH "NOTES"
.IP " 1." 4
Andrew Tridgell
.RS 4
\%https://www.samba.org/~tridge/
.RE

73
files/man/ldbmodify.1 Normal file
View File

@ -0,0 +1,73 @@
'\" t
.\" Title: ldbmodify
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 09/23/2020
.\" Manual: System Administration tools
.\" Source: LDB 1.1
.\" Language: English
.\"
.TH "LDBMODIFY" "1" "09/23/2020" "LDB 1\&.1" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
ldbmodify \- Modify records in a LDB database
.SH "SYNOPSIS"
.HP \w'\fBldbmodify\fR\ 'u
\fBldbmodify\fR [\-H\ LDB\-URL] [ldif\-file]
.SH "DESCRIPTION"
.PP
ldbmodify changes, adds and deletes records in a LDB database\&. The changes that should be made to the LDB database are read from the specified LDIF\-file\&. If \- is specified as the filename, input is read from stdin\&.
.PP
For now, see ldapmodify(1) for details on the LDIF file format\&.
.SH "OPTIONS"
.PP
\-H <ldb\-url>
.RS 4
LDB URL to connect to\&. See ldb(3) for details\&.
.RE
.SH "ENVIRONMENT"
.PP
LDB_URL
.RS 4
LDB URL to connect to (can be overridden by using the \-H command\-line option\&.)
.RE
.SH "VERSION"
.PP
This man page is correct for version 1\&.1 of LDB\&.
.SH "SEE ALSO"
.PP
ldb(3), ldbedit
.SH "AUTHOR"
.PP
ldb was written by
\m[blue]\fBAndrew Tridgell\fR\m[]\&\s-2\u[1]\d\s+2\&.
.PP
If you wish to report a problem or make a suggestion then please see the
\m[blue]\fB\%http://ldb.samba.org/\fR\m[]
web site for current contact and maintainer information\&.
.PP
This manpage was written by Jelmer Vernooij\&.
.SH "NOTES"
.IP " 1." 4
Andrew Tridgell
.RS 4
\%https://www.samba.org/~tridge/
.RE

81
files/man/ldbrename.1 Normal file
View File

@ -0,0 +1,81 @@
'\" t
.\" Title: ldbrename
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 09/23/2020
.\" Manual: System Administration tools
.\" Source: LDB 1.1
.\" Language: English
.\"
.TH "LDBRENAME" "1" "09/23/2020" "LDB 1\&.1" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
ldbrename \- Edit LDB databases using your favorite editor
.SH "SYNOPSIS"
.HP \w'\fBldbrename\fR\ 'u
\fBldbrename\fR [\-h] [\-o\ options] {olddn} {newdn}
.SH "DESCRIPTION"
.PP
ldbrename is a utility that allows you to rename trees in an LDB database based by DN\&. This utility takes two arguments: the original DN name of the top element and the DN to change it to\&.
.SH "OPTIONS"
.PP
\-h
.RS 4
Show list of available options\&.
.RE
.PP
\-H <ldb\-url>
.RS 4
LDB URL to connect to\&. See ldb(3) for details\&.
.RE
.PP
\-o options
.RS 4
Extra ldb options, such as modules\&.
.RE
.SH "ENVIRONMENT"
.PP
LDB_URL
.RS 4
LDB URL to connect to (can be overridden by using the \-H command\-line option\&.)
.RE
.SH "VERSION"
.PP
This man page is correct for version 1\&.1 of LDB\&.
.SH "SEE ALSO"
.PP
ldb(3), ldbmodify, ldbdel, ldif(5)
.SH "AUTHOR"
.PP
ldb was written by
\m[blue]\fBAndrew Tridgell\fR\m[]\&\s-2\u[1]\d\s+2\&.
.PP
If you wish to report a problem or make a suggestion then please see the
\m[blue]\fB\%http://ldb.samba.org/\fR\m[]
web site for current contact and maintainer information\&.
.PP
This manpage was written by Jelmer Vernooij\&.
.SH "NOTES"
.IP " 1." 4
Andrew Tridgell
.RS 4
\%https://www.samba.org/~tridge/
.RE

91
files/man/ldbsearch.1 Normal file
View File

@ -0,0 +1,91 @@
'\" t
.\" Title: ldbsearch
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
.\" Date: 09/23/2020
.\" Manual: System Administration tools
.\" Source: LDB 1.1
.\" Language: English
.\"
.TH "LDBSEARCH" "1" "09/23/2020" "LDB 1\&.1" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
ldbsearch \- Search for records in a LDB database
.SH "SYNOPSIS"
.HP \w'\fBldbsearch\fR\ 'u
\fBldbsearch\fR [\-h] [\-s\ base|one|sub] [\-b\ basedn] [\-i] [\-H\ LDB\-URL] [expression] [attributes]
.SH "DESCRIPTION"
.PP
ldbsearch searches a LDB database for records matching the specified expression (see the ldapsearch(1) manpage for a description of the expression format)\&. For each record, the specified attributes are printed\&.
.SH "OPTIONS"
.PP
\-h
.RS 4
Show list of available options\&.
.RE
.PP
\-H <ldb\-url>
.RS 4
LDB URL to connect to\&. See ldb(3) for details\&.
.RE
.PP
\-s one|sub|base
.RS 4
Search scope to use\&. One\-level, subtree or base\&.
.RE
.PP
\-i
.RS 4
Read search expressions from stdin\&.
.RE
.PP
\-b basedn
.RS 4
Specify Base DN to use\&.
.RE
.SH "ENVIRONMENT"
.PP
LDB_URL
.RS 4
LDB URL to connect to (can be overridden by using the \-H command\-line option\&.)
.RE
.SH "VERSION"
.PP
This man page is correct for version 1\&.1 of LDB\&.
.SH "SEE ALSO"
.PP
ldb(3), ldbedit(1)
.SH "AUTHOR"
.PP
ldb was written by
\m[blue]\fBAndrew Tridgell\fR\m[]\&\s-2\u[1]\d\s+2\&.
.PP
If you wish to report a problem or make a suggestion then please see the
\m[blue]\fB\%http://ldb.samba.org/\fR\m[]
web site for current contact and maintainer information\&.
.PP
This manpage was written by Jelmer Vernooij\&.
.SH "NOTES"
.IP " 1." 4
Andrew Tridgell
.RS 4
\%https://www.samba.org/~tridge/
.RE

View File

@ -0,0 +1,50 @@
--- buildtools/wafsamba/samba_autoconf.py.orig 2019-09-04 10:53:16 UTC
+++ buildtools/wafsamba/samba_autoconf.py
@@ -573,7 +573,7 @@ def library_flags(self, libs):
@conf
-def CHECK_LIB(conf, libs, mandatory=False, empty_decl=True, set_target=True, shlib=False):
+def CHECK_LIB(conf, libs, mandatory=False, empty_decl=True, set_target=True, shlib=False, msg=None):
'''check if a set of libraries exist as system libraries
returns the sublist of libs that do exist as a syslib or []
@@ -593,11 +593,29 @@ int foo()
ret.append(lib)
continue
+ if msg is None:
+ msg = 'Checking for library %s' % lib
+
(ccflags, ldflags, cpppath) = library_flags(conf, lib)
+
if shlib:
- res = conf.check(features='c cshlib', fragment=fragment, lib=lib, uselib_store=lib, cflags=ccflags, ldflags=ldflags, uselib=lib.upper(), mandatory=False)
+ res = conf.check(features='c cshlib',
+ fragment=fragment,
+ lib=lib,
+ uselib_store=lib,
+ cflags=ccflags,
+ ldflags=ldflags,
+ uselib=lib.upper(),
+ mandatory=False,
+ msg=msg)
else:
- res = conf.check(lib=lib, uselib_store=lib, cflags=ccflags, ldflags=ldflags, uselib=lib.upper(), mandatory=False)
+ res = conf.check(lib=lib,
+ uselib_store=lib,
+ cflags=ccflags,
+ ldflags=ldflags,
+ uselib=lib.upper(),
+ mandatory=False,
+ msg=msg)
if not res:
if mandatory:
@@ -944,5 +962,5 @@ def SAMBA_CHECK_UNDEFINED_SYMBOL_FLAGS(c
conf.env.undefined_ldflags = conf.ADD_LDFLAGS('-Wl,-no-undefined', testflags=True)
if (conf.env.undefined_ignore_ldflags == [] and
- conf.CHECK_LDFLAGS(['-undefined', 'dynamic_lookup'])):
+ conf.CHECK_LDFLAGS(['-undefined', 'dynamic_lookup'] + conf.env.WERROR_CFLAGS)):
conf.env.undefined_ignore_ldflags = ['-undefined', 'dynamic_lookup']

View File

@ -0,0 +1,11 @@
--- buildtools/wafsamba/samba_install.py.orig 2019-03-21 10:12:32 UTC
+++ buildtools/wafsamba/samba_install.py
@@ -115,7 +115,7 @@ def install_library(self):
inst_name = bld.make_libname(t.target)
elif self.vnum:
vnum_base = self.vnum.split('.')[0]
- install_name = bld.make_libname(target_name, version=self.vnum)
+ install_name = bld.make_libname(target_name, version=vnum_base)
install_link = bld.make_libname(target_name, version=vnum_base)
inst_name = bld.make_libname(t.target)
if not self.private_library or not t.env.SONAME_ST:

View File

@ -0,0 +1,22 @@
--- buildtools/wafsamba/wscript.orig 2017-04-28 11:57:26 UTC
+++ buildtools/wafsamba/wscript
@@ -74,12 +74,17 @@ def set_options(opt):
help=("private library directory [PREFIX/lib/%s]" % Utils.g_module.APPNAME),
action="store", dest='PRIVATELIBDIR', default=None)
+ opt.add_option('--with-openldap',
+ help='additional directory to search for OpenLDAP libs',
+ action='store', dest='ldap_open', default=None,
+ match = ['Checking for library lber', 'Checking for library ldap'])
+
opt.add_option('--with-libiconv',
help='additional directory to search for libiconv',
- action='store', dest='iconv_open', default='/usr/local',
+ action='store', dest='iconv_open', default=None,
match = ['Checking for library iconv', 'Checking for iconv_open', 'Checking for header iconv.h'])
opt.add_option('--without-gettext',
- help=("Disable use of gettext"),
+ help=("disable use of gettext"),
action="store_true", dest='disable_gettext', default=False)
gr = opt.option_group('developer options')

View File

@ -0,0 +1,13 @@
--- ldb_key_value/ldb_kv_cache.c.orig 2019-01-14 23:24:45 UTC
+++ ldb_key_value/ldb_kv_cache.c
@@ -90,7 +90,9 @@ static int ldb_schema_attribute_compare(
{
const struct ldb_schema_attribute *sa1 = (const struct ldb_schema_attribute *)p1;
const struct ldb_schema_attribute *sa2 = (const struct ldb_schema_attribute *)p2;
- return ldb_attr_cmp(sa1->name, sa2->name);
+ int res = ldb_attr_cmp(sa1->name, sa2->name);
+
+ return (res) ? res : (sa1->flags > sa2->flags) ? 1 : (sa1->flags < sa2->flags) ? -1 : 0;
}
/*

View File

@ -0,0 +1,11 @@
--- lib/replace/wscript.orig 2019-03-21 10:12:32 UTC
+++ lib/replace/wscript
@@ -119,7 +119,7 @@ def configure(conf):
conf.CHECK_HEADERS('sys/atomic.h stdatomic.h')
conf.CHECK_HEADERS('libgen.h')
- if conf.CHECK_CFLAGS('-Wno-format-truncation'):
+ if conf.CHECK_CFLAGS(['-Wno-format-truncation'] + conf.env.WERROR_CFLAGS):
conf.define('HAVE_WNO_FORMAT_TRUNCATION', '1')
if conf.CHECK_CFLAGS('-Wno-unused-function'):

31
files/patch-wscript Normal file
View File

@ -0,0 +1,31 @@
--- wscript.orig 2019-09-04 10:53:16 UTC
+++ wscript
@@ -207,7 +207,7 @@ def build(bld):
if bld.env.standalone_ldb:
if not 'PACKAGE_VERSION' in bld.env:
bld.env.PACKAGE_VERSION = VERSION
- bld.env.PKGCONFIGDIR = '${LIBDIR}/pkgconfig'
+ bld.env.PKGCONFIGDIR = '%%PKGCONFIGDIR%%'
private_library = False
else:
private_library = True
@@ -497,11 +497,6 @@ def build(bld):
deps='cmocka ldb',
install=False)
- bld.SAMBA_BINARY('ldb_match_test',
- source='tests/ldb_match_test.c',
- deps='cmocka ldb',
- install=False)
-
bld.SAMBA_BINARY('ldb_key_value_test',
source='tests/ldb_key_value_test.c',
deps='cmocka ldb ldb_tdb_err_map',
@@ -614,7 +609,6 @@ def test(ctx):
'ldb_msg_test',
'ldb_tdb_kv_ops_test',
'ldb_tdb_test',
- 'ldb_match_test',
'ldb_key_value_test',
# we currently don't run ldb_key_value_sub_txn_tdb_test as it
# tests the nested/sub transaction handling