1
0
mirror of https://github.com/samba-team/samba.git synced 2025-06-22 07:17:05 +03:00

112 Commits

Author SHA1 Message Date
Stefan Metzmacher
784f11bd85 r20952: when a component is changed we need to rebuild the linearized string
metze
(This used to be commit beb816fb78ec4a7816680611af6619740e159424)
2007-10-10 14:43:59 -05:00
Andrew Bartlett
c8fd1a6f2e r20373: When adding a base to a "" DN, don't precede it with a comma (,)
Andrew Bartlett
(This used to be commit ef1ca30180b1b225579a8200b65a4853a135602f)
2007-10-10 14:30:18 -05:00
Stefan Metzmacher
c69717755a 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
(This used to be commit b97b8f5dcbce006f005e53ca79df3330e62f117b)
2007-10-10 14:29:19 -05:00
Stefan Metzmacher
2f1fa42fe8 r20023: handle <SID=...> <WKGUID=...> dn's also in ldb_dn_new_fmt()
metze
(This used to be commit 01e3a5080a38c93c4bbf249b03135314b7e0b3f1)
2007-10-10 14:28:48 -05:00
Stefan Metzmacher
8534186530 r19954: allow more special dn's:
this works now against w2k3:

bin/ldbedit -U administrator%test -H ldap://w2k3-101/ -b "<GUID=44087590-dd95-435c-adc1-ec20a50807be>" -s base
bin/ldbedit -U administrator%test -H ldap://w2k3-101/ -b "<SID=S-1-5-21-769185814-1958994947-1641909093-513>" -s base
bin/ldbedit -U administrator%test -H ldap://w2k3-101/ -b "<WKGUID=AB8153B7768811D1ADED00C04FD8D5CD,DC=w2k3,dc=vmnet1,dc=vm,dc=base>" -s base

and we should try to implement this in the server too...

metze
(This used to be commit 3c087c89707398d88799367240fe4e6f8b192bb4)
2007-10-10 14:28:40 -05:00
Simo Sorce
921a596cd4 r19910: Make better use of our set of talloc utility functions
(This used to be commit b1197dbeebff062b8ea1e8466d436be82b0b61e0)
2007-10-10 14:28:35 -05:00
Volker Lendecke
eee64196a3 r19901: Fix a potential NULL dereference
(This used to be commit 75e6fb9654f10a076ed49b0582b40368e149d30a)
2007-10-10 14:28:33 -05:00
Simo Sorce
5b258c3b9d r19887: return "" string only if the dn is a valid one
(This used to be commit 056f90798f6d2cea1debc50f31fea3d740c4a837)
2007-10-10 14:28:32 -05:00
Stefan Metzmacher
6d074bcd4b r19885: special dn's were not casefolded before rev 19831,
act like this again...

also when we already have a casefoled value we should not call ldb_dn_casefold_internal()

metze
(This used to be commit cbf4eb16725992bfdfa5a334e0e5547e6df568e6)
2007-10-10 14:28:32 -05:00
Simo Sorce
f4e6be00ac r19871: simplify more
(This used to be commit e9ddb18c83518703f987bf141807639956612dbf)
2007-10-10 14:28:29 -05:00
Simo Sorce
5ab439893b r19870: Simplify code
(This used to be commit c1737f9a52d9e4d118f969a0953a458188143d0d)
2007-10-10 14:28:28 -05:00
Simo Sorce
353b968025 r19869: fix memleaks
(This used to be commit 3a662a2d985bf801284c5dc1123dec6705e6d092)
2007-10-10 14:28:28 -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
a39db63030 r19719: don't use 'new' as var name samba3 doesn't like it...
metze
(This used to be commit 7a4f46c1c9ec8119db46ffc57d77fcf13ca0c5a8)
2007-10-10 14:28:13 -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 Tridgell
5535b43efd r19361: added a comment
(This used to be commit 1581babfb5a5bbbfc2706dbec9b37b03fe9a5af6)
2007-10-10 14:21:16 -05:00
Andrew Tridgell
d0ba572fab r19289: fixed a memory leak in ldb_dn_string_compose()
(This used to be commit 669aa1424c7a931f57856af0cd4a6f6f4a60b823)
2007-10-10 14:21:02 -05:00
Stefan Metzmacher
bbc056e067 r19196: merge from samba3:
pass always a mem_ctx to functions and a ldb_context where needed

metze
(This used to be commit 67a6a41ba3af840cd8226de73576a90ecf602caa)
2007-10-10 14:20:52 -05:00
Stefan Metzmacher
c403dd11fb r19188: merge from samba3:
fix compiler warnings

metze
(This used to be commit dc139d8715f58b27363266f1426da451907845eb)
2007-10-10 14:20:51 -05:00
Andrew Tridgell
f1f807e66b r19113: fixed another checker warning.
(This used to be commit d12550af01f8d4c135fbf6f429852c31570ec92b)
2007-10-10 14:20:35 -05:00
Volker Lendecke
06ac3dbd9a r19079: talloc_array can fail
(This used to be commit 441ad8a45c390f807a6ec5f27d585aad54f3b210)
2007-10-10 14:20:34 -05:00
Volker Lendecke
ecd970abb6 r19076: ldb_dn_copy_partial can fail
(This used to be commit 78aa689a74941cd6873a91c429889a4c1d1a6432)
2007-10-10 14:20:33 -05:00
Volker Lendecke
c56585e5fe r19075: Fix a potential NULL dereference
(This used to be commit 84ae80b39bfa49fe7f9fa801d45a79bf04df8aff)
2007-10-10 14:20:33 -05:00
Volker Lendecke
19df909135 r19068: Fix a potential NULL dereference
(This used to be commit 2dff8ee8cc8b9faf3fbec46d458d6de214622afc)
2007-10-10 14:20:33 -05:00
Andrew Tridgell
2fe39a82bf r17722: better to use talloc_vasprintf() than vasprintf() directly, as it
depends on less libc functions
(This used to be commit a05101d83b06543cd32b08b4dec29d8f6bd27674)
2007-10-10 14:16:32 -05:00
Andrew Tridgell
9f7da6fea0 r17579: make ldb build g++ friendly
(This used to be commit 403cbd335594112e0c58fd68d20f0e3faad7d186)
2007-10-10 14:15:38 -05:00
Andrew Bartlett
8d62a6ba2c r16936: Correct comment in this comparison function
Andrew Bartlett
(This used to be commit d64987a2882c70669421b02aee8d75d95ce99bcb)
2007-10-10 14:10:02 -05:00
Andrew Bartlett
1f1b34b3e8 r16832: I should be more careful (and test!) when trying to make compilers and
static checkers happy...

Andrew Bartlett
(This used to be commit ae7ec0d553650b2a90fac8b7564b8f986e3e4288)
2007-10-10 14:09:49 -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
Gerald Carter
e3a6c6be79 r16100: Patch from Michael Wood <mwood@icts.uct.ac.za>: s/then/than/ for correct grammar
(This used to be commit 26a2fa97e4c819e630bc9b50e11c8d5328c7b8c8)
2007-10-10 14:08:59 -05:00
Andrew Bartlett
f4f194aad1 r16086: Ensure we can never dereference NULL pointers, and that describe what
these two DN comparison functions do.

Andrew Bartlett
(This used to be commit 733b64a733779daade7d1cabbacac2275564b697)
2007-10-10 14:08:58 -05:00
Simo Sorce
04396c36d3 r13333: revert previous commit I will use ldb_caseless_cmp in attrib_handlers
to correctly support utf8 comparisons

add an ldb_attr_Casefold function for attribute names and use it
instead of casefold in the right places
(This used to be commit 3b4eb2413bbce059dde69f35c03cdc3cc2ba85c5)
2007-10-10 13:51:45 -05:00
Simo Sorce
88279373ab r13328: After the attribute name check cleanup it turned up ldb_caseless_cmp()
was used just in one places and by mistake, as there we should have
been using ldb_attr_cmp()

Remove ldb_caseless_cmp() ... going on with the cleanup and utf8 compliance
effort.

Simo.
(This used to be commit afda68d7bf655a9145648856d29e6e64b9f21aa3)
2007-10-10 13:51:44 -05:00
Simo Sorce
f5ebc8e404 r13324: From now on check attribute names obey rfc2251
Also add a way to provide utf8 compliant functions
by registering them with ldb_set_utf8_fns()

Next comes code to register samba internal utf8 functions.

Simo.
(This used to be commit ac9b8a41ffca8e06c5e849d544d3203a665b8e0d)
2007-10-10 13:51:44 -05:00
Stefan Metzmacher
4d1c5a023c r12829: fix ldb headers, to not include '<...>' files in .c files
this helps in getting symbol -fvisibility=hidden (GCC 4 feature) working later.

metze
(This used to be commit 380938e97f31c7860aed1e73cc0110c6e17b472e)
2007-10-10 13:50:03 -05:00
Simo Sorce
528470d4a7 r12748: Fix wrong handling of separation characters for RDNs
allow escaped separation chars as part of the attr value
of an RDN
(This used to be commit 7ba341d6c3745cd99c4c79933f9bd54f41e12a9c)
2007-10-10 13:49:49 -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
1f9703de40 r10980: Use ldb_attr_cmp and ldb_dn_escape_value
Andrew Bartlett
(This used to be commit 2b1c88f628b27ffda08de3f4ac83c1f3b052a078)
2007-10-10 13:39:49 -05:00
Stefan Metzmacher
7b77baff16 r10959: fix compiler warnings
metze
(This used to be commit 9a9311fa6b4bbb2a385413c056c8be57cdb9eb59)
2007-10-10 13:39:48 -05:00
Andrew Bartlett
52cc7a5501 r10956: Tridge thought some comments might be a good idea :-)
Andrew Bartlett
(This used to be commit c0d6126effdf31e0a107c06a400973c731e0e263)
2007-10-10 13:39:48 -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
c8978cb1f1 r10918: - fixed standalone ldb build
- added note about allowedAttributesEffective (will be needed for mmc)

- fixed some more ldb warnings
(This used to be commit e9e4d81b6976549db8a7668572a5da466fbec4a9)
2007-10-10 13:39:43 -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
Simo Sorce
2b2e133752 r10231: seem I flipped these, fix.
(This used to be commit 8ddf4de162f42ed53ab0603dd0e1536796f9197e)
2007-10-10 13:38:09 -05:00
Andrew Bartlett
95fcf031b0 r9929: Fix indentation
Andrew Bartlett
(This used to be commit d6f57ec921839b46534eb64a7b6374161ff37835)
2007-10-10 13:36:23 -05:00
Simo Sorce
f2ac4b8d6b r9394: avoid to use BOOL in ldb
(This used to be commit d2055849fba56e8620403621f3fb9684f24e853f)
2007-10-10 13:33:33 -05:00
Simo Sorce
7c7b93f649 r9393: Fix ldb standalone build
(This used to be commit 796d0ea2fcf5132b157a397cc1a54aa26c042691)
2007-10-10 13:33:33 -05:00
Simo Sorce
ac90ddfdb2 r9392: Fix ldb_dn_compose to make build farm happy
Add ldb_dn_string_compose so that you can build a dn starting from a
struct ldb_dn base and a set of parameters to be composed in a format
string with the same syntax of printf
(This used to be commit 31c69d0655752cc8ea3bc5b7ea87792291302091)
2007-10-10 13:33:33 -05:00
Simo Sorce
3e4c4cff21 r9391: Convert all the code to use struct ldb_dn to ohandle ldap like distinguished names
Provide more functions to handle DNs in this form
(This used to be commit 692e35b7797e39533dd2a1c4b63d9da30f1eb5ba)
2007-10-10 13:33:32 -05:00