tdb: Also build and install tdb manpages from standalone tdb.
authorJelmer Vernooij <jelmer@samba.org>
Sun, 20 Dec 2009 17:01:24 +0000 (18:01 +0100)
committerJelmer Vernooij <jelmer@ganieda.vernstok.nl>
Mon, 21 Dec 2009 22:40:12 +0000 (23:40 +0100)
docs-xml/manpages-3/tdbbackup.8.xml
docs-xml/manpages-3/tdbdump.8.xml
docs-xml/manpages-3/tdbtool.8.xml
lib/tdb/Makefile.in
lib/tdb/configure.ac
lib/tdb/include/tdb.h
lib/tdb/manpages/tdbbackup.8.xml [new file with mode: 0644]
lib/tdb/manpages/tdbdump.8.xml [new file with mode: 0644]
lib/tdb/manpages/tdbtool.8.xml [new file with mode: 0644]
lib/tdb/tdb.mk

index 5c42371ea261902192527f54bfa115c33cbe1f4c..78fe32eb8ec1299445080d5e1961b7beb74478c3 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="iso-8859-1"?>
-<!DOCTYPE refentry PUBLIC "-//Samba-Team//DTD DocBook V4.2-Based Variant V1.0//EN" "http://www.samba.org/samba/DTD/samba-doc">
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
 <refentry id="tdbbackup.8">
 
 <refmeta>
index 8e42e0862252d3cb95fef9c1fdf67329e0cf2317..90465e53e87e77320dda27ca2465e47fbc04ab4f 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="iso-8859-1"?>
-<!DOCTYPE refentry PUBLIC "-//Samba-Team//DTD DocBook V4.2-Based Variant V1.0//EN" "http://www.samba.org/samba/DTD/samba-doc">
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
 <refentry id="tdbdump.8">
 
 <refmeta>
index 042c88cdc603f74147899206a315ee3eecbaad64..9f96db277dbbec46f0e9ebc3ea9a2ff66b62c810 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="iso-8859-1"?>
-<!DOCTYPE refentry PUBLIC "-//Samba-Team//DTD DocBook V4.2-Based Variant V1.0//EN" "http://www.samba.org/samba/DTD/samba-doc">
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
 <refentry id="tdbtool.8">
 
 <refmeta>
index 93bfe37f4f2089bf2d8d65b9ac0626ddec7f09fc..3abeec3258cba4bb438a975eb1d8bf507904a52f 100644 (file)
@@ -31,18 +31,22 @@ PYTHON_CHECK_TARGET = @PYTHON_CHECK_TARGET@
 LIB_PATH_VAR = @LIB_PATH_VAR@
 tdbdir = @tdbdir@
 
+EXTRA_TARGETS = @DOC_TARGET@
+
 TDB_OBJ = @TDB_OBJ@ @LIBREPLACEOBJ@
 
 SONAMEFLAG = @SONAMEFLAG@
 VERSIONSCRIPT = @VERSIONSCRIPT@
 EXPORTSFILE = @EXPORTSFILE@
 
+XSLTPROC = @XSLTPROC@
+
 default: all
 
 include $(tdbdir)/tdb.mk
 include $(tdbdir)/rules.mk
 
-all:: showflags dirs $(PROGS) $(TDB_SOLIB) libtdb.a $(PYTHON_BUILD_TARGET)
+all:: showflags dirs $(PROGS) $(TDB_SOLIB) libtdb.a $(PYTHON_BUILD_TARGET) $(EXTRA_TARGETS)
 
 install:: all
 $(TDB_SOLIB): $(TDB_OBJ)
index 779f596e1875f69e9aa77fef797a03f558024a04..dac7bb2673df8d14c982881e6a8bc88bf465e7ce 100644 (file)
@@ -38,6 +38,13 @@ AC_ARG_ENABLE(python,
                  fi
                ])
 
+AC_PATH_PROG(XSLTPROC,xsltproc)
+DOC_TARGET=""
+if test -n "$XSLTPROC"; then
+       DOC_TARGET=doc
+fi
+AC_SUBST(DOC_TARGET)
+
 m4_include(build_macros.m4)
 BUILD_WITH_SHARED_BUILD_DIR
 
index db9ce4ad276f094c1ec421d783970f4efaabd428..c9e946a8855557a375fa755fe30b5e7b4e541e08 100644 (file)
@@ -143,7 +143,7 @@ void tdb_remove_flags(struct tdb_context *tdb, unsigned flag);
 void tdb_enable_seqnum(struct tdb_context *tdb);
 void tdb_increment_seqnum_nonblock(struct tdb_context *tdb);
 int tdb_check(struct tdb_context *tdb,
-             int (*check)(TDB_DATA key, TDB_DATA data, void *private_data),
+             int (*check) (TDB_DATA key, TDB_DATA data, void *private_data),
              void *private_data);
 
 /* Low level locking functions: use with care */
diff --git a/lib/tdb/manpages/tdbbackup.8.xml b/lib/tdb/manpages/tdbbackup.8.xml
new file mode 100644 (file)
index 0000000..5c42371
--- /dev/null
@@ -0,0 +1,136 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE refentry PUBLIC "-//Samba-Team//DTD DocBook V4.2-Based Variant V1.0//EN" "http://www.samba.org/samba/DTD/samba-doc">
+<refentry id="tdbbackup.8">
+
+<refmeta>
+       <refentrytitle>tdbbackup</refentrytitle>
+       <manvolnum>8</manvolnum>
+       <refmiscinfo class="source">Samba</refmiscinfo>
+       <refmiscinfo class="manual">System Administration tools</refmiscinfo>
+       <refmiscinfo class="version">3.6</refmiscinfo>
+</refmeta>
+
+
+<refnamediv>
+       <refname>tdbbackup</refname>
+       <refpurpose>tool for backing up and for validating the integrity of samba .tdb files</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+       <cmdsynopsis>
+               <command>tdbbackup</command>
+               <arg choice="opt">-s suffix</arg>
+               <arg choice="opt">-v</arg>
+               <arg choice="opt">-h</arg>
+       </cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+       <title>DESCRIPTION</title>
+
+       <para>This tool is part of the <citerefentry><refentrytitle>samba</refentrytitle>
+       <manvolnum>1</manvolnum></citerefentry> suite.</para>
+
+       <para><command>tdbbackup</command> is a tool that may be used to backup samba .tdb
+       files. This tool may also be used to verify the integrity of the .tdb files prior
+       to samba startup or during normal operation. If it finds file damage and it finds 
+       a prior backup the backup file will be restored. 
+       </para>
+</refsect1>
+
+
+<refsect1>
+       <title>OPTIONS</title>
+
+       <variablelist>
+
+               <varlistentry>
+               <term>-h</term>
+               <listitem><para>
+               Get help information.
+               </para></listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term>-s suffix</term>
+               <listitem><para>
+               The <command>-s</command> option allows the adminisistrator to specify a file
+               backup extension. This way it is possible to keep a history of tdb backup
+               files by using a new suffix for each backup.
+               </para> </listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term>-v</term>
+               <listitem><para>
+               The <command>-v</command> will check the database for damages (currupt data)
+               which if detected causes the backup to be restored.
+               </para></listitem>
+               </varlistentry>
+
+       </variablelist>
+</refsect1>
+
+
+<refsect1>
+       <title>COMMANDS</title>
+
+       <para><emphasis>GENERAL INFORMATION</emphasis></para>
+
+       <para>
+       The <command>tdbbackup</command> utility can safely be run at any time. It was designed so
+       that it can be used at any time to validate the integrity of tdb files, even during Samba
+       operation. Typical usage for the command will be:
+       </para>
+
+       <para>tdbbackup [-s suffix] *.tdb</para>
+
+       <para>
+       Before restarting samba the following command may be run to validate .tdb files:
+       </para>
+
+       <para>tdbbackup -v [-s suffix] *.tdb</para>
+
+       <para>
+       Samba .tdb files are stored in various locations, be sure to run backup all
+       .tdb file on the system. Important files includes:
+       </para>
+
+       <itemizedlist>
+               <listitem><para>
+               <command>secrets.tdb</command> - usual location is in the /usr/local/samba/private
+               directory, or on some systems in /etc/samba.
+               </para></listitem>
+
+               <listitem><para>
+               <command>passdb.tdb</command> - usual location is in the /usr/local/samba/private
+               directory, or on some systems in /etc/samba.
+               </para></listitem>
+
+               <listitem><para>
+               <command>*.tdb</command> located in the /usr/local/samba/var directory or on some
+               systems in the /var/cache or /var/lib/samba directories.
+               </para></listitem>
+       </itemizedlist>
+
+</refsect1>
+
+<refsect1>
+       <title>VERSION</title>
+
+       <para>This man page is correct for version 3 of the Samba suite.</para>
+</refsect1>
+
+<refsect1>
+       <title>AUTHOR</title>
+
+       <para>
+       The original Samba software and related utilities were created by Andrew Tridgell.
+       Samba is now developed by the Samba Team as an Open Source project similar to the way
+       the Linux kernel is developed.
+       </para> 
+
+       <para>The tdbbackup man page was written by John H Terpstra.</para>
+</refsect1>
+
+</refentry>
diff --git a/lib/tdb/manpages/tdbdump.8.xml b/lib/tdb/manpages/tdbdump.8.xml
new file mode 100644 (file)
index 0000000..8e42e08
--- /dev/null
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE refentry PUBLIC "-//Samba-Team//DTD DocBook V4.2-Based Variant V1.0//EN" "http://www.samba.org/samba/DTD/samba-doc">
+<refentry id="tdbdump.8">
+
+<refmeta>
+       <refentrytitle>tdbdump</refentrytitle>
+       <manvolnum>8</manvolnum>
+       <refmiscinfo class="source">Samba</refmiscinfo>
+       <refmiscinfo class="manual">System Administration tools</refmiscinfo>
+       <refmiscinfo class="version">3.6</refmiscinfo>
+</refmeta>
+
+
+<refnamediv>
+       <refname>tdbdump</refname>
+       <refpurpose>tool for printing the contents of a TDB file</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+       <cmdsynopsis>
+               <command>tdbdump</command>
+               <arg choice="req">filename</arg>
+       </cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+       <title>DESCRIPTION</title>
+
+       <para>This tool is part of the <citerefentry><refentrytitle>samba</refentrytitle>
+       <manvolnum>1</manvolnum></citerefentry> suite.</para>
+
+       <para><command>tdbdump</command> is a very simple utility that 'dumps' the 
+               contents of a TDB (Trivial DataBase) file to standard output in a 
+               human-readable format.
+       </para>
+
+       <para>This tool can be used when debugging problems with TDB files. It is 
+               intended for those who are somewhat familiar with Samba internals.
+       </para>
+</refsect1>
+
+
+<refsect1>
+       <title>VERSION</title>
+
+       <para>This man page is correct for version 3 of the Samba suite.</para>
+</refsect1>
+
+<refsect1>
+       <title>AUTHOR</title>
+
+       <para>
+       The original Samba software and related utilities were created by Andrew Tridgell.
+       Samba is now developed by the Samba Team as an Open Source project similar to the way
+       the Linux kernel is developed.
+       </para> 
+
+       <para>The tdbdump man page was written by Jelmer Vernooij.</para>
+</refsect1>
+
+</refentry>
diff --git a/lib/tdb/manpages/tdbtool.8.xml b/lib/tdb/manpages/tdbtool.8.xml
new file mode 100644 (file)
index 0000000..042c88c
--- /dev/null
@@ -0,0 +1,235 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!DOCTYPE refentry PUBLIC "-//Samba-Team//DTD DocBook V4.2-Based Variant V1.0//EN" "http://www.samba.org/samba/DTD/samba-doc">
+<refentry id="tdbtool.8">
+
+<refmeta>
+       <refentrytitle>tdbtool</refentrytitle>
+       <manvolnum>8</manvolnum>
+       <refmiscinfo class="source">Samba</refmiscinfo>
+       <refmiscinfo class="manual">System Administration tools</refmiscinfo>
+       <refmiscinfo class="version">3.6</refmiscinfo>
+</refmeta>
+
+
+<refnamediv>
+       <refname>tdbtool</refname>
+       <refpurpose>manipulate the contents TDB files</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+
+       <cmdsynopsis>
+               <command>tdbtool</command>
+       </cmdsynopsis>
+
+       <cmdsynopsis>
+               <command>tdbtool</command>
+               <arg choice="plain">
+               <replaceable>TDBFILE</replaceable>
+               </arg>
+               <arg rep="repeat" choice="opt">
+               <replaceable>COMMANDS</replaceable>
+               </arg>
+       </cmdsynopsis>
+
+</refsynopsisdiv>
+
+<refsect1>
+       <title>DESCRIPTION</title>
+
+       <para>This tool is part of the
+       <citerefentry><refentrytitle>samba</refentrytitle>
+       <manvolnum>1</manvolnum></citerefentry> suite.</para>
+
+       <para><command>tdbtool</command> a tool for displaying and
+       altering the contents of Samba TDB (Trivial DataBase) files. Each
+       of the commands listed below can be entered interactively or
+       provided on the command line.</para>
+
+</refsect1>
+
+
+<refsect1>
+       <title>COMMANDS</title>
+
+       <variablelist>
+
+               <varlistentry>
+               <term><option>create</option>
+               <replaceable>TDBFILE</replaceable></term>
+               <listitem><para>Create a new database named
+               <replaceable>TDBFILE</replaceable>.
+               </para></listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term><option>open</option>
+               <replaceable>TDBFILE</replaceable></term>
+               <listitem><para>Open an existing database named
+               <replaceable>TDBFILE</replaceable>.
+               </para></listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term><option>erase</option></term>
+               <listitem><para>Erase the current database.
+               </para></listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term><option>dump</option></term>
+               <listitem><para>Dump the current database as strings.
+               </para></listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term><option>cdump</option></term>
+               <listitem><para>Dump the current database as connection records.
+               </para></listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term><option>keys</option></term>
+               <listitem><para>Dump the current database keys as strings.
+               </para></listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term><option>hexkeys</option></term>
+               <listitem><para>Dump the current database keys as hex values.
+               </para></listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term><option>info</option></term>
+               <listitem><para>Print summary information about the
+               current database.
+               </para></listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term><option>insert</option>
+               <replaceable>KEY</replaceable>
+               <replaceable>DATA</replaceable>
+               </term>
+               <listitem><para>Insert a record into the
+               current database.
+               </para></listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term><option>move</option>
+               <replaceable>KEY</replaceable>
+               <replaceable>TDBFILE</replaceable>
+               </term>
+               <listitem><para>Move a record from the 
+               current database into <replaceable>TDBFILE</replaceable>.
+               </para></listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term><option>store</option>
+               <replaceable>KEY</replaceable>
+               <replaceable>DATA</replaceable>
+               </term>
+               <listitem><para>Store (replace) a record in the
+               current database.
+               </para></listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term><option>show</option>
+               <replaceable>KEY</replaceable>
+               </term>
+               <listitem><para>Show a record by key.
+               </para></listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term><option>delete</option>
+               <replaceable>KEY</replaceable>
+               </term>
+               <listitem><para>Delete a record by key.
+               </para></listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term><option>list</option>
+               </term>
+               <listitem><para>Print the current database hash table and free list.
+               </para></listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term><option>free</option>
+               </term>
+               <listitem><para>Print the current database and free list.
+               </para></listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term><option>!</option>
+               <replaceable>COMMAND</replaceable>
+               </term>
+               <listitem><para>Execute the given system command.
+               </para></listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term>
+               <option>first</option>
+               </term>
+               <listitem><para>Print the first record in the current database.
+               </para></listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term>
+               <option>next</option>
+               </term>
+               <listitem><para>Print the next record in the current database.
+               </para></listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term>
+               <option>check</option>
+               </term>
+               <listitem><para>Check the integrity of the current database.
+               </para></listitem>
+               </varlistentry>
+
+               <varlistentry>
+               <term>
+               <option>quit</option>
+               </term>
+               <listitem><para>Exit <command>tdbtool</command>.
+               </para></listitem>
+               </varlistentry>
+
+       </variablelist>
+</refsect1>
+
+<refsect1>
+       <title>CAVEATS</title>
+       <para>The contents of the Samba TDB files are private
+       to the implementation and should not be altered with
+       <command>tdbtool</command>.
+       </para>
+</refsect1>
+
+<refsect1>
+       <title>VERSION</title>
+       <para>This man page is correct for version 3.0.25 of the Samba suite.</para>
+</refsect1>
+
+<refsect1>
+       <title>AUTHOR</title>
+
+       <para> The original Samba software and related utilities were
+       created by Andrew Tridgell.  Samba is now developed by the
+       Samba Team as an Open Source project similar to the way the
+       Linux kernel is developed.</para>
+</refsect1>
+
+</refentry>
index 267c2d1c85644ab0691f03310afae9a35a1e8e0f..93aa89948039e6c6741d137edbbbca9efb8a0ad8 100644 (file)
@@ -51,7 +51,20 @@ tdb.$(SHLIBEXT): libtdb.$(SHLIBEXT) pytdb.o
        $(SHLD) $(SHLD_FLAGS) -o $@ pytdb.o -L. -ltdb `$(PYTHON_CONFIG) --ldflags`
 
 install:: installdirs installbin installheaders installlibs \
-                 $(PYTHON_INSTALL_TARGET)
+                 $(PYTHON_INSTALL_TARGET) installdocs
+
+doc:: manpages/tdbbackup.8 manpages/tdbdump.8 manpages/tdbtool.8
+
+.SUFFIXES: .8.xml .8
+
+.8.xml.8:
+       -test -z "$(XSLTPROC)" || $(XSLTPROC) -o $@ http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $<
+
+installdocs::
+       ${INSTALLCMD} -d $(DESTDIR)$(mandir)/man1
+       for I in manpages/*.1; do \
+               ${INSTALLCMD} -m 644 $$I $(DESTDIR)$(mandir)/man1 \
+       done
 
 install-python:: build-python
        mkdir -p $(DESTDIR)`$(PYTHON) -c "import distutils.sysconfig; print distutils.sysconfig.get_python_lib(1, prefix='$(prefix)')"`