1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-14 01:57:53 +03:00

410 Commits

Author SHA1 Message Date
Andrew Tridgell
b1ee0c2fa4 r10665: fixed some crash errors and an error encoding AND and OR operations in the expression parsing code
(This used to be commit 0d4a900ce5705856d61c6dd4ccb8fdbd049d22b7)
2007-10-10 13:39:15 -05:00
Andrew Tridgell
588abdba90 r10641: fixed the error handling on search errors in the ildap backend
(This used to be commit e80d42933fe3cbc18cb229e47fffb9ca8068aca5)
2007-10-10 13:39:14 -05:00
Andrew Tridgell
0e90afb4e7 r10603: neaten up the ldb module initialisation code
(This used to be commit 8e7c4c98a7b4fd814f298fba1b6b686cb58339f8)
2007-10-10 13:39:11 -05:00
Jelmer Vernooij
5058f4b9e8 r10586: Add MergedObject() builder. Default to Library() rather
then StaticLibrary()
(This used to be commit b53313dc517986c69a4e4cb8fe3885b696f8faa1)
2007-10-10 13:39:08 -05:00
Andrew Tridgell
675f81eed3 r10525: change from AC_CHECK_TYPES() to AC_CHECK_TYPE() for intptr_t, so the
type is always available, which means we need less #ifdefs
(This used to be commit d4af4b11ae69a63fa3b2048e6d576055d86d2bb4)
2007-10-10 13:39:01 -05:00
Tim Potter
0d46be147a r10500: More progress to getting ldb tools building. Create a list of ldb modules
to link in.  There's still a whole lot of random other junk (dcerpc, gensec,
ndr stuff, lp_foo - what a mess).
(This used to be commit b78cf1270bd7eda1aa84d238136a83e64ff3c088)
2007-10-10 13:38:57 -05:00
Andrew Tridgell
2fe7c3a34a r10485: run autoheader before autoconf
(This used to be commit 9456ed3db3b28e4a467e8685f2f1285cf57ce14b)
2007-10-10 13:38:53 -05:00
Simo Sorce
63b43dd12f r10477: expose transactions outside ldb and change the API once more
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-10 13:38:52 -05:00
Andrew Tridgell
fcb41c3bbd r10423: minor changes to the ldb test suite to allow it to work correctly with
a real ldap backend (such as openldap)
(This used to be commit d267f8c6231664ec86edb2ae21e8585b1b51f7a1)
2007-10-10 13:38:44 -05:00
Andrew Tridgell
1828b783cf r10422: ldb_search() can now use tdb_traverse_read() to ensure it can run in
parallel with any transaction
(This used to be commit ddff66298f1a668c5220e24fc47f98d7dfc3068a)
2007-10-10 13:38:44 -05:00
Simo Sorce
2ce3b5a003 r10419: Remove unused prototypes of locking functions (thanks Jelmer)
omment about transactions
(This used to be commit 33352507593875a147276841fdb70de8edd668f5)
2007-10-10 13:38:43 -05:00
Tim Potter
7e8372f253 r10415: The ldb and tdb libraries are bad examples to test out the make proto
code as they are marked as NOPROTO in the config.mk files.
(This used to be commit 5f530eacbae073e9df6adde316404f70ecfe9122)
2007-10-10 13:38:43 -05:00
Andrew Tridgell
af352b4664 r10408: now that we are using tdb transactions we don't need any additional
locking code in the ldb_tdb backend, except for a single read lock
during searches to ensure searches don't cross transaction boundaries

The tdb transactions code would map these extra locks to noops anyway
(as locking makes no sense inside a transaction), but the work in
setting up the locking keys still costs something, and it makes the
code needlessly complex
(This used to be commit 1b8d368a6771360fb0626127c02b3eb95f3eae59)
2007-10-10 13:38:42 -05:00
Andrew Tridgell
d78ea3e34a r10406: added --nosync option to all ldb tools, so that you can control if
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-10 13:38:41 -05:00
Andrew Tridgell
ede8415d61 r10405: added transactions into tdb, and hook them into ldb. See my
samba-technical posting for more details on the transactions design.

This also adds a number of command line arguments to tdbtorture,
making it more flexible, and fixes some lock deadlock conditions in
the tdbtorture code.
(This used to be commit 06bd8abba942ec9f1e23f5c5d546cbb71ca3a701)
2007-10-10 13:38:41 -05:00
Andrew Tridgell
cd67aa92a5 r10403: fixed the basedn for testing, and add a debug showing the size of the test in ldbtest
(This used to be commit 740b9f7537d60c7dbd48fe592587b12b304c52d1)
2007-10-10 13:38:40 -05:00
Tim Potter
3e4f47aaff r10379: Add files for ldb and tdb to proto_files. The tool for building proto.h
is busted though.
(This used to be commit 54882f88cad1427b6adcb4c956a63e534e7d13e4)
2007-10-10 13:38:34 -05:00
Tim Potter
d191c7d993 r10377: Save configuration stuff to sconf.cache so it isn't annoyingly run
at every single build.  Run 'scons configure=1' or delete sconf.cache
to force checks to be re-run.

Jelmer, I think this stuff is cached in the .sconf_cache directory but
the message is still displayed and it looks like it caches the compiled
test object file not the actual result of the test.
(This used to be commit 9d001dc083937bbf5642af90bc8a8b1a27825de0)
2007-10-10 13:38:33 -05:00
Jelmer Vernooij
8db177b652 r10366: More scons fixes. Building et, asn1, lex and yacc files sort-of works now
(This used to be commit 22f18a84242e5e68a2d57b6d7ff77c089ee7434a)
2007-10-10 13:38:32 -05:00
Jelmer Vernooij
5b02ee9b9d r10336: Add sconscript for a couple more subsystems.
(This used to be commit 59d4450453c25f5cce9b67b808ff0c4433c1d194)
2007-10-10 13:38:29 -05:00
Jelmer Vernooij
069e498da2 r10330: Add SConscript to more subsystems. Some of the tdb tools build now.
Start on custom Samba scons tools (for handling proto generation, pidl, etc)
(This used to be commit 4bffe4435944fffa3f9680b5a2fe63f2bdd98003)
2007-10-10 13:38:28 -05:00
Stefan Metzmacher
cb9d4c6707 r10312: fix compiler warning
metze
(This used to be commit 3309a0f4d90f01e1f6182b797e2bfe3f8380e59c)
2007-10-10 13:38:16 -05:00
Simo Sorce
16aff2a184 r10305: start implementing better error handling
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-10 13:38:16 -05:00
Simo Sorce
46a8d80937 r10304: check for basic ldb_message sanity and return appropriate
LDB_ERR_ value
(This used to be commit 610f5646f0816820ac9342e81d46d139e26cc918)
2007-10-10 13:38:15 -05:00
Simo Sorce
bb8f5c93ee r10303: check no attribute is given empty
(This used to be commit f0ad9495e45ee0d41ef8ca182984599c8e11cabb)
2007-10-10 13:38:15 -05:00
Simo Sorce
eebe0c269e r10302: Introduce ldap like error codes
(This used to be commit cbe438be6d9b1b7182ab3e63607a2e5b2d5456fb)
2007-10-10 13:38:15 -05:00
Simo Sorce
cba1859fe1 r10301: fix standalone compiple after tdb changes
(This used to be commit acfb4b928363b00346cd8991347d992c76c981d6)
2007-10-10 13:38:15 -05:00
Simo Sorce
8919d6bf9a r10299: remove the public (un)lock functions and introduce a transaction based
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-10 13:38:14 -05:00
Simo Sorce
5c708830bc r10277: do not ovverride LIKE, thanks to derrel I found out how to do
the same thing with a harmless user function
(This used to be commit 158693b4064bd731aa4f6cdb2fde51d7aa596cf5)
2007-10-10 13:38:13 -05:00
Andrew Tridgell
0868b7c77d r10253: a fairly large tdb cleanup and re-organise. Nearly all of this change
just involves splitting up the core tdb.c code into separate files on
logical boundaries, but there are some minor functional changes as well:

 - move the 'struct tdb_context' into tdb_private.h, hiding it from
   users. This was done to allow the structure to change without
   breaking code that uses tdb.

 - added accessor functions tdb_fd(), tdb_name(), and tdb_log_fn() to
   access the elements of struct tdb_context that were used by
   external code but are no longer visible

 - simplied tdb_append() to use tdb_fetch()/tdb_store(), which is just
   as good due to the way tdb locks work

 - changed some of the types (such as tdb_off to tdb_off_t) to make
   syntax highlighting work better

 - removed the old optional spinlock code. It was a bad idea.

 - fixed a bug in tdb_reopen_all() that caused tdbtorture to sometimes
   fail or report nasty looking errors. This is the only real bug
   fixed in this commit. Jeremy/Jerry, you might like to pickup this
   change for Samba3, as that could definately affect smbd in
   Samba3.

The aim of all of these changes is to make the tdb
transactions/journaling code I am working on easier to write. I
started to write it on top of the existing tdb.c code and it got very
messy. Splitting up the code makes it much easier to follow.

There are more cleanups we could do in tdb, such as using uint32_t
instead of u32 (suggested by metze). I'll leave those for another day.
(This used to be commit 4673cdd0d261614e707b72a7a348bb0e7dbb2482)
2007-10-10 13:38:12 -05:00
Simo Sorce
d8da5e4fb7 r10251: some more work on ldb_sqlite3
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-10 13:38:11 -05:00
Simo Sorce
8bfcb31b0e r10250: the comparison is caseless so we must caseless subtract
otherwise we get the wrong result when comparing upper
case chars with lower case chars
(This used to be commit f6ea6e9382f954be819ec82e28598cdf9cf88661)
2007-10-10 13:38:11 -05:00
Simo Sorce
f77e859e48 r10236: fix (C) note
(This used to be commit 466e6812c35af9096fea05520c6b59a19793c4d1)
2007-10-10 13:38:10 -05:00
Simo Sorce
36d6ebf376 r10233: add commented PRAGMA to avoid fsyncs
(This used to be commit e5d8d834600040793c1e45c7aaceb374df2b3839)
2007-10-10 13:38:10 -05:00
Simo Sorce
38b04883fe r10232: Some work on ldb_sqlite3.
It is still far from being usable in samba4 but I want to commit
so that the work does not get lost by mistake.
This is also a good way to get comments if somebody is interested.

Sorry Derrell I ended up rewriting large parts of the code but I find
this style much more readable. Thanks for the hard work done. Your
work was a good reference for me.

ah the current code also shows some good numbers

sqlite3 generic test:
uid search took 0.05 seconds
real    0m12.492s
user    0m0.492s
sys     0m0.345s

with tdb we still get better numbers:
uid search took 0.46 seconds
real    0m0.892s
user    0m0.360s
sys     0m0.468s

but most of the time is spent in adding operations and I think
there's still a lot of space for improvement.

Simo.
(This used to be commit ace9990060c10d0931f418934b2121aea9512ff7)
2007-10-10 13:38:10 -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
Jelmer Vernooij
3ca370b3db r10038: Update instructions on using gcov with ldb
(This used to be commit 8d246fac49332426699e797f52ef694083b5e2ea)
2007-10-10 13:36:32 -05:00
Jelmer Vernooij
4462869db2 r9948: Be a bit less verbose
(This used to be commit 071dba2d0ae964e9901adf0c4870894deed43650)
2007-10-10 13:36:24 -05:00
Andrew Bartlett
95fcf031b0 r9929: Fix indentation
Andrew Bartlett
(This used to be commit d6f57ec921839b46534eb64a7b6374161ff37835)
2007-10-10 13:36:23 -05:00
Andrew Bartlett
ca87549168 r9928: ncName is a DN, and needs to use DN matching rules.
Andrew Bartlett
(This used to be commit b89e7a7fcdf80f2cab581f138358b4324d15d6bc)
2007-10-10 13:36:22 -05:00
Jelmer Vernooij
f14f4fd706 r9918: Fix two copy-n-paste bugs that were preventing the modification
of special DN's when the rdn_name or timestamps modules were in use.
(This used to be commit c61efb2ff851f8f55b4747c8068c7e780083e35c)
2007-10-10 13:36:22 -05:00
Jelmer Vernooij
08f630be82 r9915: Some more mappings. Fix weird sAMAccountName values.
(This used to be commit 8ff1358f401e0086b941f4ff73af5d4c38a1f8bf)
2007-10-10 13:36:21 -05:00
Jelmer Vernooij
4f4dae05f0 r9912: Fix another bug in ldb_map.
(This used to be commit 4c3b37d660e798764e35a31221f4939ab6f36948)
2007-10-10 13:36:21 -05:00
Jelmer Vernooij
ca6c0af86f r9908: Generate posixUser and posixGroup as well
(This used to be commit ebed25b47d3d8bd350b51b462d605d713f17602d)
2007-10-10 13:36:21 -05:00
Jelmer Vernooij
e2e2508b58 r9899: Be more conservative about what is sent to the remote server in ldb_map.
(This used to be commit 76e943d4416e38ce4cce27d5403bc3e133d0025b)
2007-10-10 13:36:21 -05:00
Tim Potter
b2c54c08bf r9881: I can't believe this can make a difference...
(This used to be commit 31069bfd18c4b7355dbf85df9fb479705b0e3b4b)
2007-10-10 13:36:20 -05:00
Tim Potter
4d0ec61e49 r9880: Convert remaining initialisers to more portable form. This should
clean out a lot of build farm breakage.
(This used to be commit c34fbdc6c3fd2c066c713bdd84e6f40f6aa8cd43)
2007-10-10 13:36:19 -05:00
Tim Potter
7a3e0a89f1 r9879: A quick check to see if nested initialisers (?) is portable across the
build farm.  I have a feeling it isn't.
(This used to be commit 7cc8df0c2f46fb9ce753e368ce645bcb69585334)
2007-10-10 13:36:19 -05:00
Jelmer Vernooij
1b5cb7309d r9857: Fix rename/delete issues
(This used to be commit d6dce7ef3eb21a5e90244cf2ce7403ab43b12d63)
2007-10-10 13:36:18 -05:00
Jelmer Vernooij
05db3024ba r9854: Finish ldb_map testsuite
Update PLAN
Some more small other fixes
(This used to be commit de2bde2526ffaf521253e3b9e58fc11417986321)
2007-10-10 13:36:18 -05:00