merge upstream 3.6.10
authorbubulle <bubulle@alioth.debian.org>
Thu, 13 Dec 2012 05:06:22 +0000 (05:06 +0000)
committerbubulle <bubulle@alioth.debian.org>
Thu, 13 Dec 2012 05:06:22 +0000 (05:06 +0000)
git-svn-id: svn://svn.debian.org/svn/pkg-samba/trunk/samba@4181 fc4039ab-9d04-0410-8cac-899223bdd6b0

130 files changed:
WHATSNEW.txt
docs-xml/build/DTD/samba.entities
docs/manpages/eventlogadm.8
docs/manpages/findsmb.1
docs/manpages/idmap_ad.8
docs/manpages/idmap_adex.8
docs/manpages/idmap_autorid.8
docs/manpages/idmap_hash.8
docs/manpages/idmap_ldap.8
docs/manpages/idmap_nss.8
docs/manpages/idmap_rid.8
docs/manpages/idmap_tdb.8
docs/manpages/idmap_tdb2.8
docs/manpages/libsmbclient.7
docs/manpages/lmhosts.5
docs/manpages/log2pcap.1
docs/manpages/net.8
docs/manpages/nmbd.8
docs/manpages/nmblookup.1
docs/manpages/ntlm_auth.1
docs/manpages/pam_winbind.8
docs/manpages/pam_winbind.conf.5
docs/manpages/pdbedit.8
docs/manpages/profiles.1
docs/manpages/rpcclient.1
docs/manpages/samba.7
docs/manpages/sharesec.1
docs/manpages/smb.conf.5
docs/manpages/smbcacls.1
docs/manpages/smbclient.1
docs/manpages/smbcontrol.1
docs/manpages/smbcquotas.1
docs/manpages/smbd.8
docs/manpages/smbget.1
docs/manpages/smbgetrc.5
docs/manpages/smbpasswd.5
docs/manpages/smbpasswd.8
docs/manpages/smbspool.8
docs/manpages/smbstatus.1
docs/manpages/smbta-util.8
docs/manpages/smbtar.1
docs/manpages/smbtree.1
docs/manpages/swat.8
docs/manpages/tdbbackup.8
docs/manpages/tdbdump.8
docs/manpages/tdbtool.8
docs/manpages/testparm.1
docs/manpages/vfs_acl_tdb.8
docs/manpages/vfs_acl_xattr.8
docs/manpages/vfs_aio_fork.8
docs/manpages/vfs_aio_pthread.8
docs/manpages/vfs_audit.8
docs/manpages/vfs_cacheprime.8
docs/manpages/vfs_cap.8
docs/manpages/vfs_catia.8
docs/manpages/vfs_commit.8
docs/manpages/vfs_crossrename.8
docs/manpages/vfs_default_quota.8
docs/manpages/vfs_dirsort.8
docs/manpages/vfs_extd_audit.8
docs/manpages/vfs_fake_perms.8
docs/manpages/vfs_fileid.8
docs/manpages/vfs_full_audit.8
docs/manpages/vfs_gpfs.8
docs/manpages/vfs_netatalk.8
docs/manpages/vfs_notify_fam.8
docs/manpages/vfs_prealloc.8
docs/manpages/vfs_preopen.8
docs/manpages/vfs_readahead.8
docs/manpages/vfs_readonly.8
docs/manpages/vfs_recycle.8
docs/manpages/vfs_scannedonly.8
docs/manpages/vfs_shadow_copy.8
docs/manpages/vfs_shadow_copy2.8
docs/manpages/vfs_smb_traffic_analyzer.8
docs/manpages/vfs_streams_depot.8
docs/manpages/vfs_streams_xattr.8
docs/manpages/vfs_time_audit.8
docs/manpages/vfs_xattr_tdb.8
docs/manpages/vfstest.1
docs/manpages/wbinfo.1
docs/manpages/winbind_krb5_locator.7
docs/manpages/winbindd.8
lib/addns/dnsgss.c
lib/replace/replace.c
lib/replace/replace.h
lib/replace/snprintf.c
lib/tsocket/tsocket.h
lib/tsocket/tsocket_bsd.c
lib/tsocket/tsocket_helpers.c
nsswitch/pam_winbind.c
packaging/RHEL-CTDB/samba.spec
packaging/RHEL/makerpms.sh
packaging/RHEL/samba.spec
source3/VERSION
source3/auth/auth_util.c
source3/configure
source3/configure.in
source3/include/config.h.in
source3/include/proto.h
source3/include/version.h
source3/lib/dummysmbd.c
source3/lib/util.c
source3/libads/kerberos.c
source3/libads/kerberos_keytab.c
source3/libads/kerberos_verify.c
source3/libsmb/cliconnect.c
source3/libsmb/clikrb5.c
source3/locking/locking.c
source3/modules/vfs_acl_common.c
source3/modules/vfs_aio_pthread.c
source3/rpc_client/cli_lsarpc.c
source3/rpc_client/cli_lsarpc.h
source3/rpc_client/cli_pipe.c
source3/rpc_server/spoolss/srv_spoolss_nt.c
source3/smbd/dir.c
source3/smbd/open.c
source3/smbd/posix_acls.c
source3/smbd/process.c
source3/smbd/trans2.c
source3/utils/net_ads.c
source3/utils/net_dns.c
source3/utils/net_dns.h [new file with mode: 0644]
source3/winbindd/winbindd_cm.c
source3/winbindd/winbindd_msrpc.c
source3/winbindd/winbindd_pam.c
source3/winbindd/winbindd_proto.h
source3/winbindd/winbindd_rpc.c
source3/wscript
source4/torture/smb2/create.c

index e87882349ffef32d64779008954302be734d78b7..45c3b4be4b9195c8031db6d63562f1fa8199d257 100644 (file)
@@ -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
index f5d8cd2d332e96f4b5cb477b468819c595e31d1e..c7e46c206f8e92b6e53737ca9072a1dbe6559a70 100644 (file)
@@ -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>
index 196d6202c72bb4d4bcf5d990b77e83008badcc44..33d07fdd256a57bfd1ad8b6a720ac01d4d3645ec 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 6f76e14221335658da0115742ceaeab60bedffd4..9a3917b43b69216dc09904358c905b6657bddf52 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index f08363511d6d1074e5dbcff8e61833d81f74ef3b..420019e68a12f399ce0a2e4fe79a62369d378f30 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 58188309bc43facaf1209035f82efa9db204757f..c4940182f8d50381af479de8c5e19efc3ca996c4 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 7b99c767e62e4a5a3d24b7b6e1b9e5f2e199d9ea..b9c8ecc6c6f2b4a39b208f9e2a0e62150fd3ac0d 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index c95891c360e00ebcfe96375cecf0af3e227b933e..53805b4d90c516f04513fbf1165f4d2b75cc6be7 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 15a80ea7b24efa280b3e9d8af9182caae0b5294d..71cffde5089b5229c4294c4253e84f17092a21fb 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 49732d3ec6a08dd3c426eab7798d6b9629df5862..0842050498329558b7f2ad1a747ca4c1415a63ab 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index e5f4cab2b07f16fe5e4ee34bad7549f2ce11ef78..725e8af715023ce6f44bfde7fd0df097b09637ea 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index e1b22d2019d2a0e208bd66bf30c48c52784b023f..b8ee14a88001800f6083055f5bf580992c8b53fd 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 8c95b04ba6ccd5c945f54cc56dab4cd545fa106c..e8ac88b5446981ef8a7e5407183f40035d932243 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 84a800ce384326623860f81ef1c8193d59c3d693..13ea97d5f2d3f9c9ef3775c3c2fe42c8fb651af5 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 02718eac75447e2bac4ae4bc44cbfc03c11b512c..6e273460ed874b2c1d443f860e746be69f151ee4 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 734bc0fe02bcfa06b6f19a6d5c4cea9c029b9834..b1666d0efa9fa9b2714ed696d7b38c364c15ccc2 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index acf67475570627798836e26c9e7db13d4e70ae65..caaa003e6379e5e87f69bdcde9ba727052113d1f 100644 (file)
@@ -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\&.
index 5260a567af595d05bca3733f3e6ad22ad734e561..e242e52b6e148a16e5614cf81d9ec178a6d7447a 100644 (file)
@@ -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\&.
index 5118f0daa3b6ca3c6968695e7e56ea0958602aa0..0424d00be768fbf08eb79408a672171c8d71ef7f 100644 (file)
@@ -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\&.
index ea3d7f30ae9da8d5b1db59574c8b9676dd8acfec..b8658ed944a635f1c57509a4e724429cfcc92d7b 100644 (file)
@@ -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\&.
index 782a5c96b4bc31f4b0ce87b98074c733728cc866..c5542063151e1bc30a1a56dc2593fbfd35e935c4 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index f8d4d1ed38017e3923e24f63e791fda012f6ed3b..7c0c4dd50134574ad89d563bb49a323173ae2ea3 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 1cede92bf2960fad2dff0ce251cb7686119a791c..0dc82d5f57f751873051fcb3910700b9ab1f93bc 100644 (file)
@@ -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\&.
index e3187cf8ee901c6961f0a14c5f9b671133cde7d5..e34135058a26e805ac2fed416c2e30b8457b2b33 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index d6d379813ad2d54055b7cb365fe57d547d6261ba..931f6b63ddd71f986a47b2df8065c2546d6a82a5 100644 (file)
@@ -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
index 4e6fa61ba39059ea14ada84e1582e737d13b454b..167b0c11e94f1e916d58b1a41b431831555dabde 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 145123eb4cb2f0faba2cdbd74f45f42a56eb6896..57dec4c4184db4806adddd88a8baf95b3e244d05 100644 (file)
@@ -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\&.
index 1b3eb2ab380fab6bc9bbecd2efff4163cb3639eb..03df9bd8486710d178932876f72a39c15034deb1 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index eec1e10e232c42a2862196e0b81445e708df0a3c..6c53f91a346eb9b0210373f623ebe0de4174b2e2 100644 (file)
@@ -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\&.
index 355d6d6fd45453ff1862938d1d7ef0b0032d0fb9..125cc876106f3968c52aff07c2372311d6b4f330 100644 (file)
@@ -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
index 51fbee5d2cd9fad85a5cd7ffaccf2ca39cd62b1f..740e5f409038d44e6e763efe574851f599f98d68 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 6bd8df8d95cc1bb6392457862709c11d644bc08e..c57a9d5f45ed12ed856ec30bb030391c7e425577 100644 (file)
@@ -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\&.
index 40a49bdcaed59b6ec5085207aceb4f603711e992..639c312a692a4f0bbea1d7f7462e8129cb9afcaa 100644 (file)
@@ -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\&.
index 7b035a87e463f7cca6afb76978682b62ebdbd9e1..e4c136724dd76df81d05d1042ea832807659f969 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 88006cbc8edf2fc51bf23b7e1aa114200e28b8af..be7fe59f872e90772745a51edf54f445cc480c44 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 5dc1bd4f14ba1124300eef5641ae251e639e3da0..f914db86dd6095d247f4d8a3ad5d4f391953327e 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 8d3dd3864acb6d0387f45a6b71181b31e5187876..458be15ee0c999f2fb6f1b3e1899c46d4b45f0d9 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index b71373ade28f2ab82215096c7a3b16bb2e36de5f..cd9fc6bb99de0cd8c1a1333702bf7a387eada4be 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 04461cd6764886cfdcff611b3fd47457f3d00b39..0d38b85d99365012b2bb98c5ab74c46a9c1710dc 100644 (file)
@@ -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\&.
index 04829b8d93a3ee4d36d583ce164597d0bcba8b1a..7df4ee6707198a6fefb36f8950b8c5a76866bc93 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 14a6fb00503be0c4ad19d03f782eed646ce30ade..711949dec5eb49d7217ffe04877bedc5672eb4bc 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 99338ca095f54768ccf0268805f991f5238a9abd..9b4c977f962bd2d09892d702461453217c3f06a9 100644 (file)
@@ -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\&.
index 8ba9dd3d237da8b29df82a2bfc16cdbd096706f8..0713bdf9da73239565831fc805ad3954b35e50bd 100644 (file)
@@ -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\&.
index b1321309927e26fd5f2bb9278b8124ab7322823b..086a0660158220d6ec67db431d6c47b422adc02a 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 1658cb75569d9cdd9bf55986fd6584db22b50d0c..ebf18004234ac7d179ddfcecf13a7f4f0d48b0c4 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index deaedb2a2acdac0254315821c10e3dfe4f7fee3c..548df346448c8eb326d5a67b4a5e738b508dcaef 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 1c2d03bf1bb77441d966362292ea1400eeafc6c4..e457d35ea8d7d05e55a72cde520ed572a14f6b80 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 666848d8cb6d24e841233d8386e8a3f344759784..b7122b3e57ad024ea71ebb7beaf60de26a5e46f2 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index f1ae20819ca5002d550d9416b4a649b43ab5ecab..a916c588a53387f364f01b50d57d07cbb854e3d0 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 6110e5609170cafd27c31dc4bc3a13bf9bd2e2a3..7d975833819290f7a463ece95de84138171c0546 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 4876eaff08b426f4cb9a1295cece41850043b364..c9f952b3ddfc33d9d74b52febc5bc97b5c756583 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 029260c106d224224942e14197a8364430dc0e68..1e01ceac89dba1ab14e5a44c41cea4b8600b471b 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 8c17977c14a3e005163f08444ee5a9ee8e825b79..d489c44ed1d95316f6b70ee8857460ac90d52bca 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 7d25d9e7871d9be5f02137583368b3b2b2d6db31..4fbf3d69f6ea255f25f265264cc5bb22cd21fd26 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 42219cc230951814865bc560f3526535d1e5752e..86466f8a10bdd82840c856991ea7d12579d62e82 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 4c4b1b0c175773fdad54f60d9d36dcbffe4e7884..2067a1d3c2bbdcc08f8cdb008b6b54fd1b51b16e 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 3c5cde741c590ace13cd1a88f39fc5795b28b206..a7b9eb6af3f83cbfdac1c7a2493a77bd09af6fed 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 2a6b8547ea88c2035f9ad02d229497a38064db81..59c57de68027b83d0b5f6b09f69774bfece7ff56 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index a8ef7ffb97c2743d651e4d45c5614cbf0586968c..e839997122415ba09472db8e9d23aa0f5d5af4d9 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 54c2771c5d57d4e015913fa6e28d3cd56905409f..f01793a6cd1ff56bd9d4680a9c20a594d0aa5e44 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 9fa9aa9dc51fb3a85eab6c690e224f1b94117e01..3a3e2f9fc2d968bdd39acdde261a692e7c6b90ab 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index d04c5bf1951620b43db5d342023b043684830cb8..0f2b7c0be0f70982cdbd84ece66b1aeb05e30000 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 2877a951903aa69ec83ff929afc94c30b40f76b1..ae009047d2fa351b6c7de8eadbbe60aab8155d43 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 89221fe1b74545975ee5d03a1b053644d9e51661..1107c22bc8cd7ecf6e3fef5524d3e180f55f59ca 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 2cbad80a851be71ff554e055ab2ab96118c0b435..89f7432d22b9f0776bdf9ac0c59a81a4f38bdcb0 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 7dc8dcdb6d98ca4ded39a5ebc6b5605fd7fea199..30e9d8c390a886b24488e602fd2c54dc3822a876 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 0fffc85e551422128b5e239ce93884f6337e1ef0..7a3df78daf3ecf3fb0b8465c22b6a8154b577d78 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index f2eb7dccd2ce2f4047b2f76df434ef55e9355989..1b910b8bcc34b9e1f430e0624714525b79c1e9d1 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 84a0881762b2c850ea0e3be042635fe7814cc9e0..e1f13cc98258b00bb2d3a42efe4f83ace4ea2e68 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 0ac5c2d555dcadb35612b957790afee076cf7df4..42bf2f17b60375611ff67524b6fbf5a71f636b73 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index ef5588a6e36179965470b9785d3838273290aefa..ad5594ee055b0044a42b644d788248128e894ae1 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 8854c4b7baabff826a0a92b9f3b80633e6e9b5a8..c917c602e0d639a409ae38ac631a380e3ad8e50b 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index f30e73f5faf372a8c5eeceee8e03bfaa26a0b594..9ec97b50981fd425afadebd144ea8085f2a2963e 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 0c948df79f878256e1846eb1d2e96cc8f749a5a0..5eea1279cea21c556cbaabb48e918e820f79bb8c 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index a605f2bb746091c311965c7c69bb745de74fdba0..44774e76c646a0e6a5c67691ad97a1ed5d33df68 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index c4c987936f8a1cae4969e9e460423b509946b321..bd21c82aa23d2f14c9eb2375947acc455ea53f9c 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 683a8be92e380c84d2709a0acf80371b5428151d..3f5998d567de57f36f7b40c0b69137b2837acf95 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 32f2b7a8ef6d5e169fce34a91c7108cfb5866c35..3d2ad105e41f0a1b455e1dbe49b3b56f78e856af 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index ffb31d3441844bfdf924b322d9bfdf43684cc31f..e416b544b68564107bcb008fe91fc950bbf23da6 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 45d2a50bdcf425dcb349ca5ab1dccb83ecba8f0e..758377962b051cbaba153fdd4351990bc1d1df08 100644 (file)
@@ -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\&.
index 77b6bff2f6da0ce573b598d0189df38903998bef..ee65c16f80d21d531e826abafa14c96e6a7a7660 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 79d79545f1496cd537b1afecf6ba2b6474d302ea..7a19b535e51d9d10cbca6e8ac423ae66f18ae74b 100644 (file)
@@ -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
 .\" -----------------------------------------------------------------
index 20985be0d418a8f18e7b4afbea3d49111c77c24d..f9da787ce1813511a59c7c0b1003a8c705356939 100644 (file)
@@ -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\&.
index c9037417da954d99221e8e45dcfba19014774cf2..a8b2ea18bcb40388ffbb39dc5b71afb893d2c118 100644 (file)
@@ -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;
                        }
index d9a96ff8ef9219e92cd7ed09b3971b60c6da16f0..83fa6b337149be067a7e354edb294cfa30b99111 100644 (file)
@@ -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;
index c47cf1c1b10a57c06ba6da5fefe30c29b0d57370..926ccc7bbbebbf71af4f22ffd9c8acfc97913cca 100644 (file)
@@ -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
index bca774263ef3cb2555610e10a5c4386ebe387df7..6b4a711045c4c4a5530b3c22f2f5894a48242991 100644 (file)
@@ -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;
index 3aca536124172c3f58842359dfd09769d75b664e..98f864e6a570c7e4f6261708215563c51e4d8c17 100644 (file)
@@ -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.
@@ -688,6 +709,27 @@ int _tdgram_unix_socket(const struct tsocket_address *local,
        _tdgram_unix_socket(local, remote, mem_ctx, dgram, __location__)
 #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.
index 9e800652270db19de021c90b930212ae3b9006c6..58598d1a5b59a88449e3f56798f675f0f5b1f934 100644 (file)
@@ -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,
index 3a41a3efc3df71ee7e7297696e282c158bdb9cbf..809830d79abfdd4e33e1bee8e07e6bc30e5a7d4b 100644 (file)
@@ -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;
        }
index fc7cdcaea717ac0bfe814ea1922cb45c5ae4f0e0..325710122396b0d5f2ace90563153716b195b52e 100644 (file)
@@ -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;
 }
index d5bbe5f77617f8ea6fc640cd5bdae04814f9dd9e..3223f38dc95f295e13bf84b7b25e9b5f5684b20f 100644 (file)
@@ -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
index abaa624516439a46adaa90f494aee47188d18141..50872c7b7ae9a2a35abcdca288ad3946bba31c12 100644 (file)
@@ -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}'`
index d96392076e3e17e54f2649b1e74a90e3b01534a9..1d3a20f539f0e5bed5d338df4a1386e5a89ca2e4 100644 (file)
@@ -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
index 25aa4eca6196de0d50cfc1c20ea3dbdb650cb340..fd054c710ba3bd0e79c39f26cf5a167a1411bfa9 100644 (file)
@@ -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 #
index fc93641fd3b2684c689d6ae1ed1ef31a70bab067..1daddcd2d402c9989ff679cfe4a0a766ede7a666 100644 (file)
@@ -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 */
index 669a92dc505bba6a2293e6d66115997ab795becb..5982975ed697508d0be0d63a7156cdd8c9b8377e 100755 (executable)
 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 :
 
 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 :
index 014d8445bb2d18a4097160f68c228a278ad4d6c5..a29818362c7176dd80521aae8479cafce7bf9778 100644 (file)
@@ -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>],
index 6d17796636e10579b9a1759b8175d84923194f00..f0234ca883b6a94b147e4c2f6a87f2cbd922ebae 100644 (file)
 /* 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
 
 /* 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. */
index 720f431cc73dac98272f79e26ba7a9f385a022e6..189b286dd6cfad61c671e3d1317989fa2057f9d9 100644 (file)
@@ -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,
index bba3ee27e1cbd66c401b63254d1cb0c2c71a9aac..09ffa743c70452f7920ee2690f33941fa94e1e45 100644 (file)
@@ -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 */
index 2465e6552bc2dca7426757302cf41bd5da830558..0ff0f2e874393a0ac7ad42397b9db1012989bd04 100644 (file)
@@ -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;
 }
index d751c5bca5d347ba877f11e8ce94457329cc60f8..23bb11c37855b5c3a748baab67bd29d3578f0e58 100644 (file)
@@ -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');
index d496ade71b0ce0a006eb190fc391e44dcd07bb8f..6b8f247b2d7ed0a9271928dfe383af2541c4ea28 100644 (file)
@@ -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;
index 721a8c6f53086faf0b058eca690d76c79c2e4e64..badce3e79e9abe46b37807624658b13205dc8d5d 100644 (file)
@@ -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
        };
index d4c68cd0b09bf92826ff95d2e640718d08f772e8..56daf8fb3c9e60a767c40efd10c8b6516d9dcd68 100644 (file)
@@ -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,
index f03219bb0be34dc18317bdc235b1209a2b3d638f..8653ba7d0857769425d0da8437352f44dbfbb852 100644 (file)
@@ -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));
 }
 
 /****************************************************************************
index 795820555ed63c747070ee9292d9ff7bfcb26faf..dce1df7c9c221ff6d68041e3bbcce4c0e5b6a2a8 100644 (file)
@@ -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,
index 43798477abc908df8cd7c608e0b2d049e68b3488..e60c4a883d7125d3223659415e64582974bbc33d 100644 (file)
@@ -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;
index a5370110986a171b8f452aaeca2712158b0e2542..11c34e05398507e524d2513dba1c7fb9fe2e1edd 100644 (file)
@@ -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",
index ceef822d008f234589863e62bff6a9b9167eaa1e..662781126e8d881622d9e180f6248e82b854bf98 100644 (file)
@@ -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);
+       }
 }
 
 /************************************************************************
index 99e0262dfbdd8fdb8ac236b52eebf8b60e629d88..330774d9d3d0aa7e727397d889c0f404d5f0cc34 100644 (file)
@@ -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;
-}
index a26193e5b42088092d83c12446f8e1e8ce99e49e..36afe0bdfb0f6f1bda2b798b4141cf6385a5586a 100644 (file)
@@ -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);
 
index ec58b3d646c21a384d999ce6b0f6e671c4ba234b..4e5fd71e890369d0c855a6f8e38e8f550def8ba2 100644 (file)
@@ -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;
        }
index 8868a9894e666e6e1f120f91097d0c269db5aebf..b5949e44cc5f9c1ce2b8437491d8cc0568fa5c3b 100644 (file)
@@ -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"));
        }
 
index 9108a80c6caa919b694043e27e7e573b847dc3b6..92be816a4e427d78ca2ec23625cba2ba0b81053c 100644 (file)
@@ -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;
index 6b94a6d24739103eff97428a1fd3d778216e0c65..d10b6978be6058be9474c88d90d4a4314e160825 100644 (file)
@@ -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
index 22ad40faec0d5af7d7ff24cd7a2160e905d7e73e..8d6e7ecea487e62366d76c8344edf5902cf0c866 100644 (file)
@@ -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);
                }
index 5aa19cbee0d7c1471ef9dfad278b5ad2e70d86f7..358d0515ae702e6bd1f2ff30f79b09187d36fbf1 100644 (file)
@@ -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");
                }
index 9514c72fb807dd89a40316cade7c259dac90a5db..bdbdbc0aee72d72f4b60a655b50c86d440e5bfe8 100644 (file)
@@ -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;
                        }
 
index f751d688aa5219bdfb53f894b7e58bb636a44d4b..8f8b7b4cae0d9be65fef11199990a784999d14a9 100644 (file)
@@ -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)
index 5fbdc0a70f35632af39117189149bdd0e8256e74..eda0492ceed06a65ddc004da48c1a00933d6daab 100644 (file)
 #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 (file)
index 0000000..31e541b
--- /dev/null
@@ -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) */
index d129e1f61c7a75c44ec0b4e5585e82b99b490073..28583fd12381d40a68a4edf8a63f860681116036 100644 (file)
@@ -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;
@@ -2563,6 +2567,37 @@ NTSTATUS cm_connect_lsa(struct winbindd_domain *domain, TALLOC_CTX *mem_ctx,
        return result;
 }
 
+/****************************************************************************
+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.
index 921cdb5a8bc3cd36076df396e8765a36d2f0bb0b..b14a4f87c38dd1dfcaf60c7979bf83fbef0f2943 100644 (file)
 #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;
        }
 
index 619b63212dc3f181dddd8dc1155df48140c8ad18..a9662028884e2e4b2bf37c2d443babbac07725b5 100644 (file)
@@ -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;
index 41292d4e5381681e557b21860f5ff5405255d169..a38d54cde2fe54be83c0ddd41e4a06c85178c4ea 100644 (file)
@@ -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,
index bf438a6d5cd6ac07f04cbe8245cf1e7da5c29078..9a95e57d8ab09394d1cf3364932d257f65e6b87f 100644 (file)
@@ -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;
index 1ea355945c4c9352d7851a29d87b209fb1a8bf24..b40848d4c1eb97dd83b553350cdb9f47556d2435 100644 (file)
@@ -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',
index f11c8375b19769415226fdf9d9eeb3b6ba2e42a9..3850a3ce22d1de77bd2ec299874cc2bc963c5918 100644 (file)
@@ -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;