1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-12 09:18:10 +03:00
Commit Graph

40281 Commits

Author SHA1 Message Date
Andrew Bartlett
00d493b00c s3-dbwrap: Remove dead code: talloc_stackframe() cannot fail 2012-04-19 12:34:33 +02:00
Andrew Bartlett
4471778d78 s3-passdb: Remove unused sampass->pass_must_change_time
There is no need to call pdb_set_pass_must_change_time() because
nothing ever consults that value.  It is always calculated from the
domain policy.

Also, this means we no longer store the value in LDAP.  The value
would only ever be set when migrating from tdbsam or smbpasswd, not on
password changes, so would become incorrect over time.

Andrew Bartlett
2012-04-19 12:34:33 +02:00
Volker Lendecke
9ce9389b29 s3: Fix a "ISO C90 forbids mixed declarations and code"
Autobuild-User: Volker Lendecke <vl@samba.org>
Autobuild-Date: Thu Apr 19 10:32:27 CEST 2012 on sn-devel-104
2012-04-19 10:32:27 +02:00
Jeremy Allison
124be4cf88 Ensure we have 12 bytes of data for a SMB_SET_CIFS_UNIX_INFO call. Add debug. 2012-04-18 12:38:52 -07:00
Volker Lendecke
0021fc17e4 s3-dbwrap: Fix an unused var warning 2012-04-18 18:16:27 +02:00
Volker Lendecke
536c4a41a1 libsmb: Actually use an introduced variable
Autobuild-User: Volker Lendecke <vl@samba.org>
Autobuild-Date: Wed Apr 18 13:39:53 CEST 2012 on sn-devel-104
2012-04-18 13:39:53 +02:00
Andrew Bartlett
44b6bf9130 s3-xattr_tdb: Use talloc_stackframe() more to allow calling from common code 2012-04-18 12:05:00 +10:00
Andrew Bartlett
492942a66a s3-xattr_tdb: Be nice to xattr_tdb_getxattr callers, return the full blob
In this case, the blob is already in memory, so it is easier to return the full
blob to the caller, and let the caller decide if some interface restriction
stops the full blob from being passed all the way up the stack.

This allows us to quickly write a python wrapper for this xattr storage
mechanism.

Andrew Bartlett
2012-04-18 12:05:00 +10:00
Andrew Bartlett
351c78fc67 s3-xattr_tdb: make xattr_tdb a private library, for use outside vfs_xattr_tdb 2012-04-18 12:05:00 +10:00
Andrew Bartlett
ce9676839b s3-lib: Add file_id_string() 2012-04-18 12:05:00 +10:00
Andrew Bartlett
ea5a9b21fb s3-build: move file_id.c into samba3-util and create a private header 2012-04-18 12:05:00 +10:00
Andrew Bartlett
19fb796960 dbwrap: Add dbwrap_tdb to private dbwrap library
Andrew Bartlett
2012-04-18 12:05:00 +10:00
Andrew Bartlett
ee695de1b4 s3-build: Add missing samba3-util dep to tdb-wrap3 2012-04-18 12:05:00 +10:00
Andrew Bartlett
cc86f8e985 lib/util: Move map_nt_error_from_tdb to the top level
This will help with making dbwrap available as a top level library.

Andrew Bartlett
2012-04-18 12:04:59 +10:00
Andrew Bartlett
338e5a1d35 s3-dbwrap: push lp_ctx up another layer in the stack
This will allow db_open_tdb() to be called from common code, which may
already have a loadparm context loaded.

It also slowly moves the lp_ctx up the stack, as required to remove
the library loop between smbconf and the registry.

Andrew Bartlett
2012-04-18 12:04:59 +10:00
Andrew Bartlett
235016bcf9 s3-dbwrap: Add talloc_stackframe() calls
This is in preperation for calling dbwrap from common code, where we may not
have a stackframe set up.

Andrew Bartlett
2012-04-18 12:04:59 +10:00
Andrew Bartlett
99caee5eef build: Remove more of the s3 special cases in waf: only pidfile.c needs -DCONFIGFILE 2012-04-18 12:04:59 +10:00
Andreas Schneider
e3ffb31554 s3-waf: Add possibility to build with system libsmbclient. 2012-04-17 16:17:35 +02:00
Andreas Schneider
c09c288f7c s3-waf: Fix client/smbclient dependencies. 2012-04-17 16:17:35 +02:00
Stefan Metzmacher
1334ed723e s3:libsmb/cliconnect: make use of ntlmssp_is_anonymous()
metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Tue Apr 17 16:16:51 CEST 2012 on sn-devel-104
2012-04-17 16:16:51 +02:00
Stefan Metzmacher
3207c7f965 s3:libsmb/ntlmssp: improve anonymous logins
smbtorture3 (and maybe others) use fstrings for 'user' and 'password',
so we need to check for empty strings.

metze
2012-04-17 14:42:32 +02:00
Stefan Metzmacher
941a6a7851 s3:libsmb/ntlmssp: add ntlmssp_is_anonymous()
metze
2012-04-17 14:42:31 +02:00
Stefan Metzmacher
cb3cde9518 s3:libsmb/ntlmssp: remove some indentation in ntlmssp_set_password()
metze
2012-04-17 14:42:31 +02:00
Stefan Metzmacher
5f0f5b3615 Revert "s3:libsmb/ntlmssp: an empty string should mean no password"
This reverts commit 92483eee25.
2012-04-17 14:42:31 +02:00
Volker Lendecke
8ed7ff483c s3: Add smbstatus -N to output the notify db
Autobuild-User: Volker Lendecke <vl@samba.org>
Autobuild-Date: Tue Apr 17 11:54:35 CEST 2012 on sn-devel-104
2012-04-17 11:54:35 +02:00
Volker Lendecke
ee4f2abbda s3: Add "notify-cleanup" to smbcontrol
This triggers a notify cleanup run which would normally only run periodically
2012-04-17 10:21:03 +02:00
Volker Lendecke
843432d56f s3: New notify implementation
From notify_internal.c:

        /*
         * The notify database is split up into two databases: One
         * relatively static index db and the real notify db with the
         * volatile entries.
         */

This change is necessary to make notify scale better in a cluster
2012-04-17 10:21:02 +02:00
Volker Lendecke
ae691cd9cc s3: Add two notify benchmark tests 2012-04-17 10:21:02 +02:00
Volker Lendecke
842b86c45f s3: Make torture_nprocs globally available 2012-04-17 10:21:02 +02:00
Volker Lendecke
0b501e823f s3: Make ctdbd_messaging_send_blob available in non-clustered mode
This will avoid the need for some #ifdefs
2012-04-17 10:21:02 +02:00
Volker Lendecke
a03a74c353 s3: Make messaging_ctdbd_connection available in non-clustered mode
This might make some #ifdef CLUSTER_SUPPORT unnecessary in the future
2012-04-17 10:21:02 +02:00
Volker Lendecke
b23b357557 s3: Implement tevent_barrier
This will help notify torture tests: A tevent barrier can be waited on with
tevent_barrier_wait_send/recv. The barrier is initialized with a number of
requests that it will accept waiting. When that number is reached, all those
requests will be released and their callback will be called. The barrier will
be free for re-use again.
2012-04-17 10:21:02 +02:00
Volker Lendecke
d705bae65b s3: Start a list of ctdb srvid assigments 2012-04-17 10:21:01 +02:00
Volker Lendecke
05ff425c17 s3: Introduce ctdb_messaging_send_blob
Send a raw blob without the messaging.idl wrap
2012-04-17 10:21:01 +02:00
Volker Lendecke
74baae782f s3: Add msg_channel
This is a tevent_based variant of messaging_register
2012-04-17 10:21:01 +02:00
Volker Lendecke
41712599e0 s3: Add messaging_tdb_event()
This is a void* that represents a signal handler attached to some
custom tevent_context. This is necessary to make the tdb based
messaging infrastructure trigger its business when we are sitting in
tevent_loop_once for an event context that is not the main one in the
messaging context.
2012-04-17 10:21:01 +02:00
Volker Lendecke
48a485b639 s3: Add a second ctdb connect library
The existing one is not async at all.
2012-04-17 10:21:01 +02:00
Volker Lendecke
94cf5cc284 s3: Add dbwrap_try_fetch_locked
This is designed to spread the load on individual ctdb records to allow upper
layers to do backoff mechanisms. In the ctdb case, do not get the record if a
local lock is already taken. If we are not dmaster, do at most one migrate
attempt.

For the tdb case, this is a nonblocking fetch_locked. If someone else has the
lock, give up.
2012-04-17 10:21:00 +02:00
Volker Lendecke
bd9178506e s3: Add dbwrap_cache
This is a caching layer for the notify database and potentially for the brlock
database. It caches the parse_record operation as long as the underlying seqnum
does not change.
2012-04-17 10:21:00 +02:00
Volker Lendecke
ba8f19c556 s3: Open up 3 levels of dbwrap_lock_order 2012-04-17 10:21:00 +02:00
Volker Lendecke
d2fe0bf776 s3: Increase debuglevel for unknown child msgs
Now that we have forked background jobs, this spams log.smbd
2012-04-17 10:21:00 +02:00
Volker Lendecke
1e1b6f79b3 s3: Add infrastructure for background jobs 2012-04-17 10:21:00 +02:00
Volker Lendecke
a49ac23a10 s3: Return CTDB_PATH from lp_ctdbd_socket()
All callers had that fallback
2012-04-17 10:21:00 +02:00
Christian Ambach
d642afa7f1 s3: switch off kernel oplocks by default
as discussed on samba-technical, turn kernel oplocks off by default
to not leave users without the benefits of Level II oplocks
2012-04-16 21:28:36 +02:00
Volker Lendecke
a8e9242a10 s3: Fix smbclient notify against Windows
We need READ_DATA

Autobuild-User: Volker Lendecke <vl@samba.org>
Autobuild-Date: Mon Apr 16 21:27:54 CEST 2012 on sn-devel-104
2012-04-16 21:27:54 +02:00
Jelmer Vernooij
dd0b8792a0 s3/selftest: Fix reference to knownfail file. 2012-04-16 16:30:18 +02:00
Stefan Metzmacher
66d7553b0e s3:libsmb: fix anonymous session setups against windows servers
Windows server doesn't set the SMB2_SESSION_FLAG_IS_GUEST nor
SMB2_SESSION_FLAG_IS_NULL flag.

This fix makes sure we don't try to verify a signature on the
final session setup response.

metze
2012-04-16 12:54:54 +02:00
Stefan Metzmacher
92483eee25 s3:libsmb/ntlmssp: an empty string should mean no password
metze
2012-04-16 12:54:53 +02:00
Stefan Metzmacher
b0939c5774 libcli/smb: move smb2cli_session_setup_*() prototypes to the code.
metze
2012-04-16 12:54:53 +02:00
Stefan Metzmacher
1e7f8d5ad0 s3:smbd/sesssetup: use a helper variable 'action' to mark guest access
metze
2012-04-16 10:39:50 +02:00
Andrew Bartlett
4d872ff77f param: leave realm as a normal string, handle upper/lower case in handle_realm
This matches the behaviour of lib/param.

Andrew Bartlett
2012-04-16 14:35:34 +10:00
Andrew Bartlett
db44f35fc3 param: harmonise wins parameters 2012-04-16 14:35:34 +10:00
Andrew Bartlett
2b348123a7 s3-param: make FN_GLOBAL macros consistent, add lp_ using the macro
This will make it easier to share the parameter tables between this
and lib/param.

Andrew Bartlett
2012-04-16 14:32:38 +10:00
Andrew Bartlett
0eacc47622 param: Change from _lp to lp__ as the prefix for internal parameter wrappers
This will make a merge with the lib/param param code easier, as we can then paste lp_ to the front of
all parameters unconditionally.

Andrew Bartlett
2012-04-16 14:32:38 +10:00
Andrew Bartlett
cf28df1d90 make _lp_readraw() and _lp_writeraw() static 2012-04-16 14:32:38 +10:00
Andrew Bartlett
acb64471b3 param: harmonsise logfile parameter 2012-04-16 14:32:37 +10:00
Adrian Bunk
55cbf7ba34 rely on sys/inotify.h for inotify
sys/inotify.h was added to glibc 2.4 in 2006.

Signed-off-by: Jeremy Allison <jra@samba.org>

Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Fri Apr 13 21:15:00 CEST 2012 on sn-devel-104
2012-04-13 21:15:00 +02:00
Olaf Flebbe
b8dea7e82d Wrong assertion/comparison: Compare value not pointer
Signed-off-by: Jeremy Allison <jra@samba.org>

Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Fri Apr 13 02:23:36 CEST 2012 on sn-devel-104
2012-04-13 02:23:35 +02:00
Jeremy Allison
da786cddd6 We never cancel SMB1 aio, only SMB2 aio - and in this case we always return a value.
So pass_cancel is no longer needed.
2012-04-12 15:11:22 -07:00
Jeremy Allison
d399af30c1 Remove cancel_aio_by_fsp(). It can never work and could lead to memory corruption
as outstanding IO's complete. Also we never have any aio's on a call to close_normal_file()
with close_type ERROR_CLOSE.
2012-04-12 15:06:59 -07:00
Jeremy Allison
fd38486364 Fix return_fn when aio was cancelled. We need to return -1, errno = ECANCELED. 2012-04-12 15:06:59 -07:00
Jeremy Allison
95839102ad Move the counting of outstanding_aio_calls into the lifecycle of the aio_extra struct.
This way we can't end up with a mismatch between outstanding events and the counter.

We may still have problems with canceling and not correctly freeing the aio
struct, but at least the counter won't get out of sync anymore.
2012-04-12 15:06:58 -07:00
Jeremy Allison
80a4e38d64 Fix the same bug reported by Kirill Malkin <kirill.malkin@starboardstorage.com> and
fixed by Volker for vfs_aio_fork as ref 0aacdbfada.

From that change:

    aio_suspend does not signal the main process with a signal, it just waits. The
    aio_fork module does not use the signal at all, it directly calls back into the
    main smbd by calling smbd_aio_complete_aio_ex. This is an abstraction
    violation, but the alternative would have been to use signals where they are
    not needed. However, in wait_for_aio_completion this bites us: With aio_fork we
    call handle_aio_completed twice on the same aio_ex struct: Once from the call
    to handle_aio_completion within the aio_fork module and once from the code in
    wait_for_aio_completion.

Fix this differently here by not calling directly back into smbd,
but using a new function aio_linux_setup_returns() to setup the
return values that wait_for_aio_completion() in the main smbd
will pick up by calling handle_aio_completd().
2012-04-12 15:06:58 -07:00
Volker Lendecke
f6328b14c8 s3: Fix a typo
Autobuild-User: Volker Lendecke <vl@samba.org>
Autobuild-Date: Thu Apr 12 23:38:24 CEST 2012 on sn-devel-104
2012-04-12 23:38:23 +02:00
Volker Lendecke
6742aa1fb6 s3: Fix a segfault with debug level 3 on Solaris
printf can not deal with NULL strings
2012-04-12 21:49:32 +02:00
Simo Sorce
1f1e4275b5 clikrb5: Move pure krb wrapper functions from libads to clikrb5.
Signed-off-by: Andreas Schneider <asn@samba.org>
2012-04-12 12:06:43 +02:00
Simo Sorce
46ab219005 gse: Remove unnecessary header.
Signed-off-by: Andreas Schneider <asn@samba.org>
2012-04-12 12:06:43 +02:00
Simo Sorce
c13c065a9b krb5_wrap: krb5_string_to_key / krb5_encrypt_block are deprecated.
Remove checks and replace with krb5_c_string_to_key().

Signed-off-by: Andreas Schneider <asn@samba.org>
2012-04-12 12:06:43 +02:00
Simo Sorce
70c303a7f3 auth-krb: Move pac related util functions in a single place.
Signed-off-by: Andreas Schneider <asn@samba.org>
2012-04-12 12:06:43 +02:00
Simo Sorce
3fd6deda7d auth-krb: Make functions static.
The remaining gssapi_parse functions were used exclusively in
gensec_krb5.  Move them there and make them static.

Signed-off-by: Andreas Schneider <asn@samba.org>
2012-04-12 12:06:43 +02:00
Simo Sorce
88d5d5c4b4 auth-krb: Nove oid packet check to gensec_util.
This is clearly a utiliy function generic to gensec.  Also the 3 callers
had identical implementations. Provide a generic implementation for all
of them and avoid duplicating the code everywhere.

Signed-off-by: Andreas Schneider <asn@samba.org>
2012-04-12 12:06:42 +02:00
Günther Deschner
60f192ae10 s3-waf: remove requirement of having --enable-developer for running system krb5 checks.
When you know about "with_mit_krb5_checks" you are most likely a developer
already.

Guenther

Signed-off-by: Andreas Schneider <asn@samba.org>
2012-04-12 12:06:41 +02:00
Jeremy Allison
81d17493d6 Remove overly complex attemt to define blkcnt_t and blksize_t. AC_CHECK_TYPE should just do it.
Still trying to fix the buildfarm.

Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Thu Apr 12 04:28:29 CEST 2012 on sn-devel-104
2012-04-12 04:28:29 +02:00
Jeremy Allison
2216d3f08a Try and fix autoconf on the build farm. Always include sys/types.h when working out sizeof(blkcnt_t). 2012-04-11 17:11:28 -07:00
Christian Ambach
2927ca3670 s3:smbd only care about missing level2 support if kernel oplocks are enabled
if kernel oplocks are not enabled for that share, we can grant level2 oplocks

Signed-off-by: Jeremy Allison <jra@samba.org>

Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Wed Apr 11 22:45:21 CEST 2012 on sn-devel-104
2012-04-11 22:45:21 +02:00
Christian Ambach
fbfbc6a252 s3:smbd only initialize kernel oplocks if they are enabled for a share
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-04-11 11:11:40 -07:00
Christian Ambach
1d9a3d488d s3:smbd add seperate function to initialize kernel oplocks
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-04-11 11:11:39 -07:00
Christian Ambach
2a36408d40 s3:param convert kernel oplocks to share parameter
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-04-11 11:11:39 -07:00
Jeremy Allison
e02a788f60 Simplify the logic around doing an immediate event reschedule.
We don't need to do a talloc here, we already have a long-lived
pointer we can pass in as the private data.

Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Wed Apr 11 08:05:47 CEST 2012 on sn-devel-104
2012-04-11 08:05:47 +02:00
Andrew Bartlett
f446506608 remove --enable-developer from recursive waf build in autoconf build
wanting to run make test does not make you a developer in need of ABI checking.

Andrew Bartlett
2012-04-11 02:30:39 +02:00
Andrew Bartlett
f7d60899d6 build: Add tevent deps for users of tevent calls
This isn't strictly required - this isn't a build break at the moment,
but is a good practice to directly depend on the major libraries we
use, and helps us to have more fine-grained rather than global
dependencies.

Andrew Bartlett
2012-04-11 02:30:39 +02:00
Jeremy Allison
fe707f6549 Add a new module, aio_linux which implements Linux kernel aio support. Docs to follow.
Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Wed Apr 11 02:29:04 CEST 2012 on sn-devel-104
2012-04-11 02:29:04 +02:00
Volker Lendecke
3cca094514 s3: Use talloc_get_size instead of strlen
We've just talloc_asprintf'ed the fullpath, so talloc_get_size knows the
strlen.

Autobuild-User: Volker Lendecke <vl@samba.org>
Autobuild-Date: Tue Apr 10 13:20:22 CEST 2012 on sn-devel-104
2012-04-10 13:20:22 +02:00
Jeremy Allison
d425a4cd3d On advice from Jelmer and Andrew, move the blksize_t and blkcnt_t tests into libreplace to make it standalone.
Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Tue Apr 10 04:07:11 CEST 2012 on sn-devel-104
2012-04-10 04:07:11 +02:00
Jeremy Allison
5701a4d861 Move blksize_t and blkcnt_t to replace.h from includes.h. Should help with platforms that don't have these.
Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Mon Apr  9 21:40:42 CEST 2012 on sn-devel-104
2012-04-09 21:40:40 +02:00
Volker Lendecke
8a907c9c65 s3: Fix the pthreadpool build on OS/X
OS/X does not have clock_gettime, and without replace.h we do not
get the replacement macro
2012-04-09 18:05:02 +02:00
Volker Lendecke
5856ab89fa s3: Initialize aio_pending_size from aio_pthread 2012-04-09 18:05:01 +02:00
Volker Lendecke
5f3ac4d6c4 s3: Initialize aio_pending_size from aio_pthread 2012-04-09 18:05:01 +02:00
Volker Lendecke
eff36099c1 s3: Move the aio signal init to the vfs module
On platforms that don't have an RT signal space, signal initialization
fails. aio_fork and aio_pthread don't need the signal, so this would
block them from running as well.
2012-04-09 18:04:55 +02:00
Volker Lendecke
5138b1f7fb s3: Compile fix for dbwrap_file.c
Autobuild-User: Volker Lendecke <vl@samba.org>
Autobuild-Date: Sat Apr  7 14:10:35 CEST 2012 on sn-devel-104
2012-04-07 14:10:35 +02:00
Jeremy Allison
989fc20fc3 Found whilst back-porting the fix for bug 8837 - smbd crashes when deleting directory and veto files are enabled.
The delete tokens are unique to each name hash representing a pathname,
if we don't correctly return here we'll add duplicate tokens for a
given pasname hash.

Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Sat Apr  7 02:13:58 CEST 2012 on sn-devel-104
2012-04-07 02:13:58 +02:00
Jeremy Allison
a92c532573 Bug found by Herb. blkcnt_t st_ex_blksize is defined as a signed value. When it is
on a 32-bit system and defined as a long, then inside vfswrap_get_alloc_size()
we cast to a uint64_t. This sign-extends when converting to unsigned,
so if the high bit of st_ex_blksize is set we return insane values to clients.
2012-04-06 14:20:12 -07:00
Björn Baumbach
7ff42f3746 s3-utils: add do_reload_printers command to smbcontol
Add command to force smbd to reload printers by sending MSG_PRINTER_PCAP.
2012-04-06 08:19:13 +02:00
Andrew Bartlett
6aa12fcb30 build: Remove SMB_OFF_T, replace with off_t
Now that we always require a 64 bit off_t, we no longer need SMB_OFF_T.

Andrew Bartlett

Autobuild-User: Andrew Bartlett <abartlet@samba.org>
Autobuild-Date: Fri Apr  6 01:47:43 CEST 2012 on sn-devel-104
2012-04-06 01:47:43 +02:00
Andrew Bartlett
48166468fe s3-build: Remove unused configure checks for xattr functions
Autobuild-User: Andrew Bartlett <abartlet@samba.org>
Autobuild-Date: Thu Apr  5 07:13:29 CEST 2012 on sn-devel-104
2012-04-05 07:13:28 +02:00
Andrew Bartlett
19eee33d82 s3-vfs: Remove unused lremovexattr call from VFS modules, system.c and configure
If this is ever needed again, it would be more appropriate as an options argument
to removexattr.

Andrew Bartlett
2012-04-05 13:39:01 +10:00
Andrew Bartlett
4af0f5f135 s3-build: Remove unused configure checks for xattr functions 2012-04-05 13:39:00 +10:00
Andrew Bartlett
c70ac29c54 s3-vfs: Remove unused lsetxattr call from VFS modules, system.c and configure
If this is ever needed again, it would be more appropriate as an options argument
to listxattr.

Andrew Bartlett
2012-04-05 13:39:00 +10:00
Andrew Bartlett
c5b17c5555 s3-vfs: Remove unused llistxattr call from VFS modules, system.c and configure
If this is ever needed again, it would be more appropriate as an options argument
to listxattr.

Andrew Bartlett
2012-04-05 13:39:00 +10:00
Andrew Bartlett
b2f7cfa848 s3-vfs: Remove unused lgetxattr call from VFS modules, system.c and configure 2012-04-05 13:39:00 +10:00