1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-10 13:57:47 +03:00

69 Commits

Author SHA1 Message Date
Andrew Bartlett
6ef167c37b s4:rootdse Implement "tokenGroups" in the rootDSE
This returns the currently connected user's full token.  This is very
useful for debugging, and should be used in ACL tests.

Andrew Bartlett
2010-04-10 21:41:02 +10:00
Andrew Bartlett
2de07761e0 s4:dsdb Change dsdb_get_schema() callers to use new talloc argument
This choses an appropriate talloc context to attach the schema too,
long enough lived to ensure it does not go away before the operation
compleates.

Andrew Bartlett
2010-03-16 19:26:03 +11:00
Matthias Dieter Wallnöfer
b85b9b364f s4:rootdse LDB module - change counter variables to "unsigned" where appropriate 2010-03-07 19:11:03 +01:00
Andrew Tridgell
595982a475 s4-rootdse: we don't need DSDB_FLAG_OWN_MODULE here 2010-02-16 00:12:09 +11:00
Eduardo Lima
9c46f425a2 s4-drs: enable the recyclebin optional feature
Signed-off-by: Andrew Tridgell <tridge@samba.org>
2010-02-16 00:12:09 +11:00
Andrew Tridgell
2985aeb8c9 s4-dsdb: isGlobalCatalogReady should be shown by default
This caused repadmin.exe to crash. Thanks to Hongwei for tracking this
down for us.
2010-01-17 10:52:31 +11:00
Andrew Tridgell
51bf383c26 s4-dsdb: added isGlobalCatalogReady
needed for dcdiag.exe
2010-01-16 14:10:41 +11:00
Andrew Tridgell
0fca76e577 s4-dsdb: added dsdb_functional_level() helper function 2009-12-09 18:18:26 +11:00
Kamen Mazdrashki
db82023af2 s4/drs: remove unused num_prefixes and prefixes from dsdb_schema
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2009-11-06 14:05:49 +01:00
Andrew Tridgell
a4f86c07e5 s4-ldb: fixed request handling for schemaUpdateNow op 2009-10-26 08:38:03 +11:00
Matthias Dieter Wallnöfer
0d7c34a5b4 s4:rootdse module - intendation fixup 2009-10-06 19:37:53 +02:00
Andrew Tridgell
5b684bbfd7 s4-ldap: default edn type is 0 2009-09-21 15:26:32 -07:00
Andrew Tridgell
2fda203230 s4-ldb: add support for extended DNs in the rootDSE
W2K8 join as a DC relies on being able to ask for the sid component of
extended DNs from the rootDSE DNs
2009-09-21 15:26:32 -07:00
Andrew Bartlett
271b5af92e s4:dsdb Handle dc/domain/forest functional levels properly
Rather than have the functional levels scattered in 4 different,
unconnected locations, the provision script now sets it, and the
rootdse module maintains it's copy only as a cached view onto the
original values.

We also use the functional level to determine if we should store AES
Kerberos keys.

Andrew Bartlett
2009-07-16 09:23:35 +10:00
Anatoliy Atanasov
6b05a9079c Fix for schemaUpdateNow command 2009-07-08 14:40:20 +10:00
Andrew Bartlett
4e58c7881e s4:ldb Allow rootdse module to build without ldb_private.h
It seems quite reasonable to allow modules to re-initialise the set of
cached DNs on the ldb context.

Andrew Bartlett
2009-06-30 15:30:13 +10:00
Jelmer Vernooij
edbbbff7ec dsdb: Fix build against system ldb. 2009-06-18 03:09:14 +02:00
Simo Sorce
d4aeed879b Fix all other modules to use ldb_module.h instead of ldb_private.h
The only 2 modules escaping the rule so far are rootdse and partitions
2009-01-30 17:07:25 -05:00
Andrew Bartlett
d68ad8218f s4:rootdse: fix the logic to indentify a rootdse search
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:28 +11:00
Andrew Bartlett
596fe759e1 s4:ldb: make it possible to return per entry controls
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-17 12:29:27 +11:00
Stefan Metzmacher
1e24fd3ba2 s4:rootdse: for now don't pass down controls for the rootdse search
metze
2008-10-02 12:20:58 +02:00
Simo Sorce
51baa8deec LDB ASYNC: samba4 modules 2008-09-29 04:22:20 +02:00
Andrew Bartlett
1f285560bc Merge branch 'v4-0-test' of ssh://git.samba.org/data/git/samba into 4-0-local
(This used to be commit b12dd8ee5443ebfc204d1684f541d68ffb351197)
2008-07-25 11:58:51 +10:00
Andrew Bartlett
d65f89f7b9 Clarify how we are doing the 'this is a rootdse query' check.
(This used to be commit 8dfba3160cc4bc518f3ad8570d104e5baae784ca)
2008-07-25 08:44:00 +10:00
Anatoliy Atanasov
f619e08f8b Handle schema reloading request.
The ldif for that operation looks like this:

dn:
changetype: Modify
add: schemaUpdateNow
schemaUpdateNow: 1

It uses the rootdse's object functional attribute schemaUpdateNow.
In rootdse_modify() this command is being recognized and it is send as extended operation with DSDB_EXTENDED_SCHEMA_UPDATE_NOW_OID.
In the partition module its dispatched to the schema_fsmo module.
The request is processed in the schema_fsmo module by schema_fsmo_extended().
(This used to be commit 39f9184ddf215f2b512319211c0a05702218ef87)
2008-07-24 11:54:30 +10:00
Stefan Metzmacher
db0a105aae schema_fsmo: move fsmo info into struct dsdb_schema
metze
(This used to be commit 8538d305c803268c712a90879f29a2a74ba0ef03)
2008-07-01 16:55:43 +02:00
Andrew Bartlett
c764791100 Clean up provision and rootdse module to hard-code less stuff.
In particular, allow for the server DN to be in a different site
(possible outcome of a DRS replication).

Andrew Bartlett
(This used to be commit 9ee4e39fe178317f42fd9a0adceea24b55dfe0f1)
2008-04-04 12:25:19 +11:00
Jelmer Vernooij
39a817d310 Fix use of some modules (needed _PUBLIC_).
(This used to be commit ce332130ea77159832da23bab760fa26921719e2)
2008-02-20 04:33:43 +01:00
Jelmer Vernooij
16109a40c0 Use struct-based rather than function-based initialization for ldb modules everywhere.
(This used to be commit 85c96a325867f7bcdb412ebc53f8a47dbf7cd89b)
2008-02-20 01:54:32 +01:00
Andrew Bartlett
47f6988c6d r25753: Move cn=rootdse to @ROOTDSE to avoid being caught up in schema restrictions.
Andrew Bartlett
(This used to be commit f3390c9054244c0e4381007b36bbac9a17800570)
2007-12-21 05:43:45 +01:00
Andrew Bartlett
714c5c92ef r24731: Remove unused code - if we hit these error conditions, then we are
dead anyway, and a segfault would leave us with more infomation.

Andrew Bartlett
(This used to be commit 62320616ff8795ff18c8f49029d81f12558c10ed)
2007-10-10 15:03:00 -05:00
Andrew Tridgell
0479a2f1cb r23792: convert Samba4 to GPLv3
There are still a few tidyups of old FSF addresses to come (in both s3
and s4). More commits soon.
(This used to be commit fcf38a38ac691abd0fa51b89dc951a08e89fdafa)
2007-10-10 14:59:12 -05:00
Stefan Metzmacher
3e523582ea r20871: implement the validFSMOs constructed attribute on the rootdse
for the schema, domain naming and pdc fsmo roles

infrastructure and rid manager will be added later,
when we have module for them

metze
(This used to be commit 308f9cf822a3a34dae28a5fa5aa850e2adbeb472)
2007-10-10 14:43:43 -05:00
Stefan Metzmacher
301129f6de r20870: implement the constructed attributes dsSchemaAttrCount,
dsSchemaClassCount and dsSchemaPrefixCount on the rootdse

having a loaded dsdb_schema make things so easy...:-)

metze
(This used to be commit 7862fcdbb5ce43e702512c1acdbb5843ef551293)
2007-10-10 14:43:43 -05:00
Stefan Metzmacher
ee56bf2317 r20762: load the default dn's after the rootdse module is initialized,
so that following module can access the default dn's.

metze
(This used to be commit a934da4dcfeae49fcfc901a071da2d41507da69b)
2007-10-10 14:40:47 -05:00
Simo Sorce
a9e31b33b5 r19832: better prototypes for the linearization functions:
- ldb_dn_get_linearized
  returns a const string

- ldb_dn_alloc_linearized
  allocs astring with the linearized dn
(This used to be commit 3929c086d5d0b3f08b1c4f2f3f9602c3f4a9a4bd)
2007-10-10 14:28:22 -05:00
Simo Sorce
4889eb9f7a r19831: Big ldb_dn optimization and interfaces enhancement patch
This patch changes a lot of the code in ldb_dn.c, and also
removes and add a number of manipulation functions around.

The aim is to avoid validating a dn if not necessary as the
validation code is necessarily slow. This is mainly to speed up
internal operations where input is not user generated and so we
can assume the DNs need no validation. The code is designed to
keep the data as a string if possible.

The code is not yet 100% perfect, but pass all the tests so far.
A memleak is certainly present, I'll work on that next.

Simo.
(This used to be commit a580c871d3784602a9cce32d33419e63c8236e63)
2007-10-10 14:28:22 -05:00
Stefan Metzmacher
76d0193bf3 r19726: when a client explicit asks for the 'netlogon' attriubute on LDAP
the result entry is skipped!

metze
(This used to be commit 62aa73f3d56596780fc82fecbc99c688ecbf5b08)
2007-10-10 14:28:14 -05:00
Simo Sorce
b7774527fa r19531: Make struct ldb_dn opaque and local to ldb_dn.c
(This used to be commit 889fb983ba1cf8a11424a8b3dc3a5ef76e780082)
2007-10-10 14:24:44 -05:00
Andrew Bartlett
899ae849e8 r19522: Remove gensec and credentials dependency from the rootdse module (less
dependency loops).

This moves the evaluation of the SASL mechansim list to display in the
rootDSE to the ldap server.

Andrew Bartlett
(This used to be commit 379da475e224d93c05d91b37902c121eb4007d97)
2007-10-10 14:24:44 -05:00
Andrew Bartlett
77db3973c4 r18781: Move the usnCreated and usnChanged handling around again.
This moves these attributes from objectguid into an optional backend
(objectguid), used by ltdb.  For OpenLDAP, the entryUUID module
converts entryCSN into usnChanged.

This also changes the sequence number API, and uses 'time based'
sequence numbers, when an LDAP or similar backend is detected.

To assist this, we also store the last modified time in the TDB,
whenever we change a value.

Andrew Bartlett
(This used to be commit 72858f859483c0c532dddb2c146d6bd7b9be5072)
2007-10-10 14:19:11 -05:00
Andrew Bartlett
35d30de095 r18368: Don't list GENSEC mechs that only have client implementations in our
supportedSASLMechanism list.

Andrew Bartlett
(This used to be commit 3e69637b5f79e4132026ebaf9d57cf67ef3826c1)
2007-10-10 14:18:20 -05:00
Andrew Tridgell
30ee8beb93 r18301: I discovered how to load the warnings from a build farm build into
emacs compile mode (hint, paste to a file, and compile as "cat
filename").

This allowed me to fix nearly all the warnings for a IA_64 SuSE build
very quickly.
(This used to be commit eba6c84efff735bb0ca941ac4b755ce2b0591667)
2007-10-10 14:18:04 -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
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
f77c410084 r16264: Add, but do not yet enable, the partitions module.
This required changes to the rootDSE module, to allow registration of
partitions.  In doing so I renamed the 'register' operation to
'register_control' and 'register_partition', which changed a few more
modules.

Due to the behaviour of certain LDAP servers, we create the baseDN
entry in two parts: Firstly, we allow the admin to export a simple
LDIF file to add to their server.  Then we perform a modify to add the
remaining attributes.

To delete all users in partitions, we must now search and delete all
objects in the partition, rather than a simple search from the root.
Against LDAP, this might not delete all objects, so we allow this to
fail.

In testing, we found that the 'Domain Controllers' container was
misnamed, and should be 'CN=', rather than 'OU='.

To avoid the Templates being found in default searches, they have been
moved to CN=Templates from CN=Templates,${BASEDN}.

Andrew Bartlett
(This used to be commit b49a4fbb57f10726bd288fdc9fc95c0cbbe9094a)
2007-10-10 14:09:09 -05:00
Andrew Bartlett
247af0d569 r16083: Make it possible to initialise a backend module, without it setting up
the whole ldb structure.

Because the sequence number was a fn pointer on the main ldb context,
turn it into a full request (currently sync).

Andrew Bartlett
(This used to be commit fbe7d0ca9031e292b2d2fae263233c973982980a)
2007-10-10 14:08:57 -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
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