mdw/samba.git
12 years agos4:upgrade_from_s3 - old s3 versions < 3.4.x don't have a "state directory" param
Matthias Dieter Wallnöfer [Wed, 14 Sep 2011 08:12:30 +0000 (10:12 +0200)]
s4:upgrade_from_s3 - old s3 versions < 3.4.x don't have a "state directory" param

Hence the "lock directory" path has to be used instead.

12 years agotdb2: remove bogus leftover .orig file.
Rusty Russell [Wed, 14 Sep 2011 02:28:20 +0000 (11:58 +0930)]
tdb2: remove bogus leftover .orig file.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Autobuild-User: Rusty Russell <rusty@rustcorp.com.au>
Autobuild-Date: Wed Sep 14 06:06:41 CEST 2011 on sn-devel-104

12 years agoFix bug #8229 - git patch attached against 3.6.0-rc2 to fix 'widelinks' regression...
Jeremy Allison [Tue, 13 Sep 2011 23:42:09 +0000 (16:42 -0700)]
Fix bug #8229 - git patch attached against 3.6.0-rc2 to fix 'widelinks' regression intro'd in 3.2

Add "allow insecure widelinks" to re-enable the ability (requested
by some sites) to have "widelinks = yes" and "unix extensions = yes".

Based on an original patch by Linda Walsh <samba@tlinx.org>

Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Wed Sep 14 03:55:45 CEST 2011 on sn-devel-104

12 years agotdb_compat: change offset of CLEAR_IF_FIRST lock.
Rusty Russell [Tue, 13 Sep 2011 22:43:28 +0000 (08:13 +0930)]
tdb_compat: change offset of CLEAR_IF_FIRST lock.

This makes it match tdb1, which mean it will Just Work as TDB2 gets
tdb1 format support.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Autobuild-User: Rusty Russell <rusty@rustcorp.com.au>
Autobuild-Date: Wed Sep 14 02:21:29 CEST 2011 on sn-devel-104

12 years agotdb_compat: support tdb_reopen/tdb_reopen_all for TDB2
Rusty Russell [Tue, 13 Sep 2011 22:43:28 +0000 (08:13 +0930)]
tdb_compat: support tdb_reopen/tdb_reopen_all for TDB2

This matters with the clear-if-first support: we need to re-establish
those locks at this point.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agoutil_tdb: return -1/0 from lock_with_timeout functions.
Rusty Russell [Tue, 13 Sep 2011 22:43:28 +0000 (08:13 +0930)]
util_tdb: return -1/0 from lock_with_timeout functions.

Keeps the tdb2 API change (which returns error codes, rather than -1)
localized.  The function returns -1 down the other path, so make it
consistent.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agodbwrap_tdb: handle tdb2 return values properly.
Rusty Russell [Tue, 13 Sep 2011 22:43:28 +0000 (08:13 +0930)]
dbwrap_tdb: handle tdb2 return values properly.

TDB2 versions of tdb_parse_record etc return an error code, not -1.
Turn those into -1/0 in dbwrap_tdb to insulate the rest of the code
from that change.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agotdb2: fix prototypes which return enum TDB_ERROR.
Rusty Russell [Tue, 13 Sep 2011 22:43:28 +0000 (08:13 +0930)]
tdb2: fix prototypes which return enum TDB_ERROR.

Since enums and ints are compatible in C, the compiler didn't warn
that our prototypes for these functions disagreed with the
definitions.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 6d3832ee613adeb9ae7ed6454996ffa39c32650f)

12 years agotdb2: fix return handling in pytdb wrapper.
Rusty Russell [Tue, 13 Sep 2011 22:43:27 +0000 (08:13 +0930)]
tdb2: fix return handling in pytdb wrapper.

tdb_close() does genuinely return non-zero, not an error code, even in tdb2.
And tdb_exists() returns true or false, not an error code.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agotdb2: add error conversion functions.
Rusty Russell [Tue, 13 Sep 2011 22:43:27 +0000 (08:13 +0930)]
tdb2: add error conversion functions.

This clarifies the code a little, but also provides a more explicit
mechanism which can be used to debug error handling (by introducing
tdb_err_t and making it a pointer type).

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit afa6d57b7d93fe4675a952f556eb462951baa257)

12 years agotdb2: set tdb_error() on tdb_transaction_prepare_commit.
Rusty Russell [Tue, 13 Sep 2011 22:43:27 +0000 (08:13 +0930)]
tdb2: set tdb_error() on tdb_transaction_prepare_commit.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit feb36b14278b4230af70dab90369a345b6a027ef)

12 years agotdb2: make tests work in parallel.
Rusty Russell [Tue, 13 Sep 2011 22:43:27 +0000 (08:13 +0930)]
tdb2: make tests work in parallel.

Lazy cut & paste of tdb names causes failure when we run in parallel.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 380372e733416c2b348d5307f536d0a0807e95df)

12 years agotdb2: fix error handling for tdb1_transaction_commit.
Rusty Russell [Tue, 13 Sep 2011 22:43:27 +0000 (08:13 +0930)]
tdb2: fix error handling for tdb1_transaction_commit.

tdb_repack() returns an enum TDB_ERROR, whereas
tdb1_transaction_commit is expected to return 0 or -1.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit b679512e4260b9847e2f846b07443e6907d8276f)

12 years agotdb2: don't return -1 (ie. TDB_ERR_CORRUPT) on transaction write fail.
Rusty Russell [Tue, 13 Sep 2011 22:43:27 +0000 (08:13 +0930)]
tdb2: don't return -1 (ie. TDB_ERR_CORRUPT) on transaction write fail.

A left-over -1 return; should be returning ecode (probably TDB_ERR_IO).

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 077bdae6877d26749987b26a1b5b28cdba5ebbdd)

12 years agotdb2: enhance tdb1 porting document.
Rusty Russell [Tue, 13 Sep 2011 22:43:27 +0000 (08:13 +0930)]
tdb2: enhance tdb1 porting document.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 9cbae0f976118472f0065eee674eacf6ab4b80c5)

12 years agotdb2: delete old tdb1 tests.
Rusty Russell [Tue, 13 Sep 2011 22:43:27 +0000 (08:13 +0930)]
tdb2: delete old tdb1 tests.

These two tdb1-specific tests have been superceded by the TDB_VERSION1
flags used in the main tests.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit e42097b73f6cd509aa17a48487a707401a2d4bd0)

12 years agotdb2: test: Speed up run-01-new_database.
Rusty Russell [Tue, 13 Sep 2011 22:43:26 +0000 (08:13 +0930)]
tdb2: test: Speed up run-01-new_database.

Don't run tdb_check with failtest on, since it is very slow.  Do the
tdb_check w/ failtest in a new test, but skip MMAP suppression which
doesn't add much and slows down valgrind a lot.

Before this change run-01-new_database took 40 seconds (under
valgrind), after it takes 8 seconds, and run-12-check takes 3
seconds).

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit b3ae89992ecaffed31dcc2e912539c289478801a)

12 years agotdb2: speed up testing.
Rusty Russell [Tue, 13 Sep 2011 22:43:26 +0000 (08:13 +0930)]
tdb2: speed up testing.

The time to run tests under valgrind has become excessive; particularly
the failure tests which fork().   Thus we cut down testing:

1) api-94-repack: reduce from 234 seconds to 2 seconds by cutting
   iterations, despite adding TDB_VERSION1 tests.

2) api-missing-entries: reduce from 17 seconds to under 1 second by
   not checking db inside loop, but at end.

This reduces the total ccanlint time from 729 to 489 seconds.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit a99c2ccf97465d47c3277d997ea93f20ff97ad4d)

12 years agotdb2: test: convert (non-invasive) run tests to api tests.
Rusty Russell [Tue, 13 Sep 2011 22:43:26 +0000 (08:13 +0930)]
tdb2: test: convert (non-invasive) run tests to api tests.

This reduces compilation time, since these are merely linked with the
pre-built module, rather than recompiling it into the test (which
allows for fancy things like failtest).

This reduces the test compile time down from about 62 seconds to 45
seconds.  Since ccanlint compiles tests three times (once normally,
once with coverage, and once with reduced config.h) this makes a
difference: we go from 780 seconds to 729 seconds.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit c4ca9f54301c0367891be6330f59fdd5dcdd51d1)

12 years agotdb2: test: fix run-57-die-during-transaction.c to be more efficient.
Rusty Russell [Tue, 13 Sep 2011 22:43:26 +0000 (08:13 +0930)]
tdb2: test: fix run-57-die-during-transaction.c to be more efficient.

We track malloc and free, but we didn't catch the free() inside
external_agent, which means that our list of allocations keeps
growing.  Particularly under valgrind, which re-uses memory less than
the glibc allocator.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit d9cbd7d4454ae35e4e2f6d18a9469bf26948e4b9)

12 years agotdb2: don't continue if tdb1_find fails.
Rusty Russell [Tue, 13 Sep 2011 22:43:26 +0000 (08:13 +0930)]
tdb2: don't continue if tdb1_find fails.

The TDB1 code's tdb1_find() returns 0 on error; the callers should
not assume that the error means that the entry wasn't found, but use
last_error to determine it.

This was found by looking at how long the failure path testing for
test/run-10-simple-store.c was taking under valgrind, ie:

valgrind -q ./run-10-simple-store --show-slowest

This change dropped the time for that test from 53 seconds to 19
seconds.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 1be090a2d749713cfd0c4584cafb97bffd716189)

12 years agotdb2: test: try (almost) all tests with TDB_VERSION1 flag.
Rusty Russell [Tue, 13 Sep 2011 22:43:26 +0000 (08:13 +0930)]
tdb2: test: try (almost) all tests with TDB_VERSION1 flag.

There are some minor changes required, in particular:

1) Make sure lockcheck understands tdb1 allrecord lock upgrades.
2) Handle tdb1 sequence number jumps: various operations increment the
   sequence number twice, especually tdb_append.
3) Don't test fail on unlock, since it gets triggered with traversal on the
   tdb1 backend (we didn't actually ever test this case for tdb2).
4) Move clear_if_first to offset 4, to match tdb1.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 818ed29730b030ce79855fc35c212b51adff3180)

12 years agotdb2: log allocation failures in tdb1 backend.
Rusty Russell [Tue, 13 Sep 2011 22:43:26 +0000 (08:13 +0930)]
tdb2: log allocation failures in tdb1 backend.

The TDB2 tests are stricter about this; they want every error logged.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 670ba98f74b52df541d153eeab9d3310932e75cd)

12 years agotdb2: fix bogus error from tdb_unlockall() after fork in tdb1 backend.
Rusty Russell [Tue, 13 Sep 2011 22:43:13 +0000 (08:13 +0930)]
tdb2: fix bogus error from tdb_unlockall() after fork in tdb1 backend.

We're always allowed to unlock after a fork; by setting the count to 0
before calling the generic unlock function we don't trigger the pid
check.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit ba5bb8eae6bcd230fd5321c618d6a9d56e74e7d1)

12 years agotdb2: check lock owner in tdb1 backend.
Rusty Russell [Tue, 13 Sep 2011 22:42:13 +0000 (08:12 +0930)]
tdb2: check lock owner in tdb1 backend.

This reports errors if we fork() while holding a lock, or misuse a tdb
which we have dual-opened.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit bef6f1b02e95370ecb2cb44be87c82afc9cb74b2)

12 years agotdb2: return TDB_ERR_RDONLY from transactions on R/O databases, log nesting
Rusty Russell [Tue, 13 Sep 2011 22:41:13 +0000 (08:11 +0930)]
tdb2: return TDB_ERR_RDONLY from transactions on R/O databases, log nesting

Rather than rturning TDB_ERR_EINVAL, return TDB_ERR_RDONLY, and log
when we fail due to nesting.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 27647f94668040d91de377849dce87dabd72be69)

12 years agotdb2: add stats to tdb1 backend.
Rusty Russell [Tue, 13 Sep 2011 22:40:13 +0000 (08:10 +0930)]
tdb2: add stats to tdb1 backend.

It's actually quite a good fit; we use compare_wrong_bucket for dead
records, which is kind of correct (they should be in the free list).

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit a3e4ebff2eb9dc2e386160b8acf77d70236f4def)

12 years agotdb2: increment seqnum on tdb_wipe_all in tdb1 backend.
Rusty Russell [Tue, 13 Sep 2011 22:39:13 +0000 (08:09 +0930)]
tdb2: increment seqnum on tdb_wipe_all in tdb1 backend.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 79dee5018a407be1d0674d6108b60f8e8c882b7c)

12 years agotdb2: log an error when calling tdb_store() on read-only TDB in tdb1 backend.
Rusty Russell [Tue, 13 Sep 2011 22:38:13 +0000 (08:08 +0930)]
tdb2: log an error when calling tdb_store() on read-only TDB in tdb1 backend.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit b236a8dcc37bb864b632a2898a64f3c9bf75b4ac)

12 years agotdb2: catch errors in tdb1_needs_recovery()
Rusty Russell [Tue, 13 Sep 2011 22:37:13 +0000 (08:07 +0930)]
tdb2: catch errors in tdb1_needs_recovery()

The tdb1 backend simply returns "true" if there's an error determining
if a tdb needs recovery.  But this leads failtest down a rabbit hole;
it's better to return the error at this case (and makes for better for
diagnostics, since they will come from the first fault, not later in
tdb1_transaction_recover().

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 332d0c29baa6896e67c439aeb47f58a104fbc781)

12 years agotdb2: add tdb_attribute_tdb1_max_dead
Rusty Russell [Tue, 13 Sep 2011 22:36:13 +0000 (08:06 +0930)]
tdb2: add tdb_attribute_tdb1_max_dead

This allows us to simulate the old "volatile" flag for tdb1.  It's not
necessary for tdb2.

As this is the last function in tdb1.h, we remove that file.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit b8e64e9346793164651a36eccb3c205077e5c91b)

12 years agotdb2: expose and document tdb1_incompatible_hash.
Rusty Russell [Tue, 13 Sep 2011 22:35:13 +0000 (08:05 +0930)]
tdb2: expose and document tdb1_incompatible_hash.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit a4f2eb983b92b68bcad2a0d640924b8b456e3d69)

12 years agotdb2: make tdb1_null static.
Rusty Russell [Tue, 13 Sep 2011 22:34:13 +0000 (08:04 +0930)]
tdb2: make tdb1_null static.

It's only used in two files, make it static in one and do it manually
in the other.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 8571daf007f03a2888566dbaae8a5849ffba60f3)

12 years agotdb2: tdb_repack
Rusty Russell [Tue, 13 Sep 2011 22:33:13 +0000 (08:03 +0930)]
tdb2: tdb_repack

Move the tdb1_repack() code into the core, make it general, rename to
tdb_repack().

It's generic code: copy database into temporary, wipe it, copy back.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit e487983a4099b6f760056ff7182f2ff543e6da71)

12 years agotdb2: unify tdb1_wipe into tdb_wipe.
Rusty Russell [Tue, 13 Sep 2011 22:32:13 +0000 (08:02 +0930)]
tdb2: unify tdb1_wipe into tdb_wipe.

Switch on the TDB_VERSION1 flag.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit b2555a868e3ee58d1b31f9558e3623d49ed2b2f1)

12 years agotdb2: unify tdb1_get_seqnum/tdb1_increment_seqnum into tdb_get_seqnum/tdb_inc_seqnum
Rusty Russell [Tue, 13 Sep 2011 22:31:13 +0000 (08:01 +0930)]
tdb2: unify tdb1_get_seqnum/tdb1_increment_seqnum into tdb_get_seqnum/tdb_inc_seqnum

Switch on the TDB_VERSION1 flag.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 57359c26e9626aa986ee0538efd13a44a466f39d)

12 years agotdb2: unify tdb1_firstkey/tdb1_nextkey into tdb_firstkey/tdb_nextkey.
Rusty Russell [Tue, 13 Sep 2011 22:30:13 +0000 (08:00 +0930)]
tdb2: unify tdb1_firstkey/tdb1_nextkey into tdb_firstkey/tdb_nextkey.

Switch on the TDB_VERSION1 flag.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 7366486e29e4f3d89a3e08fc114079d6441af850)

12 years agotdb2: unify tdb1_check and tdb1_summary into tdb_check and tdb_summary.
Rusty Russell [Tue, 13 Sep 2011 22:29:13 +0000 (07:59 +0930)]
tdb2: unify tdb1_check and tdb1_summary into tdb_check and tdb_summary.

Switch on the TDB_VERSION1 flag.  Also, change tdb1_check's checkfn argument
to return an error code (and set tdb->last_error accordingly).

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit ef92843f2c74ab9d4fa7f167a2182e5e8955df91)

12 years agotdb2: unify tdb1_transaction_start etc. into tdb_transaction_start.
Rusty Russell [Tue, 13 Sep 2011 22:28:13 +0000 (07:58 +0930)]
tdb2: unify tdb1_transaction_start etc. into tdb_transaction_start.

Switch on the TDB_VERSION1 flag.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 6bc8ea012391198bc3898ae2937558b60dd55906)

12 years agotdb2: unify tdb1_parse_record into tdb_parse_record
Rusty Russell [Tue, 13 Sep 2011 22:27:13 +0000 (07:57 +0930)]
tdb2: unify tdb1_parse_record into tdb_parse_record

Switch on the TDB_VERSION1 flag.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 3352e4e947777d4a90a2dd4f3037e1e494231b25)

12 years agotdb2: unify tdb1_chainlock et al. into tdb_chainlock
Rusty Russell [Tue, 13 Sep 2011 22:26:13 +0000 (07:56 +0930)]
tdb2: unify tdb1_chainlock et al. into tdb_chainlock

Switch on the TDB_VERSION1 flag.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit ceb2f3eacbad917ee990afbc3dd800bfb0607887)

12 years agotdb2: unify tdb1_traverse into tdb_traverse
Rusty Russell [Tue, 13 Sep 2011 22:25:13 +0000 (07:55 +0930)]
tdb2: unify tdb1_traverse into tdb_traverse

Switch on the TDB_VERSION1 flag; we now only do a tdb1_traverse_read on a
read-only database, as there is no tdb2 equivalent.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit cc2d609dfca7192305ad477b8c2b52cfdc1aa9be)

12 years agotdb2: unify tdb1_store into tdb_store
Rusty Russell [Tue, 13 Sep 2011 22:24:13 +0000 (07:54 +0930)]
tdb2: unify tdb1_store into tdb_store

Switch on the TDB_VERSION1 flag.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 2bba2a856a6cfdb93085b701557850bc1da99587)

12 years agotdb2: unify tdb1_delete into tdb_delete.
Rusty Russell [Tue, 13 Sep 2011 22:23:13 +0000 (07:53 +0930)]
tdb2: unify tdb1_delete into tdb_delete.

Switch on the TDB_VERSION1 flag.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit acb26c9c3ee054c8b2141db25c9bd7be064e425c)

12 years agotdb2: unify tdb1_append into tdb_append
Rusty Russell [Tue, 13 Sep 2011 22:22:13 +0000 (07:52 +0930)]
tdb2: unify tdb1_append into tdb_append

Switch on the TDB_VERSION1 flag.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 8bc38cb177928ef739440c32e33a8eaf23a5dd22)

12 years agotdb2: unify tdb1_fetch into tdb_fetch
Rusty Russell [Tue, 13 Sep 2011 22:21:13 +0000 (07:51 +0930)]
tdb2: unify tdb1_fetch into tdb_fetch

Switch on the TDB_VERSION1 flag.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 08c05da588018c6b76834e57b66d525546643708)

12 years agotdb2: unify tdb1_store into tdb_store
Rusty Russell [Tue, 13 Sep 2011 22:20:13 +0000 (07:50 +0930)]
tdb2: unify tdb1_store into tdb_store

Switch on the TDB_VERSION1 flag.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 98c754ffe65bc335f66161d6cc8705d4ea2710ec)

12 years agotdb2: unify tdb1_open into tdb_open
Rusty Russell [Tue, 13 Sep 2011 22:19:13 +0000 (07:49 +0930)]
tdb2: unify tdb1_open into tdb_open

Finally, we gut tdb1_open() to the tdb1-specific parts, and call it
from tdb_open if they specify the TDB_VERSION1 flag or the version is
a TDB1.

We also unify tdb_close(), based on the TDB_VERSION1 flag.

Note that tdb_open(TDB_VERSION1) will fail on an existing tdb if it's
a TDB2.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit c8c3b3568677e8b0105f84e4ab068c580faf4591)

12 years agotdb2: disallow SEED attribute with TDB_VERSION1.
Rusty Russell [Tue, 13 Sep 2011 22:18:13 +0000 (07:48 +0930)]
tdb2: disallow SEED attribute with TDB_VERSION1.

It also only makes sense with O_CREAT.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit fc44729c471bcdc7ab0410448d991a65e74cec3d)

12 years agotdb2: add TDB_ATTRIBUTE_TDB1_HASHSIZE
Rusty Russell [Tue, 13 Sep 2011 22:17:13 +0000 (07:47 +0930)]
tdb2: add TDB_ATTRIBUTE_TDB1_HASHSIZE

This replaces the tdb1_open "hash_size" argument.  It will only be
valid when you call tdb_open() with O_CREAT in open_flags, and
TDB_VERSION1 in tdb_flags.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 49475d68deecd0b31597ed6094229171d2699b11)

12 years agotdb2: make tdb1_open use attributes for logging, hash function.
Rusty Russell [Tue, 13 Sep 2011 22:16:13 +0000 (07:46 +0930)]
tdb2: make tdb1_open use attributes for logging, hash function.

This brings it closer to tdb_open(), so we can unify more easily.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit a446f1d4d161d66bbb19ba2551cf6429a4865964)

12 years agotdb2: make jenkins_hash function non-static, rename to tdb_jenkins_hash.
Rusty Russell [Tue, 13 Sep 2011 22:15:13 +0000 (07:45 +0930)]
tdb2: make jenkins_hash function non-static, rename to tdb_jenkins_hash.

We're going to need access to it from tdb1_open, so expose it now.
It's better in hash.c anyway.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit c8f6f8c2dea76042f74c02eff048847e62adcca6)

12 years agotdb2: remove double-open detection for TDB1 databases.
Rusty Russell [Tue, 13 Sep 2011 22:14:13 +0000 (07:44 +0930)]
tdb2: remove double-open detection for TDB1 databases.

This is a percursor to unifying with tdb_open() from tdb2, which handles
this itself.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 97224cbbe29e76522ec38d031c54b1cadce8ae03)

12 years agotdb2: merge tdb1_context into tdb_context.
Rusty Russell [Tue, 13 Sep 2011 22:13:13 +0000 (07:43 +0930)]
tdb2: merge tdb1_context into tdb_context.

Finally, we split out the tdb2-specific parts of tdb_context, and put
them into a "tdb2" sub-struct; the tdb1 parts go into a "tdb1"
sub-struct.  We get rido of tdb1_context and use tdb_context
everywhere.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit bbeb528e74c0e234e1f724ac8d54be404cfc6f9a)

12 years agotdb2: use tdb->flags & TDB_RDONLY instead of tdb->read_only for TDB1 code.
Rusty Russell [Tue, 13 Sep 2011 22:12:13 +0000 (07:42 +0930)]
tdb2: use tdb->flags & TDB_RDONLY instead of tdb->read_only for TDB1 code.

There's also a semantic change here: for tdb1, being read-only meant no
locking, and it was an error to try to lock a r/o database.  For TDB2, you'd
need to specify TDB_NOLOCK, which suppresses locking silently.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 4dc29a338fadeac805b369b4b0851c02f1b152c7)

12 years agotdb2: Make TDB1 use the same tdb_hash() wrapper as TDB2
Rusty Russell [Tue, 13 Sep 2011 22:11:13 +0000 (07:41 +0930)]
tdb2: Make TDB1 use the same tdb_hash() wrapper as TDB2

This means converting the tdb1 inbuilt hash functions to the
tdb2-style, so they return 64 bit.  We truncate to 32 bit everywhere
but in tdb_check() which needs to do so explicitly.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 3e46dde21261966941469a6c75e1b45cd2d26324)

12 years agotdb2: don't cancel transactions on lock failures in tdb1 backend.
Rusty Russell [Tue, 13 Sep 2011 22:10:13 +0000 (07:40 +0930)]
tdb2: don't cancel transactions on lock failures in tdb1 backend.

In TDB2, the user can override locking functions, so they may
deliberarely fail (eg. be non-blocking) expecting to retry.

For this reason, the TDB2 API requires the caller to cancel the
transaction if tdb_transaction_prepare_commit() fails.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 8458811a4126c22635b974718bfbf2876c893c37)

12 years agotdb2: suppress tdb1 backend logging when locking returns EINTR or EAGAIN
Rusty Russell [Tue, 13 Sep 2011 22:09:13 +0000 (07:39 +0930)]
tdb2: suppress tdb1 backend logging when locking returns EINTR or EAGAIN

The TDB1 code logs multiple times on errors; we must prevent that in
the limited case where locking fails.  With TDB2, this can happen due
to the lock function attribute, where the user supplies replacement
locking functions which are allowed to return with errno EAGAIN or
EINTR for various special-effects.  Flooding the logs for this is
unfriendly.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit a391b2b900bc6d5c0467869a454bdb5c51b5a3be)

12 years agotdb2: make tdb1 use same low-level lock functions.
Rusty Russell [Tue, 13 Sep 2011 22:08:13 +0000 (07:38 +0930)]
tdb2: make tdb1 use same low-level lock functions.

This means they will use the TDB_ATTRIBUTE_FLOCK functions, and get automatic
reopen support.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit fbad02b680b6cbc33ae305ae1cbcdead4eedc7b1)

12 years agotdb2: Make tdb1 use the tdb_file structure.
Rusty Russell [Tue, 13 Sep 2011 22:07:13 +0000 (07:37 +0930)]
tdb2: Make tdb1 use the tdb_file structure.

Because tdb2 allows multiple opens of the same TDB, we separate out
the file information from the struct tdb_context.  Do the same for
tdb1.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 60210a73ec08a7b34ba637ad19e6749cf6dc1952)

12 years agotdb2: add TDB_VERSION1 flag.
Rusty Russell [Tue, 13 Sep 2011 22:06:13 +0000 (07:36 +0930)]
tdb2: add TDB_VERSION1 flag.

This will be set for old TDBs; we can start distinguishing paths based
on it now.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 2b50be90a23893a06e0f1436a31d18b97ad0e11d)

12 years agotdb2: Make TDB1 code use TDB2's open flags.
Rusty Russell [Tue, 13 Sep 2011 22:05:13 +0000 (07:35 +0930)]
tdb2: Make TDB1 code use TDB2's open flags.

This means getting rid of TDB_VOLATILE (perhaps we should use an
attribute for that?), TDB_INCOMPATIBLE_HASH (use the
tdb_attribute_hash for that) and TDB_CLEAR_IF_FIRST (use the
tdb_attribute_openhook for that).

We also get rid of TDB_DISALLOW_NESTING: that's the default for TDB2.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 22d0e0dc59fc9d7e0046fec6971ef478c2d604fd)

12 years agotdb2: approximate INCOMPATIBLE_HASH flag with tdb1_incompatible_hash()
Rusty Russell [Tue, 13 Sep 2011 22:04:13 +0000 (07:34 +0930)]
tdb2: approximate INCOMPATIBLE_HASH flag with tdb1_incompatible_hash()

Rather than leak TDB_INCOMPATIBLE_HASH through to the TDB2 API, we make
it that if they use the tdb1_incompatible_hash function as their hash,
then we treat it as if they had specified the TDB_INCOMPATIBLE_HASH
flag (ie. we mark the header so it's unusable by tdb < 1.2.6).

This precludes the possibility of using TDB_INCOMPATIBLE_HASH with a
custom hash function: that used to allow the user to ensure that old TDB
versions couldn't open the TDB file (and recent ones check the header to
ensure they're using the right hash).  But that's a small loss.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 3004f7e89a5978064b4fb29c1027e6d0d39e9418)

12 years agotdb2: Make tdb1 share tdb_store flags, struct tdb_data and TDB_MAGIC_FOOD.
Rusty Russell [Tue, 13 Sep 2011 22:03:13 +0000 (07:33 +0930)]
tdb2: Make tdb1 share tdb_store flags, struct tdb_data and TDB_MAGIC_FOOD.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 8a47d50d72ea62e378dc92b150c92c1317c73fa3)

12 years agotdb2: make TDB1 code use tdb2's TDB_ERROR and tdb_logerr()
Rusty Russell [Tue, 13 Sep 2011 22:02:13 +0000 (07:32 +0930)]
tdb2: make TDB1 code use tdb2's TDB_ERROR and tdb_logerr()

To do this, we make sure that the first few fields of tdb1_context and
tdb_context are the same.

This sweep also fixes up a few paths where we weren't setting
tdb->ecode before our old logging function.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 919937354a331bb964564a11b5a5b80403ff8db9)

12 years agotdb2: make tdb1 headers include tdb2 headers.
Rusty Russell [Tue, 13 Sep 2011 22:01:13 +0000 (07:31 +0930)]
tdb2: make tdb1 headers include tdb2 headers.

They're about to start sharing TDB2's definitions.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 1e3138a0ad0c184d2ca49ce7bc47173eb2fe67bd)

12 years agotdb2: rearrange tdb_context layout so tdb1_context can match
Rusty Russell [Tue, 13 Sep 2011 22:00:13 +0000 (07:30 +0930)]
tdb2: rearrange tdb_context layout so tdb1_context can match

By moving all the parts of struct tdb_context which logging and
locking use to the beginning of the structure, we can make
tdb1_context match, and thus pass that directly to the tdb_logerr()
function, and later the locking functions.

This is only necessary until we unify tdb1_context and tdb_context.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 0fd5be2955f8e6487c0f4ab711e2a6958bb8f412)

12 years agotdb2: add tdb1 code to build.
Rusty Russell [Tue, 13 Sep 2011 21:59:13 +0000 (07:29 +0930)]
tdb2: add tdb1 code to build.

The following patches integrate it together, but from here on we build
it.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agotdb2: remove TDB1 TDB_NO_FSYNC environment variable hack.
Rusty Russell [Tue, 13 Sep 2011 21:58:13 +0000 (07:28 +0930)]
tdb2: remove TDB1 TDB_NO_FSYNC environment variable hack.

The caller should do this: the SAMBA compatibility later does.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 75a6a6ad64156ef3b13493be2970ae3cb99ccf8b)

12 years agotdb2: get rid of TDB1 mark and nonblock functions.
Rusty Russell [Tue, 13 Sep 2011 21:57:13 +0000 (07:27 +0930)]
tdb2: get rid of TDB1 mark and nonblock functions.

We do this using hooks in tdb2.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 444fade529f68eb2b0aebbc8de442478c5c6f916)

12 years agotdb2: remove _PUBLIC_ in tdb1 functions.
Rusty Russell [Tue, 13 Sep 2011 21:56:13 +0000 (07:26 +0930)]
tdb2: remove _PUBLIC_ in tdb1 functions.

They'll all be accessed via the tdb2 API.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 39f55294799c6443c0ad7bef09f1c113cf89d295)

12 years agotdb2: Remove unused tdb1 functions.
Rusty Russell [Tue, 13 Sep 2011 21:55:13 +0000 (07:25 +0930)]
tdb2: Remove unused tdb1 functions.

We're going to use TDB2's API, so some TDB1 APIs are obviously unnecessary.
We also get rid of USE_RIGHT_MERGES and TRACE code.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit b929638e3cfe629285af3ecd0813e03eaeaa1133)

12 years agotdb2: test: import tdb1's tests.
Rusty Russell [Tue, 13 Sep 2011 21:54:13 +0000 (07:24 +0930)]
tdb2: test: import tdb1's tests.

The main change is to s/tdb/tdb1_/ everywhere.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit fab544c24c1ad6523f95893abcaec4e6cce6c2b4)

12 years agotdb2: include tdb1 source in tests.
Rusty Russell [Tue, 13 Sep 2011 21:53:13 +0000 (07:23 +0930)]
tdb2: include tdb1 source in tests.

Since we've renamed everything in tdb1, they won't clash.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 5d6194b434f3664d1025df12ef06c6a25f693bc8)

12 years agotdb2: import TDB1 code.
Rusty Russell [Tue, 13 Sep 2011 21:52:13 +0000 (07:22 +0930)]
tdb2: import TDB1 code.

We import the entire codebase, putting a "tdb1_" prefix on the files
and changing the "tdb_" prefix to "tdb1_" everywhere.

The next patches will gradually merge it with the TDB2 code where
necessary.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 19e6c1a250ade1e7204ada17163294855585e825)

12 years agotdb2: make tests include a single mega-header to simplify future patches
Rusty Russell [Tue, 13 Sep 2011 21:51:13 +0000 (07:21 +0930)]
tdb2: make tests include a single mega-header to simplify future patches

This lets us add the new files to a single place.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 476567430be6962625bf399192e20938985232c7)

12 years agotdb2: tdb_foreach()
Rusty Russell [Tue, 13 Sep 2011 21:50:13 +0000 (07:20 +0930)]
tdb2: tdb_foreach()

Create an iterator over every open tdb (not internal TDBs).  This is
useful for re-establishing the tdb1-style active lock for
CLEAR_IF_FIRST.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 1a0c636bc38213bd0322db47529f78f2dc22ffdd)

12 years agotdb2: keep link of every non-internal tdb.
Rusty Russell [Tue, 13 Sep 2011 21:49:13 +0000 (07:19 +0930)]
tdb2: keep link of every non-internal tdb.

Instead of a per-file linked list, use a per-tdb list.  This is needed
for tdb_foreach().

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 2414f261918b4fb8a549dd385dba32118e37bf85)

12 years agotdb2: save openhook, allow tdb_get_attribute() on it.
Rusty Russell [Tue, 13 Sep 2011 21:48:13 +0000 (07:18 +0930)]
tdb2: save openhook, allow tdb_get_attribute() on it.

This makes it easy to call it again after a fork(), such as for
re-establishing the CLEAR_IF_FIRST files locks.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 937d0babe99dcd315040a9e48430140e63e4a7df)

12 years agotdb_compat: make tdb2s temporarily read-only for tdb_traverse_read()
Rusty Russell [Tue, 13 Sep 2011 21:47:13 +0000 (07:17 +0930)]
tdb_compat: make tdb2s temporarily read-only for tdb_traverse_read()

It doesn't make a difference unless the tdb2 opens a TDB1 on disk, in
which case tdb1_traverse() takes a write lock on the entire file.  By
setting the tdb to read-only first, we simulate the old behaviour.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agotdb2: add TDB_RDONLY flag, allow setting/unsetting it.
Rusty Russell [Tue, 13 Sep 2011 21:46:13 +0000 (07:16 +0930)]
tdb2: add TDB_RDONLY flag, allow setting/unsetting it.

You can only unset it if the TDB was originally opened O_RDWR.

Also, cleaned up error handling in tdb_allrecord_lock() so we only get
one log message on a r/o database.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit b87e14495d5b07e1b247218a72329f10ecb3da7f)

12 years agotdb2: return TDB_ERR_RDONLY if trying to start a transaction on a R/O tdb.
Rusty Russell [Tue, 13 Sep 2011 21:45:13 +0000 (07:15 +0930)]
tdb2: return TDB_ERR_RDONLY if trying to start a transaction on a R/O tdb.

This is more accurate than returning TDB_ERR_EINVAL.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 91436a25574597dbd1fd2de5bcd5826a234100d6)

12 years agotdb2: save open_flags instead of mmap_flags.
Rusty Russell [Tue, 13 Sep 2011 21:44:13 +0000 (07:14 +0930)]
tdb2: save open_flags instead of mmap_flags.

It's more consistent with what tdb1 does, and slightly more encapsulated.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
(Imported from CCAN commit 6b7c3c840eafbec211b9f58751c5ff754302a68e)

12 years agotdb_compat: adapt to tdb2 API change.
Rusty Russell [Tue, 13 Sep 2011 21:43:13 +0000 (07:13 +0930)]
tdb_compat: adapt to tdb2 API change.

Add the ecode arg to all the log functions, and log it.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agotdb2: Hand error code to logging function.
Rusty Russell [Tue, 13 Sep 2011 21:42:13 +0000 (07:12 +0930)]
tdb2: Hand error code to logging function.

Since we've deprecated tdb_error() function (and it didn't work right
from inside the logging function anyway, since we didn't set
tdb->ecode yet) we need to hand it to the log function.

(Imported from CCAN commit 6e3d9e8a66bf8b45150500f176452ee8e9ee9927)

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agotdb2: move transaction lock
Rusty Russell [Tue, 13 Sep 2011 21:41:13 +0000 (07:11 +0930)]
tdb2: move transaction lock

Make it the same offset as TDB1.  This isn't strictly necessary, but
it would allow for total unification later, since TDB1 and TDB2's
transaction code is otherwise completely compatible.

(Imported from CCAN commit de432e8f857ce23bccde7c6ffa3e7e21456df18b)

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agotdb2: enforce TDB_CONVERT
Rusty Russell [Tue, 13 Sep 2011 21:40:13 +0000 (07:10 +0930)]
tdb2: enforce TDB_CONVERT

If the caller actually specifies TDB_CONVERT, fail if the TDB does not
need conversion.  It's unusual for the user to specify TDB_CONVERT
(it's auto-detected) but better to be strict.

(Imported from CCAN commit 3e3ee8b0c1e77340ab9e8678c2d23646d8cdb627)

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agotdb2: cleanup oob handling.
Rusty Russell [Tue, 13 Sep 2011 21:39:13 +0000 (07:09 +0930)]
tdb2: cleanup oob handling.

The tdb_oob() function can fail due to errors, as well as because the length
asked for is greater than the size of the file.  Clean that up:

(1) If probe is true, only fail if there's an error, not if the length is
    too great.
(2) Exit tdb_open() if it tdb_oob() probe fails; this helps cut down
    test time for failtest.
(3) Don't set probe to true in tdb_direct() fail; a minor issue, but it means
    we log failure.

(Imported from CCAN commit 77658070a3e4f712b94d659b2e399031ce3394c8)

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agotdb2: fix tdb_lock offset.
Rusty Russell [Tue, 13 Sep 2011 21:38:13 +0000 (07:08 +0930)]
tdb2: fix tdb_lock offset.

It can be 64 bits, for huge databases.

(Imported from CCAN commit 736c033322079baf754261d82b6a83de53b2bb4e)

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agotdb2: fix internal tdb_write_convert() error handling in tdb_open()
Rusty Russell [Tue, 13 Sep 2011 21:37:13 +0000 (07:07 +0930)]
tdb2: fix internal tdb_write_convert() error handling in tdb_open()

As noted, failtest was taking a long time, because a failure injected here
was not detected.

(Imported from CCAN commit 51f592dfcda4d58d6b9d8134b6e1aff791dc40f2)

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agotdb2: Fix to always use 64-bit offset definition
Rusty Russell [Tue, 13 Sep 2011 21:36:13 +0000 (07:06 +0930)]
tdb2: Fix to always use 64-bit offset definition

We use off_t in the tdb2 interface (for tdb_attribute_flock); we need
to make sure that all callers agree on the size.

This also causes a problem in the tests: it's not enough to include
config.h first, we need the _FILE_OFFSET_BITS define from private.h.
Otherwise, we can disagree about the definitions of F_SETLK, F_SETLKW
and off_t, causing strange problems.

(Imported from CCAN commit baa17ee2d5e01a32030f19e566007417d72b4b6e)

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agoccan: configure check for HAVE_BUILTIN_CHOOSE_EXPR
Rusty Russell [Tue, 13 Sep 2011 21:35:13 +0000 (07:05 +0930)]
ccan: configure check for HAVE_BUILTIN_CHOOSE_EXPR

We weren't testing for this, and without it, typesafe_cb just casts
its function argument.  This is why I didn't get a warning when one of
my patches amended a function incorrectly.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agos3:smb2cli: split cli->smb2.gss_blob from cli->secblob
Stefan Metzmacher [Tue, 13 Sep 2011 19:47:33 +0000 (21:47 +0200)]
s3:smb2cli: split cli->smb2.gss_blob from cli->secblob

metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Tue Sep 13 23:34:13 CEST 2011 on sn-devel-104

12 years agos3:net_time: make use of cli_state_server_time_zone() and cli_state_server_time()
Stefan Metzmacher [Tue, 13 Sep 2011 19:48:58 +0000 (21:48 +0200)]
s3:net_time: make use of cli_state_server_time_zone() and cli_state_server_time()

metze

12 years agos3:libsmb: make use of cli_state_server_time_zone()
Stefan Metzmacher [Tue, 13 Sep 2011 18:43:10 +0000 (20:43 +0200)]
s3:libsmb: make use of cli_state_server_time_zone()

metze

12 years agos3:libsmb: add cli_state_server_time()
Stefan Metzmacher [Tue, 13 Sep 2011 19:41:17 +0000 (21:41 +0200)]
s3:libsmb: add cli_state_server_time()

metze

12 years agos3:libsmb: add cli_state_server_time_zone()
Stefan Metzmacher [Tue, 13 Sep 2011 18:42:20 +0000 (20:42 +0200)]
s3:libsmb: add cli_state_server_time_zone()

metze

12 years agos3:libsmb: make use of cli_state_server_session_key()
Stefan Metzmacher [Tue, 13 Sep 2011 16:39:51 +0000 (18:39 +0200)]
s3:libsmb: make use of cli_state_server_session_key()

metze

12 years agos3:libsmb: add cli_state_server_session_key()
Stefan Metzmacher [Tue, 13 Sep 2011 16:36:56 +0000 (18:36 +0200)]
s3:libsmb: add cli_state_server_session_key()

metze

12 years agos3:libsmb: make use of cli_state_security_mode()
Stefan Metzmacher [Tue, 13 Sep 2011 14:47:24 +0000 (16:47 +0200)]
s3:libsmb: make use of cli_state_security_mode()

metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Tue Sep 13 19:45:01 CEST 2011 on sn-devel-104