Howard Chu
ad79308d5a
Merge remote-tracking branch 'origin/mdb.master'
2012-09-14 06:52:37 -07:00
Howard Chu
ab04c50a32
ITS#7383 More explicit error codes
2012-09-14 06:51:31 -07:00
Howard Chu
c2bd7e630d
Merge remote-tracking branch 'origin/mdb.master'
2012-09-12 10:47:36 -07:00
Howard Chu
48ef27b6f5
ITS#7385 fix mdb_page_split (again)
...
More for d793594173 ITS#7229
2012-09-12 10:45:51 -07:00
Howard Chu
c56ede7781
Merge remote-tracking branch 'origin/mdb.master'
2012-09-07 13:42:52 -07:00
Howard Chu
de77882898
Update comments, bump version
...
Note read-write vs read-only mmap tradeoffs.
2012-09-07 13:40:07 -07:00
Howard Chu
2e677bcb99
msync should default to fully synchronous
2012-09-06 11:17:25 -07:00
Howard Chu
1c733bdc4e
Add msync support for WRITEMAP option
2012-09-05 08:40:17 -07:00
Howard Chu
d8a89464cd
Add MDB_WRITEMAP to use a writable mmap
2012-09-05 08:39:46 -07:00
Howard Chu
14a08f877f
More for 57b5fbea49
...
Fix abort of child txn
2012-09-04 06:02:26 -07:00
Hallvard Furuseth
4608cd9552
libmdb: Fix P_INVALID when pgno_t != unsigned long
2012-08-29 06:43:35 +02:00
Hallvard Furuseth
3e3c785034
libmdb: Check sem_open() against SEM_FAILED.
2012-08-29 06:42:52 +02:00
Howard Chu
d7dd1bdb82
Merge remote-tracking branch 'origin/mdb.master'
2012-08-27 14:45:58 -07:00
Howard Chu
4bc18a5dd3
In mdb_audit, change assert to fprintf
2012-08-27 14:45:16 -07:00
Howard Chu
85ae5011e7
Fix mdb_audit()
...
due to a0993354a6
2012-08-26 11:05:45 -07:00
Howard Chu
f980c64cb6
Merge remote-tracking branch 'origin/mdb.master'
2012-08-24 05:34:29 -07:00
Ondrej Kuznik
bd92b570a8
ITS#7369 mdb_stat: cleanup in case something went wrong.
2012-08-24 05:33:46 -07:00
Howard Chu
a2d1b42e39
ITS#7369 abort txn before exiting
2012-08-24 05:23:55 -07:00
Howard Chu
67dd10ed2c
Merge remote-tracking branch 'origin/mdb.master'
2012-08-22 23:02:48 -07:00
Howard Chu
916995236e
ITS#7364 also close the mutexes as needed
...
Otherwise a process that opens and closes an env more than once
will leak mutex handles. (WIN32/BSD)
2012-08-22 23:01:19 -07:00
Chris Mikkelson
46cf442700
ITS#7364 Remove POSIX semaphores when the last user closes the mdb environment.
2012-08-22 22:55:01 -07:00
Rich Megginson
a0e48e7246
ITS#7360 accept nss certname in the form of tokenname:certnickname
...
There are cases where the user may want to force the use of a particular
PKCS11 device to use for a given certificate. Allow the user to do this
with MozNSS by specifying the cert as "tokenname:certnickname" where
token name is the name of a token/slot in a PKCS11 device and certnickname
is the nickname of a certificate on that device.
2012-08-22 14:21:23 -07:00
Howard Chu
1ebf95c31b
ITS#7359 cleanup for loop
2012-08-22 14:13:10 -07:00
Jan Vcelak
6833b8717a
ITS#7359 MozNSS: fix whitespaces in all my changes
...
To be compliant with OpenLDAP coding standards.
2012-08-22 14:12:01 -07:00
Howard Chu
d377f353b7
Merge remote-tracking branch 'origin/mdb.master'
2012-08-22 14:09:56 -07:00
Chris Mikkelson
9f983b7999
ITS#7363 Use posix semaphores on apple and bsd systems.
2012-08-22 14:09:08 -07:00
Jan Vcelak
46dc6c424b
ITS#7359 MozNSS: prefer unlocked slot when getting private key
2012-08-21 13:32:34 -07:00
Howard Chu
68c3cf9795
ITS#7358 fix ITS#7270 patch
...
commit 8bb9e88d5f breaks Visual C
(as well as our own coding rules)
2012-08-21 13:22:19 -07:00
Howard Chu
a787eb641f
Merge commit 'd53644f6'
2012-08-21 12:18:10 -07:00
Howard Chu
f114fec545
Loop thru all DBs and show their stats
...
This is quick and dirty, should be integrated into mdb_stat.
2012-08-16 10:25:40 -07:00
Howard Chu
d53644f682
Minor cleanup
2012-08-02 16:03:10 -07:00
Howard Chu
d1120fbccc
Write optimization: avoid copying unused portions of pages.
2012-07-31 16:03:48 -07:00
Jan Vcelak
f425a07d02
ITS#7331 MozNSS: ignore untrusted issuer error when verifying server cert
...
Untrusted issuer error can appear with self-signed PEM certificates.
2012-07-26 10:16:39 -07:00
Howard Chu
8fe328dd51
Merge remote-tracking branch 'origin/mdb.master'
2012-07-26 08:43:57 -07:00
Howard Chu
234cd9dfb5
Fix txn_commit error check
2012-07-26 08:42:41 -07:00
Howard Chu
0e3fa1ee14
Merge remote-tracking branch 'origin/mdb.master'
2012-07-26 07:25:07 -07:00
Howard Chu
23219ed32a
Fix 205bb17793
...
Ignore current cursor pos if it's out of bounds.
2012-07-26 07:22:52 -07:00
Howard Chu
d1a7fa267b
Update sub-DBs before updating free list
2012-07-26 06:25:31 -07:00
Howard Chu
4317c7ce54
Merge remote-tracking branch 'origin/mdb.master'
2012-07-25 12:32:28 -07:00
Howard Chu
d3990eb2f8
Append mode should also detect keys that are too small
2012-07-25 12:31:08 -07:00
Howard Chu
cf74dfbb2d
Merge remote-tracking branch 'origin/mdb.master'
2012-07-24 10:18:40 -07:00
Howard Chu
5da67968af
Fix root split check in mdb_page_split
2012-07-24 08:50:42 -07:00
Mat Booth
e6d190c7de
ITS#7332 Changes required to build with Microsoft Visual Studio
2012-07-23 08:29:39 -07:00
Howard Chu
205bb17793
Skip unneeded calls to mdb_page_get in mdb_page_search
2012-07-23 04:23:49 -07:00
Howard Chu
832f7de6ae
Merge remote-tracking branch 'origin/mdb.master'
2012-07-22 17:58:39 -07:00
Howard Chu
ccc4d23e74
Leave extra space when creating a fake page
...
Minimizes the number of memcpy's if additional dups are stored.
2012-07-22 17:45:50 -07:00
Howard Chu
05ec98d119
Append mode still needs to detect duplicates
2012-07-22 17:45:50 -07:00
Emily Backes
c453a236fc
Update name information
2012-07-22 07:08:35 -07:00
Howard Chu
2b1b64f021
Merge remote-tracking branch 'origin/mdb.master'
2012-07-21 06:21:36 -07:00
Howard Chu
14fb1f59c7
Append tweaks, page_split fixes
...
Append mode now does no key comparisons, input must be in sorted order.
page_split was not updating cursor parents correctly.
2012-07-21 06:19:09 -07:00
Howard Chu
accd19edbc
Merge remote-tracking branch 'origin/mdb.master'
2012-07-18 14:19:19 -07:00
Howard Chu
7e9a6134fd
Make sure cursor's DB is init'd if STALE.
2012-07-17 04:04:52 -07:00
Howard Chu
a0993354a6
Don't use env-private copy of DB root nodes.
...
Just lookup the DB roots as needed. When many DBs are in use,
most of the copies won't be referenced in a given txn, and
there's a bad race condition in the copy routine.
2012-07-13 15:48:26 -07:00
Howard Chu
0ea56294f1
Fix darwin sem_open() names
...
Must begin with '/'
2012-07-13 14:14:36 -07:00
Howard Chu
1a9775dc5a
Fix ID -> MDB_ID due to 20baad4a20
2012-07-13 14:14:36 -07:00
Howard Chu
248fd1c7b8
Windows thread callback support
2012-07-13 14:14:36 -07:00
Howard Chu
43d47c46a7
ITS#6262 fix gettime() regression
...
Add a mutex in ldap_pvt_gettime(), delete the mutex comment
since it's no longer relevant (and was ignored anyway). This
could only ever affect multi-processor machines.
2012-07-11 16:53:33 -07:00
Howard Chu
113538806f
Merge remote-tracking branch 'origin/mdb.master'
2012-07-09 08:44:12 -07:00
Howard Chu
e562f53e10
Drop me_toggle, unused
2012-07-08 18:43:45 -07:00
Howard Chu
179c44e7da
Revert "libmdb: Do not use the MDB_txbody.mtb_txnid field."
...
This reverts commit 4a0b30499c .
2012-07-08 18:18:12 -07:00
Howard Chu
c6b5abbfd2
Merge remote-tracking branch 'origin/mdb.master'
2012-07-06 18:03:06 -07:00
Howard Chu
433105f09b
Fix: avoid direct reference to meta pages
...
Relevant info should be copied during txn_begin only.
2012-07-06 17:38:03 -07:00
Howard Chu
df7ddb6bf4
Add MDB_NOMETASYNC env option.
...
Just a trial. This may not make sense if we decide to split the
meta pages into their own separate file, to allow meta traffic to
reside on a separate spindle.
2012-07-05 18:11:18 -07:00
Howard Chu
38560c2517
Tweak b802bcf704
...
Clarify prev commit, fix Doxygen comments broken by earlier changes
2012-07-05 17:43:29 -07:00
Howard Chu
b802bcf704
Partial revert of 13c663f666
...
Don't re-use free pages so soon; that leaves us vulnerable to
DB corruption if data syncs successfully but meta doesn't.
2012-07-05 16:52:13 -07:00
Jan Vcelak
2db5195650
ITS#7316 MozNSS: do not retry when reading the pin from file
...
Avoid infinite loop if the pin in the password file is wrong.
2012-06-26 06:47:48 -07:00
Jan Vcelak
a171237999
ITS#7315 MozNSS: do not authenticate to a slot manually
...
We cannot rely on tc_certificate->slot value, the library will choose
the correct slot itself when needed. Just provide correct pin argument.
2012-06-26 06:46:29 -07:00
Jan Vcelak
3531c344e1
ITS#7314 MozNSS: lock whole init and clenaup process
2012-06-26 06:44:46 -07:00
Jan Vcelak
d07779e97b
ITS#7313 MozNSS: store certificate object instead of nickname in in ctx
...
PEM certificates should not be referenced by nicknames, because the
nicknames are derived from basename of the cerificate file and in
general are not easy-predictable.
The code of Mozilla NSS backend depends on some aspects of PEM module
and tries to guess the nicknames correctly. In some cases the guessing
is wrong.
2012-06-26 06:43:11 -07:00
Jan Vcelak
87132b820d
ITS#7312 MozNSS: context specific token description for certdb
2012-06-26 06:41:05 -07:00
Jan Vcelak
221531b31a
ITS#7241 unbind: free socket prior to destroying TLS context
2012-06-25 12:53:29 -07:00
Howard Chu
450d224291
ITS#7293 make ldapava_free static
2012-06-23 05:41:39 -07:00
Howard Chu
e2b5aaf5dd
ITS#7290 fix ldap_int_initialize() to set debug level
2012-06-07 05:15:04 -07:00
Jan Vcelak
00d0e16272
ITS#7291 MozNSS: read pin from file file can cause infinite loop
...
The buffer allocated for reading password file has to be initialized
with zeros, or we need to append zero at the end of the file. Otherwise
we might read unitialized memory and consider it to be a password.
2012-06-07 05:05:08 -07:00
Tim Strobell (Contractor)
4b6bd2c600
ITS#7289 MozNSS: cipher suite selection by name may be ignored
2012-06-07 05:03:15 -07:00
Jan Vcelak
dc3842fca3
ITS#7287 MozNSS: do not overwrite error in tlsm_verify_cert
2012-06-05 03:43:24 -07:00
Tim Strobell (Contractor)
2c2bb2e7ae
ITS#7285 Mozilla NSS: default cipher suite always selected
2012-06-05 03:43:15 -07:00
Quanah Gibson-Mount
3f46f2e0bc
Merge remote branch 'origin/mdb.master'
2012-06-04 19:41:58 -07:00
Howard Chu
a334257800
Tweak prev commit, use first unused slot
2012-06-02 05:26:31 -07:00
Howard Chu
4cabb24b83
Fix mdb_open, re-use closed dbi slots
2012-06-02 05:24:47 -07:00
Jan Vcelak
df1d118de8
ITS#7276 MozNSS: allow CA certdb together with PEM CA bundle file
...
Prior to this patch, if TLS_CACERTDIR was set to Mozilla NSS certificate
database and TLS_CACERT was set to a PEM bundle file with CA
certificates, the PEM file content was not loaded.
With this patch and the same settings, OpenLDAP can verify certificates
which are signed by CAs stored both in certdb and PEM bundle file.
2012-05-30 06:18:50 -07:00
Frederik Deweerdt
8bb9e88d5f
ITS#7270 Protect accesses to ldap_int_hostname with a mutex.
...
Not protecting the accesses to ldap_int_hostname could lead to a double
free.
2012-05-30 05:49:53 -07:00
Howard Chu
22bf5188a9
Merge remote-tracking branch 'origin/mdb.master'
2012-05-09 12:13:05 -07:00
Howard Chu
eeec509150
ITS#7266 fix rebalance for LEAF2 pages
2012-05-09 11:24:25 -07:00
Howard Chu
ff1839ebe6
Merge remote-tracking branch 'origin/mdb.master'
2012-05-08 22:19:05 -07:00
Howard Chu
a540597dd6
More freelist tweaks, avoid referencing freed page
2012-05-08 22:17:17 -07:00
Howard Chu
326d07d8c6
Merge remote-tracking branch 'origin/mdb.master'
2012-05-05 19:42:30 -07:00
Howard Chu
fadf75a9cb
Further clarification of mdb_open()
2012-05-05 19:41:45 -07:00
Howard Chu
4d0d12db27
Merge remote-tracking branch 'origin/mdb.master'
2012-04-18 16:05:16 -07:00
Howard Chu
fbf9c23304
ITS#7251 fix Apple/Windows shared mutex naming
2012-04-18 15:59:54 -07:00
Hallvard Furuseth
20baad4a20
libmdb: midl.h namespace cleanup.
...
Prefix ID, NOID, ID2, IDL, ID2L with 'MDB_'.
Also drop bdb from file description.
2012-04-12 08:24:36 +02:00
Hallvard Furuseth
0a4aa88927
libmdb: Simplify pick_meta() from read_meta().
...
Put one call in #if MDB_DEBUG. Move DPRINTF(Using meta page #) there.
2012-04-12 08:15:33 +02:00
Hallvard Furuseth
dce5bb2fee
libmdb: Simplify mdb_default_cmp. No real change.
2012-04-12 08:15:33 +02:00
Hallvard Furuseth
729a8a2819
libmdb: signed meets unsigned warning cleanup
2012-04-12 08:15:33 +02:00
Hallvard Furuseth
99fa22c164
libmdb: MDB_FDATASYNC code cleanup.
...
Define MDB_FDATASYNC() instead of redefining fdatasync().
2012-04-12 08:15:33 +02:00
Hallvard Furuseth
592b3f8727
libmdb: Add C++ 'extern "C" {}' to *.h
2012-04-12 08:15:33 +02:00
Hallvard Furuseth
8e1ebbb4a8
libmdb: Don't open datafile twice when not needed.
...
If the database is opened with MDB_RDONLY or MDB_NOSYNC,
instead use the same file descriptor for me_mfd and me_fd.
Also factor out Windows/Unix error handling after open.
2012-04-12 08:15:33 +02:00
Hallvard Furuseth
6d0b424dbe
libmdb: Set close-on-exec flag on lockfile
2012-04-12 08:15:33 +02:00
Hallvard Furuseth
4a0b30499c
libmdb: Do not use the MDB_txbody.mtb_txnid field.
...
Get txn->mt_txnid from the meta page instead. Otherwise it
and txn->mt_toggle could become inconsistent, since read-only
txns fetched both from MDB_txbody without mutex proteciton.
2012-04-12 08:15:33 +02:00
Hallvard Furuseth
d1738c3e6b
Fix MDB_DEBUG in last ITS#7299 commit.
...
Make DPRINTF usable in if-else. Silence signed vs unsigned warning.
2012-04-12 07:34:13 +02:00