1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-14 01:57:53 +03:00

50 Commits

Author SHA1 Message Date
Andrew Bartlett
704327044d r18240: Make it clearer when we store the plaintext password.
Store the plaintext password in userPassword in the LDAP backend so
that the OpenLDAP server can use DIGEST-MD5.

Andrew Bartlett
(This used to be commit 1b02c604b2c55e1c9e15ac1f266e7df74d619dbd)
2007-10-10 14:17:53 -05:00
Andrew Bartlett
25f9e52a5d r17955: Don't search for the dnsDomain attribute, it is invented (not in the
AD schema).

Andrew Bartlett
(This used to be commit fac27e4dddc98288dc765e135db6b168fbec760c)
2007-10-10 14:16:56 -05:00
Jelmer Vernooij
0329d755a7 r17930: Merge noinclude branch:
* Move dlinklist.h, smb.h to subsystem-specific directories
 * Clean up ads.h and move what is left of it to dsdb/
   (only place where it's used)
(This used to be commit f7afa1cb77f3cfa7020b57de12e6003db7cfcc42)
2007-10-10 14:16:54 -05:00
Simo Sorce
88b04ab6e6 r17830: Set the default_basedn (hey, it comes from the "default" naming contex :-)
once at connection time, after modules have been loaded.

Introduce a function to retrieve the value where needed.
(This used to be commit 0caf6a44e03393c645030a9288e7dfd31e97c98b)
2007-10-10 14:16:46 -05:00
Andrew Tridgell
b21b119cbc r17824: add a wrapper for the common partitions_basedn calculation
(This used to be commit 09007b0907662a0d147e8eb21d5bdfc90dbffefc)
2007-10-10 14:16:45 -05:00
Simo Sorce
a23b63a8e5 r17516: Change helper function names to make more clear what they are meant to do
(This used to be commit ad75cf869550af66119d0293503024d41d834e02)
2007-10-10 14:15:31 -05:00
Simo Sorce
faed817506 r17514: Simplify the way to set ldb errors and add another
helper function to set them.
(This used to be commit 260868bae56194fcb98d55afc22fc66d96a303df)
2007-10-10 14:15:31 -05:00
Simo Sorce
8b9e08fe76 r17505: we are setting the timeout with the provide function right after.
(This used to be commit 6520e3c83acfbb7b6aa63d1cbebe8f8801db292f)
2007-10-10 14:15:30 -05:00
Andrew Bartlett
56b1714e9c r17288: Don't mess with entries in the local password prefix, and fix const
warnings.

Andrew Bartlett
(This used to be commit 4569c58a42e1d65ae71ee57e391b9e3dbaba2218)
2007-10-10 14:15:07 -05:00
Simo Sorce
49f68caed2 r17186: "async" word abuse clean-up part 2
(This used to be commit c6aa60c7e69abf1f83efc150b1c3ed02751c45fc)
2007-10-10 14:10:17 -05:00
Simo Sorce
c93817b36d r17185: Oh, I wanted to do this for sooo long time.
Finally acknowledge that ldb is inherently async and does not have a dual personality anymore
Rename all ldb_async_XXX functions to ldb_XXX except for ldb_async_result, it is now ldb_reply
to reflect the real function of this structure.

Simo.
(This used to be commit 25fc7354049d62efeba17681ef1cdd326bc3f2ef)
2007-10-10 14:10:16 -05:00
Andrew Bartlett
3ed1e8ff3c r16829: Fix a number of issues raised by the IBM checker, or gcc warnings.
In particular, this removes one use of the LDB_DN_NULL_FAILED macro,
which was being used on more than DNs, had an embedded goto, and
confused the IBM checker.

In the password_hash code, ensure that sambaAttr is not, before
checking the number of values.

In GENSEC, note that this switch value can't occour.  This seems to be
the only way to quiet both the IBM checker and gcc, as well as cope
with possibly invalid inputs.

Andrew Bartlet
(This used to be commit 3e58350ec2ab883795b1dd03ac46a3520cac67d0)
2007-10-10 14:09:48 -05:00
Simo Sorce
a3f606f6ca r16784: - make some function in ldb static, they not need to be exported anywhere
- fix a bad segfault
  Andrew please make test before committing.

Simo.
(This used to be commit b9b6bb3e89d3b0e04ccce15156c1a128b6f20d88)
2007-10-10 14:09:45 -05:00
Andrew Bartlett
6218aef0ca r16769: Working on fixing the RPC-SAMR test against Samba4. This fixes
password changes which only include the LM and NT hash, such as the
original ChangePassword.

It also fixes setting passwords on the BUILTIN domain.

Finally, the msDS-KeyVersionNumber is only incremented if not
explicity set by the modify.

Andrew Bartlett
(This used to be commit e957f6f4c61c121f79ad518822691e4fd4bf4341)
2007-10-10 14:09:44 -05:00
Andrew Bartlett
4a687bc44f r16240: Add better error reporting in the password_hash module
Remove duplicate attribute in search request

Search for the domain by NDR-encoded SID, not string (consistant with
the rest of the C code, and helps partially-constructed LDAP
backends).

Use the default basedn for the domain search.

Andrew Bartlett
(This used to be commit 2f104612cd6f170dd28fd4ce09156168d47a681a)
2007-10-10 14:09:08 -05:00
Simo Sorce
ca5accf224 r16036: Add a couple of new functions to corretly deal with timeouts.
Check timeouts are correctly verified.
Some minor fixed and removal of unused code.
(This used to be commit b52e5d6a0cb1a32e62759eaa49ce3e4cc804cc92)
2007-10-10 14:08:52 -05:00
Andrew Bartlett
08a48b1803 r15999: password_hash module changes:
- Quiet some IBM Checker warnings (enum mismatch)
 - Only search for the attributes we need
 - fix comments
 - fix copyrights

Andrew Bartlett
(This used to be commit ee6fe3a80fd5038c2b141bf8a85139f99ac96e4d)
2007-10-10 14:08:47 -05:00
Simo Sorce
2d19dca9c8 r15944: rename LDB_ASYNC_ADD -> LDB_ADD, LDB_ASYNC_MODIFY -> LDB_MODIFY, etc...
(This used to be commit 55d97ef88f377ef1dbf7b1774a15cf9035e2f320)
2007-10-10 14:08:43 -05:00
Simo Sorce
0c7b82e5f6 r15942: Remove the sync internal ldb calls altogether.
This means that some modules have been disabled as well as they
have not been ported to the async interface

One of them is the ugly objectclass module.
I hope that the change in samldb module will make the MMC happy
without the need of this crappy module, we need proper handling
in a decent schema module.

proxy and ldb_map have also been disabled
ldb_sqlite3 need to be ported as well (currenlty just broken).
(This used to be commit 51083de795bdcbf649de926e86969adc20239b6d)
2007-10-10 14:08:43 -05:00
Simo Sorce
03703a58d7 r15932: Remove per request creds
They have never benn used and make little sense too imo
(This used to be commit f0c1d08d50f8a3e25650ac85b178ec7a43e433d9)
2007-10-10 14:08:41 -05:00
Simo Sorce
3a4d7eb2c0 r15927: Optimize ldb module traverse while keeping the API intact.
I was sick of jumping inot each module for each request,
even the ones not handle by that module.
(This used to be commit 7d65105e885a28584e8555453b90232c43a92bf7)
2007-10-10 14:08:41 -05:00
Simo Sorce
90a5e19e03 r15913: Error passing in the async code is not in agood shape
Start enhancing it and fix some problems with incorrect evalutaion of the codes

Implement rdn rename (async only)
(This used to be commit 6af1d738b9668d4f0eb6194ac0f84af9e73f8c2e)
2007-10-10 14:08:39 -05:00
Andrew Tridgell
b22d15a0f8 r15859: fixed a crash bug in the ldb password_hash module. This one is quite
sublte - please have a look at the change if you are not certain you
know the semantics of constant arrays declared on the stack (they must
be static if you return them from the function)
(This used to be commit 1848078fee2041195e3d65fcc090d7b6330b8ea0)
2007-10-10 14:08:33 -05:00
Simo Sorce
d6aaca599b r15804: Fix SAMLOGON test
(This used to be commit 2e9a840bb975f3269de4ca299a3d6e5b19f3cad1)
2007-10-10 14:08:25 -05:00
Simo Sorce
8081e4f402 r15795: Try to use the async code by default
It passess all my tests, but I still need to work on a lot of stuff.
Shouldn't impact anybody else work, so I want to commit now and see what happens

Will work to remove the old code from modules and backends soon, and make some
more restyling in ldb internals.

So, if there is something you don't like in this desgin please speak now.

Simo.
(This used to be commit 8b2a563e716a789ea77cbfbf2f372724de5361ce)
2007-10-10 14:08:21 -05:00
Simo Sorce
e2112ba3b7 r15782: More fixes for async cases
(This used to be commit 3c9434e264710a1fa29adedbe571d5324ecae906)
2007-10-10 14:08:19 -05:00
Simo Sorce
6d0969aa1a r15761: Fix-as-you-go ...
Testing various async paths and uncovering bugs
(This used to be commit 099d873ea596ece18efe63b06bc64e7f97a96f82)
2007-10-10 14:08:15 -05:00
Simo Sorce
1fdd6a6e68 r15725: First shot at making password_hash async
The async path is not yet enabled by default so it should make no harm
(This used to be commit b7d5f2325726757a4fcd0b5ac03de1b867085a89)
2007-10-10 14:08:09 -05:00
Andrew Bartlett
c07db9b462 r15511: Using this name causes less warnings on the IBM checker, due to using
the original, rather than equivilant, enum type.

Andrew Bartlett
(This used to be commit 3d43e458a828801a294e56a1aeb74a4d7cbf9f23)
2007-10-10 14:05:44 -05:00
Jelmer Vernooij
e002300f23 r15328: Move some functions around, remove dependencies.
Remove some autogenerated headers (which had prototypes now autogenerated by pidl)
Remove ndr_security.h from a few places - it's no longer necessary
(This used to be commit c19c2b51d3e1ad347120b06a22bda5ec586c22e8)
2007-10-10 14:05:17 -05:00
Andrew Bartlett
7de4a5b135 r14662: To allow the RPC-SAMR test to pass, we need to look for both domains
and the builtinDomain objectClasses, when trying to find domain policies.

Andrew Bartlett
(This used to be commit 9fc1196f0ca0235aa764d4ae770e3c31978396fa)
2007-10-10 13:59:06 -05:00
Jelmer Vernooij
8528016978 r14464: Don't include ndr_BASENAME.h files unless strictly required, instead
try to include just the BASENAME.h files (containing only structs)
(This used to be commit 3dd477ca5147f28a962b8437e2611a8222d706bd)
2007-10-10 13:57:27 -05:00
Jelmer Vernooij
e3f2414cf9 r14380: Reduce the size of structs.h
(This used to be commit 1a16a6f1dfa66499af43a6b88b3ea69a6a75f1fe)
2007-10-10 13:57:16 -05:00
Jelmer Vernooij
3f16241a1d r14363: Remove credentials.h from the global includes.
(This used to be commit 98c4c3051391c6f89df5d133665f51bef66b1563)
2007-10-10 13:57:14 -05:00
Andrew Bartlett
54b33de0fc r14312: Formatting and comments.
Andrew Bartlett
(This used to be commit 1905a27c78165972aaa78b72a199ee9230fbf73d)
2007-10-10 13:57:11 -05:00
Andrew Tridgell
964373b25d r14293: fixed some errors found with beam
(This used to be commit 230636a00ed9bd968356badad596ba7f93ba6c85)
2007-10-10 13:57:09 -05:00
Jelmer Vernooij
4ac2be9958 r13924: Split more prototypes out of include/proto.h + initial work on header
file dependencies
(This used to be commit 122835876748a3eaf5e8d31ad1abddab9acb8781)
2007-10-10 13:52:24 -05:00
Andrew Bartlett
6a73835b09 r13909: Make this code clearer.
Andrew Bartlett
(This used to be commit b89893ab90b50d6b04a6407441fe3e0e4f1688ec)
2007-10-10 13:52:22 -05:00
Jelmer Vernooij
26af14c39b r13786: [merge] Add registration functions for LDB modules
Applications that use LDB modules will now have to run ldb_global_init()
before they can use LDB.

The next step will be adding support for loading LDB modules from .so
files. This will also allow us to use one LDB without difference between the
standalone and the Samba-specific build
(This used to be commit 52a235650514039bf8ffee99a784bbc1b6ae6b92)
2007-10-10 13:52:11 -05:00
Simo Sorce
d590dea10b r13615: Make ldb_set_errstring get ldb instead of module as parameter.
The module was just used to get to the ldb so it was meningless.

Also add LDB_WAIT_ONCE e relative code in ldb_ildap.c
(This used to be commit d5b467b7c132b0bd4d23918ba7bf3370b1afcce8)
2007-10-10 13:51:59 -05:00
Andrew Bartlett
f9316daa46 r13256: Free temporary memory on error cases, and try to clean up what's left
earlier.

Move gendb_search() to use talloc_vasprintf() and steal only the parts
actually being used for the results.

Andrew Bartlett
(This used to be commit 53efb3e3e980c768e0aee216ccd8dc3e14707246)
2007-10-10 13:51:39 -05:00
Andrew Bartlett
87625070be r12895: Error strings save lives.
err, they save time at least.  The correct use of an error string in
this case quickly pinpoited an overzealous check, and saved me hours
of painful debugging.

Andrew Bartlett
(This used to be commit 26946c90e87a94453a5ad3e9e26ef19b36656237)
2007-10-10 13:50:59 -05:00
Jelmer Vernooij
0b3deb20de r12851: Fix some typos
(This used to be commit 61ae77beecd573809d917dd86d1fac6cc40e967d)
2007-10-10 13:50:53 -05:00
Simo Sorce
dbef4d76de r12743: Remove the ugly way we had to make a second stage init and introduce
a second_stage_init private function for modules that need a second stage init.

Simo.
(This used to be commit 5e8b365fa2d93801a5de1d9ea76ce9d5546bd248)
2007-10-10 13:49:48 -05:00
Simo Sorce
c908d0b2aa r12733: Merge ldap/ldb controls into main tree
There's still lot of work to do but the patch is stable
enough to be pushed into the main samba4 tree.

Simo.
(This used to be commit 77125feaff252cab44d26593093a9c211c846ce8)
2007-10-10 13:49:47 -05:00
Andrew Bartlett
ff90c1c5c3 r12720: By metze's request, rename the ntPwdHistory attribute to
sambaNTPassword.  Likewise lmPwdHistory -> sambaLMPwdHistory.

The idea here is to avoid having conflicting formats when we get to
replication.  We know the base data matches, but we may need to use a
module to munge formats.

Andrew Bartlett
(This used to be commit 8e608dd4bf4f108e02274a9977ced04a0a270570)
2007-10-10 13:49:45 -05:00
Andrew Bartlett
4bfe2907e7 r12719: Rename unicodePwd -> sambaPassword.
Because we don't know the syntax of unicodePwd, we want to avoid using
that attribute name.  It may cause problems later when we get
replication form windows.

I'm doing this before the tech preview, so we don't get too many
supprises as folks upgrade databases into later versions.

Andrew Bartlett
(This used to be commit 097d9d0b7fd3b1a10fb7039f0671fd459bed2d1b)
2007-10-10 13:49:45 -05:00
Andrew Bartlett
5cea3edcef r12716: Tridge points out that the request argument to ldb_next_request must
be a valid talloc() pointer, as other modules may rely on this.

Andrew Bartlett
(This used to be commit 356c8c56090a7c4254609c0cc138c994b618fa55)
2007-10-10 13:49:44 -05:00
Jelmer Vernooij
3b99d9c5bd r12658: Couple of fixes related to shared module builds.
(This used to be commit c297c93faf3b748de68679f5a4be50845ebe25fe)
2007-10-10 13:49:35 -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