summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--source4/build/pidl/pidl.1.xml518
-rw-r--r--source4/gtk/man/gregedit.1.xml86
-rw-r--r--source4/torture/man/gentest.1.xml158
-rw-r--r--source4/torture/man/locktest.1.xml157
-rw-r--r--source4/torture/man/masktest.1.xml139
-rw-r--r--source4/torture/man/smbtorture.1.xml172
-rw-r--r--source4/utils/man/ndrdump.1.xml83
-rw-r--r--source4/utils/man/ntlm_auth.1.xml269
8 files changed, 1582 insertions, 0 deletions
diff --git a/source4/build/pidl/pidl.1.xml b/source4/build/pidl/pidl.1.xml
new file mode 100644
index 00000000000..18ef97772b1
--- /dev/null
+++ b/source4/build/pidl/pidl.1.xml
@@ -0,0 +1,518 @@
+<?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="pidl.1">
+
+<refmeta>
+ <refentrytitle>pidl</refentrytitle>
+ <manvolnum>1</manvolnum>
+</refmeta>
+
+<refnamediv>
+ <refname>pidl</refname>
+ <refpurpose>IDL Compiler written in Perl</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <cmdsynopsis>
+ <command>pidl</command>
+ <arg choice="opt">--help</arg>
+ <arg choice="opt">--output OUTNAME</arg>
+ <arg choice="opt">--parse</arg>
+ <arg choice="opt">--dump</arg>
+ <arg choice="opt">--header</arg>
+ <arg choice="opt">--parser</arg>
+ <arg choice="opt">--server</arg>
+ <arg choice="opt">--template</arg>
+ <arg choice="opt">--eth-parser</arg>
+ <arg choice="opt">--eth-header</arg>
+ <arg choice="opt">--diff</arg>
+ <arg choice="opt">--keep</arg>
+ <arg choice="req">idlfile</arg>
+ </cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+ <title>DESCRIPTION</title>
+
+ <para>pidl is an IDL compiler written in Perl that aims to be somewhat
+ compatible with the midl compiler. IDL stands for
+ "Interface Definition Language".</para>
+
+ <para>pidl can generate stubs for DCE/RPC server code, DCE/RPC
+ client code and ethereal dissectors for DCE/RPC traffic.</para>
+
+ <para>IDL compilers like <emphasis>pidl</emphasis> take a description
+ of an interface as their input and use it to generate C
+ (though support for other languages may be added later) code that
+ can use these interfaces, pretty print data sent
+ using these interfaces, or even generate ethereal
+ dissectors that can parse data sent over the
+ wire by these interfaces. </para>
+
+ <para>pidl takes IDL files in the same format that is used by midl,
+ converts it to a .pidl file (which contains pidl's internal representation of the interface) and can then generate whatever output you need.
+ .pidl files should be used for debugging purposes only. Write your
+ interface definitions in (midl) .idl format.
+ </para>
+
+ <para>
+ The goal of pidl is to implement a IDL compiler that can be used
+ while developing the RPC subsystem in Samba (for
+ both marshalling/un-marshalling and debugging purposes).</para>
+
+</refsect1>
+
+<refsect1>
+ <title>OPTIONS</title>
+
+ <variablelist>
+ <varlistentry>
+ <term>--help</term>
+ <listitem><para>
+ Show list of available options.</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>--output OUTNAME</term>
+ <listitem><para>Write output files to OUTNAME.*, e.g.
+ OUTNAME.pidl. If --output is not used, the name of
+ the input IDL file is used without the extension and the dot
+ before the extension.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>--parse</term>
+ <listitem><para>
+ Tell pidl the files specified are (midl-style) IDL files.</para></listitem>
+ </varlistentry>
+
+
+ <varlistentry>
+ <term>--dump</term>
+ <listitem><para>
+ Convert .pidl files to (midl-style) IDL files. FIle will be named OUTNAME.idl.</para></listitem>
+ </varlistentry>
+
+
+ <varlistentry>
+ <term>--header</term>
+ <listitem><para>
+ Generate a C header file for the specified interface. File will be named OUTNAME.h.</para></listitem>
+ </varlistentry>
+
+
+ <varlistentry>
+ <term>--parser</term>
+ <listitem><para>
+ Generate a C file capable of parsing data sent using the interface.
+ File will be named OUTNAME.c.
+ </para></listitem>
+ </varlistentry>
+
+
+ <varlistentry>
+ <term>--server</term>
+ <listitem><para>
+ Generate boilerplate for the RPC server that implements
+ the interface. Generates OUTNAME_s.c</para></listitem>
+ </varlistentry>
+
+
+ <varlistentry>
+ <term>--template</term>
+ <listitem><para>
+ Generate stubs for a RPC server that implements
+ the interface. Output will be written to stdout.
+ </para></listitem>
+ </varlistentry>
+
+
+ <varlistentry>
+ <term>--eth-parser</term>
+ <listitem><para>
+ Generate an Ethereal dissector (in C) for the interface. Output will
+ be written to packet-dcerpc-OUTNAME.c.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>--eth-header</term>
+ <listitem><para>
+ Generate a header file for the Ethereal dissector. Output will
+ be written to packet-dcerpc-OUTNAME.h.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>--diff</term>
+ <listitem><para>
+ Convert an IDL file to a pidl file and then back to a
+ IDL file and see if there are any differences with the
+ original IDL file. Useful for debugging pidl.</para></listitem>
+ </varlistentry>
+
+
+ <varlistentry>
+ <term>--keep</term>
+ <listitem><para>
+ Tell pidl to keep the pidl files (used as intermediate files
+ between the IDL files and the parser/server/etc code). Useful
+ for debugging pidl.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</refsect1>
+
+<refsect1>
+ <title>SYNTAX</title>
+
+ <para>IDL files are always preprocessed using the C preprocessor.</para>
+
+ <para>Each IDL file describes exactly one interface. Interfaces
+ can contain several C-like function definitions.</para>
+
+ <para>Pretty much everything in an interface (the interface itself,
+ functions, parameters) can have attributes (or properties
+ whatever name you give them). Attributes
+ always prepend the element they apply to and are surrounded
+ by square brackets ([]). Multiple attributes
+ are separated by comma's; arguments to attributes are
+ specified between parentheses. </para>
+
+ <para>See the section COMPATIBILITY for the list of attributes that
+ pidl supports.</para>
+
+ <para>C-style comments can be used.</para>
+
+</refsect1>
+
+<refsect1>
+ <title>MIDL TYPES</title>
+
+<para>
+pidl uses slightly different types to midl by default. The following
+defines in your MS IDL may make things easier to use the same IDL on
+both platforms.
+</para>
+
+<programlisting>
+#define unistr [string] wchar_t *
+#define uint8 char
+#define uint16 short
+#define uint32 long
+#define HYPER_T hyper
+</programlisting>
+
+<para>
+ Let's look at the multiple ways you can encode an array.
+</para>
+
+<refsect2>
+ <title>CONFORMANT ARRAYS</title>
+
+ <para>
+A conformant array is one with that ends in [*] or []. The strange
+things about conformant arrays are:
+</para>
+
+<simplelist>
+ <member>they can only appear as the last element of a structure</member>
+ <member>the array size appears before the structure itself on the wire. </member>
+</simplelist>
+
+<para>
+ So, in this example:
+</para>
+
+<programlisting>
+ typedef struct {
+ long abc;
+ long count;
+ long foo;
+ [size_is(count)] long s[*];
+ } Struct1;
+</programlisting>
+
+<para>
+it appears like this:
+</para>
+
+<programlisting>
+[size_is] [abc] [count] [foo] [s...]
+</programlisting>
+
+<para>
+the first [size_is] field is the allocation size of the array, and
+occurs before the array elements and even before the structure
+alignment.
+</para>
+
+<para>
+Note that size_is() can refer to a constant, but that doesn't change
+the wire representation. It does not make the array a fixed array.
+</para>
+
+<para>
+midl.exe would write the above array as the following C header:
+</para>
+
+<programlisting>
+ typedef struct {
+ long abc;
+ long count;
+ long foo;
+ long s[1];
+ } Struct1;
+</programlisting>
+
+<para>
+pidl takes a different approach, and writes it like this:
+</para>
+
+<programlisting>
+ typedef struct {
+ long abc;
+ long count;
+ long foo;
+ long *s;
+ } Struct1;
+</programlisting>
+
+</refsect2>
+
+<refsect2>
+ <title>VARYING ARRAYS</title>
+
+
+<para>
+A varying array looks like this:
+</para>
+
+<programlisting>
+ typedef struct {
+ long abc;
+ long count;
+ long foo;
+ [size_is(count)] long *s;
+ } Struct1;
+</programlisting>
+
+<para>
+This will look like this on the wire:
+</para>
+
+<programlisting>
+[abc] [count] [foo] [PTR_s] [count] [s...]
+</programlisting>
+
+</refsect2>
+
+<refsect2>
+ <title>FIXED ARRAYS</title>
+
+<para>
+A fixed array looks like this:
+</para>
+
+<programlisting>
+ typedef struct {
+ long s[10];
+ } Struct1;
+</programlisting>
+
+<para>
+The NDR representation looks just like 10 separate long
+declarations. The array size is not encoded on the wire.
+</para>
+
+<para>
+pidl also supports "inline" arrays, which are not part of the IDL/NDR
+standard. These are declared like this:
+</para>
+
+<programlisting>
+ typedef struct {
+ uint32 foo;
+ uint32 count;
+ uint32 bar;
+ long s[count];
+ } Struct1;
+</programlisting>
+
+<para>
+This appears like this:
+</para>
+
+<programlisting>
+[foo] [count] [bar] [s...]
+</programlisting>
+
+<para>
+Fixed arrays are an extension added to support some of the strange
+embedded structures in security descriptors and spoolss.
+</para>
+
+</refsect2>
+</refsect1>
+
+<refsect1>
+ <title>COMPATIBILITY WITH MIDL</title>
+
+ <refsect2>
+ <title>Asynchronous communication</title>
+
+ <!--FIXME-->
+ </refsect2>
+
+ <refsect2>
+ <title>Typelibs (.tlb files)</title>
+
+ <!-- FIXME -->
+ </refsect2>
+
+ <refsect2>
+ <title>strings</title>
+
+ <para>Strings in pidl are a data type rather then an attribute.</para>
+ <!--FIXME-->
+ </refsect2>
+
+ <refsect2>
+ <title>Pointers</title>
+
+ <para>Pidl does not support "full" pointers in the DCE meaning of the word. However, its "unique" pointer is compatible with MIDL's full ("ptr") pointer support. </para>
+ </refsect2>
+
+ <refsect2>
+ <title>Datagram support</title>
+
+ <para>ncadg is not supported yet.</para>
+ </refsect2>
+
+<refsect2>
+ <title>Supported properties (attributes is the MIDL term)</title>
+
+ <para>
+in, out, ref, length_is, switch_is, size_is, uuid, case, default, string, unique, ptr, pointer_default, v1_enum, object, helpstring, range, local, call_as, endpoint, switch_type, progid, coclass, iid_is.
+ </para>
+
+</refsect2>
+
+<refsect2>
+ <title>PIDL Specific properties</title>
+
+<variablelist>
+ <varlistentry><term>public</term>
+ <listitem><para>
+The [public] property on a structure or union is a pidl extension that
+forces the generated pull/push functions to be non-static. This allows
+you to declare types that can be used between modules. If you don't
+specify [public] then pull/push functions for other than top-level
+functions are declared static.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>noprint</term>
+ <listitem><para>
+The [noprint] property is a pidl extension that allows you to specify
+that pidl should not generate a ndr_print_*() function for that
+structure or union. This is used when you wish to define your own
+print function that prints a structure in a nicer manner. A good
+example is the use of [noprint] on dom_sid, which allows the
+pretty-printing of SIDs.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>value</term>
+ <listitem><para>
+The [value(expression)] property is a pidl extension that allows you
+to specify the value of a field when it is put on the wire. This
+allows fields that always have a well-known value to be automatically
+filled in, thus making the API more programmer friendly. The
+expression can be any C expression, although if you refer to variables
+in the current structure you will need to dereference them with
+r->. See samr_Name as a good example.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>relative</term>
+ <listitem><para>
+The [relative] property can be supplied on a pointer. When it is used
+it declares the pointer as a spoolss style "relative" pointer, which
+means it appears on the wire as an offset within the current
+encapsulating structure. This is not part of normal IDL/NDR, but it is
+a very useful extension as it avoids the manual encoding of many
+complex structures.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>subcontext(length)</term>
+ <listitem><para>
+ Specifies that a size of <replaceable>length</replaceable>
+ bytes should be read, followed by a blob of that size,
+ which will be parsed as NDR.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>flag</term>
+ <listitem><para>
+ Specify boolean options, mostly used for
+ low-level NDR options. Several options
+ can be specified using the | character.
+ Note that flags are inherited by substructures!
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>nodiscriminant</term>
+ <listitem><para>
+The [nodiscriminant] property on a union means that the usual uint16
+discriminent field at the start of the union on the wire is
+omitted. This is not normally allowed in IDL/NDR, but is used for some
+spoolss structures.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>align</term>
+ <listitem><para>
+ Force the alignment of the field this attribute is placed
+ on to the number of bytes specified.
+ </para></listitem>
+ </varlistentry>
+</variablelist>
+</refsect2>
+
+<refsect2>
+ <title>Unsupported MIDL properties</title>
+
+<para>aggregatable, appobject, async_uuid, bindable, control, cpp_quote, defaultbind, defaultcollelem, defaultvalue, defaultvtable, dispinterface, displaybind, dual, entry, first_is, helpcontext, helpfile, helpstringcontext, helpstringdll, hidden, idl_module, idl_quote, id, immediatebind, importlib, import, include, includelib, last_is, lcid, licensed, max_is, module, ms_union, no_injected_text, nonbrowsable, noncreatable, nonextensible, odl, oleautomation, optional, pragma, propget, propputref, propput, readonly, requestedit, restricted, retval, source, transmit_as, uidefault, usesgetlasterror, vararg, vi_progid, wire_marshal. </para>
+
+</refsect2>
+
+</refsect1>
+
+<refsect1>
+ <title>VERSION</title>
+
+ <para>This man page is correct for version 4.0 of the Samba suite.</para>
+</refsect1>
+
+<refsect1>
+ <title>SEE ALSO</title>
+
+ <para><ulink url="http://msdn.microsoft.com/library/en-us/rpc/rpc/field_attributes.asp">Field Attributes [Remote Procedure Call]</ulink>, ethereal</para>
+
+</refsect1>
+
+<refsect1>
+ <title>AUTHOR</title>
+
+ &man.credits.samba;
+
+ <para>pidl was written by Andrew Tridgell, Stefan Metzmacher, Tim
+ Potter and Jelmer Vernooij. </para>
+
+ <para>This manpage was written by Andrew Tridgell and Jelmer Vernooij. </para>
+
+</refsect1>
+
+</refentry>
diff --git a/source4/gtk/man/gregedit.1.xml b/source4/gtk/man/gregedit.1.xml
new file mode 100644
index 00000000000..c89a7df520f
--- /dev/null
+++ b/source4/gtk/man/gregedit.1.xml
@@ -0,0 +1,86 @@
+<?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="gregedit.1">
+
+<refmeta>
+ <refentrytitle>gregedit</refentrytitle>
+ <manvolnum>1</manvolnum>
+</refmeta>
+
+
+<refnamediv>
+ <refname>gregedit</refname>
+ <refpurpose>Windows registry file viewer for GTK+</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <cmdsynopsis>
+ <command>gregedit</command>
+ <arg choice="opt">--help</arg>
+ <arg choice="opt">--backend=BACKEND</arg>
+ <arg choice="opt">--credentials=CREDENTIALS</arg>
+ <arg choice="opt">location</arg>
+ </cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+ <title>DESCRIPTION</title>
+
+ <para>gregedit is a GTK+ frontend to the Windows registry file support
+ in Samba4. It currently supports NT4 file, 9x file, gconf, remote
+ Windows registries and a file system backend.
+ </para>
+
+ <para>gregedit tries to imitate the Windows regedit.exe program as much
+ as possible.</para>
+
+</refsect1>
+
+
+<refsect1>
+ <title>OPTIONS</title>
+
+ <variablelist>
+ <varlistentry>
+ <term>--help</term>
+ <listitem><para>
+ Show list of available options.</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>--backend BACKEND</term>
+ <listitem><para>Name of backend to load. Possible values are:
+ w95, nt4, gconf, dir and rpc. The default is <emphasis>dir</emphasis>.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>--credentials=CREDENTIALS</term>
+ <listitem><para>
+ Credentials to use, if any. Password should be separated from user name by a percent sign.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</refsect1>
+
+&man.registry.backends;
+
+<refsect1>
+ <title>VERSION</title>
+
+ <para>This man page is correct for version 4.0 of the Samba suite.</para>
+</refsect1>
+
+<refsect1>
+ <title>SEE ALSO</title>
+
+</refsect1>
+
+<refsect1>
+ <title>AUTHOR</title>
+
+ <para>This manpage and gregedit were written by Jelmer Vernooij. </para>
+
+</refsect1>
+
+</refentry>
diff --git a/source4/torture/man/gentest.1.xml b/source4/torture/man/gentest.1.xml
new file mode 100644
index 00000000000..377d2f2e967
--- /dev/null
+++ b/source4/torture/man/gentest.1.xml
@@ -0,0 +1,158 @@
+<?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="gentest.1">
+
+<refmeta>
+ <refentrytitle>gentest</refentrytitle>
+ <manvolnum>1</manvolnum>
+</refmeta>
+
+
+<refnamediv>
+ <refname>gentest</refname>
+ <refpurpose>Run random generic SMB operations against two SMB servers
+ and show the differences in behavior</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <cmdsynopsis>
+ <command>gentest</command>
+ <arg choice="req">//server1/share1</arg>
+ <arg choice="req">//server2/share2</arg>
+ <arg choice="req">-U user%pass</arg>
+ <arg choice="req">-U user%pass</arg>
+ <arg choice="opt">-s seed</arg>
+ <arg choice="opt">-o numops</arg>
+ <arg choice="opt">-a</arg>
+ <arg choice="opt">-A</arg>
+ <arg choice="opt">-i FILE</arg>
+ <arg choice="opt">-O</arg>
+ <arg choice="opt">-S FILE</arg>
+ <arg choice="opt">-L</arg>
+ <arg choice="opt">-F</arg>
+ <arg choice="opt">-C</arg>
+ <arg choice="opt">-X</arg>
+ </cmdsynopsis>
+
+</refsynopsisdiv>
+
+<refsect1>
+ <title>DESCRIPTION</title>
+
+ <para><application>gentest</application> is a utility for
+ detecting differences in behaviour between SMB servers.
+ It will run a random set of generic operations against
+ <parameter>//server1/share1</parameter> and then the same
+ random set against <parameter>//server2/share2</parameter>
+ and display the differences in the responses it gets.
+ </para>
+
+ <para>
+ This utility is used by the Samba team to find differences in
+ behaviour between Samba and Windows servers.
+ </para>
+</refsect1>
+
+
+<refsect1>
+ <title>OPTIONS</title>
+
+ <variablelist>
+ <varlistentry>
+ <term>-U user%pass</term>
+ <listitem><para>
+ Specify the user and password to use when logging on
+ on the shares. This parameter is mandatory and has to
+ be specified twice.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-s seed</term>
+ <listitem><para>
+ Seed the random number generator with the specified value.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-o numops</term>
+ <listitem><para>Set the number of operations to perform.</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-a</term>
+ <listitem><para>Print the operations that are performed. </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-A</term>
+ <listitem><para>Backtrack to find minimal number of operations
+ required to make the response to a certain call differ.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-i FILE</term>
+ <listitem><para>
+ Specify a file containing the names of fields that
+ have to be ignored (such as time fields). See
+ below for a description of the file format.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-O</term>
+ <listitem><para>Enable oplocks.</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-S FILE</term>
+ <listitem><para>Set preset seeds file. The default is <filename>gentest_seeds.dat</filename>.</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-L</term>
+ <listitem><para>Use preset seeds</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-F</term>
+ <listitem><para>Fast reconnect (just close files)</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-C</term>
+ <listitem><para>Continuous analysis mode</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-X</term>
+ <listitem><para>Analyse even when the test succeeded.</para></listitem>
+ </varlistentry>
+ </variablelist>
+</refsect1>
+
+<refsect1>
+ <title>VERSION</title>
+
+ <para>This man page is correct for version 4.0 of the Samba suite.</para>
+</refsect1>
+
+<refsect1>
+ <title>SEE ALSO</title>
+
+ <para>Samba</para>
+
+</refsect1>
+
+<refsect1>
+ <title>AUTHOR</title>
+
+ <para>gentest was written by Andrew Tridgell.</para>
+
+ <para>This manpage was written by Jelmer Vernooij.</para>
+
+</refsect1>
+
+</refentry>
diff --git a/source4/torture/man/locktest.1.xml b/source4/torture/man/locktest.1.xml
new file mode 100644
index 00000000000..5b386fdeb24
--- /dev/null
+++ b/source4/torture/man/locktest.1.xml
@@ -0,0 +1,157 @@
+<?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="locktest.1">
+
+<refmeta>
+ <refentrytitle>locktest</refentrytitle>
+ <manvolnum>1</manvolnum>
+</refmeta>
+
+
+<refnamediv>
+ <refname>locktest</refname>
+ <refpurpose>Find differences in locking between two SMB servers</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <cmdsynopsis>
+ <command>locktest</command>
+ <arg choice="req">//server1/share1</arg>
+ <arg choice="req">//server2/share2</arg>
+ <arg choice="opt">-U user%pass</arg>
+ <arg choice="opt">-U user%pass</arg>
+ <arg choice="opt">-s seed</arg>
+ <arg choice="opt">-o numops</arg>
+ <arg choice="opt">-a</arg>
+ <arg choice="opt">-O</arg>
+ <arg choice="opt">-E</arg>
+ <arg choice="opt">-Z</arg>
+ <arg choice="opt">-R range</arg>
+ <arg choice="opt">-B base</arg>
+ <arg choice="opt">-M min</arg>
+ </cmdsynopsis>
+
+</refsynopsisdiv>
+
+<refsect1>
+ <title>DESCRIPTION</title>
+
+ <para><application>locktest</application> is a utility for
+ detecting differences in behaviour in locking between SMB servers.
+ It will run a random set of locking operations against
+ <parameter>//server1/share1</parameter> and then the same
+ random set against <parameter>//server2/share2</parameter>
+ and display the differences in the responses it gets.
+ </para>
+
+ <para>
+ This utility is used by the Samba team to find differences in
+ behaviour between Samba and Windows servers.
+ </para>
+</refsect1>
+
+
+<refsect1>
+ <title>OPTIONS</title>
+
+ <variablelist>
+ <varlistentry>
+ <term>-U user%pass</term>
+ <listitem><para>
+ Specify the user and password to use when logging on
+ on the shares. This parameter can be specified twice
+ (once for the first server, once for the second).
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-s seed</term>
+ <listitem><para>
+ Seed the random number generator with the specified value.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-o numops</term>
+ <listitem><para>Set the number of operations to perform.</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-a</term>
+ <listitem><para>Print the operations that are performed. </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-A</term>
+ <listitem><para>Backtrack to find minimal number of operations
+ required to make the response to a certain call differ.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-O</term>
+ <listitem><para>Enable oplocks.</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-u</term>
+ <listitem><para>Hide unlock fails.</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-E</term>
+ <listitem><para>enable exact error code checking</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-Z</term>
+ <listitem><para>enable the zero/zero lock</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-R range</term>
+ <listitem><para>set lock range</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-B base</term>
+ <listitem><para>set lock base</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-M min</term>
+ <listitem><para>set min lock length</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-k</term>
+ <listitem><para>Use kerberos</para></listitem>
+ </varlistentry>
+ </variablelist>
+</refsect1>
+
+<refsect1>
+ <title>VERSION</title>
+
+ <para>This man page is correct for version 4.0 of the Samba suite.</para>
+</refsect1>
+
+<refsect1>
+ <title>SEE ALSO</title>
+
+ <para>Samba</para>
+
+</refsect1>
+
+<refsect1>
+ <title>AUTHOR</title>
+
+ &man.credits.samba;
+
+ <para>locktest was written by Andrew Tridgell.</para>
+
+ <para>This manpage was written by Jelmer Vernooij.</para>
+
+</refsect1>
+
+</refentry>
diff --git a/source4/torture/man/masktest.1.xml b/source4/torture/man/masktest.1.xml
new file mode 100644
index 00000000000..3dad70bb043
--- /dev/null
+++ b/source4/torture/man/masktest.1.xml
@@ -0,0 +1,139 @@
+<?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="masktest.1">
+
+<refmeta>
+ <refentrytitle>masktest</refentrytitle>
+ <manvolnum>1</manvolnum>
+</refmeta>
+
+
+<refnamediv>
+ <refname>masktest</refname>
+ <refpurpose>Find differences in wildcard matching between
+ Samba's implementation and that of a remote server.</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <cmdsynopsis>
+ <command>masktest</command>
+ <arg choice="req">//server/share</arg>
+ <arg choice="opt">-U user%pass</arg>
+ <arg choice="opt">-d debuglevel</arg>
+ <arg choice="opt">-W workgroup</arg>
+ <arg choice="opt">-n numloops</arg>
+ <arg choice="opt">-s seed</arg>
+ <arg choice="opt">-a</arg>
+ <arg choice="opt">-E</arg>
+ <arg choice="opt">-M max protocol</arg>
+ <arg choice="opt">-f filechars</arg>
+ <arg choice="opt">-m maskchars</arg>
+ <arg choice="opt">-v</arg>
+ </cmdsynopsis>
+
+</refsynopsisdiv>
+
+<refsect1>
+ <title>DESCRIPTION</title>
+
+ <para><application>masktest</application> is a utility for
+ detecting differences in behaviour between Samba's
+ own implementation and that of a remote server.
+ It will run generate random filenames/masks and
+ check if these match the same files they do on the remote file as
+ they do on the local server. It will display any differences it finds.
+ </para>
+
+ <para>
+ This utility is used by the Samba team to find differences in
+ behaviour between Samba and Windows servers.
+ </para>
+</refsect1>
+
+
+<refsect1>
+ <title>OPTIONS</title>
+
+ <variablelist>
+ <varlistentry>
+ <term>-U user%pass</term>
+ <listitem><para>
+ Specify the user and password to use when logging on
+ on the shares. This parameter can be specified twice
+ (once for the first server, once for the second).
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-s seed</term>
+ <listitem><para>
+ Seed the random number generator with the specified value.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-n numops</term>
+ <listitem><para>Set the number of operations to perform.</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-a</term>
+ <listitem><para>Print the operations that are performed. </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-M max_protocol</term>
+ <listitem><para>
+ Maximum protocol to use.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-f</term>
+ <listitem><para>Specify characters that can be used
+ when generating file names. Default: abcdefghijklm.</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-E</term>
+ <listitem><para>Abort when difference in behaviour is found.</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-m maskchars</term>
+ <listitem><para>Specify characters used for wildcards.</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>-v</term>
+ <listitem><para>Be verbose</para></listitem>
+ </varlistentry>
+
+ </variablelist>
+</refsect1>
+
+<refsect1>
+ <title>VERSION</title>
+
+ <para>This man page is correct for version 4.0 of the Samba suite.</para>
+</refsect1>
+
+<refsect1>
+ <title>SEE ALSO</title>
+
+ <para>Samba</para>
+
+</refsect1>
+
+<refsect1>
+ <title>AUTHOR</title>
+
+ &man.credits.samba;
+
+ <para>masktest was written by Andrew Tridgell.</para>
+
+ <para>This manpage was written by Jelmer Vernooij.</para>
+
+</refsect1>
+
+</refentry>
diff --git a/source4/torture/man/smbtorture.1.xml b/source4/torture/man/smbtorture.1.xml
new file mode 100644
index 00000000000..1c0ac9485f5
--- /dev/null
+++ b/source4/torture/man/smbtorture.1.xml
@@ -0,0 +1,172 @@
+<?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="smbtorture.1">
+
+<refmeta>
+ <refentrytitle>smbtorture</refentrytitle>
+ <manvolnum>1</manvolnum>
+</refmeta>
+
+
+<refnamediv>
+ <refname>smbtorture</refname>
+ <refpurpose>Run a series of tests against a SMB server</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <cmdsynopsis>
+ <command>smbtorture</command>
+ </cmdsynopsis>
+
+ <cmdsynopsis>
+ <command>smbtorture</command>
+ <arg choice="req">//server/share</arg>
+ <arg choice="opt">-d debuglevel</arg>
+ <arg choice="opt">-U user%pass</arg>
+ <arg choice="opt">-k</arg>
+ <arg choice="opt">-N numprocs</arg>
+ <arg choice="opt">-n netbios_name</arg>
+ <arg choice="opt">-W workgroup</arg>
+ <arg choice="opt">-o num_operations</arg>
+ <arg choice="opt">-e num files(entries)</arg>
+ <arg choice="opt">-O socket_options</arg>
+ <arg choice="opt">-m maximum_protocol</arg>
+ <arg choice="opt">-L</arg>
+ <arg choice="opt">-c CLIENT.TXT</arg>
+ <arg choice="opt">-t timelimit</arg>
+ <arg choice="opt">-C filename</arg>
+ <arg choice="opt">-A</arg>
+ <arg choice="opt">-p port</arg>
+ <arg choice="opt">-s seed</arg>
+ <arg choice="opt">-f max_failures</arg>
+ <arg choice="opt">-X</arg>
+ TEST1 TEST2 ...
+ </cmdsynopsis>
+
+</refsynopsisdiv>
+
+<refsect1>
+ <title>DESCRIPTION</title>
+
+ <para>smbtorture is a testsuite that runs several tests
+ against a SMB server. All tests are known to succeed
+ against a Windows 2003 server (?). Smbtorture's primary
+ goal is finding differences in implementations of the SMB protocol
+ and testing SMB servers.
+ </para>
+
+ <para>Any number of tests can be specified
+ on the command-line. If no tests are specified, all tests
+ are run. </para>
+
+ <para>If no arguments are specified at all, all available options
+ and tests are listed.</para>
+
+</refsect1>
+
+
+<refsect1>
+ <title>OPTIONS</title>
+
+ <variablelist>
+ <varlistentry><term>-d debuglevel</term>
+ <listitem><para>Use the specified Samba debug level. A higher debug level
+ means more output.</para></listitem>
+ </varlistentry>
+ <varlistentry><term>-U user%pass</term>
+ <listitem><para>Use the specified username/password combination when logging in to a remote server.</para></listitem>
+ </varlistentry>
+ <varlistentry><term>-k</term>
+ <listitem><para>Use kerberos when authenticating.</para></listitem>
+ </varlistentry>
+ <varlistentry><term>-W workgroup</term>
+ <listitem><para>Use specified name as our workgroup name.</para></listitem>
+ </varlistentry>
+ <varlistentry><term>-n netbios_name</term>
+ <listitem><para>Use specified name as our NetBIOS name.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>-O socket_options</term>
+ <listitem><para>Use specified socket options, equivalent of the smb.conf option <quote>socket options</quote>. See the smb.conf(5) manpage for details.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>-m max_protocol</term>
+ <listitem><para>Specify the maximum SMB dialect that should be used. Possible values are: CORE, COREPLUS, LANMAN1, LANMAN2, NT1</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>-s seed</term>
+ <listitem><para>Initialize the randomizer using <replaceable>seed</replaceable> as seed.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>-L</term>
+ <listitem><para>Use oplocks.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>-X</term>
+ <listitem><para>Enable dangerous tests. Use with care! This might crash your server...</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>-t timelimit</term>
+ <listitem><para>Specify the NBENCH time limit in seconds. Defaults to 600.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>-p ports</term>
+ <listitem><para>Specify ports to connect to.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>-c file</term>
+ <listitem><para>Read NBENCH commands from <replaceable>file</replaceable> instead of from CLIENT.TXT.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>-A</term>
+ <listitem><para>Show not just OK or FAILED but more detailed
+ output. Used only by DENY test at the moment.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>-C filename</term>
+ <listitem><para>Load a list of UNC names from the specified filename. Smbtorture instances will connect to a random host from this list.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>-N numprocs</term>
+ <listitem><para>Specify number of smbtorture processes to launch.</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>-o num_operations</term>
+ <listitem><para>Number of times some operations should be tried before assuming they're output is consistent (default:100).</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>-e num_files</term>
+ <listitem><para>Number of entries to use in certain tests (such as creating X files) (default: 1000).</para></listitem>
+ </varlistentry>
+
+ <varlistentry><term>-f max_failures</term>
+ <listitem><para>Number of failures before aborting a test (default: 1).</para></listitem>
+ </varlistentry>
+ </variablelist>
+</refsect1>
+
+<refsect1>
+ <title>VERSION</title>
+
+ <para>This man page is correct for version 4.0 of the Samba suite.</para>
+</refsect1>
+
+<refsect1>
+ <title>SEE ALSO</title>
+
+ <para>Samba</para>
+
+</refsect1>
+
+<refsect1>
+ <title>AUTHOR</title>
+
+ &man.credits.samba;
+
+ <para>smbtorture was written by Andrew Tridgell.</para>
+
+ <para>This manpage was written by Jelmer Vernooij.</para>
+
+</refsect1>
+
+</refentry>
diff --git a/source4/utils/man/ndrdump.1.xml b/source4/utils/man/ndrdump.1.xml
new file mode 100644
index 00000000000..55ac95491a6
--- /dev/null
+++ b/source4/utils/man/ndrdump.1.xml
@@ -0,0 +1,83 @@
+<?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="ndrdump.1">
+
+<refmeta>
+ <refentrytitle>ndrdump</refentrytitle>
+ <manvolnum>1</manvolnum>
+</refmeta>
+
+
+<refnamediv>
+ <refname>ndrdump</refname>
+ <refpurpose>DCE/RPC Packet Parser and Dumper</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <cmdsynopsis>
+ <command>ndrdump</command>
+ <arg choice="opt">-c context</arg>
+ <arg choice="req">pipe</arg>
+ <arg choice="req">function</arg>
+ <arg choice="req">in|out</arg>
+ <arg choice="req">filename</arg>
+ </cmdsynopsis>
+ <cmdsynopsis>
+ <command>ndrdump</command>
+ <arg choice="opt">pipe</arg>
+ </cmdsynopsis>
+ <cmdsynopsis>
+ <command>ndrdump</command>
+ </cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+ <title>DESCRIPTION</title>
+
+ <para>ndrdump tries to parse the specified <replaceable>filename</replaceable>
+ using Samba's parser for the specified pipe and function. The
+ third argument should be
+ either <emphasis>in</emphasis> or <emphasis>out</emphasis>, depending
+ on whether the data should be parsed as a request or a reply.</para>
+
+ <para>Running ndrdump without arguments will list the pipes for which
+ parsers are available.</para>
+
+ <para>Running ndrdump with one argument will list the functions that
+ Samba can parse for the specified pipe.</para>
+
+ <para>The primary function of ndrdump is debugging Samba's internal
+ DCE/RPC parsing functions. The file being parsed is usually
+ one exported by ethereal's <quote>Export selected packet bytes</quote>
+ function.</para>
+
+ <para>The context argument can be used to load context data from the request
+ packet when parsing reply packets (such as array lengths).</para>
+
+</refsect1>
+
+<refsect1>
+ <title>VERSION</title>
+
+ <para>This man page is correct for version 4.0 of the Samba suite.</para>
+</refsect1>
+
+<refsect1>
+ <title>SEE ALSO</title>
+
+ <para>ethereal, pidl</para>
+
+</refsect1>
+
+<refsect1>
+ <title>AUTHOR</title>
+
+ &man.credits.samba;
+
+ <para>ndrdump was written by Andrew Tridgell. </para>
+
+ <para>This manpage was written by Jelmer Vernooij. </para>
+
+</refsect1>
+
+</refentry>
diff --git a/source4/utils/man/ntlm_auth.1.xml b/source4/utils/man/ntlm_auth.1.xml
new file mode 100644
index 00000000000..1677500112d
--- /dev/null
+++ b/source4/utils/man/ntlm_auth.1.xml
@@ -0,0 +1,269 @@
+<?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="ntlm-auth.1">
+
+<refmeta>
+ <refentrytitle>ntlm_auth</refentrytitle>
+ <manvolnum>1</manvolnum>
+</refmeta>
+
+
+<refnamediv>
+ <refname>ntlm_auth</refname>
+ <refpurpose>tool to allow external access to Winbind's NTLM authentication function</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <cmdsynopsis>
+ <command>ntlm_auth</command>
+ <arg choice="opt">-d debuglevel</arg>
+ <arg choice="opt">-l logdir</arg>
+ <arg choice="opt">-s &lt;smb config file&gt;</arg>
+ </cmdsynopsis>
+</refsynopsisdiv>
+
+<refsect1>
+ <title>DESCRIPTION</title>
+
+ <para>This tool is part of the <citerefentry><refentrytitle>samba</refentrytitle>
+ <manvolnum>7</manvolnum></citerefentry> suite.</para>
+
+ <para><command>ntlm_auth</command> is a helper utility that authenticates
+ users using NT/LM authentication. It returns 0 if the users is authenticated
+ successfully and 1 if access was denied. ntlm_auth uses winbind to access
+ the user and authentication data for a domain. This utility
+ is only indended to be used by other programs (currently squid).
+ </para>
+</refsect1>
+
+<refsect1>
+ <title>OPERATIONAL REQUIREMENTS</title>
+
+ <para>
+ The <citerefentry><refentrytitle>winbindd</refentrytitle>
+ <manvolnum>8</manvolnum></citerefentry> daemon must be operational
+ for many of these commands to function.</para>
+
+ <para>Some of these commands also require access to the directory
+ <filename>winbindd_privileged</filename> in
+ <filename>$LOCKDIR</filename>. This should be done either by running
+ this command as root or providing group access
+ to the <filename>winbindd_privileged</filename> directory. For
+ security reasons, this directory should not be world-accessable. </para>
+
+</refsect1>
+
+
+<refsect1>
+ <title>OPTIONS</title>
+
+ <variablelist>
+ <varlistentry>
+ <term>--helper-protocol=PROTO</term>
+ <listitem><para>
+ Operate as a stdio-based helper. Valid helper protocols are:
+ </para>
+ <variablelist>
+ <varlistentry>
+ <term>squid-2.4-basic</term>
+ <listitem><para>
+ Server-side helper for use with Squid 2.4's basic (plaintext)
+ authentication. </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>squid-2.5-basic</term>
+ <listitem><para>
+ Server-side helper for use with Squid 2.5's basic (plaintext)
+ authentication. </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>squid-2.5-ntlmssp</term>
+ <listitem><para>
+ Server-side helper for use with Squid 2.5's NTLMSSP
+ authentication. </para>
+ <para>Requires access to the directory
+ <filename>winbindd_privileged</filename> in
+ <filename>$LOCKDIR</filename>. The protocol used is
+ described here: <ulink
+ url="http://devel.squid-cache.org/ntlm/squid_helper_protocol.html">http://devel.squid-cache.org/ntlm/squid_helper_protocol.html</ulink>
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>ntlmssp-client-1</term>
+ <listitem><para>
+ Cleint-side helper for use with arbitary external
+ programs that may wish to use Samba's NTLMSSP
+ authentication knowlege. </para>
+ <para>This helper is a client, and as such may be run by any
+ user. The protocol used is
+ effectivly the reverse of the previous protocol.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>gss-spnego</term>
+ <listitem><para>
+ Server-side helper that implements GSS-SPNEGO. This
+ uses a protocol that is almost the same as
+ <command>squid-2.5-ntlmssp</command>, but has some
+ subtle differences that are undocumented outside the
+ source at this stage.
+ </para>
+ <para>Requires access to the directory
+ <filename>winbindd_privileged</filename> in
+ <filename>$LOCKDIR</filename>.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>gss-spnego-client</term>
+ <listitem><para>
+ Client-side helper that implements GSS-SPNEGO. This
+ also uses a protocol similar to the above helpers, but
+ is currently undocumented.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>--username=USERNAME</term>
+ <listitem><para>
+ Specify username of user to authenticate
+ </para></listitem>
+
+ </varlistentry>
+
+ <varlistentry>
+ <term>--domain=DOMAIN</term>
+ <listitem><para>
+ Specify domain of user to authenticate
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>--workstation=WORKSTATION</term>
+ <listitem><para>
+ Specify the workstation the user authenticated from
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>--challenge=STRING</term>
+ <listitem><para>NTLM challenge (in HEXADECIMAL)</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>--lm-response=RESPONSE</term>
+ <listitem><para>LM Response to the challenge (in HEXADECIMAL)</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>--nt-response=RESPONSE</term>
+ <listitem><para>NT or NTLMv2 Response to the challenge (in HEXADECIMAL)</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>--password=PASSWORD</term>
+ <listitem><para>User's plaintext password</para><para>If
+ not specified on the command line, this is prompted for when
+ required. </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>--request-lm-key</term>
+ <listitem><para>Retreive LM session key</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>--request-nt-key</term>
+ <listitem><para>Request NT key</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>--diagnostics</term>
+ <listitem><para>Perform Diagnostics on the authentication
+ chain. Uses the password from <command>--password</command>
+ or prompts for one.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>--require-membership-of={SID|Name}</term>
+ <listitem><para>Require that a user be a member of specified
+ group (either name or SID) for authentication to succeed.</para>
+ </listitem>
+ </varlistentry>
+
+ &popt.common.samba;
+ &stdarg.help;
+
+ </variablelist>
+</refsect1>
+
+<refsect1>
+ <title>EXAMPLE SETUP</title>
+
+ <para>To setup ntlm_auth for use by squid 2.5, with both basic and
+ NTLMSSP authentication, the following
+ should be placed in the <filename>squid.conf</filename> file.
+<programlisting>
+auth_param ntlm program ntlm_auth --helper-protocol=squid-2.5-ntlmssp
+auth_param basic program ntlm_auth --helper-protocol=squid-2.5-basic
+auth_param basic children 5
+auth_param basic realm Squid proxy-caching web server
+auth_param basic credentialsttl 2 hours
+</programlisting></para>
+
+<note><para>This example assumes that ntlm_auth has been installed into your
+ path, and that the group permissions on
+ <filename>winbindd_privileged</filename> are as described above.</para></note>
+
+ <para>To setup ntlm_auth for use by squid 2.5 with group limitation in addition to the above
+ example, the following should be added to the <filename>squid.conf</filename> file.
+<programlisting>
+auth_param ntlm program ntlm_auth --helper-protocol=squid-2.5-ntlmssp --require-membership-of='WORKGROUP\Domain Users'
+auth_param basic program ntlm_auth --helper-protocol=squid-2.5-basic --require-membership-of='WORKGROUP\Domain Users'
+</programlisting></para>
+
+</refsect1>
+
+<refsect1>
+ <title>TROUBLESHOOTING</title>
+
+ <para>If you're experiencing problems with authenticating Internet Explorer running
+ under MS Windows 9X or Millenium Edition against ntlm_auth's NTLMSSP authentication
+ helper (--helper-protocol=squid-2.5-ntlmssp), then please read
+ <ulink url="http://support.microsoft.com/support/kb/articles/Q239/8/69.ASP">
+ the Microsoft Knowledge Base article #239869 and follow instructions described there</ulink>.
+ </para>
+</refsect1>
+
+<refsect1>
+ <title>VERSION</title>
+
+ <para>This man page is correct for version 3.0 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 ntlm_auth manpage was written by Jelmer Vernooij and
+ Andrew Bartlett.</para>
+</refsect1>
+
+</refentry>