summaryrefslogtreecommitdiff
path: root/source4/lib/ldb/tools
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r12745: Initial work to support a syntax to pass over controls viaSimo Sorce3-10/+106
command line to ldbsearch. Very rough work, no checks are done on the input yet (will segfault if you make it wrong). Controls are passed via the --controls switch an are comma separated (no escaping yet). General syntax is <ctrl_name>:<criticality> <ctrl_name> is a string <criticality> is 1 or 0 Current semi-parsed controls are: server_sort syntax: server_sort:1:0:attributename 1st parm: criticality 2nd parm: reversed 3rd parm: attribute name to be used for sorting todo: still missing suport for multiple sorting attributes and ordering rule no check on result code paged_results syntax: paged_results:1:100 1st parm: criticality 2nd parm: number of results to be returned todo: ldbsearch will return only the first batch (missing code to cycle over conditionally) no check on result code extended_dn syntax: extended_dn:1:0 1st parm: criticality 2nd parm: type, see MS docs on meaning Simo. (This used to be commit 4c685ac0d1638a1d5392dfe733baf0db77e84858)
2007-10-10r12733: Merge ldap/ldb controls into main treeSimo Sorce7-7/+13
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-10r12620: Get rid of automatically generated lists of init functions of ↵Jelmer Vernooij1-2/+2
subsystems. This allows Samba libraries to be used by other projects (and parts of Samba to be built as shared libraries). (This used to be commit 44f0aba715bfedc7e1ee3d07e9a101a91dbd84b3)
2007-10-10r12608: Remove some unused #include lines.Jelmer Vernooij7-7/+0
(This used to be commit 70e7449318aa0e9d2639c76730a7d1683b2f4981)
2007-10-10r12605: docs patch from Brad Hards <bradh@frogmouth.net>Simo Sorce1-1/+1
(This used to be commit 874f16e055ec30bf2ee52a33464b4810a8f8cd89)
2007-10-10r12542: Move some more prototypes out to seperate headersJelmer Vernooij1-0/+1
(This used to be commit 0aca5fd5130d980d07398f3291d294202aefe3c2)
2007-10-10r12499: Move smb_build.h out of includes.hJelmer Vernooij1-0/+1
(This used to be commit c92ace494f92084ddf178626cdf392d151043bc7)
2007-10-10r12057: fixed authentication in ldb client toolsAndrew Tridgell1-0/+3
(This used to be commit 020de11a61a1aa2c77c0a308186c85960c10fe32)
2007-10-10r11988: Setup the sessionInfo just before the connect, rather than earlierAndrew Bartlett1-4/+6
when we havn't finished popt. Andrew Bartlett (This used to be commit e5c5eb97a0ab841442b2c3fb5ea67f0d21b42932)
2007-10-10r11567: Ldb API change patch.Simo Sorce4-30/+35
This patch changes the way lsb_search is called and the meaning of the returned integer. The last argument of ldb_search is changed from struct ldb_message to struct ldb_result which contains a pointer to a struct ldb_message list and a count of the number of messages. The return is not the count of messages anymore but instead it is an ldb error value. I tryed to keep the patch as tiny as possible bu as you can guess I had to change a good amount of places. I also tried to double check all my changes being sure that the calling functions would still behave as before. But this patch is big enough that I fear some bug may have been introduced anyway even if it passes the test suite. So if you are currently working on any file being touched please give it a deep look and blame me for any error. Simo. (This used to be commit 22c8c97e6fb466b41859e090e959d7f1134be780)
2007-10-10r10913: This patch isn't as big as it looks ...Andrew Tridgell2-27/+27
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-10r10894: make the handling of dn/distinguishedName much closer to realAndrew Tridgell4-5/+5
ldap. Also ensure we put a objectclass on our private ldb's, so they have some chance of being stored in ldap if you want to (This used to be commit 1af2cc067f70f6654d08387fc28def67229bb06a)
2007-10-10r10830: we should use the same name in all places:-)Stefan Metzmacher1-1/+1
metze (This used to be commit fbe8fd06b700b78f02b7f01fc2ad45eee419d216)
2007-10-10r10810: This adds the hooks required to communicate the current user from theAndrew Bartlett1-0/+5
authenticated session down into LDB. This associates a session info structure with the open LDB, allowing a future ldb_ntacl module to allow/deny operations on that basis. Along the way, I cleaned up a few things, and added new helper functions to assist. In particular the LSA pipe uses simpler queries for some of the setup. In ldap_server, I have removed the 'ldasrv:hacked' module, which hasn't been worked on (other than making it continue to compile) since January, and I think the features of this module are being put into ldb anyway. I have also changed the partitions in ldap_server to be initialised after the connection, with the private pointer used to associate the ldb with the incoming session. Andrew Bartlett (This used to be commit fd7203789a2c0929eecea8125b57b833a67fed71)
2007-10-10r10477: expose transactions outside ldb and change the API once moreSimo Sorce1-1/+1
do not autostart transactions on ldb operations if a transaction is already in place test transactions on winsdb all my tests passes so far tridge please confirm this is ok for you (This used to be commit c2bb2a36bdbe0ec7519697a9a9ba7526a0defac2)
2007-10-10r10406: added --nosync option to all ldb tools, so that you can control ifAndrew Tridgell3-2/+13
transactions are synchronous or not on the command line. add LDB_FLG_NOSYNC flag to ldb_connect() so we can make our temporary ldb databases non-synchronous (This used to be commit dba41164e0c52f1e4351bd9057b16661cee3a822)
2007-10-10r10403: fixed the basedn for testing, and add a debug showing the size of ↵Andrew Tridgell1-1/+4
the test in ldbtest (This used to be commit 740b9f7537d60c7dbd48fe592587b12b304c52d1)
2007-10-10r10305: start implementing better error handlingSimo Sorce1-1/+2
changed the prioivate modules API error string are now not spread over all modules but are kept in a single place. This allows a better control of memory and error reporting. (This used to be commit 3fc676ac1d6f59d08bedbbd9377986154cf84ce4)
2007-10-10r10299: remove the public (un)lock functions and introduce a transaction basedSimo Sorce1-3/+4
private ldb API ldb_sqlite3 is already working with this model and ldb_tdb will do as soon as tridge finishes the tdb transaction code. currently the transactions are always implicit and wrap any single ldb API call except searching, the transaction functions are currently not made public on purpose. Simo. (This used to be commit 1da4ac2cdcb7e54076f85242a93784260dced918)
2007-10-10r10251: some more work on ldb_sqlite3Simo Sorce1-0/+26
I must say that writing a new module is a very good way to find lot of subtle bugs laying in the code We need more tests! commit oLschema2ldif.c to keep it safe from data losses (rm -fr :-) update test generic to reflect the fix made on comparsion functions (This used to be commit 4357a2db5eadb15519ed93b957b2bad25ebf2a7d)
2007-10-10r9775: r11607@blu: tridge | 2005-08-30 12:16:19 +1000Andrew Tridgell1-2/+2
fixed the help message (This used to be commit 5e3d9708f6592bf35f491f4ae979c20ad99e8358)
2007-10-10r9685: Add tests for samba3sam mapping moduleJelmer Vernooij1-2/+3
Fix a couple of bugs Move samba3sam backend to lib/ldb/ Remove some more unused parameters (This used to be commit 7f864d446d6af7cfd9fb8dbc496a29b36ec57ce9)
2007-10-10r9451: some fixes now core.schema and cosine.schema are also read properlySimo Sorce1-5/+29
(This used to be commit 0a26ee04322a06069be48dbc33307e4997700f74)
2007-10-10r9447: Add a new tool to convert openLdap schema files into an ldifSimo Sorce2-6/+589
My first test with nis.schema seem to confirm it works properly Use a command line like: oLschema2ldif -I tests/schema/nis.schema -O nis_schema.ldif -b "dc=sambadom,dc=samba,dc=org" to see how it works. SSS (This used to be commit fc373fd4631420c9d8d4087a2c698b08e18372d7)
2007-10-10r9391: Convert all the code to use struct ldb_dn to ohandle ldap like ↵Simo Sorce9-50/+95
distinguished names Provide more functions to handle DNs in this form (This used to be commit 692e35b7797e39533dd2a1c4b63d9da30f1eb5ba)
2007-10-10r8515: ldb_dn_cmp now uses ldb_dn_compare so that the DNs are comparedSimo Sorce2-6/+11
on a content level not ona form level, his means that the 2 DNs: a) cn= user, dc=this, dc = is,dc=test b) cn=user,dc=this,dc=is,dc=test are now identical even if the string form differ (spaces) (This used to be commit 76d496c30867ae80434483a34b0d842523aed762)
2007-10-10r7926: poptGetNextOpt() returns int, not charAndrew Tridgell1-1/+1
this was breaking ldbadd on some platforms (This used to be commit dd0ac3f68d709c0364d992673e76db73398c0369)
2007-10-10r7897: work in progressDerrell Lipman1-1/+4
(This used to be commit 8e1431efcf0df797bc50ef584c38fce6a03429b3)
2007-10-10r7868: canonicalise the message before using ldb_add() in the ldbadd utility.Andrew Tridgell1-0/+2
(This used to be commit 56f4af5f210da472d41d9bcf6918647181f6ad16)
2007-10-10r7833: changed ldbsearch and ldbedit to have command line syntax closer toAndrew Tridgell2-18/+18
ldapsearch. They look for an '=' in the first argument to see if it is a search expression, and if not then it does an 'all records' search (This used to be commit 91cc009fedefa7b263b345dfa511800e0f4f66a8)
2007-10-10r7828: Although there is still plenty to do, ldb_sqlite3 now passes the set ↵Derrell Lipman1-0/+10
of tests in tests/test-sqlite3.sh (tests/test-generic.sh). There are lots of optimizations still TBD, and some things are REALLY slow right now (e.g. each add() operation takes 1/3 - 1/2 second) but it's ready for interested parties to poke it and prod it and see how (un)reasonable it is. Play away. Still to be implemented or improved: - tdb specials (@MODULES, @SUBCLASSES, etc.) - all DNs are case-folded in their entirty right now (since doing otherwise would require @ATTRIBUTES to be implemented) - speed improvements and optimizations. I am quite confident that the excessively slow add() operation can be much improved, and other areas can be somewhat improved. (This used to be commit 1dd865005594671e7effe06fb088fa97fa08de0b)
2007-10-10r7804: added the samba specific ldif handlers into the tree, but don't enableAndrew Tridgell1-2/+6
them just yet. I have tested them, and they work fine, but enabling them will break code in rpc_server/ and samdb, so we need to fix that first (This used to be commit 07d459406b4c63e49141e0e533e1274b4052abf9)
2007-10-10r7743: be consistent in how stdin is supported for ldbadd and ldbmodifyAndrew Tridgell1-18/+10
(This used to be commit 3d60b3a8eea5ac6c35cf2e579ae12cef3dc1794e)
2007-10-10r7741: fixed the verbose option in ldbeditAndrew Tridgell1-12/+11
(This used to be commit a440133140a6adb5ea62d37690b9c4ae74dc6be0)
2007-10-10r7726: - removed some unused variablesAndrew Tridgell2-2/+1
- handle ldb_errstring() calls on failed connect (This used to be commit 8698a20fcc6a04ccbe533afd742e7a5df94423ee)
2007-10-10r7714: enable samba credentials handling in ldb tools. So you can now do aAndrew Tridgell9-58/+24
encrypted ldbedit against w2k3 (This used to be commit 6277c3923e7d9c26753424b1e77ac62f8e0729a4)
2007-10-10r7710: new command line handling code for ldbAndrew Tridgell2-0/+189
(This used to be commit 5e8db1c9b3bb6c5196652a7af877b4204148c305)
2007-10-10r7709: - convert ldb to use popt, so that it can interact with the sambaAndrew Tridgell7-434/+167
cmdline credentials code (which will be done soon) - added a ldb_init() call, and changed ldb_connect() to take a ldb context. This allows for much better error handling in ldb_connect(), and also made the popt conversion easier - fixed up all the existing backends with the new syntax - improved error handling in *_connect() - fixed a crash bug in the new case_fold_required() code - ensured that ltdb_rename() and all ltdb_search() paths get the read lock - added a ldb_oom() macro to make it easier to report out of memory situations in ldb code (This used to be commit f648fdf187669d6d87d01dd4e786b03cd420f220)
2007-10-10r7438: work in progressDerrell Lipman1-1/+12
(This used to be commit 2fc5343f0637ef3109b079dbc33d6cf4e58c8d5e)
2007-10-10r7276: - moved static tdb function ltdb_dn_fold() into common/ so that it can beDerrell Lipman1-3/+18
called from multiple backends. (ldb_sqlite3 needs it too.) Added parameter for a callback function that determines whether an attribute needs case folding. - begin to prepare for sqlite3 in build process - work-in-progress updates, on ldb_sqlite3 (This used to be commit a80bced0b96ffb655559a43cf7f4d7a34deb5a7d)
2007-10-10r6833: split out the routine that calculates the diff between two ldb ↵Andrew Tridgell1-43/+4
messages from ldbedit, so other progs can use it. (This used to be commit fa4f33558af3c65ff31424c01db16cb9d427503d)
2007-10-10r6470: Remove ldb_search_free() it is not needed anymore.Simo Sorce4-6/+6
Just use talloc_free() to release the memory after an ldb_search(). (This used to be commit 4f0948dab0aa5e8b6a4ce486f3668ca8dfae23db)
2007-10-10r6118: Make it so that we can do --with-zlib=no in configure and also a coupleRichard Sharpe1-1/+1
of small typos. (This used to be commit 9b4069e84573f85ce4341ceacd35737a18726a0b)
2007-10-10r5585: LDB interfaces change:Simo Sorce7-9/+9
changes: - ldb_wrap disappears from code and become a private structure of db_wrap.c thanks to our move to talloc in ldb code, we do not need to expose it anymore - removal of ldb_close() function form the code thanks to our move to talloc in ldb code, we do not need it anymore use talloc_free() to close and free an ldb database - some minor updates to ldb modules code to cope with the change and fix some bugs I found out during the process (This used to be commit d58be9e74b786a11a57e89df36081d55730dfe0a)
2007-10-10r5330: Remove #include <sys/time.h> from includes.h.Andrew Bartlett1-0/+1
Add #include "system/time.h" back (it was removed in some of these places because the definitions were provided by <sys/time.h> on tridge's platform.) Andrew Bartlett (This used to be commit 34b1da730304bed7fee5bae7cbde7fbccecb6af5)
2007-10-10r5298: - got rid of pstring.h from includes.h. This at least makes it a bitAndrew Tridgell7-0/+28
less likely that anyone will use pstring for new code - got rid of winbind_client.h from includes.h. This one triggered a huge change, as winbind_client.h was including system/filesys.h and defining the old uint32 and uint16 types, as well as its own pstring and fstring. (This used to be commit 9db6c79e902ec538108d6b7d3324039aabe1704f)
2007-10-10r4714: move the ldb code to the new talloc interface (eg remove _p suffix)Simo Sorce1-1/+1
this helps standalone building of ldb renew the schema module split code into functions to improve readability and code reuse add and modify works correctly but we need a proper testsuite Simo (This used to be commit a681ae365ff1b5a2771b42ebd90336651ce1e513)
2007-10-10r4477: expanded the test suite to increase code coverage a lotAndrew Tridgell1-1/+1
(This used to be commit 4edbd1b18ee38e584cf844b64c7fcb2645921837)
2007-10-10r4474: - converted ldb to use talloc internallyAndrew Tridgell5-36/+39
- added gcov flags to Makefile.ldb - expanded ldb test suite to get more coverage (This used to be commit 0ab98f50a7e0fe15347a99e5c29a6590a87729a0)
2007-10-10r4427: - added ldb_msg_*() functions for sorting, comparing and copying messagesAndrew Tridgell1-0/+7
- added a ldb_msg_canonicalize() function that fixes a record to not have any duplicate elements - changed ldbedit to use ldb_msg_canonicalize(). This fixes a bug when you rename multiple elements in a record in one edit (This used to be commit f006e724400843419c8b6155cbeae1876983855e)