1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-21 01:59:07 +03:00

30417 Commits

Author SHA1 Message Date
Volker Lendecke
b067a5e4e8 s3: Remove debug_ctx()
smbd just crashed on me: In a debug message I called a routine preparing a
string that itself used debug_ctx. The outer routine also used it after the
inner routine had returned. It was still referencing the talloc context
that the outer debug_ctx() had given us, which the inner DEBUG had already
freed.
2009-11-03 11:30:00 +01:00
Jeremy Allison
f9c9dee013 Convert from numbers to correct SMB_FIND_XX constant names.
Jeremy.
2009-11-02 16:17:36 -08:00
Michael Adam
cc5b22a016 s3:registry: add an extra check for dsize==0 to regdb_fetch_keys_internal()
Don't only rely on dptr == NULL.
I stumbled over this one when rewriting some of the dbwrap_ctdb code.

Michael
2009-11-03 01:02:39 +01:00
Michael Adam
f6f2151a39 s3:registry: add safety check for return value of tdb_unpack to regdb_fetch_keys_internal()
Prevents segfaults in some situations.

(For a non existent or empty record, we sometimes rely on the fetch operation
 to return dsize==0 and sometimes we rely on dptr==NULL.)

Michael
2009-11-03 01:02:38 +01:00
Michael Adam
25bdf27eaa s3:dbwrap_ctdb: add debug message to transaction_fetch_start()
for the case that another local process has started a transaction
bewteen releasing the transaction_lock record and starting the
transaction.

Michael
2009-11-03 01:02:38 +01:00
Michael Adam
9fef6a6666 s3:dbwrap_ctdb: split combined check in two and add descriptive debug
in db_ctdb_transaction_fetch_start() for error conditions when re-fetching
the transaction_lock record inside the transaction

Michael
2009-11-03 01:02:38 +01:00
Michael Adam
f37439efd2 s3:dbwrap_ctdb: fix race condition with concurrent transactions on the same node.
In ctdb_transaction_commit(), when the trans2_commit control fails, there
is a race condition in the 1 second sleep between the local transaction_cancel
and the call to ctdb_replay_transaction(): The database is not locked, and
neither is the transaction_lock record. So another client can start and possibly
complete a new transaction in this gap, but only on the same node: The locking
of the transaction_lock record on a different node which involves migration of
the record to the other node has been disabled by introduction of the
transaction_active flag on the db which closes precisely this gap from the start
of the commit until the call to TRANS2_FINISH or TRANS2_ERROR.
But this mechanism does not cover the case where a process on the same node
tries to start a transaction: There is no obstacle to locking the transaction_lock
record because the record does not need to be migrated.

This commit closes this race condition in ctdb_transaction_fetch_start()
by using the new ctdb_ctrl_transaction_active() call to ask the local
ctdb daemon whether it has a transaction running on the database.
If so, the check is repeated until the running transaction is done.

This does introduce an additional call to the local ctdbd when starting
transactions, but it does close the (hopefully) last race condition.

Michael
2009-11-03 01:02:37 +01:00
Michael Adam
08d2a3f4bf s3:configure: add a check for the new CTDB_CONTROL_TRANS2_ACTIVE
Michael
2009-11-03 01:02:37 +01:00
Michael Adam
9be4d3dd4f s3:dbwrap_ctdb: add new db_ctdb_transaction_active() that calls CTDB_CONTROL_TRANS2_COMMIT
Michael
2009-11-03 01:02:37 +01:00
Michael Adam
9bd6b9d9f6 s3:dbwrap_ctdb: fix a race in starting concurrent transactions on a single node
There are two races in concurrent transactions on a single node.
One in starting a transaction and one with replay during commit.

This commit closes the first race by storing the client pid in the
transaction-lock record and comparing the stored pid against its own
pid after releasing the lock and refetching the record inside the
transaction.

Michael
2009-11-03 01:02:36 +01:00
Michael Adam
8d61b8abbc s3:dbwrap_ctdb: use db_ctdb_ltdb_fetch() inside db_ctdb_transaction_fetch_start
Michael
2009-11-03 01:02:36 +01:00
Michael Adam
0ec476fca1 s3:dbwrap_ctdb: use db_ctdb_ltdb_fetch() inside db_ctdb_transaction_fetch()
Michael
2009-11-03 01:02:36 +01:00
Michael Adam
4973ff66ac s3:dbwrap_ctdb: add a function db_ctdb_ltdb_fetch()
This fetches a record from the db and splits out the ctdb header.

Michael
2009-11-03 01:02:35 +01:00
Michael Adam
6a898348fa s3:dbrwap_ctdb: add a function db_ctdb_ltdb_store()
and use it in db_ctdb_store() and db_ctdb_transaction_store().

Michael
2009-11-03 01:02:35 +01:00
Michael Adam
d5aa758482 s3:dbwrap_ctdb: reformat a comment slightly to enhance clearness.
Michael
2009-11-03 01:02:35 +01:00
Jeremy Allison
494d8271d4 Fix bug 6867 - trans2findnext returns reply_nterror(req, ntstatus) In a directory with a lot of files.
Jeremy.
2009-11-02 12:15:25 -08:00
Volker Lendecke
d9bdd17522 s3: Fix a 100% CPU loop when ctdbd dies during a traverse 2009-11-02 17:02:20 +01:00
Günther Deschner
f35a1b95aa s3-gencache: restore gencache_get behavior with NULL args (with torture test).
Without this, we panic in wins_srv_is_dead() and fail to start nmbd with
wins support.

Volker, please check.

Guenther
2009-11-02 13:04:26 +01:00
Volker Lendecke
ad6ee94950 s3: Make "debug hires timestamp" default to true
It does not cost much and can help a lot when debugging
2009-11-02 10:08:39 +01:00
Andrew Bartlett
7a290130bd lib/util Use rfc1738.c from Squid for all our URL encode/decode needs.
Andrew Bartlett
2009-11-02 16:36:52 +11:00
Björn Jacke
7006352206 s3:ldap: don't search when no values where found 2009-11-02 01:55:27 +01:00
Volker Lendecke
9ab1f793ff s3: Fix the RPC server SUBSYSTEM declaration
If I read SMB_SUBSYSTEM right then the 2nd argument needs to be the file where
the static_init_rpc (in this case) is defined. This seems to have moved from
server.c to process.c.

Jelmer, please check!

Volker
2009-10-31 11:28:55 +01:00
Björn Jacke
a80a0b7728 s3:Makefile: add LIBREPLACE_LIBS for talloc, tdb and wbclient 2009-10-31 10:37:44 +01:00
Björn Jacke
4ae950d211 ѕ3:buildsystem: fix depenencies for libreplace
This problem became visible after adding the picky -z defs linker option: On
Solaris libreplace had unresolved symbols, which showed up in the libtalloc
build. PAM_WINBIND_EXTRA_LIBS and WINBIND_NSS_EXTRA_LIBS had been workarounds
to make things work at two placeѕ. These variables have been obsoleted now.
This patch introduces LIBREPLACE_LIBS which contans the linker flags needed for
linking anything using libreplace.
2009-10-31 00:48:20 +01:00
Björn Jacke
72cec4a031 ѕ3:ldap: search for account policies in objectclass sambaDomain, not * 2009-10-31 00:48:20 +01:00
Günther Deschner
2f3a40844d s3-rpcclient: add deletetrustdom command.
Guenther
2009-10-30 12:28:48 +01:00
Günther Deschner
fbdda19549 s3-rpcclient: add createtrustdom command.
Guenther
2009-10-30 12:28:48 +01:00
Günther Deschner
a98832189a s3-lsa: expand struct lsa_info to carry name and sd.
Guenther
2009-10-30 12:28:48 +01:00
Günther Deschner
820b2f4cfa s3-lsa: use switch in _lsa_QuerySecurity().
Guenther
2009-10-30 12:28:48 +01:00
Jeremy Allison
921aa99b37 Start fixing the RAW-STREAMS test - ensure that the xattr
used to store the stream info in streams_depot.so is not
seen in when enumerating EAs.
Jeremy.
2009-10-29 16:14:12 -07:00
Jim McDonough
f88ab1b151 s3: Fix incorrect rc check of nscd_flush_cache.
At least this only resulted in an incorrect debug message.
2009-10-29 11:11:43 -04:00
Günther Deschner
184afaa04c s3-secrets: use autogenerated code for TRUSTED_DOM_PASS struct parsing from a tdb.
Guenther
2009-10-29 10:49:39 +01:00
Günther Deschner
e92e33238c s3: add secrets.idl.
Guenther
2009-10-29 10:49:35 +01:00
Stefan (metze) Metzmacher
25f96a4058 Add in Metze's new code to ndr encode the user.DOSATTRIB
blobs. Next I'll change the create timestamp and dos attribute
code to use this.
2009-10-28 15:42:47 -07:00
SATOH Fumiyasu
c27194a7e0 Fix bug 6572 - libsmbclient: unable to access 'msdfs proxy' share. 2009-10-28 12:48:36 -07:00
Björn Jacke
0ba004dc7d s3:net: fix output of net rpc trustdom list
Move some messages from stderr to stdout. When some trusting DCs were
unreachable we lacked \n's on stdout which screwed up whole the output.
2009-10-28 14:45:49 +01:00
Stefan Metzmacher
ee13e9c0be s3:configure: only check for gpfs_gpl.h
The header is everything we need in order to build vfs_gpfs.

metze

Signed-off-by: Michael Adam <obnox@samba.org>
2009-10-28 13:08:26 +01:00
Günther Deschner
4df8426768 s3-passdb: move open_schannel_session_store() to passdb/secrets_schannel.c.
Guenther
2009-10-28 12:37:39 +01:00
Günther Deschner
96bffa5bbd s3-net: acct_flags are uint32_t in net_sam_set_userflag().
Guenther
2009-10-28 12:37:39 +01:00
Günther Deschner
abe9417303 s3-lsa: add lsa_trusted_domain_mapping.
Guenther
2009-10-28 12:37:38 +01:00
Günther Deschner
bda047afbc s3-passdb: add secrets_delete_generic().
Guenther
2009-10-28 12:37:38 +01:00
Günther Deschner
7791d29c79 s3-lsa: add lsa_secret_mapping.
Guenther
2009-10-28 12:37:34 +01:00
Günther Deschner
880666cd94 s3-lsa: use correct function name in_lsa_RemoveAccountRights().
Guenther
2009-10-28 12:24:25 +01:00
Günther Deschner
c352a73bad s3-lsa: pure cosmetic indentation fixes.
Guenther
2009-10-28 12:24:17 +01:00
Günther Deschner
6937e01e3e s3-lsa: use enum lsa_LookupNamesLevel in lsa_lookup_level_to_flags().
Guenther
2009-10-28 12:24:08 +01:00
Michael Adam
8fdef14305 s3: pdbedit: add option --kickoff-time/-K to set the user's kickoff time
Use "never" as argument to set this to unlimited.

Michael
2009-10-27 15:39:09 +01:00
Jeremy Allison
9a2112ec66 Second part of the fix for bug 6828 - infinite timeout occurs when byte lock held outside of samba.
Fixes case where a connection with a pending lock can me marked "idle", and ensures
that the lock queue timeout is always recalculated.
Jeremy.
2009-10-26 21:20:22 -07:00
Karolin Seeger
f381faa8d6 s3: Rename new parameter "ldap ref follow" to "ldap follow referral".
This parameter will be introduced with Samba 3.5.0.

Karolin
2009-10-26 12:11:59 +01:00
Barry Sabsevitz
3054fe46d9 Fix bug 6802 - A created folder does not properly inherit permissions from parent. 2009-10-23 11:50:29 -07:00
Jeremy Allison
4a1a9f5792 Simplify the logic.
Jeremy.
2009-10-22 15:26:22 -07:00