1
0
mirror of https://github.com/samba-team/samba.git synced 2025-12-04 08:23:50 +03:00
Commit Graph

11125 Commits

Author SHA1 Message Date
Stefan Metzmacher
9b5116be2e r20282: prepare callback infrastructure to check if the forest/domain
behaviors and the schema version is what the caller expects.
also a callback prepares the new database and commits chunks
to the partitions

metze
2007-10-10 14:29:31 -05:00
Stefan Metzmacher
ebbd6263bb r20281: remove debug statement
metze
2007-10-10 14:29:30 -05:00
Stefan Metzmacher
db16f6382d r20280: if the uint8_t array starts with 0xFF, then it's not a OID
and we return the array as hexstring. this is always in the last
array member of the meppings array, and I is always 21 bytes long

w2k in mixed mode:   FF0000000000000000000000000000000000000000
w2k3 in mixed mode:  FF00000002A5DA73B101C43B449028E2F832FE466F
w2k3 in native mode: FF00000001635D94BDE62E2C4C9BAC9D6AFA4F69F8

I assume it's some kind of schema version...

metze
2007-10-10 14:29:30 -05:00
Stefan Metzmacher
bc13b36901 r20278: make it possible to use oid strings in the drsuapi instead of uint8_t arrays
with ber encoded oid's

metze
2007-10-10 14:29:30 -05:00
Stefan Metzmacher
7e7d1a1da2 r20277: make sure the asn1 structure has a welldefined state after a asn1_free()
metze
2007-10-10 14:29:30 -05:00
Stefan Metzmacher
c4733b20c7 r20276: remove unneeded talloc_strdup()
metze
2007-10-10 14:29:29 -05:00
Stefan Metzmacher
4b9e196288 r20275: we should check for the oid the caller gave us!
metze
2007-10-10 14:29:29 -05:00
Stefan Metzmacher
7256481f08 r20274: add missing return statement and make it more explicit that we return a NULL DATA_BLOB
metze
2007-10-10 14:29:29 -05:00
Volker Lendecke
b053a7df84 r20272: Fix for BASE-BENCH-READWRITE from Mathias Dietz <MDIETZ@de.ibm.com> 2007-10-10 14:29:28 -05:00
Stefan Metzmacher
ea70f6ff07 r20259: add function to start a fake tag so that asn1_read_OID_String()
can work alone

metze
2007-10-10 14:29:28 -05:00
Stefan Metzmacher
576d4c54cc r20258: add functions to read and write asn1 encoded OID strings without leading tag
metze
2007-10-10 14:29:28 -05:00
Stefan Metzmacher
aa720a1531 r20251: I found out that the oid-prefix to uint32-id-prefix mapping is transferred
in replication replies, but I don't know the exact encoding.

for example the oids are transferred as:

2.5.4			=> uint8_t v[] = { 0x55, 0x04 };
2.5.5			=> uint8_t v[] = { 0x55, 0x05 };
2.5.6			=> uint8_t v[] = { 0x55, 0x06 };
2.5.18			=> uint8_t v[] = { 0x55, 0x12 };
2.5.20			=> uint8_t v[] = { 0x55, 0x14 };
2.5.21			=> uint8_t v[] = { 0x55, 0x15 };
1.2.840.113556.1.2	=> uint8_t v[] = { 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x14, 0x01, 0x02 };
1.2.840.113556.1.3	=> uint8_t v[] = { 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x14, 0x01, 0x03 };
1.2.840.113556.1.4	=> uint8_t v[] = { 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x14, 0x01, 0x04 };
1.2.840.113556.1.5	=> uint8_t v[] = { 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x14, 0x01, 0x05 };
1.2.840.113556.1.5.7000	=> uint8_t v[] = { 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x14, 0x01, 0x05, 0xb6, 0x58 };
1.2.840.113549.1.9	=> uint8_t v[] = { 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x09 };
2.16.840.1.113730.3	=> uint8_t v[] = { 0x60, 0x86, 0x48, 0x01, 0x86, 0xf8, 0x42, 0x03 };
2.16.840.1.113730.3.1	=> uint8_t v[] = { 0x60, 0x86, 0x48, 0x01, 0x86, 0xf8, 0x42, 0x03, 0x01 };
2.16.840.1.113730.3.2	=> uint8_t v[] = { 0x60, 0x86, 0x48, 0x01, 0x86, 0xf8, 0x42, 0x03, 0x02 };
0.9.2342.19200300.100.1	=> uint8_t v[] = { 0x09, 0x92, 0x26, 0x89, 0x93, 0xf2, 0x2c, 0x64, 0x01 };
0.9.2342.19200300.100.4	=> uint8_t v[] = { 0x09, 0x92, 0x26, 0x89, 0x93, 0xf2, 0x2c, 0x64, 0x04 };
1.3.6.1.4.1.250.1	=> uint8_t v[] = { 0x2b, 0x06, 0x01, 0x04, 0x01, 0x81, 0x7a, 0x01 };
1.3.6.1.4.1.1466.101.119=> uint8_t v[] = { 0x2b, 0x06, 0x01, 0x04, 0x01, 0x8b, 0x3a, 0x65, 0x77 };

if someone knows how the encoding works, please tell me:-)
I assume some ASN.1 encoding...

metze
2007-10-10 14:29:27 -05:00
Andrew Tridgell
65858ebb68 r20234: metze pointed out that we are re-loading the cache records on each
write. We should only be doing this if another process writes and
changes the seqnum. This avoids the extra cache loads
2007-10-10 14:29:27 -05:00
Stefan Metzmacher
9168236ddd r20233: add functions to create a dsdb_attribute and dsdb_class from
a drsuapi_DsReplicaObject

metze
2007-10-10 14:29:26 -05:00
Stefan Metzmacher
5d7827f45e r20232: specify attribute name and structure element name always together
there're a view elements where both values doesn't match

LDAP-SCHEMA now successful loads the schema

metze
2007-10-10 14:29:26 -05:00
Stefan Metzmacher
3af0a9b2c4 r20231: - add more oid => uint32 id mappings
- handle the case where mappings for 1.2.3.4. and 1.2.3.4.5. prefixes
  exist
- extend test suite for the mappings

metze
2007-10-10 14:29:26 -05:00
Stefan Metzmacher
3d51ce92c2 r20230: I found more mappings of OID string to uint32 id
metze
2007-10-10 14:29:25 -05:00
Stefan Metzmacher
e5b67046c2 r20226: rename macros with a _LDB at the end, because I'll add macros with _DS
soon

metze
2007-10-10 14:29:25 -05:00
Stefan Metzmacher
c02048f480 r20225: we can't use composite_error() in a _recv() function, as that would
trigger the caller to call the _recv() function again and will be an endless
loop.

this is just a fix the to prevent this, and use a more usefull error code
than NT_STATUS_UNSUCCESSFUL

I think we should move the checks about valid responses into the function
which receives the the response (here continue_name_found()),
so that the _recv() function only needs to transfer the output vars to the caller
without any logic to analyse the network response.

metze
2007-10-10 14:29:25 -05:00
Stefan Metzmacher
e50cf96fea r20224: the struct element msDs_Schema_Extensions and the attribute name "msDs-Schema-Extensions"
doesn't match so we need to pass 2 parameters to the GET_BLOB() macro

metze
2007-10-10 14:29:24 -05:00
Stefan Metzmacher
66c4b42f5f r20223: this function is in the torture test now
metze
2007-10-10 14:29:24 -05:00
Rafal Szczesniak
0eb605cf42 r20222: return status unsuccessful when null pointers are returned
from lookup call.

rafal
2007-10-10 14:29:24 -05:00
Stefan Metzmacher
58ba6ec195 r20221: - move the dsdb_schema, dsdb_attribute, dsdb_class structs into
a generic location
- this struct should be also used by the dsdb/samdb/ldb_modules/schema.c
  module later
- add functions to map from LDAP OID values to uint32_t values
- add torture test for the OID => uint32 mapping code

metze
2007-10-10 14:29:23 -05:00
Stefan Metzmacher
38ae6ce7b9 r20219: add enough knowledge to display the content of attributeSchema objects
metze
2007-10-10 14:29:23 -05:00
Stefan Metzmacher
dd5df84ccc r20213: add 2 error codes related to the msDs-IntId attribute
metze
2007-10-10 14:29:23 -05:00
Stefan Metzmacher
a77e1bd1b4 r20205: remove unused var
metze
2007-10-10 14:29:22 -05:00
Stefan Metzmacher
a816c2973a r20204: use symbolic constant
metze
2007-10-10 14:29:22 -05:00
Stefan Metzmacher
6b20123c10 r20198: let the IBM checker ignore the warning about a missing break
statement...

metze
2007-10-10 14:29:22 -05:00
Stefan Metzmacher
9d06a4b6e2 r20195: fix typo
metze
2007-10-10 14:29:21 -05:00
Stefan Metzmacher
ee47b40441 r20194: inline all static talloc functions
metze
2007-10-10 14:29:21 -05:00
Stefan Metzmacher
85fc18f047 r20193: - let talloc_parent_chunk() handle a NULL pointer
- use talloc_parent_chunk() in talloc_parent_name()
- add prototype of talloc_parent_name()

metze
2007-10-10 14:29:21 -05:00
Stefan Metzmacher
5ac373c8b8 r20192: I assume a 'break' is the correct thing to do here,
simo,tridge: please check this.

found by the IBM checker

metze
2007-10-10 14:29:21 -05:00
Stefan Metzmacher
4c1e4bfeef r20191: fix bug found by the IBM checker
metze
2007-10-10 14:29:20 -05:00
Stefan Metzmacher
6b7eb5d68e r20190: fix the ldb_ldap backend
metze
2007-10-10 14:29:20 -05:00
Stefan Metzmacher
d20d1872d5 r20189: remove unused struct element
metze
2007-10-10 14:29:20 -05:00
Stefan Metzmacher
70c4a36743 r20188: move back to an default attribute handler and not use the '*' attribute
to not conflict with the one that maybe added via the @ATTRIBUTES object

this is just to make the test-tdb-feature.sh torture test happy

There's still a bug when a attribute is registered multiple time
without removing old ldb_schema_attribute instances. But this bug
was there before my changes too and was just triggered by my changes

metze
2007-10-10 14:29:19 -05:00
Stefan Metzmacher
216713d9a0 r20187: fix the build on systems without sqlite3
metze
2007-10-10 14:29:19 -05:00
Stefan Metzmacher
39c41be0ac r20185: - SMB_ENABLE() needs upper case YES/NO
- fix compilation of the ldb_sqlite3 module

metze
2007-10-10 14:29:19 -05:00
Stefan Metzmacher
b97b8f5dcb r20184: change ldb_attrib_handler into ldb_schema_attribute, which has a pointer
to a ldb_schema_syntax struct.

the default attribute handler is now registered dynamicly as "*"
attribute, instead of having its own code path.

ldb_schema_attribute's can be added to the ldb_schema given a
ldb_schema_syntax struct or the syntax name

we may also need to introduce a ldb_schema_matching_rule,
and add a pointer to a default ldb_schema_matching_rule
in the ldb_schema_syntax.

metze
2007-10-10 14:29:19 -05:00
Stefan Metzmacher
1f67433914 r20182: make the composite api usage more consistant (only cosmetic change)
metze
2007-10-10 14:29:18 -05:00
Rafal Szczesniak
2d046cc0df r20177: return the actual function status code.
rafal
2007-10-10 14:29:18 -05:00
Rafal Szczesniak
ca8259fd27 r20175: use libnet context instead mem_ctx as the latter gets
freed just before the function returns.

rafal
2007-10-10 14:29:17 -05:00
Stefan Metzmacher
8dda4342f6 r20168: start separating attributes and syntaxes
metze
2007-10-10 14:29:17 -05:00
Stefan Metzmacher
1e4289fae4 r20167: reenable the ejsnet tests
metze
2007-10-10 14:29:17 -05:00
Stefan Metzmacher
b9901d5f8c r20166: we have a dom_sid_add_rid() function that adds the rid after allocating
enough memory for the new sub_auth element.

the old version wrote behind the buffer.

also make the output sid a pointer.

metze
2007-10-10 14:29:17 -05:00
Rafal Szczesniak
5d7908038b r20164: Disable the test till tomorrow when I find out what caused
the crash.

rafal
2007-10-10 14:29:16 -05:00
Rafal Szczesniak
af539fec4a r20163: Return null object if no user is found.
rafal
2007-10-10 14:29:16 -05:00
Rafal Szczesniak
0c37360577 r20162: Always return some error string.
rafal
2007-10-10 14:29:16 -05:00
Rafal Szczesniak
9f5f9ee9b4 r20161: Prevent potential segfault in case account is unknown.
rafal
2007-10-10 14:29:16 -05:00
Andrew Bartlett
dc9eee7cb3 r20152: Commit missing files from last night's commit. We no longer maintain
a distinction between PDC and BDC in the configuration files, only as
an entry in the ldb.

Andrew Bartlett
2007-10-10 14:29:15 -05:00