1
0
mirror of https://github.com/samba-team/samba.git synced 2025-03-11 16:58:40 +03:00

771 Commits

Author SHA1 Message Date
Jelmer Vernooij
25bb00fbcd r12693: Move core data structures out of smb.h into core.h
torture prototypes in seperate header
(This used to be commit 73610639b23ca3743077193fa0b1de7c7f65944d)
2007-10-10 13:49:39 -05:00
Andrew Bartlett
cc37197079 r12684: A better error code for SAMR transaction failures.
Andrew Bartlett
(This used to be commit 9c127f35ceae5106ee21c930c3570c0b87341cf6)
2007-10-10 13:49:38 -05:00
Jelmer Vernooij
bc4aebfaec r12670: Make a couple of dependencies stricter
Re-introduce and use the OUTPUT_TYPE property for MODULEs to force
specific modules to always be included
(This used to be commit f9eede3d40098eddc3618ee48f9253cdddb94a6f)
2007-10-10 13:49:35 -05:00
Jelmer Vernooij
046a54f963 r12622: Move table.c prototypes to seperate header to prevent circular dependencies
with proto.h
(This used to be commit 9e0ba380374db028358158b9e4457dd930b5ab13)
2007-10-10 13:49:06 -05:00
Jelmer Vernooij
aa9f67163c r12620: Get rid of automatically generated lists of init functions of subsystems.
This allows Samba libraries to be used by other projects (and parts of
Samba to be built as shared libraries).
(This used to be commit 44f0aba715bfedc7e1ee3d07e9a101a91dbd84b3)
2007-10-10 13:49:06 -05:00
Jelmer Vernooij
d4de4c2d21 r12608: Remove some unused #include lines.
(This used to be commit 70e7449318aa0e9d2639c76730a7d1683b2f4981)
2007-10-10 13:49:03 -05:00
Andrew Bartlett
c82c9fe7bb r12599: This new LDB module (and associated changes) allows Samba4 to operate
using pre-calculated passwords for all kerberos key types.
(Previously we could only use these for the NT# type).

The module handles all of the hash/string2key tasks for all parts of
Samba, which was previously in the rpc_server/samr/samr_password.c
code.  We also update the msDS-KeyVersionNumber, and the password
history.  This new module can be called at provision time, which
ensures we start with a database that is consistent in this respect.

By ensuring that the krb5key attribute is the only one we need to
retrieve, this also simplifies the run-time KDC logic.  (Each value of
the multi-valued attribute is encoded as a 'Key' in ASN.1, using the
definition from Heimdal's HDB.  This simplfies the KDC code.).

It is hoped that this will speed up the KDC enough that it can again
operate under valgrind.
(This used to be commit e9022743210b59f19f370d772e532e0f08bfebd9)
2007-10-10 13:49:01 -05:00
Andrew Tridgell
302cab75c3 r12554: get rid of the pesky NTLMSSP warnings about being called after processing is finished
(This used to be commit ca6ae1afa0a8a105ab09199425f308c9ae85902f)
2007-10-10 13:47:57 -05:00
Jelmer Vernooij
2cd5ca7d25 r12542: Move some more prototypes out to seperate headers
(This used to be commit 0aca5fd5130d980d07398f3291d294202aefe3c2)
2007-10-10 13:47:55 -05:00
Jelmer Vernooij
e748b53e43 r12513: Similar change as my previous commit, but now for transfer syntaxes.
Avoids converting a static string to GUID every time we check whether
a transfer syntax is equal to that of NDR.
(This used to be commit 8dcfcaf75ab8cf4a54cf5e56f6be25acc68e3989)
2007-10-10 13:47:49 -05:00
Jelmer Vernooij
d658de65d3 r12512: Use GUID structs in API functions everywhere rather then converting back and
forth between GUID structs and strings in several places.
(This used to be commit 3564e2f967ef72d6301b4f7e9a311cebcded4d75)
2007-10-10 13:47:48 -05:00
Jelmer Vernooij
acd6a086b3 r12510: Change the DCE/RPC interfaces to take a pointer to a
dcerpc_interface_table struct rather then a tuple of interface
name, UUID and version.

This removes the requirement for having a global list of DCE/RPC interfaces,
except for these parts of the code that use that list explicitly
(ndrdump and the scanner torture test).

This should also allow us to remove the hack that put the authservice parameter
in the dcerpc_binding struct as it can now be read directly from
dcerpc_interface_table.

I will now modify some of these functions to take a dcerpc_syntax_id
structure rather then a full dcerpc_interface_table.
(This used to be commit 8aae0f168e54c01d0866ad6e0da141dbd828574f)
2007-10-10 13:47:48 -05:00
Andrew Bartlett
9b67a07e62 r12507: This file has had my grubby paws all over it ;-)
Andrew Bartlett
(This used to be commit 865a2552e66221182ffe5d36473828645ac1f59d)
2007-10-10 13:47:47 -05:00
Andrew Bartlett
40166d7ecb r12506: Fix up issues shown up by the expanded RPC-SAMR testsuite, and add ldb
transactions to the SAMR password change code.

Andrew Bartlett
(This used to be commit dc091c6c06b5e5488bcc475e88a9f18ead545c85)
2007-10-10 13:47:47 -05:00
Andrew Bartlett
9a3be162b8 r12504: Fix one more transaction cancel bail-out path, and correct comments.
Andrew Bartlett
(This used to be commit 07b885d0c7b56f40f89955f6c49af49ac9085d74)
2007-10-10 13:47:46 -05:00
Andrew Bartlett
90535d31c6 r12503: This function was just too simple to leave unimplemented.
Andrew Bartlett
(This used to be commit 2eebd7b3cf385b8d0680f877655136d721157c83)
2007-10-10 13:47:46 -05:00
Jelmer Vernooij
6aafed9600 r12499: Move smb_build.h out of includes.h
(This used to be commit c92ace494f92084ddf178626cdf392d151043bc7)
2007-10-10 13:47:45 -05:00
Jelmer Vernooij
d8e35f8828 r12498: Eliminate INIT_OBJ_FILES and ADD_OBJ_FILES. We were not using
the difference between these at all, and in the future the
fact that INIT_OBJ_FILES include smb_build.h will be sufficient to
have recompiles at the right time.
(This used to be commit b24f2583edee38abafa58578d8b5c4b43e517def)
2007-10-10 13:47:45 -05:00
Jelmer Vernooij
448483199f r12494: Support loading modules from .so files for most subsystems.
We now use a different system for initializing the modules for a subsystem.
Most subsystems now have an init function that looks something like this:

	init_module_fn static_init[] = STATIC_AUTH_MODULES;
	init_module_fn *shared_init = load_samba_modules(NULL, "auth");

	run_init_functions(static_init);
	run_init_functions(shared_init);

	talloc_free(shared_init);

I hope to eliminate the other init functions later on (the
init_programname_subsystems; defines).
(This used to be commit b6d2ad4ce0a91c4be790dd258820c492ff1787ea)
2007-10-10 13:47:45 -05:00
Jelmer Vernooij
557ad72e7a r12461: Some updates to the srvsvc IDL from Ronnie Sahlberg
(This used to be commit ff7ef98f34811952331e72095505a2eae430fec0)
2007-10-10 13:47:42 -05:00
Andrew Bartlett
6cb5cda53b r12432: Re-indent and consistantly cancel the transaction.
Andrew Bartlett
(This used to be commit 2c8b988eb869d06328ebae586caeb565d7f6f054)
2007-10-10 13:47:38 -05:00
Andrew Bartlett
77f4910b57 r12427: Move SAMR CreateUser2 to transactions, and re-add support for
different computer account types.  (Earlier code changes removed the
BDC case).

We don't use the TemplateDomainController, so just have a
TemplateServer in provision_templates.ldif

Andrew Bartlett
(This used to be commit c4520ba2e6fad42a137983a2e1dbcd9c26db74e9)
2007-10-10 13:47:37 -05:00
Andrew Bartlett
bceca72304 r12361: Add a new function: ldb_binary_encode_string()
This is for use on user-supplied arguments to printf style format
strings which will become ldb filters.  I have used it on LSA, SAMR
and the auth/ code so far.

Also add comments to cracknames code.

Andrew Bartlett
(This used to be commit 8308cf6e0472790c1c9d521d19322557907f4418)
2007-10-10 13:47:30 -05:00
Andrew Tridgell
d55ab321b2 r12085: wkssvc.idl updated based on work by Ronnie Sahlberg to bring the
Samba4 and ethereal IDL into line, so ethereal doesn't lose any
existing strucutres when switching to idl
(This used to be commit afccf73ecf6cf85e72c04e28724096aa6da96a80)
2007-10-10 13:47:07 -05:00
Simo Sorce
56415ccacb r11597: revert a commit by mistake
(This used to be commit 09e6f494b490127ace1a9d1077c2757d813abc55)
2007-10-10 13:45:56 -05:00
Simo Sorce
5c95905871 r11567: Ldb API change patch.
This patch changes the way lsb_search is called and the meaning of the returned integer.
The last argument of ldb_search is changed from struct ldb_message to struct ldb_result
which contains a pointer to a struct ldb_message list and a count of the number of messages.
The return is not the count of messages anymore but instead it is an ldb error value.

I tryed to keep the patch as tiny as possible bu as you can guess I had to change a good
amount of places. I also tried to double check all my changes being sure that the calling
functions would still behave as before. But this patch is big enough that I fear some bug
may have been introduced anyway even if it passes the test suite. So if you are currently
working on any file being touched please give it a deep look and blame me for any error.

Simo.
(This used to be commit 22c8c97e6fb466b41859e090e959d7f1134be780)
2007-10-10 13:45:53 -05:00
Andrew Bartlett
79cb46c1af r11513: Add the ability to use the local machine account instead of a static
password or delegation.

Add the ability to delegate for RPC pipes on the RPC proxy backend
(the backend itself seems be having problems however).

Andrew Bartlett
(This used to be commit a7e946bc37e4acfbe2c483b4f1ead0341f9b3d19)
2007-10-10 13:45:46 -05:00
Andrew Bartlett
d0375cfd43 r11438: Move enum samr_RejectReason into misc.idl so I can use it in a global
prototype.

Andrew Bartlett
(This used to be commit a3abffc75805c8e333f387a96a1dbc352669d359)
2007-10-10 13:45:37 -05:00
Andrew Bartlett
56b4e4b62c r11402: In response to comments by volker, expand our Netlogon DsRGetDCName
IDL and testsuites.  The server-side of this remains a stub, we should
probably be doing ldb searches for the server reference record.

Andrew Bartlett
(This used to be commit 0141ed309a664e7a9893c95232c2dcb9768f9315)
2007-10-10 13:45:31 -05:00
Andrew Bartlett
546f63df5b r11370: Samba4 now passes it's own RPC-SAMLOGON test again.
This avoids the nasty user@DOMAIN test for now, as it has very odd
semantics with NTLMv2.

Allow only user accounts to do an interactive login.

Andrew Bartlett
(This used to be commit 690cad8083e176b2e58fc243a11a003a78ce4074)
2007-10-10 13:45:27 -05:00
Andrew Bartlett
152988a828 r11366: Pass around the flags which indicate if we should support plaintext
logins and NTLM machine account logins.

Andrew Bartlett
(This used to be commit 421e64c2b4192bb13d2857d6c8648ff687ed653e)
2007-10-10 13:45:26 -05:00
Jelmer Vernooij
8ee1ee66ed r11303: Support defining and installing public headers for libraries.
Support installing libraries.
Get rid of pkg-config file (will be autogenerated later on).
(This used to be commit b4745032a2c55752c527026feb221ccc3dce10c8)
2007-10-10 13:45:16 -05:00
Andrew Bartlett
7a7a52948d r11291: Fix implementation of LookupNames4.
Andrew Bartlett
(This used to be commit aef6800548e320c2ebb20ae345566a774d6acf8b)
2007-10-10 13:45:14 -05:00
Andrew Bartlett
1e7bc73e00 r11289: Fix comment.
Andrew Bartlett
(This used to be commit fc18276389d17684bd14a2012d18fb7a9695f69e)
2007-10-10 13:45:14 -05:00
Andrew Bartlett
c6f8330098 r11288: Fill out LSA LookupNames4 and LookupSids3, including a server-side
implementation.

Andrew Bartlett
(This used to be commit a6a615cc997cd3a71ea0d63994f6cd97096afc30)
2007-10-10 13:45:14 -05:00
Andrew Bartlett
db4b95827e r11270: Move the core CrackNames code from rpc_server/drsuapi to dsdb/samdb.
I'm sure this will not be the final resting place, but it will do for
now.

Use the cracknames code in auth/ for creating a server_info given a
principal name only (should avoid assumtions about spliting a
user@realm principal).

Andrew Bartlett
(This used to be commit c9d5d8e45dd7b7c99b6cf35b087bc18012f31222)
2007-10-10 13:45:11 -05:00
Tim Potter
9759d435ca r11261: Rename access_required field in winreg idl to access_mask so it matches
the other interfaces.
(This used to be commit 8eb582b5780188b6304c560b3e84fd7d75c483f8)
2007-10-10 13:45:09 -05:00
Jelmer Vernooij
4c5a4a7e02 r11244: Relative path names in .mk files
(This used to be commit 24e10300906c380919d2d631bfb3b8fd6b3f54ba)
2007-10-10 13:45:06 -05:00
Andrew Bartlett
16bbafb7e8 r11239: Use ${REALM} for the realm in rootdse.ldif
Add the kpasswd server to our KDC, implementing the 'original' and
Microsoft versions of the protocol.

This works with the Heimdal kpasswd client, but not with MIT, I think
due to ordering issues.  It may not be worth the pain to have this
code go via GENSEC, as it is very, very tied to krb5.

This gets us one step closer to joins from Apple, Samba3 and other
similar implementations.

Andrew Bartlett
(This used to be commit ab5dbbe10a162286aa6694c7e08de43b48e34cdb)
2007-10-10 13:45:06 -05:00
Andrew Bartlett
b4b75ddb5a r11223: Only pass around the ldb handle (make this code easier to seperate
into a general lib).

Andrew Bartlett
(This used to be commit e3abbfca4ae3c06f34774edab5ed38ebd5ebc097)
2007-10-10 13:45:05 -05:00
Andrew Bartlett
9f67256383 r11221: I don't quite know how I tested this before, but clearly I didn't.
The samdb_set_password_sid helper function now works.

Andrew Bartlett
(This used to be commit 629595f27c3f721c4b317df871814ac5ba06be9c)
2007-10-10 13:45:04 -05:00
Jelmer Vernooij
f4d590662e r11214: Remove scons files (see http://lists.samba.org/archive/samba-technical/2005-October/043443.html)
(This used to be commit 7fffc5c9178158249be632ac0ca179c13bd1f98f)
2007-10-10 13:45:03 -05:00
Andrew Bartlett
372ca26b20 r11200: Reposition the creation of the kerberos keytab for GSSAPI and Krb5
authentication.  This pulls the creating of the keytab back to the
credentials code, and removes the special case of 'use keberos keytab
= yes' for now.

This allows (and requires) the callers to specify the credentials for
the server credentails to GENSEC.  This allows kpasswdd (soon to be
added) to use a different set of kerberos credentials.

The 'use kerberos keytab' code will be moved into the credentials
layer, as the layers below now expect a keytab.

We also now allow for the old secret to be stored into the
credentials, allowing service password changes.

Andrew Bartlett
(This used to be commit 205f77c579ac8680c85f713a76de5767189c627b)
2007-10-10 13:45:00 -05:00
Andrew Bartlett
02c32587a8 r11195: Add a new helper function (needed by my kpasswdd work, but hooked in
for netlogon as well) to change/set a user's password, given only
their SID.

This avoids the callers doing the lookups, and also performs the
actual 'set', as these callers do not wish any further buisness with
the entry.

Andrew Bartlett
(This used to be commit 060a2a7bcca6b58d50bc4e0930c13616742a55d3)
2007-10-10 13:44:59 -05:00
Andrew Bartlett
ddb1c4aa13 r11194: Use the special ldb attribute "canonicalName" (therefore testing that
codepath) in DRSUAPI CrackNames.

Fix the NT4 account return value.

Andrew Bartlett
(This used to be commit 2513c02c64b489ebf167e33fdb4ac51ce8783c04)
2007-10-10 13:44:59 -05:00
Volker Lendecke
bf59ef9d72 r11122: Fix some talloc hierarchy errors
(This used to be commit 449cc714b882d6ebea3e1cbf92e204efba98b6cb)
2007-10-10 13:44:53 -05:00
Andrew Bartlett
d96f706bb0 r10953: Add a new function to form a canonicalName out of a DN to ldb_dn.c
Use this new function in the client and server for the CrackNames
case, where we particularly need it.

Andrew Bartlett
(This used to be commit 380037ee09ef8293bdb288d6c015e7c80f180a30)
2007-10-10 13:39:45 -05:00
Andrew Tridgell
a599edf04c r10913: This patch isn't as big as it looks ...
most of the changes are fixes to make all the ldb code compile without
warnings on gcc4. Unfortunately That required a lot of casts :-(

I have also added the start of an 'operational' module, which will
replace the timestamp module, plus add support for some other
operational attributes

In ldb_msg_*() I added some new utility functions to make the
operational module sane, and remove the 'ldb' argument from the
ldb_msg_add_*() functions. That argument was only needed back in the
early days of ldb when we didn't use the hierarchical talloc and thus
needed a place to get the allocation function from. Now its just a
pain to pass around everywhere.

Also added a ldb_debug_set() function that calls ldb_debug() plus sets
the result using ldb_set_errstring(). That saves on some awkward
coding in a few places.
(This used to be commit f6818daecca95760c12f79fd307770cbe3346f57)
2007-10-10 13:39:41 -05:00
Andrew Tridgell
36d73b0e71 r10894: make the handling of dn/distinguishedName much closer to real
ldap. Also ensure we put a objectclass on our private ldb's, so they
have some chance of being stored in ldap if you want to
(This used to be commit 1af2cc067f70f6654d08387fc28def67229bb06a)
2007-10-10 13:39:40 -05:00
Jelmer Vernooij
d611dd941f r10854: talloc_get_type() can return NULL..
(This used to be commit 8f7070055fc577cb4234654420539c68992d9671)
2007-10-10 13:39:36 -05:00