summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbubulle <bubulle@alioth.debian.org>2012-12-12 21:11:47 +0000
committerbubulle <bubulle@alioth.debian.org>2012-12-12 21:11:47 +0000
commit63f07bb10f08040c39530bdc6aaea46c7c0ac9dd (patch)
tree72e23ab4ded614b11b21fb13aea9f8eb58727a65
parent2cf876031f5616a1de04777c978d7847887b45ac (diff)
downloadsamba-63f07bb10f08040c39530bdc6aaea46c7c0ac9dd.tar.gz
Load samba-3.6.10 into branches/samba/upstream.upstream/3.6.10
git-svn-id: svn://svn.debian.org/svn/pkg-samba/branches/samba/upstream@4179 fc4039ab-9d04-0410-8cac-899223bdd6b0
-rw-r--r--WHATSNEW.txt99
-rw-r--r--docs-xml/build/DTD/samba.entities13
-rw-r--r--docs/manpages/eventlogadm.84
-rw-r--r--docs/manpages/findsmb.14
-rw-r--r--docs/manpages/idmap_ad.84
-rw-r--r--docs/manpages/idmap_adex.84
-rw-r--r--docs/manpages/idmap_autorid.84
-rw-r--r--docs/manpages/idmap_hash.84
-rw-r--r--docs/manpages/idmap_ldap.84
-rw-r--r--docs/manpages/idmap_nss.84
-rw-r--r--docs/manpages/idmap_rid.84
-rw-r--r--docs/manpages/idmap_tdb.84
-rw-r--r--docs/manpages/idmap_tdb2.84
-rw-r--r--docs/manpages/libsmbclient.74
-rw-r--r--docs/manpages/lmhosts.54
-rw-r--r--docs/manpages/log2pcap.14
-rw-r--r--docs/manpages/net.88
-rw-r--r--docs/manpages/nmbd.86
-rw-r--r--docs/manpages/nmblookup.18
-rw-r--r--docs/manpages/ntlm_auth.16
-rw-r--r--docs/manpages/pam_winbind.84
-rw-r--r--docs/manpages/pam_winbind.conf.54
-rw-r--r--docs/manpages/pdbedit.86
-rw-r--r--docs/manpages/profiles.14
-rw-r--r--docs/manpages/rpcclient.18
-rw-r--r--docs/manpages/samba.74
-rw-r--r--docs/manpages/sharesec.16
-rw-r--r--docs/manpages/smb.conf.54
-rw-r--r--docs/manpages/smbcacls.16
-rw-r--r--docs/manpages/smbclient.18
-rw-r--r--docs/manpages/smbcontrol.14
-rw-r--r--docs/manpages/smbcquotas.16
-rw-r--r--docs/manpages/smbd.86
-rw-r--r--docs/manpages/smbget.14
-rw-r--r--docs/manpages/smbgetrc.54
-rw-r--r--docs/manpages/smbpasswd.54
-rw-r--r--docs/manpages/smbpasswd.84
-rw-r--r--docs/manpages/smbspool.84
-rw-r--r--docs/manpages/smbstatus.16
-rw-r--r--docs/manpages/smbta-util.84
-rw-r--r--docs/manpages/smbtar.14
-rw-r--r--docs/manpages/smbtree.16
-rw-r--r--docs/manpages/swat.86
-rw-r--r--docs/manpages/tdbbackup.84
-rw-r--r--docs/manpages/tdbdump.84
-rw-r--r--docs/manpages/tdbtool.84
-rw-r--r--docs/manpages/testparm.14
-rw-r--r--docs/manpages/vfs_acl_tdb.84
-rw-r--r--docs/manpages/vfs_acl_xattr.84
-rw-r--r--docs/manpages/vfs_aio_fork.84
-rw-r--r--docs/manpages/vfs_aio_pthread.84
-rw-r--r--docs/manpages/vfs_audit.84
-rw-r--r--docs/manpages/vfs_cacheprime.84
-rw-r--r--docs/manpages/vfs_cap.84
-rw-r--r--docs/manpages/vfs_catia.84
-rw-r--r--docs/manpages/vfs_commit.84
-rw-r--r--docs/manpages/vfs_crossrename.84
-rw-r--r--docs/manpages/vfs_default_quota.84
-rw-r--r--docs/manpages/vfs_dirsort.84
-rw-r--r--docs/manpages/vfs_extd_audit.84
-rw-r--r--docs/manpages/vfs_fake_perms.84
-rw-r--r--docs/manpages/vfs_fileid.84
-rw-r--r--docs/manpages/vfs_full_audit.84
-rw-r--r--docs/manpages/vfs_gpfs.84
-rw-r--r--docs/manpages/vfs_netatalk.84
-rw-r--r--docs/manpages/vfs_notify_fam.84
-rw-r--r--docs/manpages/vfs_prealloc.84
-rw-r--r--docs/manpages/vfs_preopen.84
-rw-r--r--docs/manpages/vfs_readahead.84
-rw-r--r--docs/manpages/vfs_readonly.84
-rw-r--r--docs/manpages/vfs_recycle.84
-rw-r--r--docs/manpages/vfs_scannedonly.84
-rw-r--r--docs/manpages/vfs_shadow_copy.84
-rw-r--r--docs/manpages/vfs_shadow_copy2.84
-rw-r--r--docs/manpages/vfs_smb_traffic_analyzer.84
-rw-r--r--docs/manpages/vfs_streams_depot.84
-rw-r--r--docs/manpages/vfs_streams_xattr.84
-rw-r--r--docs/manpages/vfs_time_audit.84
-rw-r--r--docs/manpages/vfs_xattr_tdb.84
-rw-r--r--docs/manpages/vfstest.16
-rw-r--r--docs/manpages/wbinfo.14
-rw-r--r--docs/manpages/winbind_krb5_locator.74
-rw-r--r--docs/manpages/winbindd.86
-rw-r--r--lib/addns/dnsgss.c16
-rw-r--r--lib/replace/replace.c4
-rw-r--r--lib/replace/replace.h42
-rw-r--r--lib/replace/snprintf.c17
-rw-r--r--lib/tsocket/tsocket.h42
-rw-r--r--lib/tsocket/tsocket_bsd.c73
-rw-r--r--lib/tsocket/tsocket_helpers.c29
-rw-r--r--nsswitch/pam_winbind.c7
-rw-r--r--packaging/RHEL-CTDB/samba.spec2
-rw-r--r--packaging/RHEL/makerpms.sh2
-rw-r--r--packaging/RHEL/samba.spec2
-rw-r--r--source3/VERSION2
-rw-r--r--source3/auth/auth_util.c3
-rwxr-xr-xsource3/configure150
-rw-r--r--source3/configure.in49
-rw-r--r--source3/include/config.h.in10
-rw-r--r--source3/include/proto.h3
-rw-r--r--source3/include/version.h4
-rw-r--r--source3/lib/dummysmbd.c3
-rw-r--r--source3/lib/util.c2
-rw-r--r--source3/libads/kerberos.c28
-rw-r--r--source3/libads/kerberos_keytab.c8
-rw-r--r--source3/libads/kerberos_verify.c6
-rw-r--r--source3/libsmb/cliconnect.c4
-rw-r--r--source3/libsmb/clikrb5.c6
-rw-r--r--source3/locking/locking.c3
-rw-r--r--source3/modules/vfs_acl_common.c17
-rw-r--r--source3/modules/vfs_aio_pthread.c58
-rw-r--r--source3/rpc_client/cli_lsarpc.c101
-rw-r--r--source3/rpc_client/cli_lsarpc.h39
-rw-r--r--source3/rpc_client/cli_pipe.c2
-rw-r--r--source3/rpc_server/spoolss/srv_spoolss_nt.c52
-rw-r--r--source3/smbd/dir.c15
-rw-r--r--source3/smbd/open.c20
-rw-r--r--source3/smbd/posix_acls.c14
-rw-r--r--source3/smbd/process.c5
-rw-r--r--source3/smbd/trans2.c23
-rw-r--r--source3/utils/net_ads.c44
-rw-r--r--source3/utils/net_dns.c96
-rw-r--r--source3/utils/net_dns.h43
-rw-r--r--source3/winbindd/winbindd_cm.c35
-rw-r--r--source3/winbindd/winbindd_msrpc.c131
-rw-r--r--source3/winbindd/winbindd_pam.c52
-rw-r--r--source3/winbindd/winbindd_proto.h11
-rw-r--r--source3/winbindd/winbindd_rpc.c23
-rw-r--r--source3/wscript2
-rw-r--r--source4/torture/smb2/create.c93
130 files changed, 1246 insertions, 623 deletions
diff --git a/WHATSNEW.txt b/WHATSNEW.txt
index e87882349f..45c3b4be4b 100644
--- a/WHATSNEW.txt
+++ b/WHATSNEW.txt
@@ -1,3 +1,97 @@
+ ==============================
+ Release Notes for Samba 3.6.10
+ December 10, 2012
+ ==============================
+
+
+This is is the latest stable release of Samba 3.6.
+
+Major enhancements in Samba 3.6.10 include:
+
+o Respond correctly to FILE_STREAM_INFO requests (bug #9460).
+o Fix segfault when "default devmode" is disabled (bug #9433).
+o Fix segfaults in "log level = 10" on Solaris (bug #9390).
+
+
+Changes since 3.6.9:
+--------------------
+
+o Jeremy Allison <jra@samba.org>
+ * BUG 9236: ACL masks incorrectly applied when setting ACLs.
+ * BUG 9374: Allow smb2.acls torture test to pass against smbd with a POSIX
+ ACLs backend.
+
+
+o Björn Baumbach <bb@sernet.de>
+ * BUG 9345: Manpages: Fix use of <smbconfoption> tag.
+
+
+o Sumit Bose <sbose@redhat.com>
+ * BUG 9367: Use work around for 'winbind use default domain' only if it is
+ set.
+
+
+o Günther Deschner <gd@samba.org>
+ * BUG 9272: 'net ads join' does not provide AES keys in host keytab.
+ * BUG 9426: Lookup nametype 0x20 in rpc_pipe_open_tcp_port().
+ * BUG 9439: Fix ncacn_ip_tcp reconnection code for lsa lookups.
+ * BUG 9451: Allow to force DNS updates using net.
+
+
+o David Disseldorp <ddiss@samba.org>
+ * BUG 9433: Fix segfault when "default devmode" is disabled.
+
+
+o Volker Lendecke <vl@samba.org>
+ * BUG 9359: Optimization needed for SMB2 performance sensitive workloads.
+ * BUG 9422: Large read requests cause server to issue malformed reply.
+ * BUG 9439: Fix ncacn_ip_tcp reconnection code for lsa lookups.
+
+
+o Stefan Metzmacher <metze@samba.org>
+ * BUG 9209: Improve the smb2.create.blob test.
+ * BUG 9272: 'net ads join' does not provide AES keys in host keytab.
+ * BUG 9390: Fix segfaults in "log level = 10" on Solaris.
+ * BUG 9402: lib/addns doesn't work with a bind9 server.
+
+
+o Matthieu Patou <mat@matws.net>
+ * BUG 9418: Fix MD5 detection in the autoconf build.
+
+
+o Andreas Schneider <asn@samba.org>
+ * BUG 8564: Fix segfault in pam_sm_authenticate().
+ * BUG 9326: Fix 'net ads join' message for the dns domain.
+ * BUG 9386: Winbind: Failover if netlogon pipe is not available.
+ * BUG 9436: Fix leaking sockets of SMB connections to a DC.
+
+
+o Richard Sharpe <realrichardsharpe@gmail.com>
+ * BUG 9460: Respond correctly to FILE_STREAM_INFO requests.
+
+
+######################################################################
+Reporting bugs & Development Discussion
+#######################################
+
+Please discuss this release on the samba-technical mailing list or by
+joining the #samba-technical IRC channel on irc.freenode.net.
+
+If you do report problems then please try to send high quality
+feedback. If you don't provide vital information to help us track down
+the problem then you will probably be ignored. All bug reports should
+be filed under the Samba 3.6 product in the project's Bugzilla
+database (https://bugzilla.samba.org/).
+
+
+======================================================================
+== Our Code, Our Bugs, Our Responsibility.
+== The Samba Team
+======================================================================
+
+Release notes for older releases follow:
+----------------------------------------
+
=============================
Release Notes for Samba 3.6.9
October 29, 2012
@@ -125,8 +219,9 @@ database (https://bugzilla.samba.org/).
== The Samba Team
======================================================================
-Release notes for older releases follow:
-----------------------------------------
+
+----------------------------------------------------------------------
+
=============================
Release Notes for Samba 3.6.8
diff --git a/docs-xml/build/DTD/samba.entities b/docs-xml/build/DTD/samba.entities
index f5d8cd2d33..c7e46c206f 100644
--- a/docs-xml/build/DTD/samba.entities
+++ b/docs-xml/build/DTD/samba.entities
@@ -180,7 +180,7 @@ use only by developers and generate HUGE amounts of log
data, most of which is extremely cryptic.</para>
<para>Note that specifying this parameter here will
-override the <smbconfoption><name>log level</name></smbconfoption> parameter
+override the <smbconfoption name="log level" /> parameter
in the &smb.conf; file.</para>
</listitem>
</varlistentry>'>
@@ -207,7 +207,7 @@ use only by developers and generate HUGE amounts of log
data, most of which is extremely cryptic.</para>
<para>Note that specifying this parameter here will
-override the <smbconfoption><name>log level</name></smbconfoption> parameter
+override the <smbconfoption name="log level" /> parameter
in the &smb.conf; file.</para>
</listitem>
</varlistentry>'>
@@ -297,11 +297,13 @@ being on a locally connected subnet.
<para>If this parameter is not set then the name resolve order
defined in the &smb.conf; file parameter
-(<smbconfoption><name>name resolve order</name></smbconfoption>) will be used.
+(<smbconfoption name="name resolve order" />) will be used.
</para>
<para>The default order is lmhosts, host, wins, bcast. Without
-this parameter or any entry in the <smbconfoption><name>name resolve order</name></smbconfoption> parameter of the &smb.conf; file, the name
+this parameter or any entry in the
+<smbconfoption name="name resolve order" /> parameter of
+the &smb.conf; file, the name
resolution methods will be attempted in this order. </para></listitem>
</varlistentry>'>
@@ -310,7 +312,8 @@ resolution methods will be attempted in this order. </para></listitem>
<term>-n|--netbiosname &lt;primary NetBIOS name&gt;</term>
<listitem><para>This option allows you to override
the NetBIOS name that Samba uses for itself. This is identical
-to setting the <smbconfoption><name>netbios name</name></smbconfoption> parameter in the &smb.conf; file.
+to setting the <smbconfoption name="netbios name" /> parameter in
+the &smb.conf; file.
However, a command
line setting will take precedence over settings in
&smb.conf;.</para></listitem>
diff --git a/docs/manpages/eventlogadm.8 b/docs/manpages/eventlogadm.8
index 196d6202c7..33d07fdd25 100644
--- a/docs/manpages/eventlogadm.8
+++ b/docs/manpages/eventlogadm.8
@@ -2,12 +2,12 @@
.\" Title: eventlogadm
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "EVENTLOGADM" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "EVENTLOGADM" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/findsmb.1 b/docs/manpages/findsmb.1
index 6f76e14221..9a3917b43b 100644
--- a/docs/manpages/findsmb.1
+++ b/docs/manpages/findsmb.1
@@ -2,12 +2,12 @@
.\" Title: findsmb
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: User Commands
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "FINDSMB" "1" "10/29/2012" "Samba 3\&.6" "User Commands"
+.TH "FINDSMB" "1" "12/06/2012" "Samba 3\&.6" "User Commands"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/idmap_ad.8 b/docs/manpages/idmap_ad.8
index f08363511d..420019e68a 100644
--- a/docs/manpages/idmap_ad.8
+++ b/docs/manpages/idmap_ad.8
@@ -2,12 +2,12 @@
.\" Title: idmap_ad
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "IDMAP_AD" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "IDMAP_AD" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/idmap_adex.8 b/docs/manpages/idmap_adex.8
index 58188309bc..c4940182f8 100644
--- a/docs/manpages/idmap_adex.8
+++ b/docs/manpages/idmap_adex.8
@@ -2,12 +2,12 @@
.\" Title: idmap_adex
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "IDMAP_ADEX" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "IDMAP_ADEX" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/idmap_autorid.8 b/docs/manpages/idmap_autorid.8
index 7b99c767e6..b9c8ecc6c6 100644
--- a/docs/manpages/idmap_autorid.8
+++ b/docs/manpages/idmap_autorid.8
@@ -2,12 +2,12 @@
.\" Title: idmap_autorid
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "IDMAP_AUTORID" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "IDMAP_AUTORID" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/idmap_hash.8 b/docs/manpages/idmap_hash.8
index c95891c360..53805b4d90 100644
--- a/docs/manpages/idmap_hash.8
+++ b/docs/manpages/idmap_hash.8
@@ -2,12 +2,12 @@
.\" Title: idmap_hash
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "IDMAP_HASH" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "IDMAP_HASH" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/idmap_ldap.8 b/docs/manpages/idmap_ldap.8
index 15a80ea7b2..71cffde508 100644
--- a/docs/manpages/idmap_ldap.8
+++ b/docs/manpages/idmap_ldap.8
@@ -2,12 +2,12 @@
.\" Title: idmap_ldap
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "IDMAP_LDAP" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "IDMAP_LDAP" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/idmap_nss.8 b/docs/manpages/idmap_nss.8
index 49732d3ec6..0842050498 100644
--- a/docs/manpages/idmap_nss.8
+++ b/docs/manpages/idmap_nss.8
@@ -2,12 +2,12 @@
.\" Title: idmap_nss
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "IDMAP_NSS" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "IDMAP_NSS" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/idmap_rid.8 b/docs/manpages/idmap_rid.8
index e5f4cab2b0..725e8af715 100644
--- a/docs/manpages/idmap_rid.8
+++ b/docs/manpages/idmap_rid.8
@@ -2,12 +2,12 @@
.\" Title: idmap_rid
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "IDMAP_RID" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "IDMAP_RID" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/idmap_tdb.8 b/docs/manpages/idmap_tdb.8
index e1b22d2019..b8ee14a880 100644
--- a/docs/manpages/idmap_tdb.8
+++ b/docs/manpages/idmap_tdb.8
@@ -2,12 +2,12 @@
.\" Title: idmap_tdb
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "IDMAP_TDB" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "IDMAP_TDB" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/idmap_tdb2.8 b/docs/manpages/idmap_tdb2.8
index 8c95b04ba6..e8ac88b544 100644
--- a/docs/manpages/idmap_tdb2.8
+++ b/docs/manpages/idmap_tdb2.8
@@ -2,12 +2,12 @@
.\" Title: idmap_tdb2
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "IDMAP_TDB2" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "IDMAP_TDB2" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/libsmbclient.7 b/docs/manpages/libsmbclient.7
index 84a800ce38..13ea97d5f2 100644
--- a/docs/manpages/libsmbclient.7
+++ b/docs/manpages/libsmbclient.7
@@ -2,12 +2,12 @@
.\" Title: libsmbclient
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: 7
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "LIBSMBCLIENT" "7" "10/29/2012" "Samba 3\&.6" "7"
+.TH "LIBSMBCLIENT" "7" "12/06/2012" "Samba 3\&.6" "7"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/lmhosts.5 b/docs/manpages/lmhosts.5
index 02718eac75..6e273460ed 100644
--- a/docs/manpages/lmhosts.5
+++ b/docs/manpages/lmhosts.5
@@ -2,12 +2,12 @@
.\" Title: lmhosts
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: File Formats and Conventions
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "LMHOSTS" "5" "10/29/2012" "Samba 3\&.6" "File Formats and Conventions"
+.TH "LMHOSTS" "5" "12/06/2012" "Samba 3\&.6" "File Formats and Conventions"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/log2pcap.1 b/docs/manpages/log2pcap.1
index 734bc0fe02..b1666d0efa 100644
--- a/docs/manpages/log2pcap.1
+++ b/docs/manpages/log2pcap.1
@@ -2,12 +2,12 @@
.\" Title: log2pcap
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: User Commands
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "LOG2PCAP" "1" "10/29/2012" "Samba 3\&.6" "User Commands"
+.TH "LOG2PCAP" "1" "12/06/2012" "Samba 3\&.6" "User Commands"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/net.8 b/docs/manpages/net.8
index acf6747557..caaa003e63 100644
--- a/docs/manpages/net.8
+++ b/docs/manpages/net.8
@@ -2,12 +2,12 @@
.\" Title: net
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "NET" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "NET" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
@@ -70,7 +70,7 @@ Port on the target server to connect to (usually 139 or 445)\&. Defaults to tryi
\-n|\-\-netbiosname <primary NetBIOS name>
.RS 4
This option allows you to override the NetBIOS name that Samba uses for itself\&. This is identical to setting the
-\m[blue]\fB\%smb.conf.5.html#\fR\m[]
+\m[blue]\fBnetbios name\fR\m[]
parameter in the
smb\&.conf
file\&. However, a command line setting will take precedence over settings in
@@ -114,7 +114,7 @@ The higher this value, the more detail will be logged to the log files about the
Levels above 1 will generate considerable amounts of log data, and should only be used when investigating a problem\&. Levels above 3 are designed for use only by developers and generate HUGE amounts of log data, most of which is extremely cryptic\&.
.sp
Note that specifying this parameter here will override the
-\m[blue]\fB\%smb.conf.5.html#\fR\m[]
+\m[blue]\fBlog level\fR\m[]
parameter in the
smb\&.conf
file\&.
diff --git a/docs/manpages/nmbd.8 b/docs/manpages/nmbd.8
index 5260a567af..e242e52b6e 100644
--- a/docs/manpages/nmbd.8
+++ b/docs/manpages/nmbd.8
@@ -2,12 +2,12 @@
.\" Title: nmbd
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "NMBD" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "NMBD" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
@@ -134,7 +134,7 @@ The higher this value, the more detail will be logged to the log files about the
Levels above 1 will generate considerable amounts of log data, and should only be used when investigating a problem\&. Levels above 3 are designed for use only by developers and generate HUGE amounts of log data, most of which is extremely cryptic\&.
.sp
Note that specifying this parameter here will override the
-\m[blue]\fB\%smb.conf.5.html#\fR\m[]
+\m[blue]\fBlog level\fR\m[]
parameter in the
smb\&.conf
file\&.
diff --git a/docs/manpages/nmblookup.1 b/docs/manpages/nmblookup.1
index 5118f0daa3..0424d00be7 100644
--- a/docs/manpages/nmblookup.1
+++ b/docs/manpages/nmblookup.1
@@ -2,12 +2,12 @@
.\" Title: nmblookup
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: User Commands
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "NMBLOOKUP" "1" "10/29/2012" "Samba 3\&.6" "User Commands"
+.TH "NMBLOOKUP" "1" "12/06/2012" "Samba 3\&.6" "User Commands"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
@@ -72,7 +72,7 @@ as an IP Address and do a node status query on this address\&.
\-n|\-\-netbiosname <primary NetBIOS name>
.RS 4
This option allows you to override the NetBIOS name that Samba uses for itself\&. This is identical to setting the
-\m[blue]\fB\%smb.conf.5.html#\fR\m[]
+\m[blue]\fBnetbios name\fR\m[]
parameter in the
smb\&.conf
file\&. However, a command line setting will take precedence over settings in
@@ -132,7 +132,7 @@ The higher this value, the more detail will be logged to the log files about the
Levels above 1 will generate considerable amounts of log data, and should only be used when investigating a problem\&. Levels above 3 are designed for use only by developers and generate HUGE amounts of log data, most of which is extremely cryptic\&.
.sp
Note that specifying this parameter here will override the
-\m[blue]\fB\%smb.conf.5.html#\fR\m[]
+\m[blue]\fBlog level\fR\m[]
parameter in the
smb\&.conf
file\&.
diff --git a/docs/manpages/ntlm_auth.1 b/docs/manpages/ntlm_auth.1
index ea3d7f30ae..b8658ed944 100644
--- a/docs/manpages/ntlm_auth.1
+++ b/docs/manpages/ntlm_auth.1
@@ -2,12 +2,12 @@
.\" Title: ntlm_auth
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: User Commands
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "NTLM_AUTH" "1" "10/29/2012" "Samba 3\&.6" "User Commands"
+.TH "NTLM_AUTH" "1" "12/06/2012" "Samba 3\&.6" "User Commands"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
@@ -274,7 +274,7 @@ The higher this value, the more detail will be logged to the log files about the
Levels above 1 will generate considerable amounts of log data, and should only be used when investigating a problem\&. Levels above 3 are designed for use only by developers and generate HUGE amounts of log data, most of which is extremely cryptic\&.
.sp
Note that specifying this parameter here will override the
-\m[blue]\fB\%smb.conf.5.html#\fR\m[]
+\m[blue]\fBlog level\fR\m[]
parameter in the
smb\&.conf
file\&.
diff --git a/docs/manpages/pam_winbind.8 b/docs/manpages/pam_winbind.8
index 782a5c96b4..c554206315 100644
--- a/docs/manpages/pam_winbind.8
+++ b/docs/manpages/pam_winbind.8
@@ -2,12 +2,12 @@
.\" Title: pam_winbind
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: 8
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "PAM_WINBIND" "8" "10/29/2012" "Samba 3\&.6" "8"
+.TH "PAM_WINBIND" "8" "12/06/2012" "Samba 3\&.6" "8"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/pam_winbind.conf.5 b/docs/manpages/pam_winbind.conf.5
index f8d4d1ed38..7c0c4dd501 100644
--- a/docs/manpages/pam_winbind.conf.5
+++ b/docs/manpages/pam_winbind.conf.5
@@ -2,12 +2,12 @@
.\" Title: pam_winbind.conf
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: 5
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "PAM_WINBIND\&.CONF" "5" "10/29/2012" "Samba 3\&.6" "5"
+.TH "PAM_WINBIND\&.CONF" "5" "12/06/2012" "Samba 3\&.6" "5"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/pdbedit.8 b/docs/manpages/pdbedit.8
index 1cede92bf2..0dc82d5f57 100644
--- a/docs/manpages/pdbedit.8
+++ b/docs/manpages/pdbedit.8
@@ -2,12 +2,12 @@
.\" Title: pdbedit
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "PDBEDIT" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "PDBEDIT" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
@@ -561,7 +561,7 @@ The higher this value, the more detail will be logged to the log files about the
Levels above 1 will generate considerable amounts of log data, and should only be used when investigating a problem\&. Levels above 3 are designed for use only by developers and generate HUGE amounts of log data, most of which is extremely cryptic\&.
.sp
Note that specifying this parameter here will override the
-\m[blue]\fB\%smb.conf.5.html#\fR\m[]
+\m[blue]\fBlog level\fR\m[]
parameter in the
smb\&.conf
file\&.
diff --git a/docs/manpages/profiles.1 b/docs/manpages/profiles.1
index e3187cf8ee..e34135058a 100644
--- a/docs/manpages/profiles.1
+++ b/docs/manpages/profiles.1
@@ -2,12 +2,12 @@
.\" Title: profiles
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: User Commands
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "PROFILES" "1" "10/29/2012" "Samba 3\&.6" "User Commands"
+.TH "PROFILES" "1" "12/06/2012" "Samba 3\&.6" "User Commands"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/rpcclient.1 b/docs/manpages/rpcclient.1
index d6d379813a..931f6b63dd 100644
--- a/docs/manpages/rpcclient.1
+++ b/docs/manpages/rpcclient.1
@@ -2,12 +2,12 @@
.\" Title: rpcclient
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: User Commands
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "RPCCLIENT" "1" "10/29/2012" "Samba 3\&.6" "User Commands"
+.TH "RPCCLIENT" "1" "12/06/2012" "Samba 3\&.6" "User Commands"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
@@ -73,7 +73,7 @@ The higher this value, the more detail will be logged to the log files about the
Levels above 1 will generate considerable amounts of log data, and should only be used when investigating a problem\&. Levels above 3 are designed for use only by developers and generate HUGE amounts of log data, most of which is extremely cryptic\&.
.sp
Note that specifying this parameter here will override the
-\m[blue]\fB\%smb.conf.5.html#\fR\m[]
+\m[blue]\fBlog level\fR\m[]
parameter in the
smb\&.conf
file\&.
@@ -162,7 +162,7 @@ to prompt for a password and type it in directly\&.
\-n|\-\-netbiosname <primary NetBIOS name>
.RS 4
This option allows you to override the NetBIOS name that Samba uses for itself\&. This is identical to setting the
-\m[blue]\fB\%smb.conf.5.html#\fR\m[]
+\m[blue]\fBnetbios name\fR\m[]
parameter in the
smb\&.conf
file\&. However, a command line setting will take precedence over settings in
diff --git a/docs/manpages/samba.7 b/docs/manpages/samba.7
index 4e6fa61ba3..167b0c11e9 100644
--- a/docs/manpages/samba.7
+++ b/docs/manpages/samba.7
@@ -2,12 +2,12 @@
.\" Title: samba
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: Miscellanea
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "SAMBA" "7" "10/29/2012" "Samba 3\&.6" "Miscellanea"
+.TH "SAMBA" "7" "12/06/2012" "Samba 3\&.6" "Miscellanea"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/sharesec.1 b/docs/manpages/sharesec.1
index 145123eb4c..57dec4c418 100644
--- a/docs/manpages/sharesec.1
+++ b/docs/manpages/sharesec.1
@@ -2,12 +2,12 @@
.\" Title: sharesec
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: User Commands
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "SHARESEC" "1" "10/29/2012" "Samba 3\&.6" "User Commands"
+.TH "SHARESEC" "1" "12/06/2012" "Samba 3\&.6" "User Commands"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
@@ -88,7 +88,7 @@ The higher this value, the more detail will be logged to the log files about the
Levels above 1 will generate considerable amounts of log data, and should only be used when investigating a problem\&. Levels above 3 are designed for use only by developers and generate HUGE amounts of log data, most of which is extremely cryptic\&.
.sp
Note that specifying this parameter here will override the
-\m[blue]\fB\%smb.conf.5.html#\fR\m[]
+\m[blue]\fBlog level\fR\m[]
parameter in the
smb\&.conf
file\&.
diff --git a/docs/manpages/smb.conf.5 b/docs/manpages/smb.conf.5
index 1b3eb2ab38..03df9bd848 100644
--- a/docs/manpages/smb.conf.5
+++ b/docs/manpages/smb.conf.5
@@ -2,12 +2,12 @@
.\" Title: smb.conf
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: File Formats and Conventions
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "SMB\&.CONF" "5" "10/29/2012" "Samba 3\&.6" "File Formats and Conventions"
+.TH "SMB\&.CONF" "5" "12/06/2012" "Samba 3\&.6" "File Formats and Conventions"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/smbcacls.1 b/docs/manpages/smbcacls.1
index eec1e10e23..6c53f91a34 100644
--- a/docs/manpages/smbcacls.1
+++ b/docs/manpages/smbcacls.1
@@ -2,12 +2,12 @@
.\" Title: smbcacls
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: User Commands
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "SMBCACLS" "1" "10/29/2012" "Samba 3\&.6" "User Commands"
+.TH "SMBCACLS" "1" "12/06/2012" "Samba 3\&.6" "User Commands"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
@@ -108,7 +108,7 @@ The higher this value, the more detail will be logged to the log files about the
Levels above 1 will generate considerable amounts of log data, and should only be used when investigating a problem\&. Levels above 3 are designed for use only by developers and generate HUGE amounts of log data, most of which is extremely cryptic\&.
.sp
Note that specifying this parameter here will override the
-\m[blue]\fB\%smb.conf.5.html#\fR\m[]
+\m[blue]\fBlog level\fR\m[]
parameter in the
smb\&.conf
file\&.
diff --git a/docs/manpages/smbclient.1 b/docs/manpages/smbclient.1
index 355d6d6fd4..125cc87610 100644
--- a/docs/manpages/smbclient.1
+++ b/docs/manpages/smbclient.1
@@ -2,12 +2,12 @@
.\" Title: smbclient
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: User Commands
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "SMBCLIENT" "1" "10/29/2012" "Samba 3\&.6" "User Commands"
+.TH "SMBCLIENT" "1" "12/06/2012" "Samba 3\&.6" "User Commands"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
@@ -249,7 +249,7 @@ The higher this value, the more detail will be logged to the log files about the
Levels above 1 will generate considerable amounts of log data, and should only be used when investigating a problem\&. Levels above 3 are designed for use only by developers and generate HUGE amounts of log data, most of which is extremely cryptic\&.
.sp
Note that specifying this parameter here will override the
-\m[blue]\fB\%smb.conf.5.html#\fR\m[]
+\m[blue]\fBlog level\fR\m[]
parameter in the
smb\&.conf
file\&.
@@ -338,7 +338,7 @@ to prompt for a password and type it in directly\&.
\-n|\-\-netbiosname <primary NetBIOS name>
.RS 4
This option allows you to override the NetBIOS name that Samba uses for itself\&. This is identical to setting the
-\m[blue]\fB\%smb.conf.5.html#\fR\m[]
+\m[blue]\fBnetbios name\fR\m[]
parameter in the
smb\&.conf
file\&. However, a command line setting will take precedence over settings in
diff --git a/docs/manpages/smbcontrol.1 b/docs/manpages/smbcontrol.1
index 51fbee5d2c..740e5f4090 100644
--- a/docs/manpages/smbcontrol.1
+++ b/docs/manpages/smbcontrol.1
@@ -2,12 +2,12 @@
.\" Title: smbcontrol
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: User Commands
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "SMBCONTROL" "1" "10/29/2012" "Samba 3\&.6" "User Commands"
+.TH "SMBCONTROL" "1" "12/06/2012" "Samba 3\&.6" "User Commands"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/smbcquotas.1 b/docs/manpages/smbcquotas.1
index 6bd8df8d95..c57a9d5f45 100644
--- a/docs/manpages/smbcquotas.1
+++ b/docs/manpages/smbcquotas.1
@@ -2,12 +2,12 @@
.\" Title: smbcquotas
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: User Commands
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "SMBCQUOTAS" "1" "10/29/2012" "Samba 3\&.6" "User Commands"
+.TH "SMBCQUOTAS" "1" "12/06/2012" "Samba 3\&.6" "User Commands"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
@@ -88,7 +88,7 @@ The higher this value, the more detail will be logged to the log files about the
Levels above 1 will generate considerable amounts of log data, and should only be used when investigating a problem\&. Levels above 3 are designed for use only by developers and generate HUGE amounts of log data, most of which is extremely cryptic\&.
.sp
Note that specifying this parameter here will override the
-\m[blue]\fB\%smb.conf.5.html#\fR\m[]
+\m[blue]\fBlog level\fR\m[]
parameter in the
smb\&.conf
file\&.
diff --git a/docs/manpages/smbd.8 b/docs/manpages/smbd.8
index 40a49bdcae..639c312a69 100644
--- a/docs/manpages/smbd.8
+++ b/docs/manpages/smbd.8
@@ -2,12 +2,12 @@
.\" Title: smbd
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "SMBD" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "SMBD" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
@@ -96,7 +96,7 @@ The higher this value, the more detail will be logged to the log files about the
Levels above 1 will generate considerable amounts of log data, and should only be used when investigating a problem\&. Levels above 3 are designed for use only by developers and generate HUGE amounts of log data, most of which is extremely cryptic\&.
.sp
Note that specifying this parameter here will override the
-\m[blue]\fB\%smb.conf.5.html#\fR\m[]
+\m[blue]\fBlog level\fR\m[]
parameter in the
smb\&.conf
file\&.
diff --git a/docs/manpages/smbget.1 b/docs/manpages/smbget.1
index 7b035a87e4..e4c136724d 100644
--- a/docs/manpages/smbget.1
+++ b/docs/manpages/smbget.1
@@ -2,12 +2,12 @@
.\" Title: smbget
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: User Commands
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "SMBGET" "1" "10/29/2012" "Samba 3\&.6" "User Commands"
+.TH "SMBGET" "1" "12/06/2012" "Samba 3\&.6" "User Commands"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/smbgetrc.5 b/docs/manpages/smbgetrc.5
index 88006cbc8e..be7fe59f87 100644
--- a/docs/manpages/smbgetrc.5
+++ b/docs/manpages/smbgetrc.5
@@ -2,12 +2,12 @@
.\" Title: smbgetrc
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: File Formats and Conventions
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "SMBGETRC" "5" "10/29/2012" "Samba 3\&.6" "File Formats and Conventions"
+.TH "SMBGETRC" "5" "12/06/2012" "Samba 3\&.6" "File Formats and Conventions"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/smbpasswd.5 b/docs/manpages/smbpasswd.5
index 5dc1bd4f14..f914db86dd 100644
--- a/docs/manpages/smbpasswd.5
+++ b/docs/manpages/smbpasswd.5
@@ -2,12 +2,12 @@
.\" Title: smbpasswd
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: File Formats and Conventions
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "SMBPASSWD" "5" "10/29/2012" "Samba 3\&.6" "File Formats and Conventions"
+.TH "SMBPASSWD" "5" "12/06/2012" "Samba 3\&.6" "File Formats and Conventions"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/smbpasswd.8 b/docs/manpages/smbpasswd.8
index 8d3dd3864a..458be15ee0 100644
--- a/docs/manpages/smbpasswd.8
+++ b/docs/manpages/smbpasswd.8
@@ -2,12 +2,12 @@
.\" Title: smbpasswd
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "SMBPASSWD" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "SMBPASSWD" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/smbspool.8 b/docs/manpages/smbspool.8
index b71373ade2..cd9fc6bb99 100644
--- a/docs/manpages/smbspool.8
+++ b/docs/manpages/smbspool.8
@@ -2,12 +2,12 @@
.\" Title: smbspool
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "SMBSPOOL" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "SMBSPOOL" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/smbstatus.1 b/docs/manpages/smbstatus.1
index 04461cd676..0d38b85d99 100644
--- a/docs/manpages/smbstatus.1
+++ b/docs/manpages/smbstatus.1
@@ -2,12 +2,12 @@
.\" Title: smbstatus
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: User Commands
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "SMBSTATUS" "1" "10/29/2012" "Samba 3\&.6" "User Commands"
+.TH "SMBSTATUS" "1" "12/06/2012" "Samba 3\&.6" "User Commands"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
@@ -53,7 +53,7 @@ The higher this value, the more detail will be logged to the log files about the
Levels above 1 will generate considerable amounts of log data, and should only be used when investigating a problem\&. Levels above 3 are designed for use only by developers and generate HUGE amounts of log data, most of which is extremely cryptic\&.
.sp
Note that specifying this parameter here will override the
-\m[blue]\fB\%smb.conf.5.html#\fR\m[]
+\m[blue]\fBlog level\fR\m[]
parameter in the
smb\&.conf
file\&.
diff --git a/docs/manpages/smbta-util.8 b/docs/manpages/smbta-util.8
index 04829b8d93..7df4ee6707 100644
--- a/docs/manpages/smbta-util.8
+++ b/docs/manpages/smbta-util.8
@@ -2,12 +2,12 @@
.\" Title: smbta-util
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "SMBTA\-UTIL" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "SMBTA\-UTIL" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/smbtar.1 b/docs/manpages/smbtar.1
index 14a6fb0050..711949dec5 100644
--- a/docs/manpages/smbtar.1
+++ b/docs/manpages/smbtar.1
@@ -2,12 +2,12 @@
.\" Title: smbtar
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: User Commands
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "SMBTAR" "1" "10/29/2012" "Samba 3\&.6" "User Commands"
+.TH "SMBTAR" "1" "12/06/2012" "Samba 3\&.6" "User Commands"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/smbtree.1 b/docs/manpages/smbtree.1
index 99338ca095..9b4c977f96 100644
--- a/docs/manpages/smbtree.1
+++ b/docs/manpages/smbtree.1
@@ -2,12 +2,12 @@
.\" Title: smbtree
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: User Commands
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "SMBTREE" "1" "10/29/2012" "Samba 3\&.6" "User Commands"
+.TH "SMBTREE" "1" "12/06/2012" "Samba 3\&.6" "User Commands"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
@@ -58,7 +58,7 @@ The higher this value, the more detail will be logged to the log files about the
Levels above 1 will generate considerable amounts of log data, and should only be used when investigating a problem\&. Levels above 3 are designed for use only by developers and generate HUGE amounts of log data, most of which is extremely cryptic\&.
.sp
Note that specifying this parameter here will override the
-\m[blue]\fB\%smb.conf.5.html#\fR\m[]
+\m[blue]\fBlog level\fR\m[]
parameter in the
smb\&.conf
file\&.
diff --git a/docs/manpages/swat.8 b/docs/manpages/swat.8
index 8ba9dd3d23..0713bdf9da 100644
--- a/docs/manpages/swat.8
+++ b/docs/manpages/swat.8
@@ -2,12 +2,12 @@
.\" Title: swat
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "SWAT" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "SWAT" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
@@ -82,7 +82,7 @@ The higher this value, the more detail will be logged to the log files about the
Levels above 1 will generate considerable amounts of log data, and should only be used when investigating a problem\&. Levels above 3 are designed for use only by developers and generate HUGE amounts of log data, most of which is extremely cryptic\&.
.sp
Note that specifying this parameter here will override the
-\m[blue]\fB\%smb.conf.5.html#\fR\m[]
+\m[blue]\fBlog level\fR\m[]
parameter in the
smb\&.conf
file\&.
diff --git a/docs/manpages/tdbbackup.8 b/docs/manpages/tdbbackup.8
index b132130992..086a066015 100644
--- a/docs/manpages/tdbbackup.8
+++ b/docs/manpages/tdbbackup.8
@@ -2,12 +2,12 @@
.\" Title: tdbbackup
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "TDBBACKUP" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "TDBBACKUP" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/tdbdump.8 b/docs/manpages/tdbdump.8
index 1658cb7556..ebf1800423 100644
--- a/docs/manpages/tdbdump.8
+++ b/docs/manpages/tdbdump.8
@@ -2,12 +2,12 @@
.\" Title: tdbdump
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "TDBDUMP" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "TDBDUMP" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/tdbtool.8 b/docs/manpages/tdbtool.8
index deaedb2a2a..548df34644 100644
--- a/docs/manpages/tdbtool.8
+++ b/docs/manpages/tdbtool.8
@@ -2,12 +2,12 @@
.\" Title: tdbtool
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "TDBTOOL" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "TDBTOOL" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/testparm.1 b/docs/manpages/testparm.1
index 1c2d03bf1b..e457d35ea8 100644
--- a/docs/manpages/testparm.1
+++ b/docs/manpages/testparm.1
@@ -2,12 +2,12 @@
.\" Title: testparm
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: User Commands
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "TESTPARM" "1" "10/29/2012" "Samba 3\&.6" "User Commands"
+.TH "TESTPARM" "1" "12/06/2012" "Samba 3\&.6" "User Commands"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_acl_tdb.8 b/docs/manpages/vfs_acl_tdb.8
index 666848d8cb..b7122b3e57 100644
--- a/docs/manpages/vfs_acl_tdb.8
+++ b/docs/manpages/vfs_acl_tdb.8
@@ -2,12 +2,12 @@
.\" Title: vfs_acl_tdb
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_ACL_TDB" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_ACL_TDB" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_acl_xattr.8 b/docs/manpages/vfs_acl_xattr.8
index f1ae20819c..a916c588a5 100644
--- a/docs/manpages/vfs_acl_xattr.8
+++ b/docs/manpages/vfs_acl_xattr.8
@@ -2,12 +2,12 @@
.\" Title: vfs_acl_xattr
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_ACL_XATTR" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_ACL_XATTR" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_aio_fork.8 b/docs/manpages/vfs_aio_fork.8
index 6110e56091..7d97583381 100644
--- a/docs/manpages/vfs_aio_fork.8
+++ b/docs/manpages/vfs_aio_fork.8
@@ -2,12 +2,12 @@
.\" Title: vfs_aio_fork
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_AIO_FORK" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_AIO_FORK" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_aio_pthread.8 b/docs/manpages/vfs_aio_pthread.8
index 4876eaff08..c9f952b3dd 100644
--- a/docs/manpages/vfs_aio_pthread.8
+++ b/docs/manpages/vfs_aio_pthread.8
@@ -2,12 +2,12 @@
.\" Title: vfs_aio_pthread
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_AIO_PTHREAD" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_AIO_PTHREAD" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_audit.8 b/docs/manpages/vfs_audit.8
index 029260c106..1e01ceac89 100644
--- a/docs/manpages/vfs_audit.8
+++ b/docs/manpages/vfs_audit.8
@@ -2,12 +2,12 @@
.\" Title: vfs_audit
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_AUDIT" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_AUDIT" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_cacheprime.8 b/docs/manpages/vfs_cacheprime.8
index 8c17977c14..d489c44ed1 100644
--- a/docs/manpages/vfs_cacheprime.8
+++ b/docs/manpages/vfs_cacheprime.8
@@ -2,12 +2,12 @@
.\" Title: vfs_cacheprime
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_CACHEPRIME" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_CACHEPRIME" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_cap.8 b/docs/manpages/vfs_cap.8
index 7d25d9e787..4fbf3d69f6 100644
--- a/docs/manpages/vfs_cap.8
+++ b/docs/manpages/vfs_cap.8
@@ -2,12 +2,12 @@
.\" Title: vfs_cap
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_CAP" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_CAP" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_catia.8 b/docs/manpages/vfs_catia.8
index 42219cc230..86466f8a10 100644
--- a/docs/manpages/vfs_catia.8
+++ b/docs/manpages/vfs_catia.8
@@ -2,12 +2,12 @@
.\" Title: vfs_catia
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_CATIA" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_CATIA" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_commit.8 b/docs/manpages/vfs_commit.8
index 4c4b1b0c17..2067a1d3c2 100644
--- a/docs/manpages/vfs_commit.8
+++ b/docs/manpages/vfs_commit.8
@@ -2,12 +2,12 @@
.\" Title: vfs_commit
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_COMMIT" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_COMMIT" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_crossrename.8 b/docs/manpages/vfs_crossrename.8
index 3c5cde741c..a7b9eb6af3 100644
--- a/docs/manpages/vfs_crossrename.8
+++ b/docs/manpages/vfs_crossrename.8
@@ -2,12 +2,12 @@
.\" Title: vfs_crossrename
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_CROSSRENAME" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_CROSSRENAME" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_default_quota.8 b/docs/manpages/vfs_default_quota.8
index 2a6b8547ea..59c57de680 100644
--- a/docs/manpages/vfs_default_quota.8
+++ b/docs/manpages/vfs_default_quota.8
@@ -2,12 +2,12 @@
.\" Title: vfs_default_quota
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_DEFAULT_QUOTA" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_DEFAULT_QUOTA" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_dirsort.8 b/docs/manpages/vfs_dirsort.8
index a8ef7ffb97..e839997122 100644
--- a/docs/manpages/vfs_dirsort.8
+++ b/docs/manpages/vfs_dirsort.8
@@ -2,12 +2,12 @@
.\" Title: vfs_dirsort
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_DIRSORT" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_DIRSORT" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_extd_audit.8 b/docs/manpages/vfs_extd_audit.8
index 54c2771c5d..f01793a6cd 100644
--- a/docs/manpages/vfs_extd_audit.8
+++ b/docs/manpages/vfs_extd_audit.8
@@ -2,12 +2,12 @@
.\" Title: vfs_extd_audit
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_EXTD_AUDIT" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_EXTD_AUDIT" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_fake_perms.8 b/docs/manpages/vfs_fake_perms.8
index 9fa9aa9dc5..3a3e2f9fc2 100644
--- a/docs/manpages/vfs_fake_perms.8
+++ b/docs/manpages/vfs_fake_perms.8
@@ -2,12 +2,12 @@
.\" Title: vfs_fake_perms
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_FAKE_PERMS" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_FAKE_PERMS" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_fileid.8 b/docs/manpages/vfs_fileid.8
index d04c5bf195..0f2b7c0be0 100644
--- a/docs/manpages/vfs_fileid.8
+++ b/docs/manpages/vfs_fileid.8
@@ -2,12 +2,12 @@
.\" Title: vfs_fileid
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_FILEID" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_FILEID" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_full_audit.8 b/docs/manpages/vfs_full_audit.8
index 2877a95190..ae009047d2 100644
--- a/docs/manpages/vfs_full_audit.8
+++ b/docs/manpages/vfs_full_audit.8
@@ -2,12 +2,12 @@
.\" Title: vfs_full_audit
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_FULL_AUDIT" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_FULL_AUDIT" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_gpfs.8 b/docs/manpages/vfs_gpfs.8
index 89221fe1b7..1107c22bc8 100644
--- a/docs/manpages/vfs_gpfs.8
+++ b/docs/manpages/vfs_gpfs.8
@@ -2,12 +2,12 @@
.\" Title: vfs_gpfs
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_GPFS" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_GPFS" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_netatalk.8 b/docs/manpages/vfs_netatalk.8
index 2cbad80a85..89f7432d22 100644
--- a/docs/manpages/vfs_netatalk.8
+++ b/docs/manpages/vfs_netatalk.8
@@ -2,12 +2,12 @@
.\" Title: vfs_netatalk
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_NETATALK" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_NETATALK" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_notify_fam.8 b/docs/manpages/vfs_notify_fam.8
index 7dc8dcdb6d..30e9d8c390 100644
--- a/docs/manpages/vfs_notify_fam.8
+++ b/docs/manpages/vfs_notify_fam.8
@@ -2,12 +2,12 @@
.\" Title: vfs_notify_fam
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_NOTIFY_FAM" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_NOTIFY_FAM" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_prealloc.8 b/docs/manpages/vfs_prealloc.8
index 0fffc85e55..7a3df78daf 100644
--- a/docs/manpages/vfs_prealloc.8
+++ b/docs/manpages/vfs_prealloc.8
@@ -2,12 +2,12 @@
.\" Title: vfs_prealloc
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_PREALLOC" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_PREALLOC" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_preopen.8 b/docs/manpages/vfs_preopen.8
index f2eb7dccd2..1b910b8bcc 100644
--- a/docs/manpages/vfs_preopen.8
+++ b/docs/manpages/vfs_preopen.8
@@ -2,12 +2,12 @@
.\" Title: vfs_preopen
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_PREOPEN" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_PREOPEN" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_readahead.8 b/docs/manpages/vfs_readahead.8
index 84a0881762..e1f13cc982 100644
--- a/docs/manpages/vfs_readahead.8
+++ b/docs/manpages/vfs_readahead.8
@@ -2,12 +2,12 @@
.\" Title: vfs_readahead
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_READAHEAD" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_READAHEAD" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_readonly.8 b/docs/manpages/vfs_readonly.8
index 0ac5c2d555..42bf2f17b6 100644
--- a/docs/manpages/vfs_readonly.8
+++ b/docs/manpages/vfs_readonly.8
@@ -2,12 +2,12 @@
.\" Title: vfs_readonly
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_READONLY" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_READONLY" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_recycle.8 b/docs/manpages/vfs_recycle.8
index ef5588a6e3..ad5594ee05 100644
--- a/docs/manpages/vfs_recycle.8
+++ b/docs/manpages/vfs_recycle.8
@@ -2,12 +2,12 @@
.\" Title: vfs_recycle
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_RECYCLE" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_RECYCLE" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_scannedonly.8 b/docs/manpages/vfs_scannedonly.8
index 8854c4b7ba..c917c602e0 100644
--- a/docs/manpages/vfs_scannedonly.8
+++ b/docs/manpages/vfs_scannedonly.8
@@ -2,12 +2,12 @@
.\" Title: vfs_scannedonly
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_SCANNEDONLY" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_SCANNEDONLY" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_shadow_copy.8 b/docs/manpages/vfs_shadow_copy.8
index f30e73f5fa..9ec97b5098 100644
--- a/docs/manpages/vfs_shadow_copy.8
+++ b/docs/manpages/vfs_shadow_copy.8
@@ -2,12 +2,12 @@
.\" Title: vfs_shadow_copy
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_SHADOW_COPY" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_SHADOW_COPY" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_shadow_copy2.8 b/docs/manpages/vfs_shadow_copy2.8
index 0c948df79f..5eea1279ce 100644
--- a/docs/manpages/vfs_shadow_copy2.8
+++ b/docs/manpages/vfs_shadow_copy2.8
@@ -2,12 +2,12 @@
.\" Title: vfs_shadow_copy2
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_SHADOW_COPY2" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_SHADOW_COPY2" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_smb_traffic_analyzer.8 b/docs/manpages/vfs_smb_traffic_analyzer.8
index a605f2bb74..44774e76c6 100644
--- a/docs/manpages/vfs_smb_traffic_analyzer.8
+++ b/docs/manpages/vfs_smb_traffic_analyzer.8
@@ -2,12 +2,12 @@
.\" Title: smb_traffic_analyzer
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "SMB_TRAFFIC_ANALYZER" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "SMB_TRAFFIC_ANALYZER" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_streams_depot.8 b/docs/manpages/vfs_streams_depot.8
index c4c987936f..bd21c82aa2 100644
--- a/docs/manpages/vfs_streams_depot.8
+++ b/docs/manpages/vfs_streams_depot.8
@@ -2,12 +2,12 @@
.\" Title: vfs_streams_depot
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_STREAMS_DEPOT" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_STREAMS_DEPOT" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_streams_xattr.8 b/docs/manpages/vfs_streams_xattr.8
index 683a8be92e..3f5998d567 100644
--- a/docs/manpages/vfs_streams_xattr.8
+++ b/docs/manpages/vfs_streams_xattr.8
@@ -2,12 +2,12 @@
.\" Title: vfs_streams_xattr
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_STREAMS_XATTR" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_STREAMS_XATTR" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_time_audit.8 b/docs/manpages/vfs_time_audit.8
index 32f2b7a8ef..3d2ad105e4 100644
--- a/docs/manpages/vfs_time_audit.8
+++ b/docs/manpages/vfs_time_audit.8
@@ -2,12 +2,12 @@
.\" Title: vfs_time_audit
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_TIME_AUDIT" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_TIME_AUDIT" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfs_xattr_tdb.8 b/docs/manpages/vfs_xattr_tdb.8
index ffb31d3441..e416b544b6 100644
--- a/docs/manpages/vfs_xattr_tdb.8
+++ b/docs/manpages/vfs_xattr_tdb.8
@@ -2,12 +2,12 @@
.\" Title: vfs_xattr_tdb
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFS_XATTR_TDB" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "VFS_XATTR_TDB" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/vfstest.1 b/docs/manpages/vfstest.1
index 45d2a50bdc..758377962b 100644
--- a/docs/manpages/vfstest.1
+++ b/docs/manpages/vfstest.1
@@ -2,12 +2,12 @@
.\" Title: vfstest
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: User Commands
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "VFSTEST" "1" "10/29/2012" "Samba 3\&.6" "User Commands"
+.TH "VFSTEST" "1" "12/06/2012" "Samba 3\&.6" "User Commands"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
@@ -60,7 +60,7 @@ The higher this value, the more detail will be logged to the log files about the
Levels above 1 will generate considerable amounts of log data, and should only be used when investigating a problem\&. Levels above 3 are designed for use only by developers and generate HUGE amounts of log data, most of which is extremely cryptic\&.
.sp
Note that specifying this parameter here will override the
-\m[blue]\fB\%smb.conf.5.html#\fR\m[]
+\m[blue]\fBlog level\fR\m[]
parameter in the
smb\&.conf
file\&.
diff --git a/docs/manpages/wbinfo.1 b/docs/manpages/wbinfo.1
index 77b6bff2f6..ee65c16f80 100644
--- a/docs/manpages/wbinfo.1
+++ b/docs/manpages/wbinfo.1
@@ -2,12 +2,12 @@
.\" Title: wbinfo
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: User Commands
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "WBINFO" "1" "10/29/2012" "Samba 3\&.6" "User Commands"
+.TH "WBINFO" "1" "12/06/2012" "Samba 3\&.6" "User Commands"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/winbind_krb5_locator.7 b/docs/manpages/winbind_krb5_locator.7
index 79d79545f1..7a19b535e5 100644
--- a/docs/manpages/winbind_krb5_locator.7
+++ b/docs/manpages/winbind_krb5_locator.7
@@ -2,12 +2,12 @@
.\" Title: winbind_krb5_locator
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: 7
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "WINBIND_KRB5_LOCATOR" "7" "10/29/2012" "Samba 3\&.6" "7"
+.TH "WINBIND_KRB5_LOCATOR" "7" "12/06/2012" "Samba 3\&.6" "7"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
diff --git a/docs/manpages/winbindd.8 b/docs/manpages/winbindd.8
index 20985be0d4..f9da787ce1 100644
--- a/docs/manpages/winbindd.8
+++ b/docs/manpages/winbindd.8
@@ -2,12 +2,12 @@
.\" Title: winbindd
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
-.\" Date: 10/29/2012
+.\" Date: 12/06/2012
.\" Manual: System Administration tools
.\" Source: Samba 3.6
.\" Language: English
.\"
-.TH "WINBINDD" "8" "10/29/2012" "Samba 3\&.6" "System Administration tools"
+.TH "WINBINDD" "8" "12/06/2012" "Samba 3\&.6" "System Administration tools"
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
@@ -173,7 +173,7 @@ The higher this value, the more detail will be logged to the log files about the
Levels above 1 will generate considerable amounts of log data, and should only be used when investigating a problem\&. Levels above 3 are designed for use only by developers and generate HUGE amounts of log data, most of which is extremely cryptic\&.
.sp
Note that specifying this parameter here will override the
-\m[blue]\fB\%smb.conf.5.html#\fR\m[]
+\m[blue]\fBlog level\fR\m[]
parameter in the
smb\&.conf
file\&.
diff --git a/lib/addns/dnsgss.c b/lib/addns/dnsgss.c
index c9037417da..a8b2ea18bc 100644
--- a/lib/addns/dnsgss.c
+++ b/lib/addns/dnsgss.c
@@ -164,6 +164,8 @@ static DNS_ERROR dns_negotiate_gss_ctx_int( TALLOC_CTX *mem_ctx,
struct dns_request *resp;
struct dns_buffer *buf;
struct dns_tkey_record *tkey;
+ struct dns_rrec *tkey_answer = NULL;
+ uint16_t i;
err = dns_receive(mem_ctx, conn, &buf);
if (!ERR_DNS_IS_OK(err)) goto error;
@@ -174,10 +176,16 @@ static DNS_ERROR dns_negotiate_gss_ctx_int( TALLOC_CTX *mem_ctx,
/*
* TODO: Compare id and keyname
*/
-
- if ((resp->num_additionals != 1) ||
- (resp->num_answers == 0) ||
- (resp->answers[0]->type != QTYPE_TKEY)) {
+
+ for (i=0; i < resp->num_answers; i++) {
+ if (resp->answers[i]->type != QTYPE_TKEY) {
+ continue;
+ }
+
+ tkey_answer = resp->answers[i];
+ }
+
+ if (tkey_answer == NULL) {
err = ERROR_DNS_INVALID_MESSAGE;
goto error;
}
diff --git a/lib/replace/replace.c b/lib/replace/replace.c
index d9a96ff8ef..83fa6b3371 100644
--- a/lib/replace/replace.c
+++ b/lib/replace/replace.c
@@ -750,7 +750,7 @@ void *rep_memmem(const void *haystack, size_t haystacklen,
}
#endif
-#ifndef HAVE_VDPRINTF
+#if !defined(HAVE_VDPRINTF) || !defined(HAVE_C99_VSNPRINTF)
int rep_vdprintf(int fd, const char *format, va_list ap)
{
char *s = NULL;
@@ -767,7 +767,7 @@ int rep_vdprintf(int fd, const char *format, va_list ap)
}
#endif
-#ifndef HAVE_DPRINTF
+#if !defined(HAVE_DPRINTF) || !defined(HAVE_C99_VSNPRINTF)
int rep_dprintf(int fd, const char *format, ...)
{
int ret;
diff --git a/lib/replace/replace.h b/lib/replace/replace.h
index c47cf1c1b1..926ccc7bbb 100644
--- a/lib/replace/replace.h
+++ b/lib/replace/replace.h
@@ -355,16 +355,6 @@ int rep_dlclose(void *handle);
/* prototype is in system/network.h */
#endif
-#ifndef HAVE_VDPRINTF
-#define vdprintf rep_vdprintf
-int rep_vdprintf(int fd, const char *format, va_list ap);
-#endif
-
-#ifndef HAVE_DPRINTF
-#define dprintf rep_dprintf
-int rep_dprintf(int fd, const char *format, ...);
-#endif
-
#ifndef PRINTF_ATTRIBUTE
#if (__GNUC__ >= 3) && (__GNUC_MINOR__ >= 1 )
/** Use gcc attribute to check printf fns. a1 is the 1-based index of
@@ -385,7 +375,17 @@ int rep_dprintf(int fd, const char *format, ...);
#endif
#endif
-#ifndef HAVE_VASPRINTF
+#if !defined(HAVE_VDPRINTF) || !defined(HAVE_C99_VSNPRINTF)
+#define vdprintf rep_vdprintf
+int rep_vdprintf(int fd, const char *format, va_list ap) PRINTF_ATTRIBUTE(2,0);
+#endif
+
+#if !defined(HAVE_DPRINTF) || !defined(HAVE_C99_VSNPRINTF)
+#define dprintf rep_dprintf
+int rep_dprintf(int fd, const char *format, ...) PRINTF_ATTRIBUTE(2,3);
+#endif
+
+#if !defined(HAVE_VASPRINTF) || !defined(HAVE_C99_VSNPRINTF)
#define vasprintf rep_vasprintf
int rep_vasprintf(char **ptr, const char *format, va_list ap) PRINTF_ATTRIBUTE(2,0);
#endif
@@ -400,11 +400,29 @@ int rep_snprintf(char *,size_t ,const char *, ...) PRINTF_ATTRIBUTE(3,4);
int rep_vsnprintf(char *,size_t ,const char *, va_list ap) PRINTF_ATTRIBUTE(3,0);
#endif
-#ifndef HAVE_ASPRINTF
+#if !defined(HAVE_ASPRINTF) || !defined(HAVE_C99_VSNPRINTF)
#define asprintf rep_asprintf
int rep_asprintf(char **,const char *, ...) PRINTF_ATTRIBUTE(2,3);
#endif
+#if !defined(HAVE_C99_VSNPRINTF)
+#ifdef REPLACE_BROKEN_PRINTF
+/*
+ * We do not redefine printf by default
+ * as it breaks the build if system headers
+ * use __attribute__((format(printf, 3, 0)))
+ * instead of __attribute__((format(__printf__, 3, 0)))
+ */
+#define printf rep_printf
+#endif
+int rep_printf(const char *, ...) PRINTF_ATTRIBUTE(1,2);
+#endif
+
+#if !defined(HAVE_C99_VSNPRINTF)
+#define fprintf rep_fprintf
+int rep_fprintf(FILE *stream, const char *, ...) PRINTF_ATTRIBUTE(2,3);
+#endif
+
#ifndef HAVE_VSYSLOG
#ifdef HAVE_SYSLOG
#define vsyslog rep_vsyslog
diff --git a/lib/replace/snprintf.c b/lib/replace/snprintf.c
index bca774263e..6b4a711045 100644
--- a/lib/replace/snprintf.c
+++ b/lib/replace/snprintf.c
@@ -1187,7 +1187,7 @@ static int add_cnk_list_entry(struct pr_chunk_x **list,
return max;
}
- int vsnprintf (char *str, size_t count, const char *fmt, va_list args)
+ int rep_vsnprintf (char *str, size_t count, const char *fmt, va_list args)
{
return dopr(str, count, fmt, args);
}
@@ -1200,7 +1200,7 @@ static int add_cnk_list_entry(struct pr_chunk_x **list,
* that doesn't work properly according to the autoconf test.
*/
#if !defined(HAVE_SNPRINTF) || !defined(HAVE_C99_VSNPRINTF)
- int snprintf(char *str,size_t count,const char *fmt,...)
+ int rep_snprintf(char *str,size_t count,const char *fmt,...)
{
size_t ret;
va_list ap;
@@ -1213,7 +1213,7 @@ static int add_cnk_list_entry(struct pr_chunk_x **list,
#endif
#ifndef HAVE_C99_VSNPRINTF
- int printf(const char *fmt, ...)
+ int rep_printf(const char *fmt, ...)
{
va_list ap;
int ret;
@@ -1234,7 +1234,7 @@ static int add_cnk_list_entry(struct pr_chunk_x **list,
#endif
#ifndef HAVE_C99_VSNPRINTF
- int fprintf(FILE *stream, const char *fmt, ...)
+ int rep_fprintf(FILE *stream, const char *fmt, ...)
{
va_list ap;
int ret;
@@ -1256,8 +1256,8 @@ static int add_cnk_list_entry(struct pr_chunk_x **list,
#endif
-#ifndef HAVE_VASPRINTF
- int vasprintf(char **ptr, const char *format, va_list ap)
+#if !defined(HAVE_VASPRINTF) || !defined(HAVE_C99_VSNPRINTF)
+ int rep_vasprintf(char **ptr, const char *format, va_list ap)
{
int ret;
va_list ap2;
@@ -1278,9 +1278,8 @@ static int add_cnk_list_entry(struct pr_chunk_x **list,
}
#endif
-
-#ifndef HAVE_ASPRINTF
- int asprintf(char **ptr, const char *format, ...)
+#if !defined(HAVE_ASPRINTF) || !defined(HAVE_C99_VSNPRINTF)
+ int rep_asprintf(char **ptr, const char *format, ...)
{
va_list ap;
int ret;
diff --git a/lib/tsocket/tsocket.h b/lib/tsocket/tsocket.h
index 3aca536124..98f864e6a5 100644
--- a/lib/tsocket/tsocket.h
+++ b/lib/tsocket/tsocket.h
@@ -627,6 +627,27 @@ int _tsocket_address_unix_from_path(TALLOC_CTX *mem_ctx,
char *tsocket_address_unix_path(const struct tsocket_address *addr,
TALLOC_CTX *mem_ctx);
+/**
+ * @brief Request a syscall optimization for tdgram_recvfrom_send()
+ *
+ * This function is only used to reduce the amount of syscalls and
+ * optimize performance. You should only use this if you know
+ * what you're doing.
+ *
+ * The optimization is off by default.
+ *
+ * @param[in] dgram The tdgram_context of a bsd socket, if this
+ * not a bsd socket the function does nothing.
+ *
+ * @param[in] on The boolean value to turn the optimization on and off.
+ *
+ * @return The old boolean value.
+ *
+ * @see tdgram_recvfrom_send()
+ */
+bool tdgram_bsd_optimize_recvfrom(struct tdgram_context *dgram,
+ bool on);
+
#ifdef DOXYGEN
/**
* @brief Create a tdgram_context for a ipv4 or ipv6 UDP communication.
@@ -689,6 +710,27 @@ int _tdgram_unix_socket(const struct tsocket_address *local,
#endif
/**
+ * @brief Request a syscall optimization for tstream_readv_send()
+ *
+ * This function is only used to reduce the amount of syscalls and
+ * optimize performance. You should only use this if you know
+ * what you're doing.
+ *
+ * The optimization is off by default.
+ *
+ * @param[in] stream The tstream_context of a bsd socket, if this
+ * not a bsd socket the function does nothing.
+ *
+ * @param[in] on The boolean value to turn the optimization on and off.
+ *
+ * @return The old boolean value.
+ *
+ * @see tstream_readv_send()
+ */
+bool tstream_bsd_optimize_readv(struct tstream_context *stream,
+ bool on);
+
+/**
* @brief Connect async to a TCP endpoint and create a tstream_context for the
* stream based communication.
*
diff --git a/lib/tsocket/tsocket_bsd.c b/lib/tsocket/tsocket_bsd.c
index 9e80065227..58598d1a5b 100644
--- a/lib/tsocket/tsocket_bsd.c
+++ b/lib/tsocket/tsocket_bsd.c
@@ -654,6 +654,7 @@ struct tdgram_bsd {
void *event_ptr;
struct tevent_fd *fde;
+ bool optimize_recvfrom;
void *readable_private;
void (*readable_handler)(void *private_data);
@@ -661,6 +662,25 @@ struct tdgram_bsd {
void (*writeable_handler)(void *private_data);
};
+bool tdgram_bsd_optimize_recvfrom(struct tdgram_context *dgram,
+ bool on)
+{
+ struct tdgram_bsd *bsds =
+ talloc_get_type(_tdgram_context_data(dgram),
+ struct tdgram_bsd);
+ bool old;
+
+ if (bsds == NULL) {
+ /* not a bsd socket */
+ return false;
+ }
+
+ old = bsds->optimize_recvfrom;
+ bsds->optimize_recvfrom = on;
+
+ return old;
+}
+
static void tdgram_bsd_fde_handler(struct tevent_context *ev,
struct tevent_fd *fde,
uint16_t flags,
@@ -837,14 +857,25 @@ static struct tevent_req *tdgram_bsd_recvfrom_send(TALLOC_CTX *mem_ctx,
goto post;
}
+
/*
* this is a fast path, not waiting for the
* socket to become explicit readable gains
* about 10%-20% performance in benchmark tests.
*/
- tdgram_bsd_recvfrom_handler(req);
- if (!tevent_req_is_in_progress(req)) {
- goto post;
+ if (bsds->optimize_recvfrom) {
+ /*
+ * We only do the optimization on
+ * recvfrom if the caller asked for it.
+ *
+ * This is needed because in most cases
+ * we preferr to flush send buffers before
+ * receiving incoming requests.
+ */
+ tdgram_bsd_recvfrom_handler(req);
+ if (!tevent_req_is_in_progress(req)) {
+ goto post;
+ }
}
ret = tdgram_bsd_set_readable_handler(bsds, ev,
@@ -1400,6 +1431,7 @@ struct tstream_bsd {
void *event_ptr;
struct tevent_fd *fde;
+ bool optimize_readv;
void *readable_private;
void (*readable_handler)(void *private_data);
@@ -1407,6 +1439,25 @@ struct tstream_bsd {
void (*writeable_handler)(void *private_data);
};
+bool tstream_bsd_optimize_readv(struct tstream_context *stream,
+ bool on)
+{
+ struct tstream_bsd *bsds =
+ talloc_get_type(_tstream_context_data(stream),
+ struct tstream_bsd);
+ bool old;
+
+ if (bsds == NULL) {
+ /* not a bsd socket */
+ return false;
+ }
+
+ old = bsds->optimize_readv;
+ bsds->optimize_readv = on;
+
+ return old;
+}
+
static void tstream_bsd_fde_handler(struct tevent_context *ev,
struct tevent_fd *fde,
uint16_t flags,
@@ -1619,9 +1670,19 @@ static struct tevent_req *tstream_bsd_readv_send(TALLOC_CTX *mem_ctx,
* socket to become explicit readable gains
* about 10%-20% performance in benchmark tests.
*/
- tstream_bsd_readv_handler(req);
- if (!tevent_req_is_in_progress(req)) {
- goto post;
+ if (bsds->optimize_readv) {
+ /*
+ * We only do the optimization on
+ * readv if the caller asked for it.
+ *
+ * This is needed because in most cases
+ * we preferr to flush send buffers before
+ * receiving incoming requests.
+ */
+ tstream_bsd_readv_handler(req);
+ if (!tevent_req_is_in_progress(req)) {
+ goto post;
+ }
}
ret = tstream_bsd_set_readable_handler(bsds, ev,
diff --git a/lib/tsocket/tsocket_helpers.c b/lib/tsocket/tsocket_helpers.c
index 3a41a3efc3..809830d79a 100644
--- a/lib/tsocket/tsocket_helpers.c
+++ b/lib/tsocket/tsocket_helpers.c
@@ -212,6 +212,20 @@ static void tstream_readv_pdu_ask_for_next_vector(struct tevent_req *req)
size_t to_read = 0;
size_t i;
struct tevent_req *subreq;
+ bool optimize = false;
+ bool save_optimize = false;
+
+ if (state->count > 0) {
+ /*
+ * This is not the first time we asked for a vector,
+ * which means parts of the pdu already arrived.
+ *
+ * In this case it make sense to enable
+ * a syscall/performance optimization if the
+ * low level tstream implementation supports it.
+ */
+ optimize = true;
+ }
TALLOC_FREE(state->vector);
state->count = 0;
@@ -255,11 +269,26 @@ static void tstream_readv_pdu_ask_for_next_vector(struct tevent_req *req)
return;
}
+ if (optimize) {
+ /*
+ * If the low level stream is a bsd socket
+ * we will get syscall optimization.
+ *
+ * If it is not a bsd socket
+ * tstream_bsd_optimize_readv() just returns.
+ */
+ save_optimize = tstream_bsd_optimize_readv(state->caller.stream,
+ true);
+ }
subreq = tstream_readv_send(state,
state->caller.ev,
state->caller.stream,
state->vector,
state->count);
+ if (optimize) {
+ tstream_bsd_optimize_readv(state->caller.stream,
+ save_optimize);
+ }
if (tevent_req_nomem(subreq, req)) {
return;
}
diff --git a/nsswitch/pam_winbind.c b/nsswitch/pam_winbind.c
index fc7cdcaea7..3257101223 100644
--- a/nsswitch/pam_winbind.c
+++ b/nsswitch/pam_winbind.c
@@ -2735,9 +2735,10 @@ out:
_pam_free_data_info3(pamh);
}
- _PAM_LOG_FUNCTION_LEAVE("pam_sm_authenticate", ctx, retval);
-
- TALLOC_FREE(ctx);
+ if (ctx != NULL) {
+ _PAM_LOG_FUNCTION_LEAVE("pam_sm_authenticate", ctx, retval);
+ TALLOC_FREE(ctx);
+ }
return retval;
}
diff --git a/packaging/RHEL-CTDB/samba.spec b/packaging/RHEL-CTDB/samba.spec
index d5bbe5f776..3223f38dc9 100644
--- a/packaging/RHEL-CTDB/samba.spec
+++ b/packaging/RHEL-CTDB/samba.spec
@@ -5,7 +5,7 @@ Summary: Samba SMB client and server
Vendor: Samba Team
Packager: Samba Team <samba@samba.org>
Name: samba
-Version: 3.6.9
+Version: 3.6.10
Release: 1GITHASH
Epoch: 0
License: GNU GPL version 3
diff --git a/packaging/RHEL/makerpms.sh b/packaging/RHEL/makerpms.sh
index abaa624516..50872c7b7a 100644
--- a/packaging/RHEL/makerpms.sh
+++ b/packaging/RHEL/makerpms.sh
@@ -20,7 +20,7 @@ SRCDIR=`rpm --eval %_sourcedir`
USERID=`id -u`
GRPID=`id -g`
-VERSION='3.6.9'
+VERSION='3.6.10'
REVISION=''
SPECFILE="samba.spec"
RPMVER=`rpm --version | awk '{print $3}'`
diff --git a/packaging/RHEL/samba.spec b/packaging/RHEL/samba.spec
index d96392076e..1d3a20f539 100644
--- a/packaging/RHEL/samba.spec
+++ b/packaging/RHEL/samba.spec
@@ -11,7 +11,7 @@ Summary: Samba SMB client and server
Vendor: Samba Team
Packager: Samba Team <samba@samba.org>
Name: samba
-Version: 3.6.9
+Version: 3.6.10
Release: 1
Epoch: 0
License: GNU GPL version 3
diff --git a/source3/VERSION b/source3/VERSION
index 25aa4eca61..fd054c710b 100644
--- a/source3/VERSION
+++ b/source3/VERSION
@@ -25,7 +25,7 @@
########################################################
SAMBA_VERSION_MAJOR=3
SAMBA_VERSION_MINOR=6
-SAMBA_VERSION_RELEASE=9
+SAMBA_VERSION_RELEASE=10
########################################################
# Bug fix releases use a letter for the patch revision #
diff --git a/source3/auth/auth_util.c b/source3/auth/auth_util.c
index fc93641fd3..1daddcd2d4 100644
--- a/source3/auth/auth_util.c
+++ b/source3/auth/auth_util.c
@@ -1174,7 +1174,8 @@ struct passwd *smb_getpwnam( TALLOC_CTX *mem_ctx, const char *domuser,
/* make sure we get the case of the username correct */
/* work around 'winbind use default domain = yes' */
- if ( !strchr_m( pw->pw_name, *lp_winbind_separator() ) ) {
+ if ( lp_winbind_use_default_domain() &&
+ !strchr_m( pw->pw_name, *lp_winbind_separator() ) ) {
char *domain;
/* split the domain and username into 2 strings */
diff --git a/source3/configure b/source3/configure
index 669a92dc50..5982975ed6 100755
--- a/source3/configure
+++ b/source3/configure
@@ -13945,32 +13945,15 @@ fi
done
-for ac_header in md5.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "md5.h" "ac_cv_header_md5_h" "$ac_includes_default"
-if test "x$ac_cv_header_md5_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_MD5_H 1
-_ACEOF
-
-fi
-
-done
-
-
samba_cv_md5lib=none
-if test x"$ac_cv_header_md5_h" = x"yes"; then
-
-$as_echo "#define HAVE_MD5_H 1" >>confdefs.h
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MD5Update in -lmd5" >&5
-$as_echo_n "checking for MD5Update in -lmd5... " >&6; }
-if ${ac_cv_lib_md5_MD5Update+:} false; then :
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for MD5Update in -lc" >&5
+$as_echo_n "checking for MD5Update in -lc... " >&6; }
+if ${ac_cv_lib_c_MD5Update+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
-LIBS="-lmd5 $LIBS"
+LIBS="-lc $LIBS"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -13990,24 +13973,22 @@ return MD5Update ();
}
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_md5_MD5Update=yes
+ ac_cv_lib_c_MD5Update=yes
else
- ac_cv_lib_md5_MD5Update=no
+ ac_cv_lib_c_MD5Update=no
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_md5_MD5Update" >&5
-$as_echo "$ac_cv_lib_md5_MD5Update" >&6; }
-if test "x$ac_cv_lib_md5_MD5Update" = xyes; then :
- samba_cv_md5lib=md5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_MD5Update" >&5
+$as_echo "$ac_cv_lib_c_MD5Update" >&6; }
+if test "x$ac_cv_lib_c_MD5Update" = xyes; then :
+ samba_cv_md5lib=""
fi
-fi
-if test x"$ac_cv_header_md5_h" = x"yes" -a \
- x"$samba_cv_md5lib" = x"none" ; then
+if test x"$samba_cv_md5lib" = x"none" ; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for MD5Update in -lmd" >&5
$as_echo_n "checking for MD5Update in -lmd... " >&6; }
if ${ac_cv_lib_md_MD5Update+:} false; then :
@@ -14050,15 +14031,14 @@ fi
fi
-if test x"$ac_cv_header_md5_h" = x"yes" -a \
- x"$samba_cv_md5lib" = x"none" ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MD5Update in -lc" >&5
-$as_echo_n "checking for MD5Update in -lc... " >&6; }
-if ${ac_cv_lib_c_MD5Update+:} false; then :
+if test x"$samba_cv_md5lib" = x"none" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MD5Update in -lmd5" >&5
+$as_echo_n "checking for MD5Update in -lmd5... " >&6; }
+if ${ac_cv_lib_md5_MD5Update+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
-LIBS="-lc $LIBS"
+LIBS="-lmd5 $LIBS"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -14078,32 +14058,47 @@ return MD5Update ();
}
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_c_MD5Update=yes
+ ac_cv_lib_md5_MD5Update=yes
else
- ac_cv_lib_c_MD5Update=no
+ ac_cv_lib_md5_MD5Update=no
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_MD5Update" >&5
-$as_echo "$ac_cv_lib_c_MD5Update" >&6; }
-if test "x$ac_cv_lib_c_MD5Update" = xyes; then :
- samba_cv_md5lib=""
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_md5_MD5Update" >&5
+$as_echo "$ac_cv_lib_md5_MD5Update" >&6; }
+if test "x$ac_cv_lib_md5_MD5Update" = xyes; then :
+ samba_cv_md5lib=md5
fi
fi
if test x"$samba_cv_md5lib" != x"none" ; then
+ for ac_header in md5.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "md5.h" "ac_cv_header_md5_h" "$ac_includes_default"
+if test "x$ac_cv_header_md5_h" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_MD5_H 1
+_ACEOF
+
+fi
+
+done
+
+fi
+
+CRYPTO_MD5_OBJ="../lib/crypto/md5.o"
+if test x"$ac_cv_header_md5_h" = x"yes" -a \
+ x"$samba_cv_md5lib" != x"none" ; then
if test x"$samba_cv_md5lib" != x ; then
LIBS="${LIBS} -l${samba_cv_md5lib}"
- fi
- CRYPTO_MD5_OBJ=
$as_echo "#define HAVE_LIBMD5 1" >>confdefs.h
-else
- CRYPTO_MD5_OBJ="../lib/crypto/md5.o"
+ fi
+ CRYPTO_MD5_OBJ=
fi
@@ -30798,6 +30793,69 @@ $as_echo "#define HAVE_ENCTYPE_ARCFOUR_HMAC 1" >>confdefs.h
found_arcfour_hmac=yes
fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ENCTYPE_AES128_CTS_HMAC_SHA1_96" >&5
+$as_echo_n "checking for ENCTYPE_AES128_CTS_HMAC_SHA1_96... " >&6; }
+if ${samba_cv_HAVE_ENCTYPE_AES128_CTS_HMAC_SHA1_96+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <krb5.h>
+int
+main ()
+{
+krb5_enctype enctype; enctype = ENCTYPE_AES128_CTS_HMAC_SHA1_96;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ samba_cv_HAVE_ENCTYPE_AES128_CTS_HMAC_SHA1_96=yes
+else
+ samba_cv_HAVE_ENCTYPE_AES128_CTS_HMAC_SHA1_96=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $samba_cv_HAVE_ENCTYPE_AES128_CTS_HMAC_SHA1_96" >&5
+$as_echo "$samba_cv_HAVE_ENCTYPE_AES128_CTS_HMAC_SHA1_96" >&6; }
+ if test x"$samba_cv_HAVE_ENCTYPE_AES128_CTS_HMAC_SHA1_96" = x"yes"; then
+
+$as_echo "#define HAVE_ENCTYPE_AES128_CTS_HMAC_SHA1_96 1" >>confdefs.h
+
+ fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ENCTYPE_AES256_CTS_HMAC_SHA1_96" >&5
+$as_echo_n "checking for ENCTYPE_AES256_CTS_HMAC_SHA1_96... " >&6; }
+if ${samba_cv_HAVE_ENCTYPE_AES256_CTS_HMAC_SHA1_96+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <krb5.h>
+int
+main ()
+{
+krb5_enctype enctype; enctype = ENCTYPE_AES256_CTS_HMAC_SHA1_96;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ samba_cv_HAVE_ENCTYPE_AES256_CTS_HMAC_SHA1_96=yes
+else
+ samba_cv_HAVE_ENCTYPE_AES256_CTS_HMAC_SHA1_96=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $samba_cv_HAVE_ENCTYPE_AES256_CTS_HMAC_SHA1_96" >&5
+$as_echo "$samba_cv_HAVE_ENCTYPE_AES256_CTS_HMAC_SHA1_96" >&6; }
+ if test x"$samba_cv_HAVE_ENCTYPE_AES256_CTS_HMAC_SHA1_96" = x"yes"; then
+
+$as_echo "#define HAVE_ENCTYPE_AES256_CTS_HMAC_SHA1_96 1" >>confdefs.h
+
+ fi
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for AP_OPTS_USE_SUBKEY" >&5
$as_echo_n "checking for AP_OPTS_USE_SUBKEY... " >&6; }
if ${samba_cv_HAVE_AP_OPTS_USE_SUBKEY+:} false; then :
diff --git a/source3/configure.in b/source3/configure.in
index 014d8445bb..a29818362c 100644
--- a/source3/configure.in
+++ b/source3/configure.in
@@ -752,35 +752,31 @@ AC_CHECK_HEADERS(netgroup.h)
AC_CHECK_HEADERS(linux/falloc.h)
dnl check for OS implementation of md5 conformant to rfc1321
-AC_CHECK_HEADERS(md5.h)
-
samba_cv_md5lib=none
-if test x"$ac_cv_header_md5_h" = x"yes"; then
- AC_DEFINE(HAVE_MD5_H, 1,
- [Whether md5.h is available.])
- AC_CHECK_LIB(md5, MD5Update, [samba_cv_md5lib=md5])
-fi
+AC_CHECK_LIB(c, MD5Update, [samba_cv_md5lib=""])
-if test x"$ac_cv_header_md5_h" = x"yes" -a \
- x"$samba_cv_md5lib" = x"none" ; then
+if test x"$samba_cv_md5lib" = x"none" ; then
AC_CHECK_LIB(md, MD5Update, [samba_cv_md5lib=md])
fi
-if test x"$ac_cv_header_md5_h" = x"yes" -a \
- x"$samba_cv_md5lib" = x"none" ; then
- AC_CHECK_LIB(c, MD5Update, [samba_cv_md5lib=""])
+if test x"$samba_cv_md5lib" = x"none" ; then
+ AC_CHECK_LIB(md5, MD5Update, [samba_cv_md5lib=md5])
fi
if test x"$samba_cv_md5lib" != x"none" ; then
+ AC_CHECK_HEADERS(md5.h)
+fi
+
+CRYPTO_MD5_OBJ="../lib/crypto/md5.o"
+if test x"$ac_cv_header_md5_h" = x"yes" -a \
+ x"$samba_cv_md5lib" != x"none" ; then
if test x"$samba_cv_md5lib" != x ; then
LIBS="${LIBS} -l${samba_cv_md5lib}"
+ AC_DEFINE(HAVE_LIBMD5, 1,
+ [Whether libmd5 conformant to rfc1321 is available.])
fi
CRYPTO_MD5_OBJ=
- AC_DEFINE(HAVE_LIBMD5, 1,
- [Whether libmd5 conformant to rfc1321 is available.])
-else
- CRYPTO_MD5_OBJ="../lib/crypto/md5.o"
fi
AC_SUBST(CRYPTO_MD5_OBJ)
@@ -4156,6 +4152,27 @@ if test x"$with_ads_support" != x"no"; then
found_arcfour_hmac=yes
fi
+ AC_CACHE_CHECK([for ENCTYPE_AES128_CTS_HMAC_SHA1_96],
+ samba_cv_HAVE_ENCTYPE_AES128_CTS_HMAC_SHA1_96,[
+ AC_TRY_COMPILE([#include <krb5.h>],
+ [krb5_enctype enctype; enctype = ENCTYPE_AES128_CTS_HMAC_SHA1_96;],
+ samba_cv_HAVE_ENCTYPE_AES128_CTS_HMAC_SHA1_96=yes,
+ samba_cv_HAVE_ENCTYPE_AES128_CTS_HMAC_SHA1_96=no)])
+ if test x"$samba_cv_HAVE_ENCTYPE_AES128_CTS_HMAC_SHA1_96" = x"yes"; then
+ AC_DEFINE(HAVE_ENCTYPE_AES128_CTS_HMAC_SHA1_96,1,
+ [Whether the ENCTYPE_AES128_CTS_HMAC_SHA1_96 key type definition is available])
+ fi
+ AC_CACHE_CHECK([for ENCTYPE_AES256_CTS_HMAC_SHA1_96],
+ samba_cv_HAVE_ENCTYPE_AES256_CTS_HMAC_SHA1_96,[
+ AC_TRY_COMPILE([#include <krb5.h>],
+ [krb5_enctype enctype; enctype = ENCTYPE_AES256_CTS_HMAC_SHA1_96;],
+ samba_cv_HAVE_ENCTYPE_AES256_CTS_HMAC_SHA1_96=yes,
+ samba_cv_HAVE_ENCTYPE_AES256_CTS_HMAC_SHA1_96=no)])
+ if test x"$samba_cv_HAVE_ENCTYPE_AES256_CTS_HMAC_SHA1_96" = x"yes"; then
+ AC_DEFINE(HAVE_ENCTYPE_AES256_CTS_HMAC_SHA1_96,1,
+ [Whether the ENCTYPE_AES256_CTS_HMAC_SHA1_96 key type definition is available])
+ fi
+
AC_CACHE_CHECK([for AP_OPTS_USE_SUBKEY],
samba_cv_HAVE_AP_OPTS_USE_SUBKEY,[
AC_TRY_COMPILE([#include <krb5.h>],
diff --git a/source3/include/config.h.in b/source3/include/config.h.in
index 6d17796636..f0234ca883 100644
--- a/source3/include/config.h.in
+++ b/source3/include/config.h.in
@@ -456,6 +456,14 @@
/* Define to 1 if you have the `dup2' function. */
#undef HAVE_DUP2
+/* Whether the ENCTYPE_AES128_CTS_HMAC_SHA1_96 key type definition is
+ available */
+#undef HAVE_ENCTYPE_AES128_CTS_HMAC_SHA1_96
+
+/* Whether the ENCTYPE_AES256_CTS_HMAC_SHA1_96 key type definition is
+ available */
+#undef HAVE_ENCTYPE_AES256_CTS_HMAC_SHA1_96
+
/* Whether the ENCTYPE_ARCFOUR_HMAC key type definition is available */
#undef HAVE_ENCTYPE_ARCFOUR_HMAC
@@ -1419,7 +1427,7 @@
/* Whether the macro for makedev is available */
#undef HAVE_MAKEDEV
-/* Whether md5.h is available. */
+/* Define to 1 if you have the <md5.h> header file. */
#undef HAVE_MD5_H
/* Define to 1 if you have the `memalign' function. */
diff --git a/source3/include/proto.h b/source3/include/proto.h
index 720f431cc7..189b286dd6 100644
--- a/source3/include/proto.h
+++ b/source3/include/proto.h
@@ -1970,8 +1970,7 @@ void cancel_pending_lock_requests_by_fid(files_struct *fsp,
enum file_close_type close_type);
void send_stat_cache_delete_message(struct messaging_context *msg_ctx,
const char *name);
-NTSTATUS can_delete_directory(struct connection_struct *conn,
- const char *dirname);
+NTSTATUS can_delete_directory_fsp(files_struct *fsp);
bool change_to_root_user(void);
struct event_context *smbd_event_context(void);
void contend_level2_oplocks_begin(files_struct *fsp,
diff --git a/source3/include/version.h b/source3/include/version.h
index bba3ee27e1..09ffa743c7 100644
--- a/source3/include/version.h
+++ b/source3/include/version.h
@@ -1,8 +1,8 @@
/* Autogenerated by script/mkversion.sh */
#define SAMBA_VERSION_MAJOR 3
#define SAMBA_VERSION_MINOR 6
-#define SAMBA_VERSION_RELEASE 9
-#define SAMBA_VERSION_OFFICIAL_STRING "3.6.9"
+#define SAMBA_VERSION_RELEASE 10
+#define SAMBA_VERSION_OFFICIAL_STRING "3.6.10"
#ifdef SAMBA_VERSION_VENDOR_FUNCTION
# define SAMBA_VERSION_STRING SAMBA_VERSION_VENDOR_FUNCTION
#else /* SAMBA_VERSION_VENDOR_FUNCTION */
diff --git a/source3/lib/dummysmbd.c b/source3/lib/dummysmbd.c
index 2465e6552b..0ff0f2e874 100644
--- a/source3/lib/dummysmbd.c
+++ b/source3/lib/dummysmbd.c
@@ -44,8 +44,7 @@ void send_stat_cache_delete_message(struct messaging_context *msg_ctx,
{
}
-NTSTATUS can_delete_directory(struct connection_struct *conn,
- const char *dirname)
+NTSTATUS can_delete_directory_fsp(files_struct *fsp)
{
return NT_STATUS_OK;
}
diff --git a/source3/lib/util.c b/source3/lib/util.c
index d751c5bca5..23bb11c378 100644
--- a/source3/lib/util.c
+++ b/source3/lib/util.c
@@ -383,7 +383,7 @@ void smb_set_enclen(char *buf,int len,uint16 enc_ctx_num)
void smb_setlen(char *buf,int len)
{
- _smb_setlen(buf,len);
+ _smb_setlen_large(buf,len);
SCVAL(buf,4,0xFF);
SCVAL(buf,5,'S');
diff --git a/source3/libads/kerberos.c b/source3/libads/kerberos.c
index d496ade71b..6b8f247b2d 100644
--- a/source3/libads/kerberos.c
+++ b/source3/libads/kerberos.c
@@ -850,6 +850,7 @@ bool create_local_private_krb5_conf_for_domain(const char *realm,
int fd;
char *realm_upper = NULL;
bool result = false;
+ char *aes_enctypes = NULL;
if (!lp_create_krb5_conf()) {
return false;
@@ -887,14 +888,33 @@ bool create_local_private_krb5_conf_for_domain(const char *realm,
goto done;
}
+ aes_enctypes = talloc_strdup(fname, "");
+ if (aes_enctypes == NULL) {
+ goto done;
+ }
+
+#ifdef HAVE_ENCTYPE_AES256_CTS_HMAC_SHA1_96
+ aes_enctypes = talloc_asprintf_append(aes_enctypes, "%s", "aes256-cts-hmac-sha1-96 ");
+ if (aes_enctypes == NULL) {
+ goto done;
+ }
+#endif
+#ifdef HAVE_ENCTYPE_AES128_CTS_HMAC_SHA1_96
+ aes_enctypes = talloc_asprintf_append(aes_enctypes, "%s", "aes128-cts-hmac-sha1-96");
+ if (aes_enctypes == NULL) {
+ goto done;
+ }
+#endif
+
file_contents = talloc_asprintf(fname,
"[libdefaults]\n\tdefault_realm = %s\n"
- "\tdefault_tgs_enctypes = RC4-HMAC DES-CBC-CRC DES-CBC-MD5\n"
- "\tdefault_tkt_enctypes = RC4-HMAC DES-CBC-CRC DES-CBC-MD5\n"
- "\tpreferred_enctypes = RC4-HMAC DES-CBC-CRC DES-CBC-MD5\n\n"
+ "\tdefault_tgs_enctypes = %s RC4-HMAC DES-CBC-CRC DES-CBC-MD5\n"
+ "\tdefault_tkt_enctypes = %s RC4-HMAC DES-CBC-CRC DES-CBC-MD5\n"
+ "\tpreferred_enctypes = %s RC4-HMAC DES-CBC-CRC DES-CBC-MD5\n\n"
"[realms]\n\t%s = {\n"
"\t%s\t}\n",
- realm_upper, realm_upper, kdc_ip_string);
+ realm_upper, aes_enctypes, aes_enctypes, aes_enctypes,
+ realm_upper, kdc_ip_string);
if (!file_contents) {
goto done;
diff --git a/source3/libads/kerberos_keytab.c b/source3/libads/kerberos_keytab.c
index 721a8c6f53..badce3e79e 100644
--- a/source3/libads/kerberos_keytab.c
+++ b/source3/libads/kerberos_keytab.c
@@ -261,9 +261,15 @@ int ads_keytab_add_entry(ADS_STRUCT *ads, const char *srvPrinc)
krb5_keytab keytab = NULL;
krb5_data password;
krb5_kvno kvno;
- krb5_enctype enctypes[4] = {
+ krb5_enctype enctypes[6] = {
ENCTYPE_DES_CBC_CRC,
ENCTYPE_DES_CBC_MD5,
+#ifdef HAVE_ENCTYPE_AES128_CTS_HMAC_SHA1_96
+ ENCTYPE_AES128_CTS_HMAC_SHA1_96,
+#endif
+#ifdef HAVE_ENCTYPE_AES256_CTS_HMAC_SHA1_96
+ ENCTYPE_AES256_CTS_HMAC_SHA1_96,
+#endif
ENCTYPE_ARCFOUR_HMAC,
0
};
diff --git a/source3/libads/kerberos_verify.c b/source3/libads/kerberos_verify.c
index d4c68cd0b0..56daf8fb3c 100644
--- a/source3/libads/kerberos_verify.c
+++ b/source3/libads/kerberos_verify.c
@@ -344,6 +344,12 @@ static krb5_error_code ads_secrets_verify_ticket(krb5_context context,
/* Let's make some room for 2 password (old and new)*/
krb5_data passwords[2];
krb5_enctype enctypes[] = {
+#ifdef HAVE_ENCTYPE_AES256_CTS_HMAC_SHA1_96
+ ENCTYPE_AES256_CTS_HMAC_SHA1_96,
+#endif
+#ifdef HAVE_ENCTYPE_AES128_CTS_HMAC_SHA1_96
+ ENCTYPE_AES128_CTS_HMAC_SHA1_96,
+#endif
ENCTYPE_ARCFOUR_HMAC,
ENCTYPE_DES_CBC_CRC,
ENCTYPE_DES_CBC_MD5,
diff --git a/source3/libsmb/cliconnect.c b/source3/libsmb/cliconnect.c
index f03219bb0b..8653ba7d08 100644
--- a/source3/libsmb/cliconnect.c
+++ b/source3/libsmb/cliconnect.c
@@ -94,7 +94,9 @@ static NTSTATUS smb_bytes_talloc_string(struct cli_state *cli,
static void cli_set_session_key (struct cli_state *cli, const DATA_BLOB session_key)
{
- cli->user_session_key = data_blob(session_key.data, session_key.length);
+ cli->user_session_key = data_blob(NULL, 16);
+ data_blob_clear(&cli->user_session_key);
+ memcpy(cli->user_session_key.data, session_key.data, MIN(session_key.length, 16));
}
/****************************************************************************
diff --git a/source3/libsmb/clikrb5.c b/source3/libsmb/clikrb5.c
index 795820555e..dce1df7c9c 100644
--- a/source3/libsmb/clikrb5.c
+++ b/source3/libsmb/clikrb5.c
@@ -865,6 +865,12 @@ int cli_krb5_get_ticket(TALLOC_CTX *mem_ctx,
krb5_ccache ccdef = NULL;
krb5_auth_context auth_context = NULL;
krb5_enctype enc_types[] = {
+#ifdef HAVE_ENCTYPE_AES256_CTS_HMAC_SHA1_96
+ ENCTYPE_AES256_CTS_HMAC_SHA1_96,
+#endif
+#ifdef HAVE_ENCTYPE_AES128_CTS_HMAC_SHA1_96
+ ENCTYPE_AES128_CTS_HMAC_SHA1_96,
+#endif
ENCTYPE_ARCFOUR_HMAC,
ENCTYPE_DES_CBC_MD5,
ENCTYPE_DES_CBC_CRC,
diff --git a/source3/locking/locking.c b/source3/locking/locking.c
index 43798477ab..e60c4a883d 100644
--- a/source3/locking/locking.c
+++ b/source3/locking/locking.c
@@ -1476,8 +1476,7 @@ NTSTATUS can_set_delete_on_close(files_struct *fsp, uint32 dosmode)
return NT_STATUS_ACCESS_DENIED;
}
- return can_delete_directory(fsp->conn,
- fsp->fsp_name->base_name);
+ return can_delete_directory_fsp(fsp);
}
return NT_STATUS_OK;
diff --git a/source3/modules/vfs_acl_common.c b/source3/modules/vfs_acl_common.c
index a537011098..11c34e0539 100644
--- a/source3/modules/vfs_acl_common.c
+++ b/source3/modules/vfs_acl_common.c
@@ -646,7 +646,22 @@ static int open_acl_common(vfs_handle_struct *handle,
get_current_nttok(handle->conn),
fsp->access_mask,
&access_granted);
- if (!NT_STATUS_IS_OK(status)) {
+ /*
+ * Check if we need to override ACCESS_DENIED for DELETE_ACCESS.
+ * Do this if we only failed open on DELETE_ACCESS, and
+ * we have permission to delete from the parent directory.
+ */
+ if (NT_STATUS_EQUAL(status, NT_STATUS_ACCESS_DENIED) &&
+ (fsp->access_mask & DELETE_ACCESS) &&
+ (access_granted == DELETE_ACCESS) &&
+ can_delete_file_in_directory(handle->conn, smb_fname)) {
+ DEBUG(10,("open_acl_xattr: "
+ "overrode "
+ "DELETE_ACCESS on "
+ "file %s\n",
+ smb_fname_str_dbg(smb_fname)));
+ status = NT_STATUS_OK;
+ } else if (!NT_STATUS_IS_OK(status)) {
DEBUG(10,("open_acl_xattr: %s open "
"for access 0x%x (0x%x) "
"refused with error %s\n",
diff --git a/source3/modules/vfs_aio_pthread.c b/source3/modules/vfs_aio_pthread.c
index ceef822d00..662781126e 100644
--- a/source3/modules/vfs_aio_pthread.c
+++ b/source3/modules/vfs_aio_pthread.c
@@ -74,6 +74,7 @@ static bool init_aio_threadpool(struct vfs_handle_struct *handle)
struct fd_event *sock_event = NULL;
int ret = 0;
int num_threads;
+ int fd;
if (pool) {
return true;
@@ -85,9 +86,14 @@ static bool init_aio_threadpool(struct vfs_handle_struct *handle)
errno = ret;
return false;
}
+
+ fd = pthreadpool_signal_fd(pool);
+
+ set_blocking(fd, false);
+
sock_event = tevent_add_fd(server_event_context(),
NULL,
- pthreadpool_signal_fd(pool),
+ fd,
TEVENT_FD_READ,
aio_pthread_handle_completion,
NULL);
@@ -290,25 +296,43 @@ static void aio_pthread_handle_completion(struct event_context *event_ctx,
return;
}
- ret = pthreadpool_finished_job(pool, &jobid);
- if (ret) {
- smb_panic("aio_pthread_handle_completion");
- return;
- }
+ while (true) {
+ ret = pthreadpool_finished_job(pool, &jobid);
- pd = find_private_data_by_jobid(jobid);
- if (pd == NULL) {
- DEBUG(1, ("aio_pthread_handle_completion cannot find jobid %d\n",
- jobid));
- return;
- }
+ if (ret == EINTR || ret == EAGAIN) {
+ return;
+ }
+#ifdef EWOULDBLOCK
+ if (ret == EWOULDBLOCK) {
+ return;
+ }
+#endif
- aio_ex = (struct aio_extra *)pd->aiocb->aio_sigevent.sigev_value.sival_ptr;
- smbd_aio_complete_aio_ex(aio_ex);
+ if (ret == ECANCELED) {
+ return;
+ }
- DEBUG(10,("aio_pthread_handle_completion: jobid %d completed\n",
- jobid ));
- TALLOC_FREE(aio_ex);
+ if (ret) {
+ smb_panic("aio_pthread_handle_completion");
+ return;
+ }
+
+ pd = find_private_data_by_jobid(jobid);
+ if (pd == NULL) {
+ DEBUG(1, ("aio_pthread_handle_completion cannot find "
+ "jobid %d\n", jobid));
+ return;
+ }
+
+ aio_ex = (struct aio_extra *)
+ pd->aiocb->aio_sigevent.sigev_value.sival_ptr;
+
+ smbd_aio_complete_aio_ex(aio_ex);
+
+ DEBUG(10,("aio_pthread_handle_completion: jobid %d "
+ "completed\n", jobid ));
+ TALLOC_FREE(aio_ex);
+ }
}
/************************************************************************
diff --git a/source3/rpc_client/cli_lsarpc.c b/source3/rpc_client/cli_lsarpc.c
index 99e0262dfb..330774d9d3 100644
--- a/source3/rpc_client/cli_lsarpc.c
+++ b/source3/rpc_client/cli_lsarpc.c
@@ -330,16 +330,16 @@ static NTSTATUS dcerpc_lsa_lookup_sids_noalloc(struct dcerpc_binding_handle *h,
* at 20480 for win2k3, but we keep it at a save 1000 for now. */
#define LOOKUP_SIDS_HUNK_SIZE 1000
-static NTSTATUS dcerpc_lsa_lookup_sids_generic(struct dcerpc_binding_handle *h,
- TALLOC_CTX *mem_ctx,
- struct policy_handle *pol,
- int num_sids,
- const struct dom_sid *sids,
- char ***pdomains,
- char ***pnames,
- enum lsa_SidType **ptypes,
- bool use_lookupsids3,
- NTSTATUS *presult)
+NTSTATUS dcerpc_lsa_lookup_sids_generic(struct dcerpc_binding_handle *h,
+ TALLOC_CTX *mem_ctx,
+ struct policy_handle *pol,
+ int num_sids,
+ const struct dom_sid *sids,
+ char ***pdomains,
+ char ***pnames,
+ enum lsa_SidType **ptypes,
+ bool use_lookupsids3,
+ NTSTATUS *presult)
{
NTSTATUS status = NT_STATUS_OK;
NTSTATUS result = NT_STATUS_OK;
@@ -539,48 +539,19 @@ NTSTATUS dcerpc_lsa_lookup_sids3(struct dcerpc_binding_handle *h,
result);
}
-NTSTATUS rpccli_lsa_lookup_sids3(struct rpc_pipe_client *cli,
- TALLOC_CTX *mem_ctx,
- struct policy_handle *pol,
- int num_sids,
- const struct dom_sid *sids,
- char ***pdomains,
- char ***pnames,
- enum lsa_SidType **ptypes)
-{
- NTSTATUS status;
- NTSTATUS result = NT_STATUS_UNSUCCESSFUL;
-
- status = dcerpc_lsa_lookup_sids_generic(cli->binding_handle,
- mem_ctx,
- pol,
- num_sids,
- sids,
- pdomains,
- pnames,
- ptypes,
- true,
- &result);
- if (!NT_STATUS_IS_OK(status)) {
- return status;
- }
-
- return result;
-}
-
/** Lookup a list of names */
-static NTSTATUS dcerpc_lsa_lookup_names_generic(struct dcerpc_binding_handle *h,
- TALLOC_CTX *mem_ctx,
- struct policy_handle *pol,
- uint32_t num_names,
- const char **names,
- const char ***dom_names,
- enum lsa_LookupNamesLevel level,
- struct dom_sid **sids,
- enum lsa_SidType **types,
- bool use_lookupnames4,
- NTSTATUS *presult)
+NTSTATUS dcerpc_lsa_lookup_names_generic(struct dcerpc_binding_handle *h,
+ TALLOC_CTX *mem_ctx,
+ struct policy_handle *pol,
+ uint32_t num_names,
+ const char **names,
+ const char ***dom_names,
+ enum lsa_LookupNamesLevel level,
+ struct dom_sid **sids,
+ enum lsa_SidType **types,
+ bool use_lookupnames4,
+ NTSTATUS *presult)
{
NTSTATUS status;
struct lsa_String *lsa_names = NULL;
@@ -790,33 +761,3 @@ NTSTATUS dcerpc_lsa_lookup_names4(struct dcerpc_binding_handle *h,
true,
result);
}
-
-NTSTATUS rpccli_lsa_lookup_names4(struct rpc_pipe_client *cli,
- TALLOC_CTX *mem_ctx,
- struct policy_handle *pol,
- int num_names,
- const char **names,
- const char ***dom_names,
- int level,
- struct dom_sid **sids,
- enum lsa_SidType **types)
-{
- NTSTATUS status;
- NTSTATUS result = NT_STATUS_UNSUCCESSFUL;
-
- status = dcerpc_lsa_lookup_names4(cli->binding_handle,
- mem_ctx,
- pol,
- num_names,
- names,
- dom_names,
- level,
- sids,
- types,
- &result);
- if (!NT_STATUS_IS_OK(status)) {
- return status;
- }
-
- return result;
-}
diff --git a/source3/rpc_client/cli_lsarpc.h b/source3/rpc_client/cli_lsarpc.h
index a26193e5b4..36afe0bdfb 100644
--- a/source3/rpc_client/cli_lsarpc.h
+++ b/source3/rpc_client/cli_lsarpc.h
@@ -125,7 +125,16 @@ NTSTATUS rpccli_lsa_lookup_sids(struct rpc_pipe_client *cli,
char ***pdomains,
char ***pnames,
enum lsa_SidType **ptypes);
-
+NTSTATUS dcerpc_lsa_lookup_sids_generic(struct dcerpc_binding_handle *h,
+ TALLOC_CTX *mem_ctx,
+ struct policy_handle *pol,
+ int num_sids,
+ const struct dom_sid *sids,
+ char ***pdomains,
+ char ***pnames,
+ enum lsa_SidType **ptypes,
+ bool use_lookupsids3,
+ NTSTATUS *presult);
/**
* @brief Look up the names that correspond to an array of sids.
*
@@ -158,15 +167,6 @@ NTSTATUS dcerpc_lsa_lookup_sids3(struct dcerpc_binding_handle *h,
char ***pnames,
enum lsa_SidType **ptypes,
NTSTATUS *result);
-NTSTATUS rpccli_lsa_lookup_sids3(struct rpc_pipe_client *cli,
- TALLOC_CTX *mem_ctx,
- struct policy_handle *pol,
- int num_sids,
- const struct dom_sid *sids,
- char ***pdomains,
- char ***pnames,
- enum lsa_SidType **ptypes);
-
NTSTATUS dcerpc_lsa_lookup_names(struct dcerpc_binding_handle *h,
TALLOC_CTX *mem_ctx,
struct policy_handle *pol,
@@ -196,14 +196,17 @@ NTSTATUS dcerpc_lsa_lookup_names4(struct dcerpc_binding_handle *h,
struct dom_sid **sids,
enum lsa_SidType **types,
NTSTATUS *result);
-NTSTATUS rpccli_lsa_lookup_names4(struct rpc_pipe_client *cli,
- TALLOC_CTX *mem_ctx,
- struct policy_handle *pol, int num_names,
- const char **names,
- const char ***dom_names,
- int level,
- struct dom_sid **sids,
- enum lsa_SidType **types);
+NTSTATUS dcerpc_lsa_lookup_names_generic(struct dcerpc_binding_handle *h,
+ TALLOC_CTX *mem_ctx,
+ struct policy_handle *pol,
+ uint32_t num_names,
+ const char **names,
+ const char ***dom_names,
+ enum lsa_LookupNamesLevel level,
+ struct dom_sid **sids,
+ enum lsa_SidType **types,
+ bool use_lookupnames4,
+ NTSTATUS *presult);
bool fetch_domain_sid( char *domain, char *remote_machine, struct dom_sid *psid);
diff --git a/source3/rpc_client/cli_pipe.c b/source3/rpc_client/cli_pipe.c
index ec58b3d646..4e5fd71e89 100644
--- a/source3/rpc_client/cli_pipe.c
+++ b/source3/rpc_client/cli_pipe.c
@@ -2450,7 +2450,7 @@ static NTSTATUS rpc_pipe_open_tcp_port(TALLOC_CTX *mem_ctx, const char *host,
result->max_xmit_frag = RPC_MAX_PDU_FRAG_LEN;
result->max_recv_frag = RPC_MAX_PDU_FRAG_LEN;
- if (!resolve_name(host, &addr, 0, false)) {
+ if (!resolve_name(host, &addr, NBT_NAME_SERVER, false)) {
status = NT_STATUS_NOT_FOUND;
goto fail;
}
diff --git a/source3/rpc_server/spoolss/srv_spoolss_nt.c b/source3/rpc_server/spoolss/srv_spoolss_nt.c
index 8868a9894e..b5949e44cc 100644
--- a/source3/rpc_server/spoolss/srv_spoolss_nt.c
+++ b/source3/rpc_server/spoolss/srv_spoolss_nt.c
@@ -1942,24 +1942,12 @@ WERROR _spoolss_OpenPrinterEx(struct pipes_struct *p,
* save it here in case we get a job submission on this handle
*/
- if ((Printer->printer_type != SPLHND_SERVER) &&
- r->in.devmode_ctr.devmode) {
+ if ((Printer->printer_type != SPLHND_SERVER)
+ && (r->in.devmode_ctr.devmode != NULL)) {
copy_devicemode(NULL, r->in.devmode_ctr.devmode,
&Printer->devmode);
}
-#if 0 /* JERRY -- I'm doubtful this is really effective */
- /* HACK ALERT!!! Sleep for 1/3 of a second to try trigger a LAN/WAN
- optimization in Windows 2000 clients --jerry */
-
- if ( (r->in.access_mask == PRINTER_ACCESS_ADMINISTER)
- && (RA_WIN2K == get_remote_arch()) )
- {
- DEBUG(10,("_spoolss_OpenPrinterEx: Enabling LAN/WAN hack for Win2k clients.\n"));
- sys_usleep( 500000 );
- }
-#endif
-
return WERR_OK;
}
@@ -4037,8 +4025,22 @@ static WERROR construct_printer_info2(TALLOC_CTX *mem_ctx,
r->cjobs = count;
r->averageppm = info2->averageppm;
- copy_devicemode(mem_ctx, info2->devmode, &r->devmode);
- if (!r->devmode) {
+ if (info2->devmode != NULL) {
+ result = copy_devicemode(mem_ctx,
+ info2->devmode,
+ &r->devmode);
+ if (!W_ERROR_IS_OK(result)) {
+ return result;
+ }
+ } else if (lp_default_devmode(snum)) {
+ result = spoolss_create_default_devmode(mem_ctx,
+ info2->printername,
+ &r->devmode);
+ if (!W_ERROR_IS_OK(result)) {
+ return result;
+ }
+ } else {
+ r->devmode = NULL;
DEBUG(8,("Returning NULL Devicemode!\n"));
}
@@ -4218,8 +4220,22 @@ static WERROR construct_printer_info8(TALLOC_CTX *mem_ctx,
return result;
}
- copy_devicemode(mem_ctx, info2->devmode, &r->devmode);
- if (!r->devmode) {
+ if (info2->devmode != NULL) {
+ result = copy_devicemode(mem_ctx,
+ info2->devmode,
+ &r->devmode);
+ if (!W_ERROR_IS_OK(result)) {
+ return result;
+ }
+ } else if (lp_default_devmode(snum)) {
+ result = spoolss_create_default_devmode(mem_ctx,
+ info2->printername,
+ &r->devmode);
+ if (!W_ERROR_IS_OK(result)) {
+ return result;
+ }
+ } else {
+ r->devmode = NULL;
DEBUG(8,("Returning NULL Devicemode!\n"));
}
diff --git a/source3/smbd/dir.c b/source3/smbd/dir.c
index 9108a80c6c..92be816a4e 100644
--- a/source3/smbd/dir.c
+++ b/source3/smbd/dir.c
@@ -1643,16 +1643,19 @@ bool SearchDir(struct smb_Dir *dirp, const char *name, long *poffset)
Is this directory empty ?
*****************************************************************/
-NTSTATUS can_delete_directory(struct connection_struct *conn,
- const char *dirname)
+NTSTATUS can_delete_directory_fsp(files_struct *fsp)
{
NTSTATUS status = NT_STATUS_OK;
long dirpos = 0;
const char *dname = NULL;
char *talloced = NULL;
SMB_STRUCT_STAT st;
- struct smb_Dir *dir_hnd = OpenDir(talloc_tos(), conn,
- dirname, NULL, 0);
+ struct connection_struct *conn = fsp->conn;
+ struct smb_Dir *dir_hnd = OpenDir_fsp(talloc_tos(),
+ conn,
+ fsp,
+ NULL,
+ 0);
if (!dir_hnd) {
return map_nt_error_from_unix(errno);
@@ -1667,12 +1670,12 @@ NTSTATUS can_delete_directory(struct connection_struct *conn,
}
}
- if (!is_visible_file(conn, dirname, dname, &st, True)) {
+ if (!is_visible_file(conn, fsp->fsp_name->base_name, dname, &st, True)) {
TALLOC_FREE(talloced);
continue;
}
- DEBUG(10,("can_delete_directory: got name %s - can't delete\n",
+ DEBUG(10,("can_delete_directory_fsp: got name %s - can't delete\n",
dname ));
status = NT_STATUS_DIRECTORY_NOT_EMPTY;
break;
diff --git a/source3/smbd/open.c b/source3/smbd/open.c
index 6b94a6d247..d10b6978be 100644
--- a/source3/smbd/open.c
+++ b/source3/smbd/open.c
@@ -58,6 +58,13 @@ NTSTATUS smb1_file_se_access_check(struct connection_struct *conn,
return NT_STATUS_OK;
}
+ /*
+ * If we can access the path to this file, by
+ * default we have FILE_READ_ATTRIBUTES from the
+ * containing directory. See the section:
+ * "Algorithm to Check Access to an Existing File"
+ * in MS-FSA.pdf.
+ */
return se_access_check(sd,
token,
(access_desired & ~FILE_READ_ATTRIBUTES),
@@ -1416,7 +1423,14 @@ NTSTATUS smbd_calculate_access_mask(connection_struct *conn,
}
}
- access_mask = access_granted;
+ /*
+ * If we can access the path to this file, by
+ * default we have FILE_READ_ATTRIBUTES from the
+ * containing directory. See the section.
+ * "Algorithm to Check Access to an Existing File"
+ * in MS-FSA.pdf.
+ */
+ access_mask = access_granted | FILE_READ_ATTRIBUTES;
} else {
access_mask = FILE_GENERIC_ALL;
}
@@ -2752,8 +2766,8 @@ static NTSTATUS open_directory(connection_struct *conn,
mtimespec = smb_dname->st.st_ex_mtime;
- /* Temporary access mask used to open the directory fd. */
- fsp->access_mask = FILE_READ_DATA | FILE_READ_ATTRIBUTES;
+ fsp->access_mask = access_mask;
+
#ifdef O_DIRECTORY
status = fd_open(conn, fsp, O_RDONLY|O_DIRECTORY, 0);
#else
diff --git a/source3/smbd/posix_acls.c b/source3/smbd/posix_acls.c
index 22ad40faec..8d6e7ecea4 100644
--- a/source3/smbd/posix_acls.c
+++ b/source3/smbd/posix_acls.c
@@ -1372,7 +1372,11 @@ static bool ensure_canon_entry_valid(connection_struct *conn,
for (pace = *pp_ace; pace; pace = pace->next) {
if (pace->type == SMB_ACL_USER_OBJ) {
- if (setting_acl && !is_default_acl) {
+ if (setting_acl) {
+ /*
+ * Ensure we have default parameters for the
+ * user (owner) even on default ACLs.
+ */
apply_default_perms(params, is_directory, pace, S_IRUSR);
}
got_user = True;
@@ -1452,9 +1456,11 @@ static bool ensure_canon_entry_valid(connection_struct *conn,
pace->perms = pace_other->perms;
}
- if (!is_default_acl) {
- apply_default_perms(params, is_directory, pace, S_IRUSR);
- }
+ /*
+ * Ensure we have default parameters for the
+ * user (owner) even on default ACLs.
+ */
+ apply_default_perms(params, is_directory, pace, S_IRUSR);
} else {
pace->perms = unix_perms_to_acl_perms(pst->st_ex_mode, S_IRUSR, S_IWUSR, S_IXUSR);
}
diff --git a/source3/smbd/process.c b/source3/smbd/process.c
index 5aa19cbee0..358d0515ae 100644
--- a/source3/smbd/process.c
+++ b/source3/smbd/process.c
@@ -151,7 +151,7 @@ bool srv_send_smb(struct smbd_server_connection *sconn, char *buffer,
}
}
- len = smb_len(buf_out) + 4;
+ len = smb_len_large(buf_out) + 4;
ret = write_data(sconn->sock, buf_out+nwritten, len - nwritten);
if (ret <= 0) {
@@ -2030,7 +2030,8 @@ void chain_reply(struct smb_request *req)
* example).
*/
req->chain_outbuf = TALLOC_REALLOC_ARRAY(
- req, req->outbuf, uint8_t, smb_len(req->outbuf) + 4);
+ req, req->outbuf, uint8_t,
+ smb_len_large(req->outbuf) + 4);
if (req->chain_outbuf == NULL) {
smb_panic("talloc failed");
}
diff --git a/source3/smbd/trans2.c b/source3/smbd/trans2.c
index 9514c72fb8..bdbdbc0aee 100644
--- a/source3/smbd/trans2.c
+++ b/source3/smbd/trans2.c
@@ -4062,7 +4062,7 @@ static NTSTATUS marshall_stream_info(unsigned int num_streams,
unsigned int i;
unsigned int ofs = 0;
- for (i = 0; i < num_streams && ofs <= max_data_bytes; i++) {
+ for (i = 0; i < num_streams; i++) {
unsigned int next_offset;
size_t namelen;
smb_ucs2_t *namebuf;
@@ -4081,6 +4081,16 @@ static NTSTATUS marshall_stream_info(unsigned int num_streams,
namelen -= 2;
+ /*
+ * We cannot overflow ...
+ */
+ if ((ofs + 24 + namelen) > max_data_bytes) {
+ DEBUG(10, ("refusing to overflow reply at stream %u\n",
+ i));
+ TALLOC_FREE(namebuf);
+ return STATUS_BUFFER_OVERFLOW;
+ }
+
SIVAL(data, ofs+4, namelen);
SOFF_T(data, ofs+8, streams[i].size);
SOFF_T(data, ofs+16, streams[i].alloc_size);
@@ -4095,6 +4105,14 @@ static NTSTATUS marshall_stream_info(unsigned int num_streams,
else {
unsigned int align = ndr_align_size(next_offset, 8);
+ if ((next_offset + align) > max_data_bytes) {
+ DEBUG(10, ("refusing to overflow align "
+ "reply at stream %u\n",
+ i));
+ TALLOC_FREE(namebuf);
+ return STATUS_BUFFER_OVERFLOW;
+ }
+
memset(data+next_offset, 0, align);
next_offset += align;
@@ -4105,6 +4123,8 @@ static NTSTATUS marshall_stream_info(unsigned int num_streams,
ofs = next_offset;
}
+ DEBUG(10, ("max_data: %u, data_size: %u\n", max_data_bytes, ofs));
+
*data_size = ofs;
return NT_STATUS_OK;
@@ -4694,6 +4714,7 @@ NTSTATUS smbd_do_qfilepathinfo(connection_struct *conn,
if (!NT_STATUS_IS_OK(status)) {
DEBUG(10, ("marshall_stream_info failed: %s\n",
nt_errstr(status)));
+ TALLOC_FREE(streams);
return status;
}
diff --git a/source3/utils/net_ads.c b/source3/utils/net_ads.c
index f751d688aa..8f8b7b4cae 100644
--- a/source3/utils/net_ads.c
+++ b/source3/utils/net_ads.c
@@ -37,6 +37,7 @@
#include "krb5_env.h"
#include "../libcli/security/security.h"
#include "libsmb/libsmb.h"
+#include "utils/net_dns.h"
#ifdef HAVE_ADS
@@ -1123,12 +1124,9 @@ static WERROR check_ads_config( void )
#if defined(WITH_DNS_UPDATES)
#include "../lib/addns/dns.h"
-DNS_ERROR DoDNSUpdate(char *pszServerName,
- const char *pszDomainName, const char *pszHostName,
- const struct sockaddr_storage *sslist,
- size_t num_addrs );
-static NTSTATUS net_update_dns_internal(TALLOC_CTX *ctx, ADS_STRUCT *ads,
+static NTSTATUS net_update_dns_internal(struct net_context *c,
+ TALLOC_CTX *ctx, ADS_STRUCT *ads,
const char *machine_name,
const struct sockaddr_storage *addrs,
int num_addrs)
@@ -1190,7 +1188,7 @@ static NTSTATUS net_update_dns_internal(TALLOC_CTX *ctx, ADS_STRUCT *ads,
status = ads_dns_lookup_ns( ctx, root_domain, &nameservers, &ns_count );
if ( !NT_STATUS_IS_OK(status) || (ns_count == 0)) {
- DEBUG(3,("net_ads_join: Failed to find name server for the %s "
+ DEBUG(3,("net_update_dns_internal: Failed to find name server for the %s "
"realm\n", ads->config.realm));
goto done;
}
@@ -1201,12 +1199,25 @@ static NTSTATUS net_update_dns_internal(TALLOC_CTX *ctx, ADS_STRUCT *ads,
for (i=0; i < ns_count; i++) {
+ uint32_t flags = DNS_UPDATE_SIGNED |
+ DNS_UPDATE_UNSIGNED |
+ DNS_UPDATE_UNSIGNED_SUFFICIENT |
+ DNS_UPDATE_PROBE |
+ DNS_UPDATE_PROBE_SUFFICIENT;
+
+ if (c->opt_force) {
+ flags &= ~DNS_UPDATE_PROBE_SUFFICIENT;
+ flags &= ~DNS_UPDATE_UNSIGNED_SUFFICIENT;
+ }
+
+ status = NT_STATUS_UNSUCCESSFUL;
+
/* Now perform the dns update - we'll try non-secure and if we fail,
we'll follow it up with a secure update */
fstrcpy( dns_server, nameservers[i].hostname );
- dns_err = DoDNSUpdate(dns_server, dnsdomain, machine_name, addrs, num_addrs);
+ dns_err = DoDNSUpdate(dns_server, dnsdomain, machine_name, addrs, num_addrs, flags);
if (ERR_DNS_IS_OK(dns_err)) {
status = NT_STATUS_OK;
goto done;
@@ -1233,7 +1244,8 @@ done:
return status;
}
-static NTSTATUS net_update_dns_ext(TALLOC_CTX *mem_ctx, ADS_STRUCT *ads,
+static NTSTATUS net_update_dns_ext(struct net_context *c,
+ TALLOC_CTX *mem_ctx, ADS_STRUCT *ads,
const char *hostname,
struct sockaddr_storage *iplist,
int num_addrs)
@@ -1263,18 +1275,18 @@ static NTSTATUS net_update_dns_ext(TALLOC_CTX *mem_ctx, ADS_STRUCT *ads,
iplist = iplist_alloc;
}
- status = net_update_dns_internal(mem_ctx, ads, machine_name,
+ status = net_update_dns_internal(c, mem_ctx, ads, machine_name,
iplist, num_addrs);
SAFE_FREE(iplist_alloc);
return status;
}
-static NTSTATUS net_update_dns(TALLOC_CTX *mem_ctx, ADS_STRUCT *ads, const char *hostname)
+static NTSTATUS net_update_dns(struct net_context *c, TALLOC_CTX *mem_ctx, ADS_STRUCT *ads, const char *hostname)
{
NTSTATUS status;
- status = net_update_dns_ext(mem_ctx, ads, hostname, NULL, 0);
+ status = net_update_dns_ext(c, mem_ctx, ads, hostname, NULL, 0);
return status;
}
#endif
@@ -1436,7 +1448,7 @@ int net_ads_join(struct net_context *c, int argc, const char **argv)
d_printf(_("Using short domain name -- %s\n"), r->out.netbios_domain_name);
if (r->out.dns_domain_name) {
- d_printf(_("Joined '%s' to realm '%s'\n"), r->in.machine_name,
+ d_printf(_("Joined '%s' to dns domain '%s'\n"), r->in.machine_name,
r->out.dns_domain_name);
} else {
d_printf(_("Joined '%s' to domain '%s'\n"), r->in.machine_name,
@@ -1479,7 +1491,7 @@ int net_ads_join(struct net_context *c, int argc, const char **argv)
ads_kinit_password( ads_dns );
}
- if ( !ads_dns || !NT_STATUS_IS_OK(net_update_dns( ctx, ads_dns, NULL)) ) {
+ if ( !ads_dns || !NT_STATUS_IS_OK(net_update_dns(c, ctx, ads_dns, NULL)) ) {
d_fprintf( stderr, _("DNS update failed!\n") );
}
@@ -1584,7 +1596,7 @@ static int net_ads_dns_register(struct net_context *c, int argc, const char **ar
return -1;
}
- ntstatus = net_update_dns_ext(ctx, ads, hostname, addrs, num_addrs);
+ ntstatus = net_update_dns_ext(c, ctx, ads, hostname, addrs, num_addrs);
if (!NT_STATUS_IS_OK(ntstatus)) {
d_fprintf( stderr, _("DNS update failed!\n") );
ads_destroy( &ads );
@@ -1605,10 +1617,6 @@ static int net_ads_dns_register(struct net_context *c, int argc, const char **ar
#endif
}
-#if defined(WITH_DNS_UPDATES)
-DNS_ERROR do_gethostbyname(const char *server, const char *host);
-#endif
-
static int net_ads_dns_gethostbyname(struct net_context *c, int argc, const char **argv)
{
#if defined(WITH_DNS_UPDATES)
diff --git a/source3/utils/net_dns.c b/source3/utils/net_dns.c
index 5fbdc0a70f..eda0492cee 100644
--- a/source3/utils/net_dns.c
+++ b/source3/utils/net_dns.c
@@ -22,23 +22,17 @@
#include "includes.h"
#include "utils/net.h"
#include "../lib/addns/dns.h"
+#include "utils/net_dns.h"
#if defined(WITH_DNS_UPDATES)
-/*
- * Silly prototype to get rid of a warning
- */
-
-DNS_ERROR DoDNSUpdate(char *pszServerName,
- const char *pszDomainName, const char *pszHostName,
- const struct sockaddr_storage *sslist,
- size_t num_addrs );
/*********************************************************************
*********************************************************************/
DNS_ERROR DoDNSUpdate(char *pszServerName,
const char *pszDomainName, const char *pszHostName,
- const struct sockaddr_storage *sslist, size_t num_addrs )
+ const struct sockaddr_storage *sslist, size_t num_addrs,
+ uint32_t flags)
{
DNS_ERROR err;
struct dns_connection *conn;
@@ -46,6 +40,14 @@ DNS_ERROR DoDNSUpdate(char *pszServerName,
OM_uint32 minor;
struct dns_update_request *req, *resp;
+ DEBUG(10,("DoDNSUpdate called with flags: 0x%08x\n", flags));
+
+ if (!(flags & DNS_UPDATE_SIGNED) &&
+ !(flags & DNS_UPDATE_UNSIGNED) &&
+ !(flags & DNS_UPDATE_PROBE)) {
+ return ERROR_DNS_INVALID_PARAMETER;
+ }
+
if ( (num_addrs <= 0) || !sslist ) {
return ERROR_DNS_INVALID_PARAMETER;
}
@@ -59,45 +61,65 @@ DNS_ERROR DoDNSUpdate(char *pszServerName,
goto error;
}
- /*
- * Probe if everything's fine
- */
+ if (flags & DNS_UPDATE_PROBE) {
- err = dns_create_probe(mem_ctx, pszDomainName, pszHostName,
- num_addrs, sslist, &req);
- if (!ERR_DNS_IS_OK(err)) goto error;
+ /*
+ * Probe if everything's fine
+ */
- err = dns_update_transaction(mem_ctx, conn, req, &resp);
- if (!ERR_DNS_IS_OK(err)) goto error;
+ err = dns_create_probe(mem_ctx, pszDomainName, pszHostName,
+ num_addrs, sslist, &req);
+ if (!ERR_DNS_IS_OK(err)) goto error;
+
+ err = dns_update_transaction(mem_ctx, conn, req, &resp);
+ if (!ERR_DNS_IS_OK(err)) goto error;
- if (dns_response_code(resp->flags) == DNS_NO_ERROR) {
- TALLOC_FREE(mem_ctx);
- return ERROR_DNS_SUCCESS;
+ if (!ERR_DNS_IS_OK(err)) {
+ DEBUG(3,("DoDNSUpdate: failed to probe DNS\n"));
+ }
+
+ if ((dns_response_code(resp->flags) == DNS_NO_ERROR) &&
+ (flags & DNS_UPDATE_PROBE_SUFFICIENT)) {
+ TALLOC_FREE(mem_ctx);
+ return ERROR_DNS_SUCCESS;
+ }
}
- /*
- * First try without signing
- */
+ if (flags & DNS_UPDATE_UNSIGNED) {
- err = dns_create_update_request(mem_ctx, pszDomainName, pszHostName,
- sslist, num_addrs, &req);
- if (!ERR_DNS_IS_OK(err)) goto error;
+ /*
+ * First try without signing
+ */
- err = dns_update_transaction(mem_ctx, conn, req, &resp);
- if (!ERR_DNS_IS_OK(err)) goto error;
+ err = dns_create_update_request(mem_ctx, pszDomainName, pszHostName,
+ sslist, num_addrs, &req);
+ if (!ERR_DNS_IS_OK(err)) goto error;
- if (dns_response_code(resp->flags) == DNS_NO_ERROR) {
- TALLOC_FREE(mem_ctx);
- return ERROR_DNS_SUCCESS;
+ err = dns_update_transaction(mem_ctx, conn, req, &resp);
+ if (!ERR_DNS_IS_OK(err)) goto error;
+
+ if (!ERR_DNS_IS_OK(err)) {
+ DEBUG(3,("DoDNSUpdate: unsigned update failed\n"));
+ }
+
+ if ((dns_response_code(resp->flags) == DNS_NO_ERROR) &&
+ (flags & DNS_UPDATE_UNSIGNED_SUFFICIENT)) {
+ TALLOC_FREE(mem_ctx);
+ return ERROR_DNS_SUCCESS;
+ }
}
/*
* Okay, we have to try with signing
*/
- {
+ if (flags & DNS_UPDATE_SIGNED) {
gss_ctx_id_t gss_context;
char *keyname;
+ err = dns_create_update_request(mem_ctx, pszDomainName, pszHostName,
+ sslist, num_addrs, &req);
+ if (!ERR_DNS_IS_OK(err)) goto error;
+
if (!(keyname = dns_generate_keyname( mem_ctx ))) {
err = ERROR_DNS_NO_MEMORY;
goto error;
@@ -128,6 +150,10 @@ DNS_ERROR DoDNSUpdate(char *pszServerName,
err = (dns_response_code(resp->flags) == DNS_NO_ERROR) ?
ERROR_DNS_SUCCESS : ERROR_DNS_UPDATE_FAILED;
+
+ if (!ERR_DNS_IS_OK(err)) {
+ DEBUG(3,("DoDNSUpdate: signed update failed\n"));
+ }
}
@@ -177,12 +203,6 @@ int get_my_ip_address( struct sockaddr_storage **pp_ss )
return count;
}
-/*
- * Silly prototype to get rid of a warning
- */
-
-DNS_ERROR do_gethostbyname(const char *server, const char *host);
-
DNS_ERROR do_gethostbyname(const char *server, const char *host)
{
struct dns_connection *conn;
diff --git a/source3/utils/net_dns.h b/source3/utils/net_dns.h
new file mode 100644
index 0000000000..31e541be99
--- /dev/null
+++ b/source3/utils/net_dns.h
@@ -0,0 +1,43 @@
+/*
+ Samba Unix/Linux Dynamic DNS Update
+ net ads commands
+
+ Copyright (C) Krishna Ganugapati (krishnag@centeris.com) 2006
+ Copyright (C) Gerald Carter 2006
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+/* flags for DoDNSUpdate */
+
+#define DNS_UPDATE_SIGNED 0x01
+#define DNS_UPDATE_SIGNED_SUFFICIENT 0x02
+#define DNS_UPDATE_UNSIGNED 0x04
+#define DNS_UPDATE_UNSIGNED_SUFFICIENT 0x08
+#define DNS_UPDATE_PROBE 0x10
+#define DNS_UPDATE_PROBE_SUFFICIENT 0x20
+
+#if defined(WITH_DNS_UPDATES)
+
+#include "../lib/addns/dns.h"
+
+DNS_ERROR DoDNSUpdate(char *pszServerName,
+ const char *pszDomainName, const char *pszHostName,
+ const struct sockaddr_storage *sslist,
+ size_t num_addrs,
+ uint32_t flags);
+
+DNS_ERROR do_gethostbyname(const char *server, const char *host);
+
+#endif /* defined(WITH_DNS_UPDATES) */
diff --git a/source3/winbindd/winbindd_cm.c b/source3/winbindd/winbindd_cm.c
index d129e1f61c..28583fd123 100644
--- a/source3/winbindd/winbindd_cm.c
+++ b/source3/winbindd/winbindd_cm.c
@@ -1602,6 +1602,10 @@ static NTSTATUS cm_open_connection(struct winbindd_domain *domain,
result = cm_prepare_connection(domain, fd, domain->dcname,
&new_conn->cli, &retry);
+ if (!NT_STATUS_IS_OK(result)) {
+ /* Don't leak the smb connection socket */
+ close(fd);
+ }
if (!retry)
break;
@@ -2564,6 +2568,37 @@ NTSTATUS cm_connect_lsa(struct winbindd_domain *domain, TALLOC_CTX *mem_ctx,
}
/****************************************************************************
+Open a LSA connection to a DC, suiteable for LSA lookup calls.
+****************************************************************************/
+
+NTSTATUS cm_connect_lsat(struct winbindd_domain *domain,
+ TALLOC_CTX *mem_ctx,
+ struct rpc_pipe_client **cli,
+ struct policy_handle *lsa_policy)
+{
+ NTSTATUS status;
+
+ if (domain->can_do_ncacn_ip_tcp) {
+ status = cm_connect_lsa_tcp(domain, mem_ctx, cli);
+ if (NT_STATUS_EQUAL(status, NT_STATUS_ACCESS_DENIED) ||
+ NT_STATUS_EQUAL(status, NT_STATUS_RPC_SEC_PKG_ERROR) ||
+ NT_STATUS_EQUAL(status, NT_STATUS_NETWORK_ACCESS_DENIED)) {
+ invalidate_cm_connection(&domain->conn);
+ status = cm_connect_lsa_tcp(domain, mem_ctx, cli);
+ }
+ if (!NT_STATUS_IS_OK(status)) {
+ return status;
+ }
+
+ return NT_STATUS_OK;
+ }
+
+ status = cm_connect_lsa(domain, mem_ctx, cli, lsa_policy);
+
+ return status;
+}
+
+/****************************************************************************
Open the netlogon pipe to this DC. Use schannel if specified in client conf.
session key stored in conn->netlogon_pipe->dc->sess_key.
****************************************************************************/
diff --git a/source3/winbindd/winbindd_msrpc.c b/source3/winbindd/winbindd_msrpc.c
index 921cdb5a8b..b14a4f87c3 100644
--- a/source3/winbindd/winbindd_msrpc.c
+++ b/source3/winbindd/winbindd_msrpc.c
@@ -35,6 +35,13 @@
#undef DBGC_CLASS
#define DBGC_CLASS DBGC_WINBIND
+static NTSTATUS winbindd_lookup_names(TALLOC_CTX *mem_ctx,
+ struct winbindd_domain *domain,
+ uint32_t num_names,
+ const char **names,
+ const char ***domains,
+ struct dom_sid **sids,
+ enum lsa_SidType **types);
/* Query display info for a domain. This returns enough information plus a
bit extra to give an overview of domain users for the User Manager
@@ -1057,16 +1064,6 @@ static NTSTATUS msrpc_password_policy(struct winbindd_domain *domain,
return status;
}
-typedef NTSTATUS (*lookup_sids_fn_t)(struct dcerpc_binding_handle *h,
- TALLOC_CTX *mem_ctx,
- struct policy_handle *pol,
- int num_sids,
- const struct dom_sid *sids,
- char ***pdomains,
- char ***pnames,
- enum lsa_SidType **ptypes,
- NTSTATUS *result);
-
NTSTATUS winbindd_lookup_sids(TALLOC_CTX *mem_ctx,
struct winbindd_domain *domain,
uint32_t num_sids,
@@ -1081,25 +1078,21 @@ NTSTATUS winbindd_lookup_sids(TALLOC_CTX *mem_ctx,
struct dcerpc_binding_handle *b = NULL;
struct policy_handle lsa_policy;
unsigned int orig_timeout;
- lookup_sids_fn_t lookup_sids_fn = dcerpc_lsa_lookup_sids;
-
- if (domain->can_do_ncacn_ip_tcp) {
- status = cm_connect_lsa_tcp(domain, mem_ctx, &cli);
- if (NT_STATUS_IS_OK(status)) {
- lookup_sids_fn = dcerpc_lsa_lookup_sids3;
- goto lookup;
- }
- domain->can_do_ncacn_ip_tcp = false;
- }
- status = cm_connect_lsa(domain, mem_ctx, &cli, &lsa_policy);
+ bool use_lookupsids3 = false;
+ bool retried = false;
+ connect:
+ status = cm_connect_lsat(domain, mem_ctx, &cli, &lsa_policy);
if (!NT_STATUS_IS_OK(status)) {
return status;
}
- lookup:
b = cli->binding_handle;
+ if (cli->transport->transport == NCACN_IP_TCP) {
+ use_lookupsids3 = true;
+ }
+
/*
* This call can take a long time
* allow the server to time out.
@@ -1107,21 +1100,23 @@ NTSTATUS winbindd_lookup_sids(TALLOC_CTX *mem_ctx,
*/
orig_timeout = dcerpc_binding_handle_set_timeout(b, 35000);
- status = lookup_sids_fn(b,
- mem_ctx,
- &lsa_policy,
- num_sids,
- sids,
- domains,
- names,
- types,
- &result);
+ status = dcerpc_lsa_lookup_sids_generic(b,
+ mem_ctx,
+ &lsa_policy,
+ num_sids,
+ sids,
+ domains,
+ names,
+ types,
+ use_lookupsids3,
+ &result);
/* And restore our original timeout. */
dcerpc_binding_handle_set_timeout(b, orig_timeout);
if (NT_STATUS_EQUAL(status, NT_STATUS_ACCESS_DENIED) ||
- NT_STATUS_EQUAL(status, NT_STATUS_RPC_SEC_PKG_ERROR)) {
+ NT_STATUS_EQUAL(status, NT_STATUS_RPC_SEC_PKG_ERROR) ||
+ NT_STATUS_EQUAL(status, NT_STATUS_NETWORK_ACCESS_DENIED)) {
/*
* This can happen if the schannel key is not
* valid anymore, we need to invalidate the
@@ -1129,6 +1124,11 @@ NTSTATUS winbindd_lookup_sids(TALLOC_CTX *mem_ctx,
* a netlogon connection first.
*/
invalidate_cm_connection(&domain->conn);
+ domain->can_do_ncacn_ip_tcp = domain->active_directory;
+ if (!retried) {
+ retried = true;
+ goto connect;
+ }
status = NT_STATUS_ACCESS_DENIED;
}
@@ -1143,24 +1143,13 @@ NTSTATUS winbindd_lookup_sids(TALLOC_CTX *mem_ctx,
return NT_STATUS_OK;
}
-typedef NTSTATUS (*lookup_names_fn_t)(struct dcerpc_binding_handle *h,
- TALLOC_CTX *mem_ctx,
- struct policy_handle *pol,
+static NTSTATUS winbindd_lookup_names(TALLOC_CTX *mem_ctx,
+ struct winbindd_domain *domain,
uint32_t num_names,
const char **names,
- const char ***dom_names,
- enum lsa_LookupNamesLevel level,
+ const char ***domains,
struct dom_sid **sids,
- enum lsa_SidType **types,
- NTSTATUS *result);
-
-NTSTATUS winbindd_lookup_names(TALLOC_CTX *mem_ctx,
- struct winbindd_domain *domain,
- uint32_t num_names,
- const char **names,
- const char ***domains,
- struct dom_sid **sids,
- enum lsa_SidType **types)
+ enum lsa_SidType **types)
{
NTSTATUS status;
NTSTATUS result;
@@ -1168,25 +1157,21 @@ NTSTATUS winbindd_lookup_names(TALLOC_CTX *mem_ctx,
struct dcerpc_binding_handle *b = NULL;
struct policy_handle lsa_policy;
unsigned int orig_timeout = 0;
- lookup_names_fn_t lookup_names_fn = dcerpc_lsa_lookup_names;
-
- if (domain->can_do_ncacn_ip_tcp) {
- status = cm_connect_lsa_tcp(domain, mem_ctx, &cli);
- if (NT_STATUS_IS_OK(status)) {
- lookup_names_fn = dcerpc_lsa_lookup_names4;
- goto lookup;
- }
- domain->can_do_ncacn_ip_tcp = false;
- }
- status = cm_connect_lsa(domain, mem_ctx, &cli, &lsa_policy);
+ bool use_lookupnames4 = false;
+ bool retried = false;
+ connect:
+ status = cm_connect_lsat(domain, mem_ctx, &cli, &lsa_policy);
if (!NT_STATUS_IS_OK(status)) {
return status;
}
- lookup:
b = cli->binding_handle;
+ if (cli->transport->transport == NCACN_IP_TCP) {
+ use_lookupnames4 = true;
+ }
+
/*
* This call can take a long time
* allow the server to time out.
@@ -1194,22 +1179,24 @@ NTSTATUS winbindd_lookup_names(TALLOC_CTX *mem_ctx,
*/
orig_timeout = dcerpc_binding_handle_set_timeout(b, 35000);
- status = lookup_names_fn(b,
- mem_ctx,
- &lsa_policy,
- num_names,
- (const char **) names,
- domains,
- 1,
- sids,
- types,
- &result);
+ status = dcerpc_lsa_lookup_names_generic(b,
+ mem_ctx,
+ &lsa_policy,
+ num_names,
+ (const char **) names,
+ domains,
+ 1,
+ sids,
+ types,
+ use_lookupnames4,
+ &result);
/* And restore our original timeout. */
dcerpc_binding_handle_set_timeout(b, orig_timeout);
if (NT_STATUS_EQUAL(status, NT_STATUS_ACCESS_DENIED) ||
- NT_STATUS_EQUAL(status, NT_STATUS_RPC_SEC_PKG_ERROR)) {
+ NT_STATUS_EQUAL(status, NT_STATUS_RPC_SEC_PKG_ERROR) ||
+ NT_STATUS_EQUAL(status, NT_STATUS_NETWORK_ACCESS_DENIED)) {
/*
* This can happen if the schannel key is not
* valid anymore, we need to invalidate the
@@ -1217,6 +1204,10 @@ NTSTATUS winbindd_lookup_names(TALLOC_CTX *mem_ctx,
* a netlogon connection first.
*/
invalidate_cm_connection(&domain->conn);
+ if (!retried) {
+ retried = true;
+ goto connect;
+ }
status = NT_STATUS_ACCESS_DENIED;
}
diff --git a/source3/winbindd/winbindd_pam.c b/source3/winbindd/winbindd_pam.c
index 619b63212d..a966202888 100644
--- a/source3/winbindd/winbindd_pam.c
+++ b/source3/winbindd/winbindd_pam.c
@@ -1152,6 +1152,7 @@ static NTSTATUS winbind_samlogon_retry_loop(struct winbindd_domain *domain,
struct netr_SamInfo3 **info3)
{
int attempts = 0;
+ int netr_attempts = 0;
bool retry = false;
NTSTATUS result;
@@ -1166,22 +1167,47 @@ static NTSTATUS winbind_samlogon_retry_loop(struct winbindd_domain *domain,
result = cm_connect_netlogon(domain, &netlogon_pipe);
if (!NT_STATUS_IS_OK(result)) {
- DEBUG(3,("could not open handle to NETLOGON pipe (error: %s)\n",
- nt_errstr(result)));
- if (NT_STATUS_EQUAL(result, NT_STATUS_IO_TIMEOUT)) {
- if (attempts > 0) {
- DEBUG(3, ("This is the second problem for this "
- "particular call, forcing the close of "
- "this connection\n"));
- invalidate_cm_connection(&domain->conn);
- } else {
- DEBUG(3, ("First call to cm_connect_netlogon "
- "has timed out, retrying\n"));
- continue;
- }
+ DEBUG(3,("Could not open handle to NETLOGON pipe "
+ "(error: %s, attempts: %d)\n",
+ nt_errstr(result), netr_attempts));
+
+ /* After the first retry always close the connection */
+ if (netr_attempts > 0) {
+ DEBUG(3, ("This is again a problem for this "
+ "particular call, forcing the close "
+ "of this connection\n"));
+ invalidate_cm_connection(&domain->conn);
+ }
+
+ /* After the second retry failover to the next DC */
+ if (netr_attempts > 1) {
+ /*
+ * If the netlogon server is not reachable then
+ * it is possible that the DC is rebuilding
+ * sysvol and shutdown netlogon for that time.
+ * We should failover to the next dc.
+ */
+ DEBUG(3, ("This is the third problem for this "
+ "particular call, adding DC to the "
+ "negative cache list\n"));
+ add_failed_connection_entry(domain->name,
+ domain->dcname,
+ result);
+ saf_delete(domain->name);
+ }
+
+ /* Only allow 3 retries */
+ if (netr_attempts < 3) {
+ DEBUG(3, ("The connection to netlogon "
+ "failed, retrying\n"));
+ netr_attempts++;
+ retry = true;
+ continue;
}
return result;
}
+ netr_attempts = 0;
+
auth = netlogon_pipe->auth;
if (netlogon_pipe->dc) {
neg_flags = netlogon_pipe->dc->negotiate_flags;
diff --git a/source3/winbindd/winbindd_proto.h b/source3/winbindd/winbindd_proto.h
index 41292d4e53..a38d54cde2 100644
--- a/source3/winbindd/winbindd_proto.h
+++ b/source3/winbindd/winbindd_proto.h
@@ -47,13 +47,6 @@ NTSTATUS winbindd_lookup_sids(TALLOC_CTX *mem_ctx,
char ***domains,
char ***names,
enum lsa_SidType **types);
-NTSTATUS winbindd_lookup_names(TALLOC_CTX *mem_ctx,
- struct winbindd_domain *domain,
- uint32_t num_names,
- const char **names,
- const char ***domains,
- struct dom_sid **sids,
- enum lsa_SidType **types);
NTSTATUS rpc_lookup_sids(TALLOC_CTX *mem_ctx,
struct winbindd_domain *domain,
struct lsa_SidArray *sids,
@@ -170,6 +163,10 @@ NTSTATUS cm_connect_lsa(struct winbindd_domain *domain, TALLOC_CTX *mem_ctx,
NTSTATUS cm_connect_lsa_tcp(struct winbindd_domain *domain,
TALLOC_CTX *mem_ctx,
struct rpc_pipe_client **cli);
+NTSTATUS cm_connect_lsat(struct winbindd_domain *domain,
+ TALLOC_CTX *mem_ctx,
+ struct rpc_pipe_client **cli,
+ struct policy_handle *lsa_policy);
NTSTATUS cm_connect_netlogon(struct winbindd_domain *domain,
struct rpc_pipe_client **cli);
bool fetch_current_dc_from_gencache(TALLOC_CTX *mem_ctx,
diff --git a/source3/winbindd/winbindd_rpc.c b/source3/winbindd/winbindd_rpc.c
index bf438a6d5c..9a95e57d8a 100644
--- a/source3/winbindd/winbindd_rpc.c
+++ b/source3/winbindd/winbindd_rpc.c
@@ -1033,6 +1033,7 @@ NTSTATUS rpc_trusted_domains(TALLOC_CTX *mem_ctx,
static NTSTATUS rpc_try_lookup_sids3(TALLOC_CTX *mem_ctx,
struct winbindd_domain *domain,
+ struct rpc_pipe_client *cli,
struct lsa_SidArray *sids,
struct lsa_RefDomainList **pdomains,
struct lsa_TransNameArray **pnames)
@@ -1040,15 +1041,8 @@ static NTSTATUS rpc_try_lookup_sids3(TALLOC_CTX *mem_ctx,
struct lsa_TransNameArray2 lsa_names2;
struct lsa_TransNameArray *names;
uint32_t i, count;
- struct rpc_pipe_client *cli;
NTSTATUS status, result;
- status = cm_connect_lsa_tcp(domain, talloc_tos(), &cli);
- if (!NT_STATUS_IS_OK(status)) {
- domain->can_do_ncacn_ip_tcp = false;
- return status;
- }
-
ZERO_STRUCT(lsa_names2);
status = dcerpc_lsa_LookupSids3(cli->binding_handle,
mem_ctx,
@@ -1098,19 +1092,16 @@ NTSTATUS rpc_lookup_sids(TALLOC_CTX *mem_ctx,
uint32_t count;
NTSTATUS status, result;
- if (domain->can_do_ncacn_ip_tcp) {
- status = rpc_try_lookup_sids3(mem_ctx, domain, sids,
- pdomains, pnames);
- if (!NT_STATUS_IS_ERR(status)) {
- return status;
- }
- }
-
- status = cm_connect_lsa(domain, mem_ctx, &cli, &lsa_policy);
+ status = cm_connect_lsat(domain, mem_ctx, &cli, &lsa_policy);
if (!NT_STATUS_IS_OK(status)) {
return status;
}
+ if (cli->transport->transport == NCACN_IP_TCP) {
+ return rpc_try_lookup_sids3(mem_ctx, domain, cli, sids,
+ pdomains, pnames);
+ }
+
names = TALLOC_ZERO_P(mem_ctx, struct lsa_TransNameArray);
if (names == NULL) {
return NT_STATUS_NO_MEMORY;
diff --git a/source3/wscript b/source3/wscript
index 1ea355945c..b40848d4c1 100644
--- a/source3/wscript
+++ b/source3/wscript
@@ -661,6 +661,8 @@ krb5_get_credentials_for_user krb5_get_host_realm krb5_free_host_realm''',
conf.CHECK_VARIABLE('KV5M_KEYTAB', headers='krb5.h')
conf.CHECK_VARIABLE('KRB5_KU_OTHER_CKSUM', headers='krb5.h')
conf.CHECK_VARIABLE('KRB5_KEYUSAGE_APP_DATA_CKSUM', headers='krb5.h')
+ conf.CHECK_VARIABLE('ENCTYPE_AES128_CTS_HMAC_SHA1_96', headers='krb5.h')
+ conf.CHECK_VARIABLE('ENCTYPE_AES256_CTS_HMAC_SHA1_96', headers='krb5.h')
conf.CHECK_STRUCTURE_MEMBER('krb5_keytab_entry', 'key', headers='krb5.h',
define='HAVE_KRB5_KEYTAB_ENTRY_KEY')
conf.CHECK_STRUCTURE_MEMBER('krb5_keytab_entry', 'keyblock', headers='krb5.h',
diff --git a/source4/torture/smb2/create.c b/source4/torture/smb2/create.c
index f11c8375b1..3850a3ce22 100644
--- a/source4/torture/smb2/create.c
+++ b/source4/torture/smb2/create.c
@@ -444,14 +444,103 @@ static bool test_create_blob(struct torture_context *tctx, struct smb2_tree *tre
status = smb2_util_close(tree, io.out.file.handle);
CHECK_STATUS(status, NT_STATUS_OK);
- torture_comment(tctx, "Testing bad tag length\n");
+ torture_comment(tctx, "Testing bad tag length 0\n");
+ ZERO_STRUCT(io.in.blobs);
status = smb2_create_blob_add(tctx, &io.in.blobs,
- "xxx", data_blob(NULL, 0));
+ "x", data_blob(NULL, 0));
+ CHECK_STATUS(status, NT_STATUS_OK);
+ status = smb2_create(tree, tctx, &io);
+ CHECK_STATUS(status, NT_STATUS_INVALID_PARAMETER);
+
+ torture_comment(tctx, "Testing bad tag length 1\n");
+ ZERO_STRUCT(io.in.blobs);
+ status = smb2_create_blob_add(tctx, &io.in.blobs,
+ "x", data_blob(NULL, 0));
+ CHECK_STATUS(status, NT_STATUS_OK);
+ status = smb2_create(tree, tctx, &io);
+ CHECK_STATUS(status, NT_STATUS_INVALID_PARAMETER);
+
+ torture_comment(tctx, "Testing bad tag length 2\n");
+ ZERO_STRUCT(io.in.blobs);
+ status = smb2_create_blob_add(tctx, &io.in.blobs,
+ "xx", data_blob(NULL, 0));
CHECK_STATUS(status, NT_STATUS_OK);
+ status = smb2_create(tree, tctx, &io);
+ CHECK_STATUS(status, NT_STATUS_INVALID_PARAMETER);
+ torture_comment(tctx, "Testing bad tag length 3\n");
+ ZERO_STRUCT(io.in.blobs);
+ status = smb2_create_blob_add(tctx, &io.in.blobs,
+ "xxx", data_blob(NULL, 0));
+ CHECK_STATUS(status, NT_STATUS_OK);
status = smb2_create(tree, tctx, &io);
CHECK_STATUS(status, NT_STATUS_INVALID_PARAMETER);
+ torture_comment(tctx, "Testing tag length 4\n");
+ ZERO_STRUCT(io.in.blobs);
+ status = smb2_create_blob_add(tctx, &io.in.blobs,
+ "xxxx", data_blob(NULL, 0));
+ CHECK_STATUS(status, NT_STATUS_OK);
+ status = smb2_create(tree, tctx, &io);
+ CHECK_STATUS(status, NT_STATUS_OK);
+
+ torture_comment(tctx, "Testing tag length 5\n");
+ ZERO_STRUCT(io.in.blobs);
+ status = smb2_create_blob_add(tctx, &io.in.blobs,
+ "xxxxx", data_blob(NULL, 0));
+ CHECK_STATUS(status, NT_STATUS_OK);
+ status = smb2_create(tree, tctx, &io);
+ CHECK_STATUS(status, NT_STATUS_OK);
+
+ torture_comment(tctx, "Testing tag length 6\n");
+ ZERO_STRUCT(io.in.blobs);
+ status = smb2_create_blob_add(tctx, &io.in.blobs,
+ "xxxxxx", data_blob(NULL, 0));
+ CHECK_STATUS(status, NT_STATUS_OK);
+ status = smb2_create(tree, tctx, &io);
+ CHECK_STATUS(status, NT_STATUS_OK);
+
+ torture_comment(tctx, "Testing tag length 7\n");
+ ZERO_STRUCT(io.in.blobs);
+ status = smb2_create_blob_add(tctx, &io.in.blobs,
+ "xxxxxxx", data_blob(NULL, 0));
+ CHECK_STATUS(status, NT_STATUS_OK);
+ status = smb2_create(tree, tctx, &io);
+ CHECK_STATUS(status, NT_STATUS_OK);
+
+ torture_comment(tctx, "Testing tag length 8\n");
+ ZERO_STRUCT(io.in.blobs);
+ status = smb2_create_blob_add(tctx, &io.in.blobs,
+ "xxxxxxxx", data_blob(NULL, 0));
+ CHECK_STATUS(status, NT_STATUS_OK);
+ status = smb2_create(tree, tctx, &io);
+ CHECK_STATUS(status, NT_STATUS_OK);
+
+ torture_comment(tctx, "Testing tag length 16\n");
+ ZERO_STRUCT(io.in.blobs);
+ status = smb2_create_blob_add(tctx, &io.in.blobs,
+ "xxxxxxxxxxxxxxxx", data_blob(NULL, 0));
+ CHECK_STATUS(status, NT_STATUS_OK);
+ status = smb2_create(tree, tctx, &io);
+ CHECK_STATUS(status, NT_STATUS_OK);
+
+ torture_comment(tctx, "Testing tag length 17\n");
+ ZERO_STRUCT(io.in.blobs);
+ status = smb2_create_blob_add(tctx, &io.in.blobs,
+ "xxxxxxxxxxxxxxxxx", data_blob(NULL, 0));
+ CHECK_STATUS(status, NT_STATUS_OK);
+ status = smb2_create(tree, tctx, &io);
+ CHECK_STATUS(status, NT_STATUS_OK);
+
+ torture_comment(tctx, "Testing tag length 34\n");
+ ZERO_STRUCT(io.in.blobs);
+ status = smb2_create_blob_add(tctx, &io.in.blobs,
+ "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
+ data_blob(NULL, 0));
+ CHECK_STATUS(status, NT_STATUS_OK);
+ status = smb2_create(tree, tctx, &io);
+ CHECK_STATUS(status, NT_STATUS_OK);
+
smb2_deltree(tree, FNAME);
return true;