[SCM] Samba Shared Repository - branch v4-4-test updated

Karolin Seeger kseeger at samba.org
Mon Mar 14 12:20:12 UTC 2016


The branch, v4-4-test has been updated
       via  0268dc2 vfs_glusterfs: Fix use after free in AIO callback.
       via  4e48421 s3:smbd: add negprot remote arch detection for OSX
       via  9d588a9 s3:smbd: rework negprot remote arch detection
       via  28e5e95 ctdb-common: For AF_PACKET socket types, protocol is in network order
       via  5b42463 libnet: make Kerberos domain join site-aware
       via  16e970f dsgetdcname: fix flag check
       via  da0f03b dsgetdcname: return an IP address on rediscovery
       via  38091dd dsdb/repl: Ensure we use the LOCAL attid value, not the remote one
       via  2a808590 smbd:smb2: move op variable into scope of use in smb2_create_send
       via  8743f5b smbd:smb2: implement create replay
       via  a894f15 smbXsrv.idl: add create_action to smbXsrv_open
       via  9bce93b smbXsrv:open: add smb2srv_open_lookup_replay_cache()
       via  609faee smb2:create: create replay cache when request has a create_guid
       via  579fb66 smbXsrv:open: maintain a replay cache
       via  42a81bf librpc:smbXsrv.idl: add flags to smbXsrv_open
       via  19d66b4 smbd:smb2: allow the REPLAY_OPERATION flag for SMB3+ requests
       via  1938d56 torture:smb2: add smb2.replay.replay-dhv2-lease3
       via  fc3c842 torture:smb2: add smb2.replay.replay-oplock-lease
       via  9323ec5 torture:smb2: add smb2.replay.replay-dhv2-lease-oplock
       via  ef65682 torture:smb2: add smb2.replay.replay-dhv2-lease2
       via  e2e2546 torture:smb2: add smb2.replay.replay-dhv2-lease1
       via  b59ff11 torture:smb2:replay: extend CHECK_CREATE_OUT() to know leases
       via  1efc89d torture:smb2: split rename2 into multiple tests and extend these
       via  d601af8 torture:smb2: rename replay1 -> replay-commands
       via  26577db torture:smb2: skip replay4 if server does not support multi-channel
       via  2d82282 smbd: fix crash in smbXsrv_client_global_remove()
       via  5782344 netlogon_creds_cli: use dbwrap_purge instead of dbwrap_delete where appropriate
       via  5b439f5 s3:registry: use dbwrap_purge_bystring instead of dbwrap_delete_bystring
       via  c0fc2c3 dbwrap: add dbwrap_purge[_bystring]
       via  a5a7947 dbwrap_util: improve a debug message in dbwrap_delete_action()
       via  b882ed1a torture:smb2: fix skip message if share is not CA
       via  d019891 torture:smb2: skip replay5 test if server does not support persistent handles
       via  d3a024a torture:smb2: skip replay3 if server does not support Multi-Channel
       via  d3206e9 smbd:smb2_creat: remove outdated TODO comments
       via  d0db200 smbXsrv_client: factor fetch-locking of global record into function
       via  8d8e111 smbXsrv_session: factor fetch-locking of local record into function
       via  7bbdd9a smbXsrv_session: factor fetch-locking of global record into function
       via  3eec659 smbXsrv_tcon: factor fetch-locking of local record into function
       via  d5d58b9 smbXsrv_tcon: factor fetch-locking of global record into function
       via  6c78c8d smbXsrv_open: factor fetch-locking of local record into function
       via  c3fcfad smbXsrv_open: factor fetch-locking of global record into function
       via  0b6c3b5 torture:smb2: improve torture_comments in connect test
       via  141605e torture:smb2: fix memory leak in connect test.
       via  cf7a4e1 torture:smb2: rewrite connect test to use torture_asserts for create errors
       via  2dd63e5 torture:smb2: rewrite connect test to use torture_asserts
       via  95c7f0f s4-torture: let smb2.replay.replay4 test deal with scale out shares.
       via  d20a4c2 s4-torture: let smb2.replay.replay3 test deal with scale out shares.
       via  d194ce0 s4-torture: let smb2.replay.replay2 test deal with scale out shares.
       via  19c381c s4:libcli/ldap: add support for LDB_CONTROL_DIRSYNC_EX_OID
       via  2a1ceb8 ldb: version 1.1.26
       via  02e325f ldb: add support for LDB_CONTROL_DIRSYNC_EX
       via  530693d ldb: add LDB_ATTR_FLAG_FORCE_BASE64_LDIF support
       via  33f4491 pyldb: eliminate warnings from python api test
       via  f12c897 pyldb: add api tests for search_iterator()
       via  e5c7304 pyldb: add ldb.search_iterator()
       via  66112f6 pyldb: fix help message for ldb.search()
       via  11c06aa pyldb: fix memory leak in py_ldb_search()
       via  f305aae pyldb: Free correct context when pyldb_Object_AsDn() fails
       via  68b76db ldb: allow a timeout of -1 result in no timeout timer at all.
       via  7a6c31d ldb-samba: fix the timeout setup in ildb_request_send()
       via  f511bb3 s4:libcli/ldap: send AbandonRequests for cancelled requests
       via  68dc117 ldb:ABI: add missing pyldb-util.py3-1.1.25.sigs
       via  2a420aa ldb: Avoid a "talloc_steal"
       via  d2e0047 ldb: Fix some whitespace
      from  a5239be VERSION: Bump version up to 4.4.0rc5...

https://git.samba.org/?p=samba.git;a=shortlog;h=v4-4-test


- Log -----------------------------------------------------------------
commit 0268dc297aeec2cef758ec1f28929a32314bfe40
Author: Ira Cooper <ira at samba.org>
Date:   Fri Mar 4 08:01:25 2016 -0500

    vfs_glusterfs: Fix use after free in AIO callback.
    
    The wrapper->state pointer is not getting NULLed during free
    allowing us to do a use after free.
    
    Thanks to Red Hat for discovering this issue.
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11774
    
    Signed-off-by: Ira Copper <ira at samba.org>
    Reviewed-by: Poornima G <pgurusid at redhat.com>
    Tested-by: Christopher Blum <cblum at redhat.com>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    
    Autobuild-User(v4-4-test): Karolin Seeger <kseeger at samba.org>
    Autobuild-Date(v4-4-test): Mon Mar 14 13:19:27 CET 2016 on sn-devel-144

commit 4e48421a69c8eb9426b051571864de748555439d
Author: Justin Maggard <jmaggard10 at gmail.com>
Date:   Wed Mar 2 10:19:56 2016 -0800

    s3:smbd: add negprot remote arch detection for OSX
    
    Remote arch detection for OSX clients has been broken for some time, since
    both Samba and OSX started supporting SMB2.  Fix it by adding modern OSX
    client detection support to the negprot remote arch detection routine.
    
    Bug: https://bugzilla.samba.org/show_bug.cgi?id=11773
    
    Signed-off-by: Justin Maggard <jmaggard10 at gmail.com>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    Reviewed-by: Ralph Boehme <rb at sernet.de>
    
    Autobuild-User(master): Jeremy Allison <jra at samba.org>
    Autobuild-Date(master): Thu Mar  3 09:03:53 CET 2016 on sn-devel-144
    
    (cherry picked from commit d7ca174744001fabdc32e1c334dad347bb985756)

commit 9d588a90d30e97d7ec41fd57f1b35d9083e0810b
Author: Justin Maggard <jmaggard10 at gmail.com>
Date:   Wed Mar 2 10:18:34 2016 -0800

    s3:smbd: rework negprot remote arch detection
    
    Negprot remote arch detection is very cryptic.  Rework it so it's easier
    to understand, and therefore more extensible, following the protocol table
    in inline comments.  This also allows us to remove some hacks.
    
    Bug: https://bugzilla.samba.org/show_bug.cgi?id=11773
    
    Signed-off-by: Justin Maggard <jmaggard10 at gmail.com>
    Reviewed-by: Ralph Boehme <rb at sernet.de>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit b69b96fc14128f50a906b4f5b34934efbc94afbc)

commit 28e5e957a4b923329b5494fba9698a7aebd5fb96
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Thu Mar 3 14:17:40 2016 +1100

    ctdb-common: For AF_PACKET socket types, protocol is in network order
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11770
    
    From man page of packet(7):
    
                                                 protocol is the  IEEE  802.3
       protocol  number  in  network  byte  order.  See the <linux/if_ether.h>
       include file for a list of allowed protocols.  When protocol is set  to
       htons(ETH_P_ALL),  then all protocols are received.
    
    Protocol argument was changed from network order to host order wrongly
    in commit 9f8395cb7d49b63a82f75bf504f5f83920102b29.
    
    Specifying "protocol" field to socket(AF_PACKET, ...) call only affects
    the packets that are recevied.  So use protocol = 0 when sending raw
    packets.
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Martin Schwenke <martin at meltin.net>
    
    Autobuild-User(master): Martin Schwenke <martins at samba.org>
    Autobuild-Date(master): Fri Mar  4 12:58:50 CET 2016 on sn-devel-144
    
    (cherry picked from commit f5b6a5b13406c245ab9cc8c1699483af9eb21f88)

commit 5b424635af2455272e6d8d57c9d643ee27406658
Author: Uri Simchoni <uri at samba.org>
Date:   Thu Mar 3 09:18:58 2016 +0200

    libnet: make Kerberos domain join site-aware
    
    When joining a domain using Kerberos authentication, create a
    configuration file for the Kerberos libs to prefer on-site
    domain controllers, without relying on the winbindd Kerberos
    locator, which many not be operational at this stage.
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11769
    
    Signed-off-by: Uri Simchoni <uri at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    
    Autobuild-User(master): Jeremy Allison <jra at samba.org>
    Autobuild-Date(master): Tue Mar  8 01:30:35 CET 2016 on sn-devel-144
    
    (cherry picked from commit 0dbab0e33e9efc46f72b6a8b0dc894ea251df9aa)

commit 16e970fbc4f456635bbc0fa9a07486f8d230ca31
Author: Uri Simchoni <uri at samba.org>
Date:   Thu Mar 3 09:18:57 2016 +0200

    dsgetdcname: fix flag check
    
    Fix the check for zero requseted flags.
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11769
    
    Signed-off-by: Uri Simchoni <uri at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 6d717402e42131298ba670ee47686379854ec56d)

commit da0f03b9f87c74c0e8735392df376cca8c428155
Author: Uri Simchoni <uri at samba.org>
Date:   Thu Mar 3 09:18:44 2016 +0200

    dsgetdcname: return an IP address on rediscovery
    
    When dsgetdcname return its result based on discovery
    process (instead of retrieving cached value), always
    return the found server's IP address in dc_address field,
    rather than its netbios name.
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11769
    
    Signed-off-by: Uri Simchoni <uri at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit ef84f4c018424b1fcc232a4780dc2c0435701d86)

commit 38091dd1be6a87d6b1923f4605114596a5add25d
Author: Andrew Bartlett <abartlet at samba.org>
Date:   Thu Mar 10 13:43:15 2016 +1300

    dsdb/repl: Ensure we use the LOCAL attid value, not the remote one
    
    The key here is that while this never was an issue for builtin schema,
    nor for objects with an msDS-IntID used outside the schema partition,
    additional attributes added and used in the schema partition were
    incorrectly using the wrong attributeID value in the replPropertyMetaData.
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11783
    
    Signed-off-by: Andrew Bartlett <abartlet at samba.org>
    Reviewed-by: Garming Sam <garming at catalyst.net.nz>
    Reviewed-by: Stefan Metzmacher <metze at samba.org>
    
    Autobuild-User(master): Stefan Metzmacher <metze at samba.org>
    Autobuild-Date(master): Sun Mar 13 23:29:14 CET 2016 on sn-devel-144
    
    (cherry picked from commit 6ecfc4cb254f9b2524ec5619ed8cee9db5d959b2)

commit 2a80859025d89ba417d7adb99ac4e2bd03fe2a1a
Author: Michael Adam <obnox at samba.org>
Date:   Thu Mar 3 09:27:42 2016 +0100

    smbd:smb2: move op variable into scope of use in smb2_create_send
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Volker Lendecke <vl at samba.org>
    (cherry picked from commit 272d06d40b7338de7db8954192f42c7340753920)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 8743f5b9a68b435a026e3d2028b414f2d1ac0b1d
Author: Michael Adam <obnox at samba.org>
Date:   Sun Feb 28 02:32:36 2016 +0100

    smbd:smb2: implement create replay
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 2fd54b533292e54de8c289fb093748fb171c15a7)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit a894f156ee8296fa1829700f889959f7b80ac128
Author: Michael Adam <obnox at samba.org>
Date:   Mon Feb 29 02:11:26 2016 +0100

    smbXsrv.idl: add create_action to smbXsrv_open
    
    Needed for create replay.
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 03a3aa981500c5ba9d82c27f36e107672b071203)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 9bce93ba7af1428b35ae451b57ea29ffe2eac2ff
Author: Michael Adam <obnox at samba.org>
Date:   Sat Feb 27 03:23:27 2016 +0100

    smbXsrv:open: add smb2srv_open_lookup_replay_cache()
    
    A function to find an open from the replay cache,
    based on the create_guid handed in.
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 5b90c986eda8201660434a9a1d64e5a0a625379e)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 609faee1ee92dd0a7dc523e977e3b4b4d8633ed8
Author: Michael Adam <obnox at samba.org>
Date:   Fri Feb 26 13:53:25 2016 +0100

    smb2:create: create replay cache when request has a create_guid
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 08e34830b7f4d631a24e94aad1502949eb2cd675)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 579fb6648ea2d371203a65b4ba80b90237573008
Author: Michael Adam <obnox at samba.org>
Date:   Wed Feb 24 00:23:15 2016 +0100

    smbXsrv:open: maintain a replay cache
    
    This caches a map create_guid -> file_id, so that
    a replayed create can find the already created
    open again.
    
    This is automatically deleted once the first use
    of the file handle is happening (triggered by
    the lookup for the file-id).
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 4370bda3c0f35c1cc9b45a004bb829b1d69a4e38)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 42a81bf162f6bbed2ed8d323aeadeb81297e68a5
Author: Michael Adam <obnox at samba.org>
Date:   Fri Feb 26 13:44:13 2016 +0100

    librpc:smbXsrv.idl: add flags to smbXsrv_open
    
    These flags reflect the need for and state of the replay cache.
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 1eb5f1e42276999f0f4fc73cac03a188fb6d83e9)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 19d66b47136c12a597e56699f058f13d47149c6a
Author: Michael Adam <obnox at samba.org>
Date:   Wed Feb 24 15:53:57 2016 +0100

    smbd:smb2: allow the REPLAY_OPERATION flag for SMB3+ requests
    
    Pair-Programmed-With: Stefan Metzmacher <metze at samba.org>
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Signed-off-by: Stefan Metzmacher <metze at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 6251d926e0cdd37ed312f7dc78ce2735e979c25f)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 1938d56aa2d78d1e6663f057ad68ea1620ae3155
Author: Michael Adam <obnox at samba.org>
Date:   Wed Mar 2 20:45:16 2016 +0100

    torture:smb2: add smb2.replay.replay-dhv2-lease3
    
    create with a lease, and replay with lease
    with a different lease key.
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 1b804d6f93fec74af45e89465fc7316917a3b64f)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit fc3c84220503024f885849c6a7fefe1af676bc00
Author: Michael Adam <obnox at samba.org>
Date:   Wed Mar 2 01:38:24 2016 +0100

    torture:smb2: add smb2.replay.replay-oplock-lease
    
    create with an oplock, and replay with a lease.
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 1c772984c64e79b3da9851be29a26714ed209343)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 9323ec5bd73f5e572e38ac7bbd1de807779dcc5b
Author: Michael Adam <obnox at samba.org>
Date:   Tue Mar 1 23:03:50 2016 +0100

    torture:smb2: add smb2.replay.replay-dhv2-lease-oplock
    
    Open with a lease and replay with an oplock.
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 2036e1d27b7dde091531c4a8a516212e4b489df2)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit ef656828395f733085a5a5167735b82aefd1f735
Author: Michael Adam <obnox at samba.org>
Date:   Mon Feb 29 19:04:32 2016 +0100

    torture:smb2: add smb2.replay.replay-dhv2-lease2
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 6eeabe43a2378a832dc21a1d8acdaf18b0dbc889)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit e2e2546c4b10b8df15b54051008826f02dd140d4
Author: Michael Adam <obnox at samba.org>
Date:   Mon Feb 29 18:23:04 2016 +0100

    torture:smb2: add smb2.replay.replay-dhv2-lease1
    
    This is a variant of the replay-dhv2-oplock1 test for leases
    instead of for oplocks.
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit de678ebcdfda49d373d6151d362074ad66bf280e)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit b59ff1173141c1bbce952b47f0d96d3988159074
Author: Michael Adam <obnox at samba.org>
Date:   Mon Feb 29 19:00:42 2016 +0100

    torture:smb2:replay: extend CHECK_CREATE_OUT() to know leases
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 6eac2ae984c244d9e92876bf29a18a3807352277)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 1efc89da0611b7c45c817398a282fa2c072bfa27
Author: Michael Adam <obnox at samba.org>
Date:   Tue Mar 1 01:18:03 2016 +0100

    torture:smb2: split rename2 into multiple tests and extend these
    
    - replay-regular
    - replay-dhv2-oplock1
    - replay-dhv2-oplock2
    - replay-dhv2-oplock3
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 9ac9d286b4584388b10d2c6247094aed8b0e68a6)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit d601af8a7ccec6d8ccb1fd17fdd7128ca399920d
Author: Michael Adam <obnox at samba.org>
Date:   Tue Mar 1 01:14:48 2016 +0100

    torture:smb2: rename replay1 -> replay-commands
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 9ebf079b00b642c5df47fecffc3ff1fc96525235)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 26577dbbaa65aaac3481e31438f7856976903a36
Author: Michael Adam <obnox at samba.org>
Date:   Tue Mar 1 23:07:06 2016 +0100

    torture:smb2: skip replay4 if server does not support multi-channel
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Andreas Schneider <asn at samba.org>
    
    Autobuild-User(master): Michael Adam <obnox at samba.org>
    Autobuild-Date(master): Wed Mar  2 20:38:49 CET 2016 on sn-devel-144
    
    (cherry picked from commit f24567e9fd6ad5925691df2ebc23cfd8a127c5a8)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 2d822821647a69d82327402e6be9c4294a08cc6b
Author: Michael Adam <obnox at samba.org>
Date:   Tue Mar 1 20:40:47 2016 +0100

    smbd: fix crash in smbXsrv_client_global_remove()
    
    Probably copy-n-paste error.
    Uncovered by the multi-channel-related tests we're
    currently writing to exercise this code more.
    
    Pair-Programmed-With: Guenther Deschner <gd at samba.org>
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Signed-off-by: Guenther Deschner <gd at samba.org>
    Reviewed-by: Andreas Schneider <asn at samba.org>
    (cherry picked from commit 04265199b389a7b38c3047985da68e8442a0b746)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 5782344a5775356b37cafe8b6631786fc6ca6364
Author: Michael Adam <obnox at samba.org>
Date:   Thu Feb 25 16:15:04 2016 +0100

    netlogon_creds_cli: use dbwrap_purge instead of dbwrap_delete where appropriate
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Volker Lendecke <vl at samba.org>
    (cherry picked from commit bebd35f439229b9363dfc2f4ae5744103ba80740)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 5b439f51f0177873167de8a900eafa34f5a14e9e
Author: Michael Adam <obnox at samba.org>
Date:   Thu Feb 25 00:58:50 2016 +0100

    s3:registry: use dbwrap_purge_bystring instead of dbwrap_delete_bystring
    
    where appropriate
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Volker Lendecke <vl at samba.org>
    (cherry picked from commit 8f158bab9f8dbdbdb460258a08a15d0d6c41cbac)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit c0fc2c38fc3bd3a0597c71c3ad03b307727a68e1
Author: Michael Adam <obnox at samba.org>
Date:   Thu Feb 25 00:56:14 2016 +0100

    dbwrap: add dbwrap_purge[_bystring]
    
    Variants of dbrwap_delete[_bysrting] that treats NOT FOUND
    as success.
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Volker Lendecke <vl at samba.org>
    (cherry picked from commit 366b51a8ff30132185ff126e2cdd51801b07e6f4)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit a5a7947edf7fdcdc2e3bc905c455c68e3648fa2d
Author: Michael Adam <obnox at samba.org>
Date:   Thu Feb 25 16:02:36 2016 +0100

    dbwrap_util: improve a debug message in dbwrap_delete_action()
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Volker Lendecke <vl at samba.org>
    (cherry picked from commit d4408c495be851c684e7b4b5ff56e5eb82f16c06)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit b882ed1abe8e7f58bcf28a33893bea04c3dcedcb
Author: Michael Adam <obnox at samba.org>
Date:   Mon Feb 29 01:52:42 2016 +0100

    torture:smb2: fix skip message if share is not CA
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 6d008556722a5bca73e5881345497ec8f97595dd)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit d019891529b41777eaa8169e50d21de0f8c2f56c
Author: Michael Adam <obnox at samba.org>
Date:   Mon Feb 29 01:52:07 2016 +0100

    torture:smb2: skip replay5 test if server does not support persistent handles
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit cd3ee2a2aa46cb49e14c451ea8ee64039e5b8fa6)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit d3a024a4f097a6041a84df6066e9246005c83b97
Author: Michael Adam <obnox at samba.org>
Date:   Mon Feb 29 01:51:23 2016 +0100

    torture:smb2: skip replay3 if server does not support Multi-Channel
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 95835b9280f8b191245786305b43ae802886ee01)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit d3206e9cbeb978fad4b3694a9974123ea1fb32f6
Author: Michael Adam <obnox at samba.org>
Date:   Sun Feb 28 01:46:47 2016 +0100

    smbd:smb2_creat: remove outdated TODO comments
    
    Leases have meanwhile been implemented and the
    TODO has been taken care of.
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allson <jra at samba.org>
    
    Autobuild-User(master): Jeremy Allison <jra at samba.org>
    Autobuild-Date(master): Sun Feb 28 08:16:26 CET 2016 on sn-devel-144
    
    (cherry picked from commit abd8b182447fce6dc1436e8ff3907b871705d7e0)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit d0db200bc335e8c417477c35abf7ee52b4bfc8ee
Author: Michael Adam <obnox at samba.org>
Date:   Sat Feb 27 01:58:45 2016 +0100

    smbXsrv_client: factor fetch-locking of global record into function
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 0fe29f66326e9a39254fdc2fd255075e5055eeb6)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 8d8e111c93b91b00e022093b3f66956c03c97753
Author: Michael Adam <obnox at samba.org>
Date:   Sat Feb 27 01:37:34 2016 +0100

    smbXsrv_session: factor fetch-locking of local record into function
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit aaddde12d997c7d35b1e76709afd310990dc9cdb)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 7bbdd9ac5742e7d56861790940fd10f5ad513d7b
Author: Michael Adam <obnox at samba.org>
Date:   Sat Feb 27 01:26:16 2016 +0100

    smbXsrv_session: factor fetch-locking of global record into function
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 37eba9006e95235785d851f4d4c8110bf77e2b64)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 3eec659bd6fa448459722f4959dc209a8e1b033f
Author: Michael Adam <obnox at samba.org>
Date:   Sat Feb 27 01:06:13 2016 +0100

    smbXsrv_tcon: factor fetch-locking of local record into function
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit a9dcbd09801ab19c2abdb803c730120bd20d8175)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit d5d58b902f96b2bbabef45572c239272f389c2e9
Author: Michael Adam <obnox at samba.org>
Date:   Sat Feb 27 00:52:59 2016 +0100

    smbXsrv_tcon: factor fetch-locking of global record into function
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit a5e4f14c3b132c886cda2ab4cc14f1f764ff04eb)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 6c78c8d496f3d2acb27ed0fa9500271c38d19054
Author: Michael Adam <obnox at samba.org>
Date:   Fri Feb 26 00:53:22 2016 +0100

    smbXsrv_open: factor fetch-locking of local record into function
    
    smbXsrv_open_local_fetch_locked()
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    
    Autobuild-User(master): Jeremy Allison <jra at samba.org>
    Autobuild-Date(master): Fri Feb 26 22:35:28 CET 2016 on sn-devel-144
    
    (cherry picked from commit bba426dbbbe0e4aebd99b78cff037eac754aa282)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit c3fcfadf0290594bd9f8a86893b29a66bb295193
Author: Michael Adam <obnox at samba.org>
Date:   Fri Feb 26 00:41:24 2016 +0100

    smbXsrv_open: factor fetch-locking of global record into function
    
    smbXsrv_open_global_fetch_locked()
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 7b8cfa1cbc2738f798fad748ea40c029d99814a0)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 0b6c3b50504849282280515baee44aa8d7b94f17
Author: Michael Adam <obnox at samba.org>
Date:   Tue Feb 23 00:27:11 2016 +0100

    torture:smb2: improve torture_comments in connect test
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    
    Autobuild-User(master): Jeremy Allison <jra at samba.org>
    Autobuild-Date(master): Tue Feb 23 04:50:53 CET 2016 on sn-devel-144
    
    (cherry picked from commit fb0d6244278baa97c35101480b18640796f86bf1)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 141605e5ea1a1928ab9abf45bf0924d45b430550
Author: Michael Adam <obnox at samba.org>
Date:   Mon Feb 22 23:23:13 2016 +0100

    torture:smb2: fix memory leak in connect test.
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    (cherry picked from commit 78d7b23f2f55ebdc3ed2a2abdd68a294a8ef99f7)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit cf7a4e1b5ee5739e6238d73c170fcd2a735b82d2
Author: Michael Adam <obnox at samba.org>
Date:   Mon Feb 22 16:22:14 2016 +0100

    torture:smb2: rewrite connect test to use torture_asserts for create errors
    
    let torture_smb2_createfile propagate errors
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    (cherry picked from commit 4d9484e7c40cb3c3517538348fda521dafcd2f9a)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 2dd63e5bebe16fc0ba57d85bcd650ed012039cf4
Author: Michael Adam <obnox at samba.org>
Date:   Mon Feb 22 14:32:44 2016 +0100

    torture:smb2: rewrite connect test to use torture_asserts
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 358c09b899f62b6f9ac9693b9101639c0cde8d3f)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 95c7f0f6fafd8e33d3d737975bd37f3632d56ae4
Author: Günther Deschner <gd at samba.org>
Date:   Fri Jan 15 18:30:15 2016 +0100

    s4-torture: let smb2.replay.replay4 test deal with scale out shares.
    
    Guenther
    
    Signed-off-by: Guenther Deschner <gd at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 32e545ecea4f217c8b723fbea5d9131573a50488)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit d20a4c2ef24ef6f423498511f7725ea15e5715ef
Author: Günther Deschner <gd at samba.org>
Date:   Fri Jan 15 18:24:08 2016 +0100

    s4-torture: let smb2.replay.replay3 test deal with scale out shares.
    
    Guenther
    
    Signed-off-by: Guenther Deschner <gd at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 757ade67e6830ed66eeeb4954d1fd24d83effb13)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit d194ce0bdae35ab64a33095fdf3379228d0f170b
Author: Günther Deschner <gd at samba.org>
Date:   Fri Jan 15 18:07:31 2016 +0100

    s4-torture: let smb2.replay.replay2 test deal with scale out shares.
    
    Guenther
    
    Signed-off-by: Guenther Deschner <gd at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    (cherry picked from commit 9c23f43f9edd8cfbfdd56e397748e2f74b1ef29b)
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11779

commit 19c381c62c953b3781a5a9a9c6ac60cfa0323db2
Author: Stefan Metzmacher <metze at samba.org>
Date:   Tue Jan 26 09:37:13 2016 +0100

    s4:libcli/ldap: add support for LDB_CONTROL_DIRSYNC_EX_OID
    
    Signed-off-by: Stefan Metzmacher <metze at samba.org>
    Reviewed-by: Garming Sam <garming at catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abartlet at samba.org>
    (cherry picked from commit d104d6e04ff8ad8274db1a63f53a5c2b93e3e10b)

commit 2a1ceb85c287fcdce0ca272ce59341ed69e72517
Author: Stefan Metzmacher <metze at samba.org>
Date:   Tue Feb 2 10:04:20 2016 +0100

    ldb: version 1.1.26
    
    * let a timeout of -1 indicate no timeout for a given request
    * fix memory leaks in pyldb ldb.search()
    * build fixes
    * improve pyldb ldb.search() help message
    * add pyldb ldb.search_iterator() api
    * add LDB_ATTR_FLAG_FORCE_BASE64_LDIF as optional argument
      to ldb_schema_attribute_add()
    * add client support for LDB_CONTROL_DIRSYNC_EX
    
    Signed-off-by: Stefan Metzmacher <metze at samba.org>
    Reviewed-by: Garming Sam <garming at catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abartlet at samba.org>
    (cherry picked from commit fb705e19e8a8e727908c8913604c4cbffdb30c96)

commit 02e325f3542394afb605a69bb58bc62a570d63bf
Author: Stefan Metzmacher <metze at samba.org>
Date:   Tue Jan 26 09:36:56 2016 +0100

    ldb: add support for LDB_CONTROL_DIRSYNC_EX
    
    Signed-off-by: Stefan Metzmacher <metze at samba.org>
    Reviewed-by: Garming Sam <garming at catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abartlet at samba.org>
    (cherry picked from commit ad2b5fae7f9b1437e6fcf73a0be3ca5d3ba0d5dc)

commit 530693d25ec3257ea9fc2c0d43cac5b11fcc2db0
Author: Stefan Metzmacher <metze at samba.org>
Date:   Fri Feb 5 13:55:31 2016 +0100

    ldb: add LDB_ATTR_FLAG_FORCE_BASE64_LDIF support
    
    This can be used to force ldb_write_ldif() to use base64 for
    a specific attribute.
    
    Signed-off-by: Stefan Metzmacher <metze at samba.org>
    Reviewed-by: Garming Sam <garming at catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abartlet at samba.org>
    (cherry picked from commit f721f27da5f9ebb41639b70986ad1acb83206ed6)

commit 33f4491c0d594203b41330568a1feaa31003e4aa
Author: Michael Adam <obnox at samba.org>
Date:   Sun Feb 14 16:50:38 2016 +0100

    pyldb: eliminate warnings from python api test
    
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Stefan Metzmacher <metze at samba.org>
    Reviewed-by: Garming Sam <garming at catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abartlet at samba.org>
    (cherry picked from commit 6c8ab59d068101caa40f9b15ed70a115b5612f47)

commit f12c897ce6a8a6c975a5dce7ac1c04c534c841dd
Author: Stefan Metzmacher <metze at samba.org>
Date:   Mon Feb 1 02:30:56 2016 +0100

    pyldb: add api tests for search_iterator()
    
    Signed-off-by: Stefan Metzmacher <metze at samba.org>
    Reviewed-by: Garming Sam <garming at catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abartlet at samba.org>
    (cherry picked from commit 13e981d3d822876f6f6e741606dc5a772ab2cca5)

commit e5c730472d49eeccfcd203d2ae9bfc01f05d8be1
Author: Stefan Metzmacher <metze at samba.org>
Date:   Fri Jan 22 00:06:45 2016 +0100

    pyldb: add ldb.search_iterator()
    
    This is able to handle async requests, e.g. with a notification control
    and processes results as they arrive instead of waiting for all results
    before returning.
    
    search_handle = ldb.search_iterator(...)
    
    for e in search_handle:
        if not isinstance(msg, ldb.Message):
            # referral
            continue
    
        name = e["name"][0]
    
    result = search_handle.result()
    
    Signed-off-by: Stefan Metzmacher <metze at samba.org>
    Reviewed-by: Garming Sam <garming at catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abartlet at samba.org>
    (cherry picked from commit 77ca07801c81558d95b95e9120511cb2e00f3d03)

commit 66112f65c2e87877f30e5a672a6edd916c288b86
Author: Stefan Metzmacher <metze at samba.org>
Date:   Fri Jan 22 00:06:04 2016 +0100

    pyldb: fix help message for ldb.search()
    
    Signed-off-by: Stefan Metzmacher <metze at samba.org>
    Reviewed-by: Garming Sam <garming at catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abartlet at samba.org>
    (cherry picked from commit e96fa7b10c5c6ee2cdd57c2aa553593c9372f87b)

commit 11c06aacf63aa03d695414242fbb8b3c845cffb3
Author: Stefan Metzmacher <metze at samba.org>
Date:   Fri Jan 22 00:05:09 2016 +0100

    pyldb: fix memory leak in py_ldb_search()
    
    Signed-off-by: Stefan Metzmacher <metze at samba.org>
    Reviewed-by: Garming Sam <garming at catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abartlet at samba.org>
    (cherry picked from commit 2c2a2540f4076debdf2993781958b546c269aa49)

commit f305aae9dba6ac61a46c0177c1fcf0d62f1113ea
Author: Andrew Bartlett <abartlet at samba.org>
Date:   Tue Jan 5 17:59:32 2016 +1300

    pyldb: Free correct context when pyldb_Object_AsDn() fails
    
    Signed-off-by: Andrew Bartlett <abartlet at samba.org>
    Reviewed-by: Stefan Metzmacher <metze at samba.org>
    Reviewed-by: Garming Sam <garming at catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abartlet at samba.org>
    (cherry picked from commit e7bdd30be54f3652cf060f4252f9eed3ea82078f)

commit 68b76dbdb5792f54b5dccc4f68b55bd3fc1f2ea3
Author: Stefan Metzmacher <metze at samba.org>
Date:   Fri Jan 22 08:53:57 2016 +0100

    ldb: allow a timeout of -1 result in no timeout timer at all.
    
    This is required in order to have long running async searches,
    e.g. with LDB_CONTROL_NOTIFICATION_OID.
    
    Signed-off-by: Stefan Metzmacher <metze at samba.org>
    Reviewed-by: Garming Sam <garming at catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abartlet at samba.org>
    (cherry picked from commit 2b1cd4a1147a8d5ba10ddcef4c2d258df2bd5dd4)

commit 7a6c31d573fe5f50c1ff7f32cef3d4b0d0c3f2d4
Author: Stefan Metzmacher <metze at samba.org>
Date:   Fri Jan 22 08:53:57 2016 +0100

    ldb-samba: fix the timeout setup in ildb_request_send()
    
    We need to use the startime as reference not the current time.
    
    We also allow timeout == -1 to indicate no timeout at all.
    
    Signed-off-by: Stefan Metzmacher <metze at samba.org>
    Reviewed-by: Garming Sam <garming at catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abartlet at samba.org>
    (cherry picked from commit 5db9f865bca818da8d2334208f3141f7f5c7286d)

commit f511bb3e561f5ff3206fb87311bf92638c97be42
Author: Stefan Metzmacher <metze at samba.org>
Date:   Mon Feb 1 11:00:14 2016 +0100

    s4:libcli/ldap: send AbandonRequests for cancelled requests
    
    This happens on a local timeout of an talloc_free() of the request.
    
    Signed-off-by: Stefan Metzmacher <metze at samba.org>
    Reviewed-by: Garming Sam <garming at catalyst.net.nz>
    Reviewed-by: Andrew Bartlett <abartlet at samba.org>
    (cherry picked from commit cd77b0bba434139e13db5ec2096ca99b6b3f084d)

commit 68dc1171709b32e8b9053eef44e7f044c9e2dc92
Author: Stefan Metzmacher <metze at samba.org>
Date:   Thu Jan 14 03:14:26 2016 +0100

    ldb:ABI: add missing pyldb-util.py3-1.1.25.sigs
    
    Signed-off-by: Stefan Metzmacher <metze at samba.org>
    Reviewed-by: Michael Adam <obnox at samba.org>
    (cherry picked from commit 8adf470af231718d334e282594079a67e4da9f05)

commit 2a420aabbed28025b882b837bea3af0b56c8924f
Author: Volker Lendecke <vl at samba.org>
Date:   Mon Jan 25 12:40:53 2016 +0100

    ldb: Avoid a "talloc_steal"
    
    There's only one caller of "next_chunk" that does a talloc_steal right
    after the call. Pass in a talloc context.
    
    Signed-off-by: Volker Lendecke <vl at samba.org>
    Reviewed-by: Guenther Deschner <gd at samba.org>
    (cherry picked from commit d56e42de64af84ad839749beaa22450f71bec58a)

commit d2e00475b0b4684c2a6a737cbbb2aad452a1f71a
Author: Volker Lendecke <vl at samba.org>
Date:   Mon Jan 25 12:38:36 2016 +0100

    ldb: Fix some whitespace
    
    Signed-off-by: Volker Lendecke <vl at samba.org>
    Reviewed-by: Guenther Deschner <gd at samba.org>
    (cherry picked from commit 11c5513bb121fd43f566eacfe7b2af64f3cb3a83)

-----------------------------------------------------------------------

Summary of changes:
 ctdb/common/system_linux.c                         |    6 +-
 lib/dbwrap/dbwrap.h                                |    2 +
 lib/dbwrap/dbwrap_util.c                           |   20 +-
 lib/ldb-samba/ldb_ildap.c                          |   12 +-
 lib/ldb/ABI/{ldb-1.1.25.sigs => ldb-1.1.26.sigs}   |    0
 ...ldb-util-1.1.10.sigs => pyldb-util-1.1.26.sigs} |    0
 ...util-1.1.10.sigs => pyldb-util.py3-1.1.25.sigs} |    0
 ...util-1.1.10.sigs => pyldb-util.py3-1.1.26.sigs} |    0
 lib/ldb/common/ldb_controls.c                      |   65 +
 lib/ldb/common/ldb_ldif.c                          |   77 +-
 lib/ldb/include/ldb.h                              |    7 +
 lib/ldb/ldb_ldap/ldb_ldap.c                        |   18 +-
 lib/ldb/ldb_sqlite3/ldb_sqlite3.c                  |   11 +-
 lib/ldb/ldb_tdb/ldb_tdb.c                          |   14 +-
 lib/ldb/pyldb.c                                    |  385 +++++-
 lib/ldb/tests/python/api.py                        |  108 +-
 lib/ldb/tools/cmdline.c                            |   33 +
 lib/ldb/wscript                                    |    2 +-
 libcli/auth/netlogon_creds_cli.c                   |   14 +-
 libcli/smb/smb_constants.h                         |    1 -
 selftest/knownfail                                 |    2 -
 source3/libnet/libnet_join.c                       |   52 +
 source3/librpc/idl/smbXsrv.idl                     |    7 +
 source3/libsmb/dsgetdcname.c                       |   16 +-
 source3/modules/vfs_glusterfs.c                    |   17 +-
 source3/registry/reg_backend_db.c                  |    7 +-
 source3/smbd/globals.h                             |    4 +
 source3/smbd/negprot.c                             |  152 ++-
 source3/smbd/smb2_create.c                         |  115 +-
 source3/smbd/smb2_negprot.c                        |    9 +-
 source3/smbd/smb2_server.c                         |    3 +
 source3/smbd/smbXsrv_client.c                      |   70 +-
 source3/smbd/smbXsrv_open.c                        |  288 +++--
 source3/smbd/smbXsrv_session.c                     |  129 +-
 source3/smbd/smbXsrv_tcon.c                        |  119 +-
 source4/dsdb/repl/replicated_objects.c             |   18 +-
 source4/dsdb/schema/schema_syntax.c                |   12 +-
 source4/libcli/ldap/ldap_client.c                  |   50 +
 source4/libcli/ldap/ldap_controls.c                |    1 +
 source4/torture/smb2/connect.c                     |   89 +-
 source4/torture/smb2/replay.c                      | 1258 ++++++++++++++++++--
 41 files changed, 2611 insertions(+), 582 deletions(-)
 copy lib/ldb/ABI/{ldb-1.1.25.sigs => ldb-1.1.26.sigs} (100%)
 copy lib/ldb/ABI/{pyldb-util-1.1.10.sigs => pyldb-util-1.1.26.sigs} (100%)
 copy lib/ldb/ABI/{pyldb-util-1.1.10.sigs => pyldb-util.py3-1.1.25.sigs} (100%)
 copy lib/ldb/ABI/{pyldb-util-1.1.10.sigs => pyldb-util.py3-1.1.26.sigs} (100%)


Changeset truncated at 500 lines:

diff --git a/ctdb/common/system_linux.c b/ctdb/common/system_linux.c
index d523617..6d01699 100644
--- a/ctdb/common/system_linux.c
+++ b/ctdb/common/system_linux.c
@@ -100,7 +100,7 @@ int ctdb_sys_send_arp(const ctdb_sock_addr *addr, const char *iface)
 
 	switch (addr->ip.sin_family) {
 	case AF_INET:
-		s = socket(AF_PACKET, SOCK_RAW, ETHERTYPE_ARP);
+		s = socket(AF_PACKET, SOCK_RAW, 0);
 		if (s == -1){
 			DEBUG(DEBUG_CRIT,(__location__ " failed to open raw socket\n"));
 			return -1;
@@ -194,7 +194,7 @@ int ctdb_sys_send_arp(const ctdb_sock_addr *addr, const char *iface)
 		close(s);
 		break;
 	case AF_INET6:
-		s = socket(AF_PACKET, SOCK_RAW, ETHERTYPE_ARP);
+		s = socket(AF_PACKET, SOCK_RAW, 0);
 		if (s == -1){
 			DEBUG(DEBUG_CRIT,(__location__ " failed to open raw socket\n"));
 			return -1;
@@ -460,7 +460,7 @@ int ctdb_sys_open_capture_socket(const char *iface, void **private_data)
 	int s;
 
 	/* Open a socket to capture all traffic */
-	s = socket(AF_PACKET, SOCK_RAW, ETH_P_ALL);
+	s = socket(AF_PACKET, SOCK_RAW, htons(ETH_P_ALL));
 	if (s == -1) {
 		DEBUG(DEBUG_CRIT,(__location__ " failed to open raw socket\n"));
 		return -1;
diff --git a/lib/dbwrap/dbwrap.h b/lib/dbwrap/dbwrap.h
index 5e13a59..2eded04 100644
--- a/lib/dbwrap/dbwrap.h
+++ b/lib/dbwrap/dbwrap.h
@@ -94,6 +94,8 @@ const char *dbwrap_name(struct db_context *db);
 
 /* The following definitions come from lib/dbwrap_util.c  */
 
+NTSTATUS dbwrap_purge(struct db_context *db, TDB_DATA key);
+NTSTATUS dbwrap_purge_bystring(struct db_context *db, const char *key);
 NTSTATUS dbwrap_delete_bystring(struct db_context *db, const char *key);
 NTSTATUS dbwrap_store_bystring(struct db_context *db, const char *key,
 			       TDB_DATA data, int flags);
diff --git a/lib/dbwrap/dbwrap_util.c b/lib/dbwrap/dbwrap_util.c
index 901ef56..22f910d 100644
--- a/lib/dbwrap/dbwrap_util.c
+++ b/lib/dbwrap/dbwrap_util.c
@@ -412,7 +412,8 @@ static NTSTATUS dbwrap_delete_action(struct db_context * db, void *private_data)
 
 	status = dbwrap_record_delete(rec);
 	if (!NT_STATUS_IS_OK(status)) {
-		DEBUG(5, ("delete_rec returned %s\n", nt_errstr(status)));
+		DBG_INFO("dbwrap_record_delete returned %s\n",
+			 nt_errstr(status));
 	}
 
 	talloc_free(rec);
@@ -527,6 +528,23 @@ NTSTATUS dbwrap_trans_traverse(struct db_context *db,
 	return dbwrap_trans_do(db, dbwrap_trans_traverse_action, &ctx);
 }
 
+NTSTATUS dbwrap_purge(struct db_context *db, TDB_DATA key)
+{
+	NTSTATUS status;
+
+	status = dbwrap_delete(db, key);
+	if (NT_STATUS_EQUAL(status, NT_STATUS_NOT_FOUND)) {
+		status = NT_STATUS_OK;
+	}
+
+	return status;
+}
+
+NTSTATUS dbwrap_purge_bystring(struct db_context *db, const char *key)
+{
+	return dbwrap_purge(db, string_term_tdb_data(key));
+}
+
 NTSTATUS dbwrap_delete_bystring(struct db_context *db, const char *key)
 {
 	return dbwrap_delete(db, string_term_tdb_data(key));
diff --git a/lib/ldb-samba/ldb_ildap.c b/lib/ldb-samba/ldb_ildap.c
index 6ec363d..65f11db 100644
--- a/lib/ldb-samba/ldb_ildap.c
+++ b/lib/ldb-samba/ldb_ildap.c
@@ -418,11 +418,13 @@ static int ildb_request_send(struct ildb_context *ac, struct ldap_message *msg)
 		return LDB_ERR_OPERATIONS_ERROR;
 	}
 
-	talloc_free(req->time_event);
-	req->time_event = NULL;
-	if (ac->req->timeout) {
-		req->time_event = tevent_add_timer(ac->ildb->event_ctx, ac,
-						   timeval_current_ofs(ac->req->timeout, 0),
+	TALLOC_FREE(req->time_event);
+	if (ac->req->timeout > 0) {
+		struct timeval tv = {
+			.tv_sec = ac->req->starttime + ac->req->timeout,
+		};
+
+		req->time_event = tevent_add_timer(ac->ildb->event_ctx, ac, tv,
 						   ildb_request_timeout, ac);
 	}
 
diff --git a/lib/ldb/ABI/ldb-1.1.25.sigs b/lib/ldb/ABI/ldb-1.1.26.sigs
similarity index 100%
copy from lib/ldb/ABI/ldb-1.1.25.sigs
copy to lib/ldb/ABI/ldb-1.1.26.sigs
diff --git a/lib/ldb/ABI/pyldb-util-1.1.10.sigs b/lib/ldb/ABI/pyldb-util-1.1.26.sigs
similarity index 100%
copy from lib/ldb/ABI/pyldb-util-1.1.10.sigs
copy to lib/ldb/ABI/pyldb-util-1.1.26.sigs
diff --git a/lib/ldb/ABI/pyldb-util-1.1.10.sigs b/lib/ldb/ABI/pyldb-util.py3-1.1.25.sigs
similarity index 100%
copy from lib/ldb/ABI/pyldb-util-1.1.10.sigs
copy to lib/ldb/ABI/pyldb-util.py3-1.1.25.sigs
diff --git a/lib/ldb/ABI/pyldb-util-1.1.10.sigs b/lib/ldb/ABI/pyldb-util.py3-1.1.26.sigs
similarity index 100%
copy from lib/ldb/ABI/pyldb-util-1.1.10.sigs
copy to lib/ldb/ABI/pyldb-util.py3-1.1.26.sigs
diff --git a/lib/ldb/common/ldb_controls.c b/lib/ldb/common/ldb_controls.c
index 7346326..af056d0 100644
--- a/lib/ldb/common/ldb_controls.c
+++ b/lib/ldb/common/ldb_controls.c
@@ -367,6 +367,26 @@ char *ldb_control_to_string(TALLOC_CTX *mem_ctx, const struct ldb_control *contr
 		talloc_free(cookie);
 		return res;
 	}
+	if (strcmp(control->oid, LDB_CONTROL_DIRSYNC_EX_OID) == 0) {
+		char *cookie;
+		struct ldb_dirsync_control *rep_control = talloc_get_type(control->data,
+								struct ldb_dirsync_control);
+
+		cookie = ldb_base64_encode(mem_ctx, rep_control->cookie,
+				rep_control->cookie_len);
+		if (cookie == NULL) {
+			return NULL;
+		}
+		res = talloc_asprintf(mem_ctx, "%s:%d:%d:%d:%s",
+					LDB_CONTROL_DIRSYNC_EX_NAME,
+					control->critical,
+					rep_control->flags,
+					rep_control->max_attributes,
+					cookie);
+
+		talloc_free(cookie);
+		return res;
+	}
 
 	if (strcmp(control->oid, LDB_CONTROL_VERIFY_NAME_OID) == 0) {
 		struct ldb_verify_name_control *rep_control = talloc_get_type(control->data, struct ldb_verify_name_control);
@@ -525,6 +545,51 @@ struct ldb_control *ldb_parse_control_from_string(struct ldb_context *ldb, TALLO
 
 		return ctrl;
 	}
+	if (LDB_CONTROL_CMP(control_strings, LDB_CONTROL_DIRSYNC_EX_NAME) == 0) {
+		struct ldb_dirsync_control *control;
+		const char *p;
+		char cookie[1024];
+		int crit, max_attrs, ret;
+		uint32_t flags;
+
+		cookie[0] = '\0';
+		p = &(control_strings[sizeof(LDB_CONTROL_DIRSYNC_EX_NAME)]);
+		ret = sscanf(p, "%d:%u:%d:%1023[^$]", &crit, &flags, &max_attrs, cookie);
+
+		if ((ret < 3) || (crit < 0) || (crit > 1) || (max_attrs < 0)) {
+			error_string = talloc_asprintf(mem_ctx, "invalid %s control syntax\n",
+						       LDB_CONTROL_DIRSYNC_EX_NAME);
+			error_string = talloc_asprintf_append(error_string, " syntax: crit(b):flags(n):max_attrs(n)[:cookie(o)]\n");
+			error_string = talloc_asprintf_append(error_string, "   note: b = boolean, n = number, o = b64 binary blob");
+			ldb_set_errstring(ldb, error_string);
+			talloc_free(error_string);
+			talloc_free(ctrl);
+			return NULL;
+		}
+
+		/* w2k3 seems to ignore the parameter,
+		 * but w2k sends a wrong cookie when this value is to small
+		 * this would cause looping forever, while getting
+		 * the same data and same cookie forever
+		 */
+		if (max_attrs == 0) max_attrs = 0x0FFFFFFF;
+
+		ctrl->oid = LDB_CONTROL_DIRSYNC_EX_OID;
+		ctrl->critical = crit;
+		control = talloc(ctrl, struct ldb_dirsync_control);
+		control->flags = flags;
+		control->max_attributes = max_attrs;
+		if (*cookie) {
+			control->cookie_len = ldb_base64_decode(cookie);
+			control->cookie = (char *)talloc_memdup(control, cookie, control->cookie_len);
+		} else {
+			control->cookie = NULL;
+			control->cookie_len = 0;
+		}
+		ctrl->data = control;
+
+		return ctrl;
+	}
 
 	if (LDB_CONTROL_CMP(control_strings, LDB_CONTROL_ASQ_NAME) == 0) {
 		struct ldb_asq_control *control;
diff --git a/lib/ldb/common/ldb_ldif.c b/lib/ldb/common/ldb_ldif.c
index f9743dc..0aeda94b 100644
--- a/lib/ldb/common/ldb_ldif.c
+++ b/lib/ldb/common/ldb_ldif.c
@@ -1,4 +1,4 @@
-/* 
+/*
    ldb database library
 
    Copyright (C) Andrew Tridgell  2004
@@ -6,7 +6,7 @@
      ** NOTE! The following LGPL license applies to the ldb
      ** library. This does NOT imply that all of Samba is released
      ** under the LGPL
-   
+
    This library is free software; you can redistribute it and/or
    modify it under the terms of the GNU Lesser General Public
    License as published by the Free Software Foundation; either
@@ -39,7 +39,7 @@
 #include "system/locale.h"
 
 /*
-  
+
 */
 static int ldb_read_data_file(TALLOC_CTX *mem_ctx, struct ldb_val *value)
 {
@@ -236,7 +236,7 @@ static int fold_string(int (*fprintf_fn)(void *, const char *, ...), void *priva
   encode as base64 to a file
 */
 static int base64_encode_f(struct ldb_context *ldb,
-			   int (*fprintf_fn)(void *, const char *, ...), 
+			   int (*fprintf_fn)(void *, const char *, ...),
 			   void *private_data,
 			   const char *buf, int len, int start_pos)
 {
@@ -273,9 +273,9 @@ static const struct {
   write to ldif, using a caller supplied write method, and only printing secrets if we are not in a trace
 */
 static int ldb_ldif_write_trace(struct ldb_context *ldb,
-				int (*fprintf_fn)(void *, const char *, ...), 
+				int (*fprintf_fn)(void *, const char *, ...),
 				void *private_data,
-				const struct ldb_ldif *ldif, 
+				const struct ldb_ldif *ldif,
 				bool in_trace)
 {
 	TALLOC_CTX *mem_ctx;
@@ -324,20 +324,20 @@ static int ldb_ldif_write_trace(struct ldb_context *ldb,
 		if (ldif->changetype == LDB_CHANGETYPE_MODIFY) {
 			switch (msg->elements[i].flags & LDB_FLAG_MOD_MASK) {
 			case LDB_FLAG_MOD_ADD:
-				fprintf_fn(private_data, "add: %s\n", 
+				fprintf_fn(private_data, "add: %s\n",
 					   msg->elements[i].name);
 				break;
 			case LDB_FLAG_MOD_DELETE:
-				fprintf_fn(private_data, "delete: %s\n", 
+				fprintf_fn(private_data, "delete: %s\n",
 					   msg->elements[i].name);
 				break;
 			case LDB_FLAG_MOD_REPLACE:
-				fprintf_fn(private_data, "replace: %s\n", 
+				fprintf_fn(private_data, "replace: %s\n",
 					   msg->elements[i].name);
 				break;
 			}
 		}
-		
+
 		if (in_trace && secret_attributes && ldb_attr_in_list(secret_attributes, msg->elements[i].name)) {
 			/* Deliberatly skip printing this password */
 			ret = fprintf_fn(private_data, "# %s::: REDACTED SECRET ATTRIBUTE\n",
@@ -348,18 +348,26 @@ static int ldb_ldif_write_trace(struct ldb_context *ldb,
 
 		for (j=0;j<msg->elements[i].num_values;j++) {
 			struct ldb_val v;
-			bool use_b64_encode;
+			bool use_b64_encode = false;
+
 			ret = a->syntax->ldif_write_fn(ldb, mem_ctx, &msg->elements[i].values[j], &v);
 			if (ret != LDB_SUCCESS) {
 				v = msg->elements[i].values[j];
 			}
-			use_b64_encode = !(ldb->flags & LDB_FLG_SHOW_BINARY)
-					&& ldb_should_b64_encode(ldb, &v);
+
+			if (ldb->flags & LDB_FLG_SHOW_BINARY) {
+				use_b64_encode = false;
+			} else if (a->flags & LDB_ATTR_FLAG_FORCE_BASE64_LDIF) {
+				use_b64_encode = true;
+			} else {
+				use_b64_encode = ldb_should_b64_encode(ldb, &v);
+			}
+
 			if (ret != LDB_SUCCESS || use_b64_encode) {
-				ret = fprintf_fn(private_data, "%s:: ", 
+				ret = fprintf_fn(private_data, "%s:: ",
 						 msg->elements[i].name);
 				CHECK_RET;
-				ret = base64_encode_f(ldb, fprintf_fn, private_data, 
+				ret = base64_encode_f(ldb, fprintf_fn, private_data,
 						      (char *)v.data, v.length,
 						      strlen(msg->elements[i].name)+3);
 				CHECK_RET;
@@ -369,7 +377,7 @@ static int ldb_ldif_write_trace(struct ldb_context *ldb,
 				ret = fprintf_fn(private_data, "%s: ", msg->elements[i].name);
 				CHECK_RET;
 				if (ldb->flags & LDB_FLG_SHOW_BINARY) {
-					ret = fprintf_fn(private_data, "%*.*s", 
+					ret = fprintf_fn(private_data, "%*.*s",
 							 v.length, v.length, (char *)v.data);
 				} else {
 					ret = fold_string(fprintf_fn, private_data,
@@ -403,7 +411,7 @@ static int ldb_ldif_write_trace(struct ldb_context *ldb,
   write to ldif, using a caller supplied write method
 */
 int ldb_ldif_write(struct ldb_context *ldb,
-		   int (*fprintf_fn)(void *, const char *, ...), 
+		   int (*fprintf_fn)(void *, const char *, ...),
 		   void *private_data,
 		   const struct ldb_ldif *ldif)
 {
@@ -417,7 +425,7 @@ int ldb_ldif_write(struct ldb_context *ldb,
 
   caller frees
 */
-static char *next_chunk(struct ldb_context *ldb, 
+static char *next_chunk(struct ldb_context *ldb, TALLOC_CTX *mem_ctx,
 			int (*fgetc_fn)(void *), void *private_data)
 {
 	size_t alloc_size=0, chunk_size = 0;
@@ -429,7 +437,7 @@ static char *next_chunk(struct ldb_context *ldb,
 		if (chunk_size+1 >= alloc_size) {
 			char *c2;
 			alloc_size += 1024;
-			c2 = talloc_realloc(ldb, chunk, char, alloc_size);
+			c2 = talloc_realloc(mem_ctx, chunk, char, alloc_size);
 			if (!c2) {
 				talloc_free(chunk);
 				errno = ENOMEM;
@@ -442,15 +450,15 @@ static char *next_chunk(struct ldb_context *ldb,
 			if (c == '\n') {
 				in_comment = 0;
 			}
-			continue;			
+			continue;
 		}
-		
+
 		/* handle continuation lines - see RFC2849 */
 		if (c == ' ' && chunk_size > 1 && chunk[chunk_size-1] == '\n') {
 			chunk_size--;
 			continue;
 		}
-		
+
 		/* chunks are terminated by a double line-feed */
 		if (c == '\n' && chunk_size > 0 && chunk[chunk_size-1] == '\n') {
 			chunk[chunk_size-1] = 0;
@@ -774,18 +782,17 @@ struct ldb_ldif *ldb_ldif_read(struct ldb_context *ldb,
 	msg->elements = NULL;
 	msg->num_elements = 0;
 
-	chunk = next_chunk(ldb, fgetc_fn, private_data);
+	chunk = next_chunk(ldb, ldif, fgetc_fn, private_data);
 	if (!chunk) {
 		goto failed;
 	}
-	talloc_steal(ldif, chunk);
 
 	s = chunk;
 
 	if (next_attr(ldif, &s, &attr, &value) != 0) {
 		goto failed;
 	}
-	
+
 	/* first line must be a dn */
 	if (ldb_attr_cmp(attr, "dn") != 0) {
 		ldb_debug(ldb, LDB_DEBUG_ERROR, "Error: First line of ldif must be a dn not '%s'",
@@ -845,7 +852,7 @@ struct ldb_ldif *ldb_ldif_read(struct ldb_context *ldb,
 			}
 			continue;
 		}
-		
+
 		el = &msg->elements[msg->num_elements-1];
 
 		a = ldb_schema_attribute_by_name(ldb, attr);
@@ -853,8 +860,8 @@ struct ldb_ldif *ldb_ldif_read(struct ldb_context *ldb,
 		if (msg->num_elements > 0 && ldb_attr_cmp(attr, el->name) == 0 &&
 		    flags == el->flags) {
 			/* its a continuation */
-			el->values = 
-				talloc_realloc(msg->elements, el->values, 
+			el->values =
+				talloc_realloc(msg->elements, el->values,
 						 struct ldb_val, el->num_values+1);
 			if (!el->values) {
 				goto failed;
@@ -874,8 +881,8 @@ struct ldb_ldif *ldb_ldif_read(struct ldb_context *ldb,
 			el->num_values++;
 		} else {
 			/* its a new attribute */
-			msg->elements = talloc_realloc(msg, msg->elements, 
-							 struct ldb_message_element, 
+			msg->elements = talloc_realloc(msg, msg->elements,
+							 struct ldb_message_element,
 							 msg->num_elements+1);
 			if (!msg->elements) {
 				goto failed;
@@ -934,7 +941,7 @@ static int fgetc_file(void *private_data)
 	return c;
 }
 
-struct ldb_ldif *ldb_ldif_read_file_state(struct ldb_context *ldb, 
+struct ldb_ldif *ldb_ldif_read_file_state(struct ldb_context *ldb,
 					  struct ldif_read_file_state *state)
 {
 	return ldb_ldif_read(ldb, fgetc_file, state);
@@ -1020,7 +1027,7 @@ static int ldif_printf_string(void *private_data, const char *fmt, ...)
 	va_list ap;
 	size_t oldlen = talloc_get_size(state->string);
 	va_start(ap, fmt);
-	
+
 	state->string = talloc_vasprintf_append(state->string, fmt, ap);
 	va_end(ap);
 	if (!state->string) {
@@ -1030,7 +1037,7 @@ static int ldif_printf_string(void *private_data, const char *fmt, ...)
 	return talloc_get_size(state->string) - oldlen;
 }
 
-char *ldb_ldif_write_redacted_trace_string(struct ldb_context *ldb, TALLOC_CTX *mem_ctx, 
+char *ldb_ldif_write_redacted_trace_string(struct ldb_context *ldb, TALLOC_CTX *mem_ctx,
 					   const struct ldb_ldif *ldif)
 {
 	struct ldif_write_string_state state;
@@ -1044,7 +1051,7 @@ char *ldb_ldif_write_redacted_trace_string(struct ldb_context *ldb, TALLOC_CTX *
 	return state.string;
 }
 
-char *ldb_ldif_write_string(struct ldb_context *ldb, TALLOC_CTX *mem_ctx, 
+char *ldb_ldif_write_string(struct ldb_context *ldb, TALLOC_CTX *mem_ctx,
 			    const struct ldb_ldif *ldif)
 {
 	struct ldif_write_string_state state;
@@ -1062,7 +1069,7 @@ char *ldb_ldif_write_string(struct ldb_context *ldb, TALLOC_CTX *mem_ctx,
   convenient function to turn a ldb_message into a string. Useful for
   debugging
  */
-char *ldb_ldif_message_string(struct ldb_context *ldb, TALLOC_CTX *mem_ctx, 
+char *ldb_ldif_message_string(struct ldb_context *ldb, TALLOC_CTX *mem_ctx,
 			      enum ldb_changetype changetype,
 			      const struct ldb_message *msg)
 {
diff --git a/lib/ldb/include/ldb.h b/lib/ldb/include/ldb.h
index f48f753..e715b92 100644
--- a/lib/ldb/include/ldb.h
+++ b/lib/ldb/include/ldb.h
@@ -422,6 +422,11 @@ const struct ldb_dn_extended_syntax *ldb_dn_extended_syntax_by_name(struct ldb_c
  */
 #define LDB_ATTR_FLAG_SINGLE_VALUE (1<<4)
 
+/*
+ * The values should always be base64 encoded
+ */
+#define LDB_ATTR_FLAG_FORCE_BASE64_LDIF        (1<<5)
+
 /**
   LDAP attribute syntax for a DN
 
@@ -652,6 +657,8 @@ typedef int (*ldb_qsort_cmp_fn_t) (void *v1, void *v2, void *opaque);
 */
 #define LDB_CONTROL_DIRSYNC_OID		"1.2.840.113556.1.4.841"
 #define LDB_CONTROL_DIRSYNC_NAME	"dirsync"
+#define LDB_CONTROL_DIRSYNC_EX_OID	"1.2.840.113556.1.4.2090"
+#define LDB_CONTROL_DIRSYNC_EX_NAME	"dirsync_ex"
 
 
 /**
diff --git a/lib/ldb/ldb_ldap/ldb_ldap.c b/lib/ldb/ldb_ldap/ldb_ldap.c
index 7e6ac90..29f8938 100644
--- a/lib/ldb/ldb_ldap/ldb_ldap.c
+++ b/lib/ldb/ldb_ldap/ldb_ldap.c
@@ -252,8 +252,11 @@ static int lldb_search(struct lldb_context *lldb_ac)
 		break;
 	}
 
-	tv.tv_sec = req->timeout;
+	tv.tv_sec = 0;
 	tv.tv_usec = 0;
+	if (req->timeout > 0) {
+		tv.tv_sec = req->timeout;


-- 
Samba Shared Repository



More information about the samba-cvs mailing list