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

392 Commits

Author SHA1 Message Date
Andrew Tridgell
a729dbb269 s4-dsdb: fixed one_way_link calculation
we need to check for the other end of the link, not the current linkID

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-10-07 13:20:44 +11:00
Andrew Bartlett
1afeb4e391 s4-schema consolidate schema handling
It also creates a single routine dsdb_load_ldb_results_into_schema()
to handle cases where the schema is in the form of an ldb_result.

Andrew Bartlett
2011-09-05 11:19:25 +02:00
Andrew Tridgell
27656e9123 s4-dsdb: fixed calls to ldb_val_string_cmp()
wrong order of arguments
2011-08-25 07:39:38 +10:00
Andrew Bartlett
b206a365ea move schema_fill_constructed() call to dsdb_setup_sorted_accessors() 2011-08-09 11:56:23 +02:00
Andrew Bartlett
dee678a7be s4-dsdb Remove unused schema function 2011-08-09 11:56:23 +02:00
Andrew Tridgell
0e9cf380ea s4-dsdb: added SAMDB_INDEXING_VERSION to @INDEXLIST
this can be used to force re-indexing of samdb when we change
something that affects index comparison, in this case the
canonicalisation of booleans

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-08-09 11:56:23 +02:00
Andrew Tridgell
6853b3a805 s4-dsdb: fixed booling conversion to check value length
this ensures we don't look past the end of the data

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-08-09 11:56:23 +02:00
Andrew Tridgell
4ede333f46 s4-dsdb: add auto-normalisation of attributes
this auto-normalises some attributes when they are added/modified. The
list that we auto-normalise is currently:

Boolean
INT32
INTEGER
UTC_TIME

This fixes a problem with groupType being stored in an unnormalised
form

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-08-09 11:56:23 +02:00
Andrew Tridgell
55b25e1e23 s4-dsdb: ensure we setup the dn_format field in schema attributes
this ensures we setup dn_format when we do runtime schema changes

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-08-09 11:56:23 +02:00
Andrew Tridgell
d4a1f6a42b s4-dsdb: added dn_format attribute of a dsdb_attribute
this is faster than string comparisons during searches at runtime

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
Pair-Programmed-With: Amitay Isaacs <amitay@gmail.com>
2011-08-04 16:17:25 +10:00
Andrew Tridgell
a74f4673ed s4-dsdb: setup a one_way_link attribute on schema attributes
this allows us to quickly determine if a DN is a one way link

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
Pair-Programmed-With: Amitay Isaacs <amitay@gmail.com>
2011-08-04 16:17:24 +10:00
Matthieu Patou
930fa1ee46 update/add my copyright 2011-07-21 11:44:33 +10:00
Matthieu Patou
b1ffe82fac s4-schema: add systemFlags to dsdb classes objects 2011-07-21 11:44:33 +10:00
Andrew Tridgell
014fca1069 dsdb: fixed special case of zero NTTIME
we can't convert 0 NTTIME via a unix time_t

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-07-13 12:51:05 +02:00
Matthieu Patou
4d51ddbb5c s4-schema: avoid segfaulting if id3.guid is NULL 2011-06-22 20:13:08 +02:00
Andrew Tridgell
c46f80824b s4-dsdb: don't add zero GUID to BINARY_DN
When converting from DRS to ldb format for a BINARY_DN, don't add the
GUID extended DN element if the GUID is all zeros.

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-06-22 14:47:07 +10:00
Andrew Tridgell
4905725599 s4-dsdb: if we don't have a remote schema, then use the local one
this allows the use of drsuapi_to_ldb() on all attributes for the
local database
2011-06-17 12:32:55 +10:00
Matthias Dieter Wallnöfer
26c7223e72 s4:schema_convert_to_ol.c - fix memory contexts
- Add more "mem_ctx" free functions on error cases
- Steal the "out" string directly onto the LDB context to be able to free
  the local "mem_ctx"

Reviewed-by: Tridge
2011-06-09 10:53:36 +02:00
Matthias Dieter Wallnöfer
87a38d77ac s4:dsdb/schema_convert_to_ol.c - quiet enum warning
Introduce a error message when choosing wrong targets.

Reviewed-by: Tridge
2011-06-09 09:35:35 +02:00
Matthias Dieter Wallnöfer
ddb41f2af4 dsdb:schema/schema_syntax.c - correctly check error code of "ldb_string_utc_to_time"
This one doesn't set ERRNO. An error happens if the result is "0".

Reviewed-by: abartlet
2011-04-07 15:53:20 +02:00
Matthias Dieter Wallnöfer
6cef940b40 dsdb:schema/schema_syntax.c - add some empty value checks on validate functions
They are needed since the check in "ldb_msg_sanity_check" will be removed.

Reviewed-by: abartlet
2011-04-07 15:53:20 +02:00
Jeremy Allison
0c5214e2eb Ensure convert_string_XXX is always called with a valid converted_size pointer.
Preparation for cleaning up this API.

Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Tue Mar 29 21:01:49 CEST 2011 on sn-devel-104
2011-03-29 21:01:49 +02:00
Andrew Tridgell
15e84a9a09 charcnv: removed the allow_badcharcnv and allow_bad_conv options to convert_string*()
we shouldn't accept bad multi-byte strings, it just hides problems

Autobuild-User: Andrew Tridgell <tridge@samba.org>
Autobuild-Date: Thu Mar 24 01:47:26 CET 2011 on sn-devel-104
2011-03-24 01:47:26 +01:00
Andrew Tridgell
8dc92c8f71 ldb: use #include <ldb.h> for ldb
thi ensures we are using the header corresponding to the version of
ldb we're linking against. Otherwise we could use the system ldb for
link and the in-tree one for include

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-02-10 06:51:07 +01:00
Matthias Dieter Wallnöfer
912faf1b08 s4:dsdb/schema/schema_* - adaptions needed for removed "const" on OIDs 2010-12-21 15:10:37 +11:00
Kamen Mazdrashki
5bc0848fc7 s4-dsdb_schema: Copy info needed for Schema refresh in dsdb_schema_copy_shallow
Just 'refresh_fn' and 'loaded_from_module' are copied.
I left 'reload_seq_number' set to 0 intentionally, so that
this Schema cache will looks like a very old one to ,refresh_fn'.
This way, if this shallow copy is attached to LDB, it will be
refreshed as soon as possible by 'refresh_fn'.
2010-12-18 05:32:15 +02:00
Kamen Mazdrashki
dda73b85e6 s4-dsdb_schema: Handle remote ATTIDs based on msDs-IntId value
If we get such an msDs-IntId value, then we should just use it,
there is no mapping available for such values
2010-12-15 00:51:19 +01:00
Kamen Mazdrashki
52f7e38d6a s4-schema_syntax: Log error message when _dsdb_syntax_OID_oid_drsuapi_to_ldb() fails
I haven't found a way to test this function during replication so far,
but when I do, it will be useful to notice this error in the log file
2010-12-15 00:51:19 +01:00
Kamen Mazdrashki
2b74838c14 s4-dsdb_schema: We need base_dn in Schema's shallow copy too 2010-12-15 00:51:19 +01:00
Kamen Mazdrashki
3a8fa09c4f s4-schema_syntax: We should use make_ATTID function when converting remote-ATTID to local one
We may have no prefix for the remote ATTID (remote OID strictly speaking)
So this is the place for us to update our local prefixMap
adding a prefix for the numeric OID we've recived
2010-12-15 00:51:19 +01:00
Kamen Mazdrashki
afee8a28c4 s4-schema_syntax: Use remote prefixMap to map remote ATTID to local one
in dsdb_attribute_drsuapi_to_ldb() function.

drsuapi_DsReplicaAttribute *in parameter come from remote DC
so we can't rely on in->attid to map it directly to an
dsdb_attribute in our local schema cache
2010-12-15 00:51:19 +01:00
Kamen Mazdrashki
79e1a71e56 s4-dsdb_schema: Seize using global_schema when referencing new schema for an LDB
Without this change, when a schema is set to ldb, the
effect is that dsdb_get_schema() returns global_schema
preferably.

Thus we end up with two schemas in effect:
- global one, which is the old one and it is still used everywhere
- new one, which is just cached in ldb, but can't be used, as
  there is no way to access it
2010-12-15 00:51:18 +01:00
Jelmer Vernooij
35fbc7bbda s4-smbtorture: Make test names lowercase and dot-separated.
This is consistent with the test names used by selftest, should
make the names less confusing and easier to integrate with other tools.

Autobuild-User: Jelmer Vernooij <jelmer@samba.org>
Autobuild-Date: Sat Dec 11 04:16:13 CET 2010 on sn-devel-104
2010-12-11 04:16:13 +01:00
Kamen Mazdrashki
03b078c567 s4-dsdb/syntax: Map remote ATTIDs for Class OID syntax
Autobuild-User: Kamen Mazdrashki <kamenim@samba.org>
Autobuild-Date: Thu Dec  2 18:47:59 CET 2010 on sn-devel-104
2010-12-02 18:47:59 +01:00
Kamen Mazdrashki
5bc11855f6 s4-dsdb_syntax: Be a little bit more chatty when we can't an ATTID in our cache 2010-12-02 19:02:54 +02:00
Kamen Mazdrashki
23b4408a62 s4-dsdb/syntax: Map remote ATTIDs for Attribute OID syntax 2010-12-01 13:01:17 +02:00
Kamen Mazdrashki
29f9249bd6 s4-dsdb/syntax: Implement Remote-ATTID to Local-ATTID mapping function 2010-12-01 13:01:17 +02:00
Kamen Mazdrashki
fcc26c5d59 s4-dsdb/schema: Add Schema shallow copy function 2010-12-01 13:01:16 +02:00
Kamen Mazdrashki
16bd9dd7ae s4-dsdb/prefixMap: Add prefixMap shallow copy function 2010-12-01 13:01:16 +02:00
Kamen Mazdrashki
0868a15982 s4-repl: Propagate remote prefixMap in DRSUAPI data conversion functions 2010-11-11 18:54:20 +00:00
Kamen Mazdrashki
2d0cb54ceb s4-dsdb_syntax: Warning message that we can't find requested ATTID in Schema Cache 2010-11-11 18:54:20 +00:00
Kamen Mazdrashki
3ab75524ee s4-prefixMap: dsdb_schema_pfm_oid_from_attid() to use const prefixMap
It is not supposed to change supplied prefixMap
2010-11-11 18:54:20 +00:00
Kamen Mazdrashki
e772518a64 s4-dsdb_syntax: Use remote prefixMap to handle generic cases in drsuapi_to_ldb conversions 2010-11-11 18:54:20 +00:00
Kamen Mazdrashki
f65c840299 s4-dsdb_syntax: Add remote prefixMap member for dsdb_syntax conversions 2010-11-11 18:54:20 +00:00
Stefan Metzmacher
9f39d4bfa4 s4:dsdb/schema/schema_filtered.c: make never_in_filtered_attrs static const
metze
2010-11-09 22:52:59 +01:00
Stefan Metzmacher
44b1c82e84 s4:dsdb/schema/schema_filtered.c: use DSDB_SECRET_ATTRIBUTES
metze
2010-11-09 22:52:57 +01:00
Kamen Mazdrashki
0aeb08e2eb s4-attid: Uppercase ATTID type constants
Thanks Metze for noting this!

Autobuild-User: Kamen Mazdrashki <kamenim@samba.org>
Autobuild-Date: Mon Nov  8 23:06:41 UTC 2010 on sn-devel-104
2010-11-08 23:06:41 +00:00
Andrew Tridgell
18085b1236 s4-dsdb: give the DN on a shema attribute failure 2010-11-07 22:50:05 +00:00
Kamen Mazdrashki
a2d787d95d s4-dsdb_schema: Use DRSUAPI_ATTID_INVALID instead of 0xFFFFFFFF magic value
Autobuild-User: Kamen Mazdrashki <kamenim@samba.org>
Autobuild-Date: Mon Nov  1 00:36:20 UTC 2010 on sn-devel-104
2010-11-01 00:36:20 +00:00
Kamen Mazdrashki
717b1158a6 idl: Use DRSUAPI_ATTID_ prefix instead of DRSUAPI_ATTRIBUTE_ for ATTID values
Those values are actually ATTID values and such, they are used
for ATTIDs for Attributes, Classes and Syntaxes.
2010-10-31 23:54:04 +00:00