Moving docs tree to docs-xml to make room for generated docs in the release tarball.
[tprouty/samba.git] / docs-xml / manpages-3 / libsmbclient.7.xml
1 <?xml version="1.0" encoding="iso-8859-1"?>
2 <!DOCTYPE refentry PUBLIC "-//Samba-Team//DTD DocBook V4.2-Based Variant V1.0//EN" "http://www.samba.org/samba/DTD/samba-doc">
3 <refentry id="libsmbclient.7">
4
5 <refmeta>
6         <refentrytitle>libsmbclient</refentrytitle>
7         <manvolnum>7</manvolnum>
8         <refmiscinfo class="source">Samba</refmiscinfo>
9         <refmiscinfo class="manual">7</refmiscinfo>
10         <refmiscinfo class="version">3.2</refmiscinfo>
11 </refmeta>
12
13
14 <refnamediv>
15         <refname>libsmbclient</refname>
16         <refpurpose>An extension library for browsers and that can be used as a generic browsing API.</refpurpose>
17 </refnamediv>
18
19 <refsynopsisdiv>
20         <cmdsynopsis>
21                 <command>Browser URL:</command>
22         <para>
23         smb://[[[domain:]user[:password@]]server[/share[/path[/file]]]] [?options]
24     </para>
25         </cmdsynopsis>
26 </refsynopsisdiv>
27
28
29 <refsect1>
30         <title>DESCRIPTION</title>
31
32         <para>
33         This tool is part of the <citerefentry><refentrytitle>samba</refentrytitle>
34         <manvolnum>7</manvolnum></citerefentry> suite.
35         </para>
36
37         <para>
38         <command>libsmbclient</command> is a library toolset that permits applications to manipulate CIFS/SMB network
39         resources using many of the standards POSIX functions available for manipulating local UNIX/Linux files. It
40         permits much more than just browsing, files can be opened and read or written, permissions changed, file times
41         modified, attributes and ACL's can be manipulated, and so on. Of course, its functionality includes all the
42         capabilities commonly called browsing.
43         </para>
44
45         <para>
46         <command>libsmbclient</command> can not be used directly from the command line, instead it provides an
47         extension of the capabilities of tools such as file managers and browsers.  This man page describes the
48         configuration options for this tool so that the user may obtain greatest utility of use.
49         </para>
50 </refsect1>
51
52 <refsect1>
53         <title>OPTIONS</title>
54
55         <para>
56         What the URLs mean:
57         </para>
58
59         <variablelist>
60                 <varlistentry>
61                         <term>smb://</term>
62                         <listitem><para>
63                         Shows all workgroups or domains that are visible in the network. The behavior matches
64                         that of the Microsoft Windows Explorer.
65                         </para>
66
67                         <para>
68                         The method of locating the list of workgroups (domains also) varies depending on the setting of
69                         the context variable <literal>(context-&gt;options.browse_max_lmb_count)</literal>. It is the
70                         responsibility of the application that calls this library to set this to a sensible value.  This
71                         is a compile-time option. This value determines the maximum number of local master browsers to
72                         query for the list of workgroups.  In order to ensure that the list is complete for those present
73                         on the network, all master browsers must be querried. If there are a large number of workgroups
74                         on the network, the time spent querying will be significant. For small networks (just a few
75                         workgroups), it is suggested to set this value to 0, instructing libsmbclient to query all local
76                         master browsers. In an environment that has many workgroups a more reasonable setting may be around 3.
77                         </para></listitem>
78                 </varlistentry>
79
80                 <varlistentry>
81                         <term>smb://name/</term>
82                         <listitem><para>
83                         This command causes libsmbclient to perform a name look-up. If the NAME&lt;1D&gt; or
84                         NAME&lt;1B&gt; exists (workgroup name), libsmbclient will list all servers in the
85                         workgroup (or domain). Otherwise, a name look-up for the NAME&lt;20&gt; (machine name)
86                         will be performed, and the list of shared resources on the server will be displayed.
87                         </para></listitem>
88                 </varlistentry>
89         </variablelist>
90
91         <para>
92         When libsmbclient is invoked by an application it searches for a directory called
93         <filename>.smb</filename> in the $HOME directory that is specified in the users shell
94         environment. It then searches for a file called <filename>smb.conf</filename> which,
95         if present, will fully over-ride the system <filename>/etc/samba/smb.conf</filename> file. If
96         instead libsmbclient finds a file called <filename>~/.smb/smb.conf.append</filename>,
97         it will read the system <filename>/etc/samba/smb.conf</filename> and then append the
98         contents of the <filename>~/.smb/smb.conf.append</filename> to it.
99         </para>
100
101         <para>
102         <command>libsmbclient</command> will check the users shell environment for the <literal>USER</literal>
103         parameter and will use its value when if the <literal>user</literal> parameter was not included
104         in the URL.
105         </para>
106
107 </refsect1>
108
109 <refsect1>
110         <title>PROGRAMMERS GUIDE</title>
111
112         <para>
113         Watch this space for future updates.
114         </para>
115
116 </refsect1>
117
118 <refsect1>
119         <title>VERSION</title>
120
121         <para>
122         This man page is correct for version 3.0 of the Samba suite.
123         </para>
124 </refsect1>
125
126 <refsect1>
127         <title>AUTHOR</title>
128
129         <para>
130         The original Samba software and related utilities were created by Andrew Tridgell.
131         Samba is now developed by the Samba Team as an Open Source project similar to the way
132         the Linux kernel is developed.
133         </para> 
134
135         <para>
136         The libsmbclient manpage page was written by John H Terpstra.
137         </para>
138 </refsect1>
139
140 </refentry>