summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/docbook/devdoc/dev-doc.sgml2
-rw-r--r--docs/docbook/devdoc/printing.sgml14
-rw-r--r--docs/docbook/devdoc/wins.sgml79
3 files changed, 88 insertions, 7 deletions
diff --git a/docs/docbook/devdoc/dev-doc.sgml b/docs/docbook/devdoc/dev-doc.sgml
index 965d7a1ea8..5191ddcb93 100644
--- a/docs/docbook/devdoc/dev-doc.sgml
+++ b/docs/docbook/devdoc/dev-doc.sgml
@@ -9,6 +9,7 @@
<!ENTITY Tracing SYSTEM "Tracing.sgml">
<!ENTITY cifsntdomain SYSTEM "cifsntdomain.sgml">
<!ENTITY printing SYSTEM "printing.sgml">
+<!ENTITY wins SYSTEM "wins.sgml">
]>
<book id="Samba-Developer-Documentation">
@@ -60,5 +61,6 @@ url="http://www.fsf.org/licenses/gpl.txt">http://www.fsf.org/licenses/gpl.txt</u
&Tracing;
&cifsntdomain;
&printing;
+&wins;
</book>
diff --git a/docs/docbook/devdoc/printing.sgml b/docs/docbook/devdoc/printing.sgml
index c95d5460b7..8259fead5f 100644
--- a/docs/docbook/devdoc/printing.sgml
+++ b/docs/docbook/devdoc/printing.sgml
@@ -23,7 +23,7 @@ of certain features of Windows client printing.
<sect1>
<title>
-Printing Interface to Various Backends
+Printing Interface to Various Back ends
</title>
<para>
@@ -39,11 +39,11 @@ in <filename>printing.h</filename>.
<listitem><para>delete a job from the queue</para></listitem>
<listitem><para>pause a job in the print queue</para></listitem>
<listitem><para>result a paused print job in the queue</para></listitem>
- <listitem><para>submit a jobn to the print queue</para></listitem>
+ <listitem><para>submit a job to the print queue</para></listitem>
</itemizedlist>
<para>
-Currently there are only two printing backend implementations
+Currently there are only two printing back end implementations
defined.
</para>
@@ -75,7 +75,7 @@ queue contents displayed to clients will be diminished as well.
</para>
<para>
-The list of currently opened print queue TDB's can eb found
+The list of currently opened print queue TDB's can be found
be examining the list of tdb_print_db structures ( see print_db_head
in printing.c ). A queue TDB is opened using the wrapper function
printing.c:get_print_db_byname(). The function ensures that smbd
@@ -125,7 +125,7 @@ the id reported by lpq.
<para>
In order to match a 32-bit Windows jobid onto a 16-bit lanman print job
-id, smbd uses an in memory TDB to match the former to a number approriate
+id, smbd uses an in memory TDB to match the former to a number appropriate
for old lanman clients.
</para>
@@ -180,8 +180,8 @@ clients and not the actual listing from the "lpq command".
The NT_DEVICEMODE stored as part of the printjob structure is used to
store a pointer to a non-default DeviceMode associated with the print
job. The pointer will be non-null when the client included a Device
-Mode in the OpePrinterEx() call and subsequently submitted a job for
-printing on that sam handle. If the client did not include a Device
+Mode in the OpenPrinterEx() call and subsequently submitted a job for
+printing on that same handle. If the client did not include a Device
Mode in the OpenPrinterEx() request, the nt_devmode field is NULL
and the job has the printer's device mode associated with it by default.
</para>
diff --git a/docs/docbook/devdoc/wins.sgml b/docs/docbook/devdoc/wins.sgml
new file mode 100644
index 0000000000..4b5f1e07c4
--- /dev/null
+++ b/docs/docbook/devdoc/wins.sgml
@@ -0,0 +1,79 @@
+<chapter id="wins">
+<chapterinfo>
+ <author>
+ <firstname>Gerald</firstname><surname>Carter</surname>
+ </author>
+ <pubdate>October 2002</pubdate>
+</chapterinfo>
+
+
+<title>Samba WINS Internals</title>
+
+
+<sect1>
+<title>WINS Failover</title>
+
+
+<para>
+The current Samba codebase possesses the capability to use groups of WINS
+servers that share a common namespace for NetBIOS name registration and
+resolution. The formal parameter syntax is
+</para>
+
+<para><programlisting>
+ WINS_SERVER_PARAM = SERVER [ SEPARATOR SERVER_LIST ]
+ WINS_SERVER_PARAM = &quot;wins server&quot;
+ SERVER = ADDR[:TAG]
+ ADDR = ip_addr | fqdn
+ TAG = string
+ SEPARATOR = comma | \s+
+ SERVER_LIST = SERVER [ SEPARATOR SERVER_LIST ]
+</programlisting></para>
+
+<para>
+A simple example of a valid wins server setting is
+</para>
+
+<para><programlisting>
+[global]
+ wins server = 192.168.1.2 192.168.1.3
+</programlisting></para>
+
+<para>
+In the event that no TAG is defined in for a SERVER in the list, smbd assigns a default
+TAG of &quot;*&quot;. A TAG is used to group servers of a shared NetBIOS namespace together. Upon
+startup, nmbd will attempt to register the netbios name value with one server in each
+tagged group.
+</para>
+
+<para>
+An example using tags to group WINS servers together is show here. Note that the use of
+interface names in the tags is only by convention and is not a technical requirement.
+</para>
+
+
+<para><programlisting>
+[global]
+ wins server = 192.168.1.2:eth0 192.1:eth0 192.168.2.2:eth1
+</programlisting></para>
+
+<para>
+Using this configuration, nmbd would attempt to registry the server's NetBIOS name
+with one WINS server in each group. Because the &quot;eth0&quot; group has two servers, the
+second server would only be used when a registration (or resolution) request to
+the first server in that group timed out.
+</para>
+
+<para>
+NetBIOS name resolution follows a similar pattern as name registration. When resolving
+a NetBIOS name via WINS, smbd and other Samba programs will attempt to query a single WINS
+server in a tagged group until either a positive response is obtained at least once or
+until a server from every tagged group has responded negatively to the name query request.
+If a timeout occurs when querying a specific WINS server, that server is marked as down to
+prevent further timeouts and the next server in the WINS group is contacted. Once marked as
+dead, Samba will not attempt to contact that server for name registration/resolution queries
+for a period of 10 minutes.
+</para>
+
+</sect1>
+</chapter>