summaryrefslogtreecommitdiff
path: root/source3/tdb
AgeCommit message (Collapse)AuthorFilesLines
2002-01-22Raise log level of warning produced when the open() of the tdb fails.Tim Potter1-1/+1
Sometimes an open error is OK. (This used to be commit 5fb3be62910faf91e0e8381ba91f314f2092cb8e)
2002-01-22Display tdb name of "unknown" in logging debug when tdb has not been named.Tim Potter1-1/+1
(This used to be commit 96c36e51ee4df4c46e5e9e611844dfa83260f606)
2002-01-20This is another *BIG* change...Andrew Bartlett1-1/+1
Samba now features a pluggable passdb interface, along the same lines as the one in use in the auth subsystem. In this case, only one backend may be active at a time by the 'normal' interface, and only one backend per passdb_context is permitted outside that. This pluggable interface is designed to allow any number of passdb backends to be compiled in, with the selection at runtime. The 'passdb backend' paramater has been created (and documented!) to support this. As such, configure has been modfied to allow (for example) --with-ldap and the old smbpasswd to be selected at the same time. This patch also introduces two new backends: smbpasswd_nua and tdbsam_nua. These two backends accept 'non unix accounts', where the user does *not* exist in /etc/passwd. These accounts' don't have UIDs in the unix sense, but to avoid conflicts in the algroitmic mapping of RIDs, they use the values specified in the 'non unix account range' paramter - in the same way as the winbind ranges are specifed. While I was at it, I cleaned up some of the code in pdb_tdb (code copied directly from smbpasswd and not really considered properly). Most of this was to do with % macro expansion on stored data. It isn't easy to get the macros into the tdb, and the first password change will 'expand' them. tdbsam needs to use a similar system to pdb_ldap in this regard. This patch only makes minor adjustments to pdb_nisplus and pdb_ldap, becouse I don't have the test facilities for these. I plan to incoroprate at least pdb_ldap into this scheme after consultation with Jerry. Each (converted) passdb module now no longer has any 'static' variables, and only exports 1 init function outside its .c file. The non-unix-account support in this patch has been proven! It is now possible to join a win2k machine to a Samba PDC without an account in /etc/passwd! Other changes: Minor interface adjustments: pdb_delete_sam_account() now takes a SAM_ACCOUNT, not a char*. pdb_update_sam_account() no longer takes the 'override' argument that was being ignored so often (every other passdb backend). Extra checks have been added in some places. Minor code changes: smbpasswd no longer attempts to initialise the passdb at startup, this is now done on first use. pdbedit has lost some of its 'machine account' logic, as this behaviour is now controlled by the passdb subsystem directly. The samr subsystem no longer calls 'local password change', but does the pdb interactions directly. This allow the ACB_ flags specifed to be transferred direct to the backend, without interference. Doco: I've updated the doco to reflect some of the changes, and removed some paramters no longer applicable to HEAD. (This used to be commit ff354c99c585068af6dc1ff35a1f109a806b326b)
2002-01-18Ensure we log tdb open fails. Patch from Alexander Bokovoy ↵Jeremy Allison1-4/+2
<a.bokovoy@sam-solutions.net> Jeremy. (This used to be commit eb99e7f29c2d6041054331425cb245da86bedaa4)
2002-01-09Move SAFE_FREE into tdb.c to stop exporting it into tdb.h namespace.Jeremy Allison2-5/+5
Jeremy. (This used to be commit 4f703b84cd7f258ae0169d52ca761b9404ccb348)
2002-01-09Added int32 version of "atomic" update.Jeremy Allison1-0/+35
Jeremy. (This used to be commit 1233b553e78b8d7580b9ea4f1bba62c78b4cd186)
2002-01-09Added int32 versions of the endian-dependent code.Jeremy Allison1-2/+66
Jeremy. (This used to be commit d57fb9a8c25a95e434cb5fb3d63a87d98abeefef)
2002-01-03Fixed nasty cast of tdb_delete in traversals.Jeremy Allison1-0/+11
Jeremy. (This used to be commit a0cdec3acc82d1ce0292fadd4b8dac23638450f3)
2002-01-02debug statement fixups.Jeremy Allison2-31/+27
Merge SAFE_FREE fix in tdb from 2.2, and IRIX fix. Jeremy. (This used to be commit eb6607466565bcd5b3800492d0bc1ae8a44da4f6)
2001-12-31more irix -64 portability fixesAndrew Tridgell1-1/+2
(This used to be commit 65e857b36e170e3ecd78bf6695ae73342e9c04cd)
2001-12-20Ignore torture.tdbMartin Pool1-0/+1
(This used to be commit 79feca4d25aaa7e15553a10707efdb3003fed9cf)
2001-12-20net ads password and net ads chostpass commands from Remus KoosAndrew Tridgell1-3/+4
(This used to be commit 412e79c448bf02e3097b5c14a36fe0172d8d2895)
2001-12-13Must check against -1 for fcntl error check.Jeremy Allison1-4/+4
Jeremy (This used to be commit 1d2504b5c76bf23ac49a401adce8a49f193bc22c)
2001-12-12add *.po32 to ignore listHerb Lewis1-0/+1
(This used to be commit fe0db4c55f8bfc70004edd60a29359337fa40723)
2001-12-11Fix up warnings. Make tdb_openXX() names const.Jeremy Allison3-8/+8
Jeremy. (This used to be commit 9e3581827d91f5fd33fabd5ad4c9a79d63355731)
2001-12-11Tidyups to remove warnings on tdb standalone code.Jeremy Allison3-22/+23
Jeremy. (This used to be commit b03aaddcf35dee93556013eaac9d99bc0f22256a)
2001-12-10Doc.Martin Pool1-1/+3
(This used to be commit 6c684c89a4e6e212476335ee57c3b616015598f8)
2001-12-10Allow for internal databases which may have no name.Martin Pool1-5/+5
(This used to be commit caa08bb56e2dc533c3754f90f6139fe04a317545)
2001-12-10Log more error messages.Martin Pool1-0/+1
(This used to be commit 8118676f780a80662f28c3cc1a74cc12d0e1ef51)
2001-12-10Log more error messages.Martin Pool1-2/+12
(This used to be commit b50e566ab93e9a8068e26c9c902db81311cb394c)
2001-12-10Allocate tdb name up front in case log functions want to use it.Martin Pool1-6/+5
(This used to be commit a228c7efcc06b901ca51a6da77f8a52b77912f55)
2001-12-10tdb_open_ex: More cleanups: just dynamically allocate the TDB_CONTEXTMartin Pool1-14/+27
up front, rather than working on the stack and then copying across. (This used to be commit b1d7d800680f77e02185bb237982b284414aac1e)
2001-12-10Refactor code to check whether already open into its own function.Martin Pool1-8/+21
(This used to be commit 52ef112e10dbe273b6e66c4a5081f468e4630b7d)
2001-12-10tdb_open_ex should always "goto fail" in case of error, rather thanMartin Pool1-1/+2
just returning. I don't think this would leak at the moment, but it's an accident waiting to happen. (This used to be commit fe901ec194d1b8ef94386b097e72508075eb8a54)
2001-12-10Doc.Martin Pool1-0/+4
(This used to be commit bb6c0df4bc4eb8ce789886ec17e434dc27bb34b0)
2001-12-10tdb_open_ex: Continue previous refactoring so that we consistentlyMartin Pool1-12/+12
just say "tdb" not "&tdb". (This used to be commit fac685d30f58c25d73d1690ed008c797291558e4)
2001-12-10tdb_open_ex: Refactor to use a pointer to tdb, rather than an autoMartin Pool1-57/+58
tdb, to be consistent with the rest of the code. (This used to be commit d159415049c25caeaf01b6bc947da3472c54d1f8)
2001-12-10Formatting fixup.Tim Potter1-1/+1
(This used to be commit d902baf70970f0358e825cd520b1794fd46465f0)
2001-12-09added a simple tdbdump utilityAndrew Tridgell2-0/+92
(This used to be commit c4f5a6c65d7dd933e9d6faf14ebf6afcf5232a1e)
2001-12-05changed the DEBUG level of tdb_pack and tdb_unpack. Instead of 8, it's nowJean-François Micouleau1-2/+2
18. when you're looking at a level 10, and it's all clutered with tdb_pack/unpack, it's getting .... And anyway most of our code using tdb_pack/unpack have DEBUG around the call if there is a problem. J.F. (This used to be commit 7e20fad5ed00be4594bfc45603db89d600f46c55)
2001-12-04Tidup.Jeremy Allison1-43/+80
Jeremy. (This used to be commit 837f2b961b1e7dcd6998f36d58d2059290e89e18)
2001-12-04Put back changes to set errno, which seem to do no harm.Martin Pool2-13/+55
(This used to be commit 3dbb5dfcfb29671f136d1ed6c865362eaf027446)
2001-12-04Fix headers. This I know is correct.Martin Pool1-0/+1
(This used to be commit 58cfea3c2aba5a8309e4084ec8df0cfcb48a4075)
2001-12-04Fix headers. This I know is correct.Martin Pool1-0/+1
(This used to be commit 0c22a10d738041b3dc0c92d8ea060a86de769563)
2001-12-04undoMartin Pool7-184/+83
(This used to be commit fc176f15f27686049453552219b56b9de33ceffa)
2001-12-04Implement suggestion from tridge to leave the old tdb_open interfaceMartin Pool5-13/+22
as it was, and add tdb_open_ex() which takes a log callback. I guess this makes more sense since it's a public interface. (This used to be commit 391a65395e6cdc0300f81eb1072a3366cacd1203)
2001-12-04Better error handling:Martin Pool6-77/+139
- tdb_open api changed so that you now pass an error handling callback when opening the file, so that errors detected during opening have somewhere to go. (All calls from the body of Samba to this function go through a wrapper in tdbutil, which has been updated.) - Clean up logic for deciding how to open tdb. Emit log messages if something goes wrong (e.g. bad magic.) - tdbtool now logs errors to stderr. (This used to be commit 0aa800618eab1043d802c04fb1d125cd07936769)
2001-12-04Magic file for TDB databases.Martin Pool1-0/+10
(This used to be commit e9085129ddf15d499d77c77694c05b028593718c)
2001-12-04Set errno in tdb_open in cases where we detect an error in opening theMartin Pool2-12/+35
database, but no underlying system call sets errno. The particular case I had was a mangled .tdb, but there are others. For this one, set EIO. It's a shame Unix messages aren't more detailed -- "bad data format" would be better. (This used to be commit 5630a988be05c21b60aba6304d4aaadce6024817)
2001-12-03Added prototypes for new fns. Thanks Elrond.Jeremy Allison1-0/+7
Jeremy. (This used to be commit 2a7bd621b400173d61bb0adab3eded0baeb48d0b)
2001-12-03Don't display any data if tdb_fetch() failed in the tdbtool "fetch"Tim Potter1-1/+4
command. (This used to be commit a1cf70ab65058258e56ffcff5b28087b29425b1c)
2001-12-03Updated definition of fstring.Tim Potter1-4/+11
print_asc(): Don't try to print a trailing NULL character print_key(), print_rec(): Display key in ASCII (This used to be commit 303b3a35951211775a4e87bcca47cc21236aa422)
2001-11-28Added a 'keys' command to tdbtool which prints out all keys in the tdb.Tim Potter1-0/+10
(This used to be commit 1d2305c233ef40ccb016688f918e34392d1a691e)
2001-11-09Removed #ifdef TDB_DEBUG around tdb_dump_all() and tdb_printfreelist()Tim Potter2-13/+5
so that tdbtool can be compiled without having to make clean. (This used to be commit dad688d8c6b3c98173a846ad833599a4016d2e1a)
2001-10-16Don't core dump when using spinlocks on a read-only tdb. Unfortunately thisJeremy Allison1-4/+16
means that a read-write opener and a read-only opener are using different locking mechanisms - this needs to be addressed, but it's hard as the read-write opener using the spinlocks is usually first, so there's no way to force them to change down to the fcntl method. Read only access is less important anyway and can never corrupt the tdb anyway, so errors in read-only record reads are more tolerable. Jeremy (This used to be commit 21f776df5932e024a0d1fef9097377d35b5cf511)
2001-10-12Fix for tdb_oob() on TDB_INTERNAL databases.Jeremy Allison1-2/+7
Jeremy. (This used to be commit 2b135fba625191a13e4110c68531a0e6d5fb373d)
2001-10-06PPC spinlocks work again. Sorry, my bad.Anton Blanchard1-1/+1
(This used to be commit 6612abf8270c9c697fdb528aba3af07ea5be7f33)
2001-10-03Ensure accessing NT member servers works with a Samba PDC. Don'tJeremy Allison1-1/+2
change these timestamp settings without good reason. Remove CLEAR_IF_FIRST flag is tdb is read-only. Jeremy. (This used to be commit a71d9d98b013a6c30fd85524b7cdc929bdbd9bcb)
2001-09-27fixed compilation of tdbtortureAndrew Tridgell1-0/+5
(This used to be commit 2f44756233e2655856f003bb15c3898118756b98)
2001-09-24tdbtorture updates from when I was trying to track down the hp tdb bugAndrew Tridgell1-12/+50
(This used to be commit b8d9d1fca3eec5150fb9784f1d0157a82e60cebd)