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

33398 Commits

Author SHA1 Message Date
Michael Adam
f96575d6db s3:idmap_ldap: remove unused idmap_ldap_alloc_methods. 2010-08-14 02:10:39 +02:00
Michael Adam
0369eb5555 s3:idmap_ldap: remoce unused idmap_alloc_ldap_init 2010-08-14 02:10:39 +02:00
Michael Adam
0dfe400d64 s3:idmap_ldap: don't call idmap_alloc_ldap_init in idmap_ldap_init
The registering of alloc backends is being removed.
The idmap backends are responsible for initializing
their alloc code on their own if necessary.
2010-08-14 02:10:39 +02:00
Michael Adam
bc59660fc1 s3:idmap_tdb: remove unused idmap_alloc_methods 2010-08-14 02:10:39 +02:00
Michael Adam
5e317beadb s3:idmap_tdb: remove unused idmap_alloc_tdb_init() 2010-08-14 02:10:38 +02:00
Michael Adam
dd4adc1721 s3:idmap_tdb: don't call idmap_alloc_tdb_init in idmap_tdb_init
The registering of alloc backends is being removed.
The idmap backends are responsible for initializing
their alloc code on their own if necessary.
2010-08-14 02:10:38 +02:00
Michael Adam
77e41c0ad4 s3:idmap_tdb2: remove unused idmap_tdb2_alloc_init(). 2010-08-14 02:10:38 +02:00
Michael Adam
261663389b s3:idmap_tdb2: remove unused idmap_tdb2_alloc_close(). 2010-08-14 02:10:38 +02:00
Michael Adam
39fced2f33 s3:idmap_tdb2: remove unused idmap_alloc_methods. 2010-08-14 02:10:38 +02:00
Michael Adam
8a13c95931 s3:idmap_tdb2: don't call smb_register_idmap_alloc() in idmap_tdb2_init
The registering of alloc backends is being removed.
The idmap backends are responsible for initializing
their alloc code on their own if necessary.
2010-08-14 02:10:38 +02:00
Michael Adam
7b4c6f7e89 s3:idmap_tdb: make idmap_alloc_tdb_init() static. 2010-08-14 02:10:37 +02:00
Michael Adam
fe8b1588b4 s3:idmap: remove unused idmap_alloc_init(). 2010-08-14 02:10:37 +02:00
Michael Adam
212468bc6e s3:idmap: use allocate_id() from the idmap_methods in idmap_allocate_unixid()
The idmap alloc methods are being removed.
2010-08-14 02:10:37 +02:00
Michael Adam
770b22ff5a s3:idmap: add an allocate_id method to the idmap_methods struct.
The idmap_alloc_methods are being removed, but this single "alloc" method
is still needed for the samba-wide Unix-ID allocator, which is used in
group-mapping and ldapsam:editposix.
This method should ultimately also disappear.
2010-08-14 02:10:37 +02:00
Michael Adam
0d369271c5 s3:idmap: factor out common code of idmap_allocate_uid|gid()
into new idmap_allocate_unixid().
2010-08-14 02:10:37 +02:00
Michael Adam
0d0032e744 s3:idmap: remove the set_mapping method from the idmap API 2010-08-14 02:10:36 +02:00
Michael Adam
95617a03db s3:idmap: remove idmap_new_mapping() - now implemented in the backends 2010-08-14 02:10:36 +02:00
Michael Adam
e2968160a4 s3:idmap: add a debug message to idmap_sid_to_gid 2010-08-14 02:10:36 +02:00
Michael Adam
a08e60dd2c s3:idmap: add a debug message to idmap_sid_to_uid 2010-08-14 02:10:36 +02:00
Michael Adam
9ee3134691 s3:idmap: don't call idmap_new_mapping idmap_sid_to_gid
The setting of a new mapping is moved into the backend code
to achieve atomicity and greater flexibility.

Michael
2010-08-14 02:10:36 +02:00
Michael Adam
f301ea5977 s3:idmap: don't call idmap_new_mapping idmap_sid_to_unixid.
The setting of a new mapping is moved into the backend code
to achieve atomicity and greater flexibility.

Michael
2010-08-14 02:10:36 +02:00
Michael Adam
95b840cbf1 s3:idmap: remove unused method set_id_hwm from idmap API
Michael
2010-08-14 02:10:35 +02:00
Michael Adam
3715a1687f s3:idmap: remove unused alloc method get_id_hwm from idmap API
Michael
2010-08-14 02:10:35 +02:00
Michael Adam
672ab10ee7 s3:idmap: remove unused method dump_data() from the idmap API
Michael
2010-08-14 02:10:35 +02:00
Michael Adam
0f91373156 s3:idmap: remove the remove_mapping method from API and backends
Michael
2010-08-14 02:10:34 +02:00
Michael Adam
d888e726a9 s3:idmap: remove unused idmap_remove_mapping().
Michael
2010-08-14 02:10:34 +02:00
Michael Adam
3b56f7f6b5 s3:winbind: remove the method REMOVE_MAPPING from winbind's API
Michael
2010-08-14 02:10:34 +02:00
Michael Adam
6740c180e6 s3:idmap: remove unused idmap_set_mapping().
Michael
2010-08-14 02:10:34 +02:00
Michael Adam
474020b1ae s3:winbind: remove the method SET_MAPPING from winbind's API
Michael
2010-08-14 02:10:33 +02:00
Michael Adam
806e006288 s3:idmap: remove unused idmap_set_gid_hwm()
Michael
2010-08-14 02:10:32 +02:00
Michael Adam
002fe91768 s3:idmap: remove unused idmap_set_uid_hwm()
Michael
2010-08-14 02:10:32 +02:00
Michael Adam
66e67c1bad s3:winbind: remove SET_HWM from winbind's API. 2010-08-14 02:10:31 +02:00
Michael Adam
a03e2cacaf s3:net: rewrite "net idmap restore" using dbwrap
This removes the use of libwbclient from "net idmap".

This detects the idmap backend from the current smb.conf
and stores the id mapping tables in the corresponding data bases.
Currently, only tdb and tdb2 backends are supported.
Support for the ldap backend may be implemented later.
2010-08-14 02:10:30 +02:00
Michael Adam
80bceab9cb s3:net: change "net idmap dump" to use dbwrap instead of direct tdb access
This way, it will also work in a samba-ctdb cluster.
2010-08-14 02:10:30 +02:00
Michael Adam
a0920a5ee5 s3:net sam provision: compose sid before getting uid for Guest
Michael
2010-08-14 02:10:30 +02:00
Michael Adam
d923907ced s3:net sam provision: allocate the uid after composing the sid for Administrator
Michael
2010-08-14 02:10:30 +02:00
Michael Adam
c45eca5751 s3:pdb_ldap: move some code in ldapsam_create_dom_group()
to make the flow more similar to ldapsam_create_user().
This prepares for calling winbind_sid_to_gid() instead of
winbind_allocate_gid(): we need the group_sid for this...

Michael
2010-08-14 02:10:30 +02:00
Michael Adam
0dc3cd75a1 s3:groupdb: allocate a gid after allocating a rid in pdb_default_create_alias()
Michael
2010-08-14 02:10:29 +02:00
Michael Adam
b28371b9a4 s3:idmap_tdb2: fix a debug message 2010-08-14 02:10:29 +02:00
Michael Adam
a8492d2a92 s3:test: add a new "valgrindtestenv" target, similar to gdbtestenv
this runs the daemins in xterm under valgrind instead of in gdb
2010-08-14 01:54:37 +02:00
Michael Adam
1bc1fbe5fd s3:gdbtestenv: also start an xterm with nmbd. and start winbindd before smbd. 2010-08-14 01:52:41 +02:00
Michael Adam
40090d9b24 s3:gdbtestenv: also set the xterm's window title appropriately 2010-08-14 01:51:39 +02:00
Michael Adam
e051f3bd62 s3:gdbtestenv: print the server's name in the icontitle instead of "server" 2010-08-14 01:48:09 +02:00
Volker Lendecke
ad871b73a2 s3: Fix some error messages 2010-08-13 22:53:06 +02:00
Jeremy Allison
15d3541c67 Eliminate any chance of a class of "uninitialized auto variable" errors.
Jeremy.
2010-08-13 10:49:18 -07:00
Günther Deschner
f00b61c7d4 s3-selftest: move make test to selftest.
The old "make test" can be still called as "make oldtest".

Guenther
2010-08-13 18:30:50 +02:00
Günther Deschner
472d2a356f s3-selftest: fix testparm tests as non-root.
Thanks to Andreas for pointing this out.

Guenther
2010-08-13 18:30:37 +02:00
Andreas Schneider
ca8db7fd63 s3-smbd: Publish nt printers.
Reloading of the printers requires rpc services up and running! The
first call in reload_services will be skipped.

Signed-off-by: Simo Sorce <idra@samba.org>
2010-08-13 12:20:10 -04:00
Andreas Schneider
aff002e829 s3-smbd: Move rpc services init to smbd parent.
The move to the parent makes it possible to use an internal rpc pipe
really early and as we migrated serveral parts of samba to rpc function
this is required. This should speed up the fork of a smbd a bit cause
the rpc services are already running.

We still have several problems here which aren't solved. We don't have a
dependency tree here. For example we have to make sure that the registry
is initialized before we can use the winreg pipe. The spoolss server
requires winreg, so we have to start winreg before we can start the
spoolss server. I'm sure there are more dependencies.

Signed-off-by: Simo Sorce <idra@samba.org>
2010-08-13 12:20:10 -04:00
Andreas Schneider
62a2a9e27f s3-smbd: Regroup some init functions.
Signed-off-by: Simo Sorce <idra@samba.org>
2010-08-13 12:20:10 -04:00
Andreas Schneider
9ab62b774f s3-smbd: Fixed indent.
Signed-off-by: Simo Sorce <idra@samba.org>
2010-08-13 12:20:10 -04:00
Andreas Schneider
4a5cef82d8 s3-loadparm: Added some comments to lp_load_ex calls.
Signed-off-by: Simo Sorce <idra@samba.org>
2010-08-13 12:20:10 -04:00
Andreas Schneider
e18039062c s3-smbd: Cleanup the order of the init functions.
Signed-off-by: Simo Sorce <idra@samba.org>
2010-08-13 12:20:10 -04:00
Andreas Schneider
120bd9775a s3-smbd: Make sure the event context is initialized.
Signed-off-by: Simo Sorce <idra@samba.org>
2010-08-13 12:20:10 -04:00
Günther Deschner
2c99eef355 s3-build: remove pointless RPC_PARSE_OBJ2.
Guenther
2010-08-13 16:04:41 +02:00
Günther Deschner
0f264935e0 s3-waf: remove pointless RPC_PARSE_SRC2.
Guenther
2010-08-13 16:04:40 +02:00
Volker Lendecke
734f581906 s3: Replace some cli_errstr calls by nt_errstr 2010-08-13 16:03:04 +02:00
Günther Deschner
06a2c23641 s3-libnet: also remove libnet/libnet_samsync_keytab.c.orig.
Guys, what are you doing here ? ;-)

Guenther
2010-08-13 15:24:00 +02:00
Günther Deschner
f0475ac36c s3-libnet: remove source3/libnet/libnet_join.c.orig, added by a previous commit.
Guenther
2010-08-13 15:22:06 +02:00
Günther Deschner
bb8936c087 s3-dcerpc: fix build warning seen with -O3.
"warning: assuming signed overflow does not occur when assuming that (X + c) < X is always false"

Guenther
2010-08-13 15:20:58 +02:00
Andrew Bartlett
71d80e6be0 s3-krb5 Only build ADS support if arcfour-hmac-md5 is available
Modern Kerberos implementations have either defines or enums for these
key types, which makes doing #ifdef difficult.  This shows up in files
such as libnet_samsync_keytab.c, the bulk of which is not compiled on
current Fedora 12, for example.

The downside is that this makes Samba unconditionally depend on the
arcfour-hmac-md5 encryption type at build time.  We will no longer
support libraries that only support the DES based encryption types.
However, the single-DES types that are supported in common with AD are
already painfully weak - so much so that they are disabled by default
in modern Kerberos libraries.

If not found, ADS support will not be compiled in.

This means that our 'net ads join' will no longer set the
ACB_USE_DES_KEY_ONLY flag, and we will always try to use
arcfour-hmac-md5.

A future improvement would be to remove the use of the DES encryption
types totally, but this would require that any ACB_USE_DES_KEY_ONLY
flag be removed from existing joins.

Andrew Bartlett

Signed-off-by: Simo Sorce <idra@samba.org>
2010-08-13 09:08:27 -04:00
Andrew Bartlett
fff6fa72ff s3:libnet Add other required headers for libnet_samsync_keytab.c
Due to missing defines in modern kerberos libraries, this code was
not compiled and so this wasn't noticed.

Andrew Bartlett

Signed-off-by: Simo Sorce <idra@samba.org>
2010-08-13 09:08:27 -04:00
Björn Jacke
5390baeb6b tdb: add TDB_DEPS variable filled with required libraries
This is required for Solaris, which needs to link in librt to make use of
fdatasync().
2010-08-13 14:57:44 +02:00
Günther Deschner
37177f1c05 s3-build: pointless to link in libads and dcutils into smbcacls.
Guenther
2010-08-13 13:55:52 +02:00
Günther Deschner
3f76555ebe s3-build: separate out libads_printer.
Guenther
2010-08-13 12:02:06 +02:00
Günther Deschner
d1be71f1e0 s3-waf: separate out libads_printer.
Guenther
2010-08-13 12:01:58 +02:00
Günther Deschner
b0343b2c0b s3-selftest: add testparm tests to selftest.
Guenther
2010-08-13 11:44:40 +02:00
Jeremy Allison
84fd910c34 Fix bug #7617 - smbd coredump due to uninitialized variables in the performance counter code.
In the file rpc_server.c, function _winreg_QueryValue()

uint8_t *outbuf

Should be :

uint8_t *outbuf = NULL;

As it is later freed by

      if (free_buf) SAFE_FREE(outbuf);

in some cases, this frees the unintialized outbuf, which causes a coredump.
2010-08-12 15:16:42 -07:00
Jim McDonough
c67b4ed3a4 s3-libnet: fix bug #6364: Pull realm from supplied username on libnet join 2010-08-12 17:51:02 -04:00
Günther Deschner
73a69e2d0f s3-waf: fix the build.
Guenther
2010-08-12 16:51:48 +02:00
Björn Jacke
616e187d68 s3: fall back to cups-config for underlinked libs
some OpenBSD systems have underlinked cups libraries. If linking against cups
alone fails, try to link against all the cups-config --libs cruft, which we
usually don't want. (bugzila #7244)
2010-08-12 16:30:35 +02:00
Björn Jacke
1d443f6bc2 Revert "s3: Use cups-config --libs"
This reverts commit 911db76114. This was introduced in 18f1f5b56b
intentionally.
2010-08-12 16:30:35 +02:00
Stefan Metzmacher
56a6a972f2 s3:Makefile: link in dcerpc client stubs
metze
2010-08-12 14:31:23 +02:00
Stefan Metzmacher
7e24d1dd57 s3:winbindd: add wbint dcerpc_binding_handle backend
metze
2010-08-12 14:31:22 +02:00
Stefan Metzmacher
262dcfcd87 s3:rpc_server: add rpc_pipe_open_internal dcerpc_binding_handle backend
metze
2010-08-12 14:31:22 +02:00
Stefan Metzmacher
2c0e296dd7 s3:rpc_client: add dcerpc_binding_handle backend
metze
2010-08-12 14:31:21 +02:00
Volker Lendecke
f7e14a8e5e s3: Reduce the load on the echo handler
If the parent is fast enough, the echo handler should not step in. When the
socket becomes readable, the echo handler goes to sleep for a second. If within
that second, the parent has picked up the SMB request from the net, the echo
handler will just go back to select().
2010-08-12 13:32:16 +02:00
Volker Lendecke
c672797a0a s3: Slightly simplify the logic in smbd_server_echo_handler 2010-08-12 13:31:51 +02:00
Volker Lendecke
c7a2e52ef1 s3: Slightly simplify the logic in smbd_server_connection_handler 2010-08-12 13:31:51 +02:00
Volker Lendecke
277248a4a7 s3: ?true:false is a *bit* pointless :-) 2010-08-12 12:26:56 +02:00
Günther Deschner
c43e832c51 s3-waf: fix the waf build with more recent MIT krb5 libs.
(such as MIT krb5 1.7.1 on fedora 13).

This whole area needs more work and love later, for now it builds at least.

Kai, please check.

Guenther
2010-08-11 12:47:57 +02:00
Andrew Bartlett
75adca63f2 libcli/auth Make the source3/ implementation of the NTLMSSP server common
This means that the core logic (but not the initialisation) of the
NTLMSSP server is in common, but uses different authentication backends.

Andrew Bartlett

Signed-off-by: Günther Deschner <gd@samba.org>
2010-08-10 16:22:04 +02:00
Andrew Bartlett
979b672dcb s3:ntlmssp Split the NTLMSSP server into before and after authentication
This allows for a future where the auth subsystem is async, and the
session key generation needs to happen in a callback.

This code is originally reworked into this style by metze for the
source4/ implementation.

The other change here is to introduce an 'out_mem_ctx', which makes
the API match that used in source4.

Andrew Bartlett

Signed-off-by: Günther Deschner <gd@samba.org>
2010-08-10 16:17:10 +02:00
Andrew Bartlett
4969b3de63 s3:ntlmssp Always call ntlmssp_sign_init()
There is no code path that sets nt_status before this point, without
a return.

Andrew Bartlett

Signed-off-by: Günther Deschner <gd@samba.org>
2010-08-10 12:13:00 +02:00
Andrew Bartlett
617ec0733d s3:ntlmssp Don't use talloc_tos() for NTLMSSP blobs for now
This code will, I hope, soon be merged in common, and the Samba4
use case does not currently support talloc_tos() properly.  Use another
context for now.

Andrew Bartlett

Signed-off-by: Günther Deschner <gd@samba.org>
2010-08-10 12:13:00 +02:00
Andrew Bartlett
d112557a05 s3:ntlmssp Don't permit LM_KEY in combination with NTLMv2
This is another 'belts and braces' check to avoid the use of the
weak 'LM_KEY' encryption when the client has chosen NTLMv2.

Andrew Bartlett

Signed-off-by: Günther Deschner <gd@samba.org>
2010-08-10 12:13:00 +02:00
Andrew Bartlett
f6cc686036 s3:ntlmssp Don't reply with the LM_KEY negotiation flag when not available
This ensures the client isn't confused and we don't enter this
weaker authentication scheme when we don't really, really need to.

Andrew Bartlett

Signed-off-by: Günther Deschner <gd@samba.org>
2010-08-10 12:13:00 +02:00
Andrew Bartlett
3c0a17a127 s3:ntlmssp Don't use the lm key if the user didn't supply one.
This may help to avoid a number of possible MITM attacks where LM_KEY is
spoofed into the session.  If the login wasn't with lanman
(and so the user chose to disclose their lanman response),
don't disclose back anything based on their lanman password.

Andrew Bartlett

Signed-off-by: Günther Deschner <gd@samba.org>
2010-08-10 12:13:00 +02:00
Andrew Bartlett
f744e42bd0 s3:ntlmssp Add extra DEBUG() message for auth system failures
Andrew Bartlett

Signed-off-by: Günther Deschner <gd@samba.org>
2010-08-10 12:13:00 +02:00
Andrew Bartlett
e0c94d14b3 s3:ntlmssp Redirect lp_lanman_auth() via 'allow_lm_key'
This will allow this to be handled via common code in the future

Andrew Bartlett

Signed-off-by: Günther Deschner <gd@samba.org>
2010-08-10 12:13:00 +02:00
Günther Deschner
d84a2aeb64 s3: fix the waf build.
Guenther
2010-08-10 11:56:33 +02:00
Andrew Bartlett
1e83b36afb libcli/auth Move some source3/ NTLMSSP functions to the common code.
libcli/auth Use true and false rather than True and False in common code

Andrew Bartlett

Signed-off-by: Günther Deschner <gd@samba.org>
2010-08-10 11:56:33 +02:00
Jeremy Allison
e0f79dabee Fix bug #7608 - Win7 SMB2 authentication causes smbd panic
We need to call setup_ntlmssp_server_info() if status==NT_STATUS_OK,
or if status is anything except NT_STATUS_MORE_PROCESSING_REQUIRED,
as this can trigger map to guest.

Jeremy.
2010-08-09 16:16:24 -07:00
Günther Deschner
be396411a4 s3-winbind: Fix Bug #7568: Make sure cm_connect_lsa_tcp does not reset the secure channel.
This is an important fix as the following could and is happening:

* winbind authenticates a user via schannel secured netlogon samlogonex call,
current secure channel cred state is stored in winbind state, winbind
sucessfully decrypts session key from the info3

* winbind sets up a new schannel ncacn_ip_tcp lsa pipe (and thereby resets the
secure channel on the dc)

* subsequent samlogonex calls use the new secure channel creds on the dc to
encrypt info3 session key, while winbind tries to use old schannel creds for
decryption

Guenther
2010-08-09 16:36:22 +02:00
Volker Lendecke
016418d6c2 s3: Remove the smbd_messaging_context from load_printers 2010-08-08 23:37:47 +02:00
Volker Lendecke
1c1d83a532 s3: Remove the smbd_messaging_context from pcap_cache_reload 2010-08-08 23:37:47 +02:00
Volker Lendecke
795589b4f8 s3: Remove the smbd_messaging_context from cups_cache_reload 2010-08-08 23:37:47 +02:00
Volker Lendecke
83045b1ba9 s3: Remove the smbd_messaging_context from cups_pcap_load_async 2010-08-08 23:37:47 +02:00
Volker Lendecke
d0ac5c69fb s3: Remove the smbd_messaging_context from smb_conf_updated 2010-08-08 23:37:47 +02:00
Volker Lendecke
10a76f5d42 s3: Remove the smbd_messaging_context from spoolss_init_cb 2010-08-08 23:37:47 +02:00