1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-22 05:57:43 +03:00

224 Commits

Author SHA1 Message Date
Jelmer Vernooij
52fb06edc2 r22681: Fix standalone ldb build when parent directory name != ldb.
(This used to be commit 1093875d59f1ea9b8bd82277d4f9d8366e584952)
2007-10-10 14:52:00 -05:00
Jelmer Vernooij
f239b809b4 r22642: Allow standalone build to work without tdb or talloc checked out, but
provided by the system.
(This used to be commit bdde74055121ac538f6006750c94b514e962619d)
2007-10-10 14:51:57 -05:00
Stefan Metzmacher
bb36705c8d r22226: move discard_const macros to librelace
metze
(This used to be commit c2cfee6d25718fac35bd4ed982c7424f1c3ed0b7)
2007-10-10 14:50:40 -05:00
James Peach
dec40d3463 r22028: Fix include path for the srcidr != builddir case.
(This used to be commit a6141d40b15d52d40998c6206d632a27122a0060)
2007-10-10 14:49:42 -05:00
Andrew Bartlett
e2aa39b024 r21553: Remove bogus comment.
(This used to be commit 7c5529729b95f170508b9fe4f04bd33d6f000b1e)
2007-10-10 14:48:55 -05:00
Andrew Bartlett
7dc7156bd7 r21496: A number of ldb control and LDAP changes, surrounding the
'phantom_root' flag in the search_options control

- Add in support for LDB controls to the js layer
- Test the behaviour
- Implement support for the 'phantom_root' flag in the partitions module
- Make the LDAP server set the 'phantom_root' flag in the search_options control
  - This replaces the global_catalog flag passed down as an opaque pointer
- Rework the string-format control parsing function into
  ldb_parse_control_strings(), returning errors by ldb_errorstring()
  method, rather than with printf to stderr
- Rework some of the ldb_control handling logic

Andrew Bartlett
(This used to be commit 2b3df7f38d7790358dbb4de1b8609bf794a351fb)
2007-10-10 14:48:44 -05:00
Stefan Metzmacher
fb9dabe39e r20852: add a function to add a ldb control to a ldb_request
metze
(This used to be commit f0bf86ed66f7f9995df35db55f2f3875e7dbacbe)
2007-10-10 14:43:40 -05:00
Stefan Metzmacher
0c29f6d56d r20761: let ldb modules call ldb_set_default_dns()
metze
(This used to be commit 224a31cdbf12a555b8c46786c9f83fec8e839c5a)
2007-10-10 14:40:47 -05:00
Stefan Metzmacher
22f473b22b r20598: add comments and make clear that the void *data element for extended operations
needs to be NULL or a valid talloc pointer as talloc_get_type() will be called on it.

metze
(This used to be commit 5731617ea9103eaaef2c5591aab89d59ded35fd8)
2007-10-10 14:37:12 -05:00
Stefan Metzmacher
b931e66835 r20596: add prototypes for the ldb_extended functions
metze
(This used to be commit 8d3a3117c313c2950381e8d21eb92469a82c3afe)
2007-10-10 14:37:12 -05:00
Stefan Metzmacher
b5eb73280e r20583: implement the frontend calls for extended operations
metze
(This used to be commit cfcd05adc03effeaf85dc776c2d5bb5244f0d6d4)
2007-10-10 14:37:08 -05:00
Stefan Metzmacher
bc4821a4ce r20582: use void *data in the ldb_extended struct to match what we have in ldb_control
add a request element for extended requests

metze
(This used to be commit 530b3cd2501efb7763cbb7d3301ff0550689effe)
2007-10-10 14:37:07 -05:00
Stefan Metzmacher
f29ea516f9 r20581: - the ldb modules have explicit hooks for extended operations
so call them
- reorder the request operations first all with explixit hooks

metze
(This used to be commit aababcbb05ad476507bba35723eaef01d18b4d4e)
2007-10-10 14:37:07 -05:00
Stefan Metzmacher
71bc79caab r20462: add functions to handle UTCTime strings
metze
(This used to be commit 49c7da812c290e23bb65b98a2710fb90c4a0ece2)
2007-10-10 14:35:52 -05:00
Stefan Metzmacher
6f68945f7d r20320: add missing prototypes
metze
(This used to be commit b9d0ea3954e3f76436e976555540dd29dacd621d)
2007-10-10 14:29:39 -05:00
Stefan Metzmacher
c65b5a6f87 r20319: fix compiler warnings
metze
(This used to be commit 3769270a6a22dd29845e889b0601fcdf7c46acb5)
2007-10-10 14:29:39 -05:00
Stefan Metzmacher
525447821e r20316: fix compiler warning
metze
(This used to be commit 58cbbaa4b49bfed6d4e9c5802af988864e06675f)
2007-10-10 14:29:38 -05:00
Stefan Metzmacher
a3c0f3035d r20189: remove unused struct element
metze
(This used to be commit d20d1872d5ed1176928b85ef9811c6a5177d0148)
2007-10-10 14:29:20 -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
e55ff42229 r20168: start separating attributes and syntaxes
metze
(This used to be commit 8dda4342f648aa71878ac9eeb7941710e2813aee)
2007-10-10 14:29:17 -05:00
Volker Lendecke
dec69975f5 r20046: Add ldb_search_exp_fmt and port comment to 4
(This used to be commit 879dfed8d8356aae6a11352b89bdc0f2d9f28970)
2007-10-10 14:28:54 -05:00
Simo Sorce
ea212eb00f r20034: Start using ldb_search_exp_fmt()
(This used to be commit 4f07542143ddf5066f0360d965f26a8470504047)
2007-10-10 14:28:51 -05:00
Simo Sorce
4f8b4a8ef1 r19906: ldb_attr_cmp is used a lot
remove unneded overhead of a function call
(This used to be commit 3ca25867621af049c6cc52e919fa46dd26c31918)
2007-10-10 14:28:34 -05:00
Simo Sorce
c05c41d352 r19888: make it possible to use default attrib handlers from extensions
list more DN attributes as part of samba attribute handlers
(nCName moved here)
(This used to be commit 627ed8b5165c9a1cc0e2c67329b364f9cd8a1726)
2007-10-10 14:28:32 -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
Andrew Bartlett
adae413042 r19731: Modify the ldb_map infrustructure to always map from requested
attributes to backend (remote) attributes.

We can't do a reverse mapping safely where the remote attribute may be
a source for multiple local attributes.  (We end up with the wrong
attributes returned).

In doing this, I've modified the samba3sam.js test to be more
realistic, and fixed some failures in the handling of primaryGroupID.

I've added a new (private) helper function ldb_msg_remove_element() to
avoid a double lookup of the element name.

I've also re-formatted many of the function headers, to fit into
standard editor widths.

Andrew Bartlett
(This used to be commit 186766e3095e71ba716c69e681592e217a3bc420)
2007-10-10 14:28:15 -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
Simo Sorce
7f833458ca r19489: Change ldb_msg_add_value and ldb_msg_add_empty to take a foruth argument.
This is a pointer to an element pointer. If it is not null it will be
filled with the pointer of the manipulated element.
Will avoid double searches on the elements list in some cases.
(This used to be commit 0fa5d4bc225b83e9f63ac6d75bffc4c08eb6b620)
2007-10-10 14:24:38 -05:00
Simo Sorce
002338283f r19455: forgot this
(This used to be commit 2b770885cd234027f92ba543706df5d55f16f739)
2007-10-10 14:21:34 -05:00
Simo Sorce
21e63dca9b r19453: Expose helper functions
(This used to be commit ee86e88e4f523d67900b52b5a4d4040a76360c61)
2007-10-10 14:21:34 -05:00
Andrew Tridgell
0cf42c464e r19365: fixed a memory leak in the ldb attribute handling
(This used to be commit d7e07685164141f8fb2c2a6258e1fcb46ff9d06c)
2007-10-10 14:21:17 -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
Andrew Tridgell
4c3b07b654 r18942: add a ldb_set_create_perms() function in ldb. I didn't call it
ldb_set_umask() (which is what we had discussed) as it doesn't
actually set the umask (in effect it sets the inverse of the umask -
the perms to be used for the file)
(This used to be commit 7e2ec875908c112d5c3b0f6d18f9a8bbacf33539)
2007-10-10 14:20:22 -05:00
Andrew Tridgell
58619eebc1 r18831: minor build changes for samba3. The logging changes will be removed
when the tdb api is updated
(This used to be commit 6ace943fac101839e35cbc83dc54fde2068f704b)
2007-10-10 14:19:15 -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
Simo Sorce
8d1b32083e r18777: add helper functions to create an ldb_request structure
(This used to be commit bcbe82873f2f0a4e2552ed27eb171028de4560a7)
2007-10-10 14:19:11 -05:00
Andrew Tridgell
a983b06d37 r18129: moved the system includes into libreplace - this gives much more
isolation of our portability environment from the main code, and also
simplifies the includes system (no separate #ifdef _SAMBA_BUILD for
tdb. ldb etc now)
(This used to be commit 77d1a468e06290aba789e2f3affc769fc5159a21)
2007-10-10 14:17:36 -05:00
Andrew Tridgell
6d2dd5a238 r18115: comparison_fn_t is defined in libreplace now
(This used to be commit e9ee8b1053875fd3ddc950e3b21feb106eb3850c)
2007-10-10 14:17:34 -05:00
Andrew Tridgell
58316b88e5 r18112: really make use of libreplace in ldb
(This used to be commit 2057159c7575479c9808aeffe711fc861e53f3c8)
2007-10-10 14:17:18 -05:00
Jelmer Vernooij
38fdde5d9b r18031: Merge my replace fixes:
* libreplace can now build stand-alone
 * add stub testsuite for libreplace
 * make talloc/tdb/ldb use libreplace
(This used to be commit fe7ca4b1454e01a33ed0d53791ebffdd349298b4)
2007-10-10 14:17:05 -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
a2ca0b5e3c r17821: changed ldb_search() and the ldbsearch command line utility to
automatically work out the basedn when basedn==NULL. The basedn is
fetched from the rootDSE defaultNamingContext value (if there is one)

This means we don't have to have the defaultNamingContext logic in
lots of places. It makes a lot of sense to me to have basedn==NULL
mean "use the default, as given by the database"

Note that explicitly specifing a basedn of '' is not the same thing,
and will not trigger this code

The baseDN is cached in a ldb opaque, so we only have to fetch it once
(This used to be commit 5d1b66b68fc517ce684f75e466ed5f25e46857d5)
2007-10-10 14:16:44 -05:00
Stefan Metzmacher
0749ab0400 r17743: fix compiler warnings
metze
(This used to be commit 694a56b0ae0125594d6a23d8465249f011b6284e)
2007-10-10 14:16:35 -05:00
Andrew Tridgell
d95354300c r17741: tru64 uses inttypes.h not stdint.h.
ain't standards wonderful?
(This used to be commit 5eb59e5be09cd16bb0796b55575aa92dfd22650a)
2007-10-10 14:16:35 -05:00
Andrew Tridgell
10d8142e5d r17720: in standalone ldb build, some systems need sys/stat.h and a defn of
comparison_fn_t
(This used to be commit 99915268e60f6f877b639f1788ebdcf8105d6073)
2007-10-10 14:16:31 -05:00
Andrew Bartlett
7de75a991b r17580: Add a new tools to convert back from AD-like schema to OpenLDAP.
Add attribute syntax mapping to the existing OpenLDAP -> AD tool.

Andrew Bartlett
(This used to be commit ba1c652bae700a82acde166e70035d61c320e233)
2007-10-10 14:15:39 -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
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