Commit Graph

824 Commits

Author SHA1 Message Date
Hallvard Furuseth
9dcef9bc80 Cleanup (add prototypes) 2007-06-10 22:06:28 +00:00
Hallvard Furuseth
93fbb87545 Give OperationBuffer normal struct members instead of using
LBER_ALIGNED_BUFFER(OPERATION_BUFFER_SIZE), as discussed in ITS#4078.
Add a corresponding SyncOperationBuffer in overlays/syncprov.c.
2007-05-18 23:54:26 +00:00
Pierangelo Masarati
978c3609e0 allow array of more generic syntaxes 2007-05-16 09:13:14 +00:00
Hallvard Furuseth
bbc719ca56 ITS#4948: '#if <undefined macro>' -> '#ifdef' warning cleanup 2007-05-09 18:17:10 +00:00
Howard Chu
a2405e0a7e Axe slurpd / replog support 2007-04-06 00:21:02 +00:00
Howard Chu
63bef22335 Cleanup conditional arg in prev commit 2007-03-31 00:40:22 +00:00
Howard Chu
c6df30118f ITS#4893 fix prev commit 2007-03-25 12:18:06 +00:00
Howard Chu
7426ab07fc ITS#4893 define LDAP_PF_LOCAL_SENDMSG in <ac/socket.h> if a message must
be sent to transmit client credentials. Buffer the message data.
2007-03-25 04:40:22 +00:00
Pierangelo Masarati
639d678592 cleanup struct declarations 2007-03-20 01:07:10 +00:00
Howard Chu
06212e9de9 Plug leaks 2007-02-16 02:22:24 +00:00
Howard Chu
e28627f1e2 Added "slapd" rewrite map handler, connection_fake_init2 to use existing
tmpmemctx without reinitializing
2007-02-14 08:51:47 +00:00
Howard Chu
59d4b38a7c syncinfo_free must be able to free multiple syncinfos 2007-02-13 14:35:53 +00:00
Howard Chu
f2355e91e0 Unconditionalize gmtime_mutex, always use it when calling lutil_csnstr 2007-02-11 13:52:55 +00:00
Howard Chu
9381fc42a5 Add overlay hooks for entry_get_rw / entry_release_rw 2007-02-06 04:18:14 +00:00
Howard Chu
250cbd286a Optimization: send sid in cookie to avoid getting our changes sent
back to us.
2007-02-05 23:10:22 +00:00
Howard Chu
fffaea79eb Preliminary multi-context support for syncrepl. Passes all single-master
tests, needs multi-master testing.
2007-02-05 04:50:07 +00:00
Howard Chu
51549d2e5d Add olcServerID for configuring serverID portion of CSN 2007-02-04 00:02:38 +00:00
Pierangelo Masarati
f5d26ed730 add helper (and cleanup) 2007-01-27 14:12:59 +00:00
Pierangelo Masarati
53d6d3c957 streamline group attr specification/diagnostics 2007-01-11 20:41:43 +00:00
Howard Chu
a2e299eb22 ITS#4799 remove kerberos / kbind 2007-01-10 00:23:28 +00:00
Howard Chu
a6a8fb514b Add TLS context configuration 2007-01-08 23:36:24 +00:00
Howard Chu
1cc1f9b18a Make syncrepl inherit default TLS settings from main slapd config (except
for reqcert, default demand)
2007-01-08 20:16:45 +00:00
Kurt Zeilenga
da6d9eb046 happy new year 2007-01-02 20:00:42 +00:00
Howard Chu
03dbc30deb Use temporary AttributeDescriptions to prevent unbounded growth 2006-12-26 04:51:08 +00:00
Howard Chu
3bf226382e ITS#3707 preserve filter input, allow (and ignore) undefined attributes 2006-12-25 23:30:45 +00:00
Pierangelo Masarati
9edb2d518e plug rootDSE info one-time leak 2006-12-24 10:51:07 +00:00
Howard Chu
45fbb173b7 Pass op to slap_mods_check() 2006-12-24 06:55:02 +00:00
Howard Chu
6020a6d81d ITS#4337 implement modrdn for back-config 2006-12-24 00:56:37 +00:00
Howard Chu
b79d63516d Rewrite attrs_dup with attrs_alloc.
Add new entry_dup_bv that dups an entry in a single malloc. Leave it
unused for now; faster but consumes more heap.
2006-11-30 06:03:56 +00:00
Howard Chu
2a9afa55a7 Avoid unnecessary calls to oc_bvfind 2006-11-27 19:59:59 +00:00
Pierangelo Masarati
de254abb27 destroy cached groups after identity change (ITS#4760) 2006-11-24 11:43:47 +00:00
Howard Chu
4b6a3e8b6d Convert schema parsers to ConfigArgs so they can pass errors back to clients 2006-11-15 01:18:37 +00:00
Pierangelo Masarati
b6525c14d9 missing decl 2006-10-15 18:03:25 +00:00
Howard Chu
f63f46f0b1 Use a single malloc for entry_decode instead of two - partially decode
the entry to get nvals first, so the size can be computed.
2006-09-20 02:43:47 +00:00
Pierangelo Masarati
4add034d5d destroy exactly what needs to 2006-09-14 23:53:23 +00:00
Howard Chu
18aac0e55e Cleanup prev commit 2006-09-14 00:14:27 +00:00
Howard Chu
9f054b648b Support dynamic add/delete of attributeTypes and objectClasses 2006-09-14 00:06:04 +00:00
Howard Chu
5342ce61dd Add register_at / register_oc helpers. 2006-09-13 12:48:45 +00:00
Howard Chu
eaf976d56c Fix typo from 1.667 2006-09-13 05:32:42 +00:00
Pierangelo Masarati
8eb455e7b2 add sb_version to slap_bindconf;
rework slap_client_connect() and slap_discover_feature() accordingly
2006-09-11 00:52:43 +00:00
Pierangelo Masarati
c3f9d68027 re-enable "-d '?'" as a means to list what loglevels are available (ITS#4666) 2006-09-08 18:10:53 +00:00
Pierangelo Masarati
70624690c3 add attr_normalize*() helper (please holler if I missed any obvious alternative) 2006-09-06 09:06:50 +00:00
Pierangelo Masarati
35f8b9c9f5 release authz resources at shutdown 2006-09-04 07:20:59 +00:00
Pierangelo Masarati
0d2e2772d5 move req2op selection into a helper 2006-09-04 07:17:34 +00:00
Howard Chu
78172aa0cf Entry/Attribute struct caching, to minimize malloc fragmentation
Note: this breaks LDAP_COMP_MATCH and SLAP_ZONE_MALLOC. But they
were probably broken already anyway.
2006-08-29 01:43:23 +00:00
Howard Chu
69fa2d9f93 Move ber_sockbuf_free() to slapd_remove() to avoid using AC_SOCKET_INVALID 2006-08-18 23:54:24 +00:00
Pierangelo Masarati
c458df6441 add bverb_to_mask() API 2006-08-17 16:10:17 +00:00
Howard Chu
7036e2bb89 Delete curcsn arg to slap_get_commit_csn, redundant with op->o_csn 2006-08-15 08:51:49 +00:00
Pierangelo Masarati
cc84163f30 factor connection code out of syncrepl 2006-08-04 19:20:59 +00:00
Hallvard Furuseth
ce44bdbc37 Constify slapd_slp_attrs (assigned a const char* in main.c:slapd_opt_slp()) 2006-05-25 16:32:43 +00:00
Pierangelo Masarati
cff53d4867 allow tools to syslog 2006-05-24 17:57:13 +00:00
Kurt Zeilenga
153e81817f ITS#4414: SLP attributes support from Peter Marschall 2006-04-27 19:36:40 +00:00
Hallvard Furuseth
c044d32262 slap_loglevel_get() prototype 2006-04-13 22:16:17 +00:00
Kurt Zeilenga
eb9a3c1876 unifdef -DSLAP_ACL_HONOR_DISCLOSE
unifdef -DSLAP_ACL_HONOR_MANAGE
unifdef -DSLAP_OVERLAY_ACCESS
unifdef -DSLAP_ORDERED_PRETTYNORM
unifdef -DSLAP_AUTHZ_SYNTAX
Move LDAP_COLLECTIVE_ATTRIBUTES, LDAP_COMP_MATCH, and LDAP_SYNC_TIMESTAMP
back behind LDAP_DEVEL (as these either too experimental or not yet
implemented).
2006-04-12 05:53:26 +00:00
Howard Chu
c6d0edc3b7 Use TLS context stuff in syncrepl 2006-04-07 02:57:39 +00:00
Howard Chu
76bf5d4c76 Use new TLS SSL_CTX support 2006-04-07 01:25:46 +00:00
Howard Chu
daec2febfb ITS#4476 revert connection_write processing back into main thread 2006-04-06 04:34:37 +00:00
Pierangelo Masarati
51e1ab59cd streamline handling of simple bind by global overlays (ITS#4454) 2006-03-26 23:03:43 +00:00
Kurt Zeilenga
8ac8d70a55 TXN protocol element parsers (without any backend support)
Misc cleanup
2006-03-07 00:48:14 +00:00
Kurt Zeilenga
d2d1eb786b Improved bignum detection/use 2006-02-10 08:21:02 +00:00
Howard Chu
bf81549c88 Prefer long long to BIGNUM or GMP 2006-02-09 07:48:19 +00:00
Howard Chu
0ef7742328 Reparse unknown debug flags after config is read to allow use
of dynamically registered debug levels
2006-02-02 08:30:56 +00:00
Howard Chu
51c5916149 ITS#4364 add filter_dup, don't use str2filter to dup filters. 2006-01-23 20:53:52 +00:00
Howard Chu
b85926a2c1 ITS#4339 attributeoptions patch from Ralf Haferkamp @ SuSE 2006-01-13 16:42:34 +00:00
Pierangelo Masarati
1a217516f0 allow control handlers to be replaced 2006-01-11 19:36:18 +00:00
Howard Chu
3e682cdac4 Propagate local errors up, fix test045 2006-01-11 07:37:42 +00:00
Pierangelo Masarati
a54ca7a6ce factor ACI code out of slapd; now it can only use dynacl layer 2006-01-06 17:12:35 +00:00
Pierangelo Masarati
45cda82eb1 allow load_extop to replace an existing handler (not by default, though) 2006-01-06 17:08:54 +00:00
Kurt Zeilenga
acbb5cf689 Happy new year! 2006-01-03 23:11:52 +00:00
Pierangelo Masarati
8e7e8c4d04 allow modules to register callbacks for dynamic data in root DSE 2006-01-02 08:57:56 +00:00
Luke Howard
b6fffd1417 Add orr_modlist member to request structure, containing a list of
modifications to be applied by the backend atomically with a modify
RDN request.

Handle updating of RDN values in frontend.

Code that calls a backend's be_modrdn should call slap_modrdn2mods(op, rs)
before invoking the backend and cleanup with slap_mods_free( op->orr_modlist, 1 ).
See do_modrdn() for an example.
2006-01-01 09:23:24 +00:00
Pierangelo Masarati
4a86a767ab more unparsing buffer overflow cleanup 2005-12-20 15:33:50 +00:00
Pierangelo Masarati
81bafb9935 fix potential overflow in syncrepl_unbind() and related helpers 2005-12-20 14:31:16 +00:00
Pierangelo Masarati
3517bdf260 revert previous commit(s); clarify usage of "-s" in slapd(8). 2005-12-20 08:20:16 +00:00
Pierangelo Masarati
662cb94e06 helper to destroy modrdn modifications... 2005-12-06 22:54:51 +00:00
Howard Chu
bb1984eb3e Fix mod delete by ordered index 2005-12-05 11:46:56 +00:00
Pierangelo Masarati
84bb488ec2 allow to register (and expose) a supported feature 2005-11-27 23:17:57 +00:00
Pierangelo Masarati
f86543c770 cleanup filter escaping 2005-11-25 12:16:27 +00:00
Pierangelo Masarati
429a6f5353 fix wrong response tags (ITS4182; consequence of fixing ITS#4173) 2005-11-17 23:52:56 +00:00
Pierangelo Masarati
4537065ffc further isolation and cleanup of ACI code 2005-11-10 00:52:43 +00:00
Pierangelo Masarati
fc2912ba92 move bindconf_[un]parse() into generic API 2005-11-06 23:28:54 +00:00
Howard Chu
c5b44f3660 ITS#4128 use backend_db_init to init the private backend 2005-11-03 20:31:11 +00:00
Pierangelo Masarati
183b696e76 address ITS#4127 (please review) 2005-10-31 16:00:51 +00:00
Howard Chu
4bb234bac8 ITS#4108 Cleanup accept/close race conditions. 2005-10-29 04:17:56 +00:00
Howard Chu
fc621a1c78 Add tool-threads config keyword, init thread pool in tool mode. 2005-10-27 09:29:42 +00:00
Howard Chu
37e58a73a4 Revert prev commit, use -g option to disable glue instead 2005-10-15 21:52:01 +00:00
Howard Chu
10a696bd15 ITS#4089 use slapcat -n XX to specify just the superior of a glued tree 2005-10-15 20:08:56 +00:00
Pierangelo Masarati
bd5706d8e5 complete fix of slapd-monitor log modify (ITS#4091) 2005-10-15 17:37:18 +00:00
Kurt Zeilenga
9bc19c5232 Revised lightweight dispatcher -- writers moved into worker threads
Presently spawns operations in separate thread to ease clr_read/wake handling.
Seems to perform reasonable well...
2005-10-15 06:54:55 +00:00
Kurt Zeilenga
577bfc477e More cleanup 2005-10-14 22:04:03 +00:00
Hallvard Furuseth
78873370c8 constify berval arg to load_extop(), to match usage 2005-10-14 12:57:07 +00:00
Howard Chu
7dcb68f6fa Move CSN invocations to backends 2005-10-13 11:58:44 +00:00
Kurt Zeilenga
6db7e605ee Align Operation buffers using LBER_ALIGNED_BUFFER 2005-10-12 23:17:28 +00:00
Howard Chu
12733ab92f ITS#3996 fix glue/syncprov interaction 2005-09-27 15:10:57 +00:00
Howard Chu
9b1d798ad2 Change slap_ad_undef_remove() to slap_ad_undef_promote().
AttributeDescriptions must never be freed in a running slapd.
2005-09-14 06:17:59 +00:00
Pierangelo Masarati
9129a2f7ee silence warnings 2005-09-10 18:59:35 +00:00
Pierangelo Masarati
ec532ce885 disable pagedResults or reject 2005-09-04 20:08:35 +00:00
Howard Chu
4a1eabf257 Moving glue overlay back into slapd core, returning to 2.2 config syntax 2005-09-01 11:45:04 +00:00
Pierangelo Masarati
6cb8b14435 allow undefined attrs to be "proxied" (ITS#3959) 2005-08-25 21:14:26 +00:00
Pierangelo Masarati
4bc8197dcb further ACI factoring out & confinement 2005-08-22 16:03:35 +00:00
Pierangelo Masarati
de90dbbc52 mutex-protect "undefined" attribute descriptions/objectClasses addition (ITS#3958) 2005-08-22 09:46:17 +00:00
Pierangelo Masarati
00b5d8c1bc allow objectClass checking including sups 2005-08-20 19:01:53 +00:00
Luke Howard
2ff5c27f63 Check for NULL in be_match()
Use be_match() in backend.c operational processing
2005-08-18 04:34:04 +00:00
Luke Howard
6cf14a777a Add be_match() macro: one cannot always compare BackendDB pointer
values in order to test equivalence, because the overlay engine
may have reset the backend pointer to a temporary copy on the stack.

So, we test pointer equivalence of the BackendDB itself, then of
be_nsuffix -- this macro can be updated if necessary.
2005-08-18 04:12:04 +00:00
Pierangelo Masarati
ec49990d51 ACIs almost entirely factored out of slapd
Added OpenLDAPaciSyntax based on ITS#3877 by Nikita Shulga
aci_mask() doesn't exploit the normalized value yet (next step)
The case #define SLAPD_ACI_ENABLED / #undef SLAP_DYNACL should
be removed
2005-08-17 17:14:57 +00:00
Hallvard Furuseth
9873eb7ab0 Add missing Statslog() statements (loglevel stats/stats2):
"ABANDON", "STARTTLS", "CANCEL", "WHOAMI", "PASSMOD", "EXT", "INTERM",
  "TLS established", SASL and Extended Response "RESULT".
In Statslog output "conn=xx fd=yy closed", append the reason in
  "()" unless client or server closed the connection after Unbind.
Still missing Statslog output from a number of failed requests.
2005-08-14 00:14:58 +00:00
Pierangelo Masarati
d10250d9f6 add authzSyntax for authzTo/authzFrom attributes; add X-ORDERED 'VALUES' if support for ordered_value_{validate,pretty,normalize} is present; exploit normalization in slap_parseURI (only #ifdef LDAP_DEVEL) 2005-08-11 23:52:17 +00:00
Pierangelo Masarati
2b93e9b376 wrap validate/pretty/normalize for ordered values (only #ifdef LDAP_DEVEL) 2005-08-11 23:35:15 +00:00
Pierangelo Masarati
cccf35c749 allow textual log levels in command line 2005-08-08 14:01:40 +00:00
Howard Chu
9365649dad ITS#3922 fix syncrepl ctxcsn leak 2005-08-08 12:38:19 +00:00
Pierangelo Masarati
e549e4463a free replica info as appropriate 2005-08-07 15:01:13 +00:00
Luke Howard
12d006d17d Add o_no_schema_check to operation structure
entry_schema_check() nows takes Operation instead of Backend as first
argument, allows it to check o_no_schema_check
2005-08-01 15:26:13 +00:00
Luke Howard
71d76fbeba slap_mods2entry() should not zero pointers into the modifications
list because checking is performed on these, rather than the entry.

slap_mods_free() now takes an extra argument indicating whether to
free the values or not.
2005-08-01 02:16:02 +00:00
Luke Howard
6f0edd6c22 Call slap_mods2entry() in do_add(), so that global overlays (including
global SLAPI plugins) have access to op->ora_e.

Note that slap_mods2entry() is still called in fe_op_add() in order to
add any operational attributes.
2005-07-31 04:56:27 +00:00
Pierangelo Masarati
0de20c028f destroy limits at exit 2005-07-25 20:50:03 +00:00
Pierangelo Masarati
4c1339cf22 add infrastructure to register verbmasks; allow to register loglevels programmatically; cleanup glue protos 2005-07-23 11:32:10 +00:00
Luke Howard
9e4ea429e5 Add fe_access_allowed(), should allow global ACL overlays to work 2005-07-23 04:18:48 +00:00
Luke Howard
6da978d5a0 Support for global ACL overlays, corresponding SLAPI support 2005-07-22 05:01:09 +00:00
Luke Howard
6ae5ce5b66 Cleaner version of previous patch (keep operational attr code in backend.c) 2005-07-22 03:44:04 +00:00
Howard Chu
ddf6c7b298 Plug more memleaks 2005-07-21 23:26:40 +00:00
Luke Howard
857543c1f8 add prototype for overlay_op_walk() 2005-07-21 13:35:59 +00:00
Pierangelo Masarati
a27a32ccc4 fix arbitrary precision number display when no big number library is available 2005-07-19 21:56:15 +00:00
Pierangelo Masarati
499906f464 use appropriate format when no arbitrary precision library is available 2005-07-19 19:31:24 +00:00
Luke Howard
2007c4b8b9 Add slap_parse_ctrl() API for parsing already decoded controls; needed
for SLAPI internal operations to use controls
2005-07-19 08:38:46 +00:00
Hallvard Furuseth
62b653fa85 Declare component matching functions 2005-07-11 19:06:10 +00:00
Hallvard Furuseth
a1e27aae40 Format fix: Make style_strings[] global for debug output in dynacl_aci_parse() 2005-07-04 06:25:02 +00:00
Howard Chu
f84fc983fd ITS#3774 delete backend/overlay structures after a failed add 2005-06-13 22:49:01 +00:00
Howard Chu
cd15432de6 More accesslog updates 2005-06-10 11:41:57 +00:00
Howard Chu
21b8be393a Add slap_timestamp(), use mutex in slap_get_csn() 2005-06-07 04:12:14 +00:00
Pierangelo Masarati
00c6709896 expose macro(s) to produce string representations of arbitrary precision counters 2005-05-28 14:30:43 +00:00
Pierangelo Masarati
672c39024e further fixing of back-ldap config; added enum_to_verb call to ease mapping enumerations to strings... 2005-05-23 14:14:34 +00:00
Kurt Zeilenga
18c3f9e093 Add manage obsolete attributes capability. 2005-05-13 23:51:43 +00:00
Kurt Zeilenga
feeeabcd68 manageDIT framework and obsolete objectclasses/DIT-content-rule override 2005-05-13 19:07:31 +00:00
Kurt Zeilenga
002f7ca062 finish global_schemacheck removal 2005-05-13 17:35:36 +00:00
Kurt Zeilenga
c83f7539ae Mostly remove global_schemacheck. More cleanup needed in
bconfig.c and back-sql.
2005-05-11 22:24:18 +00:00
Howard Chu
f82e2cbf39 Make entry_encode/decode independent of slapd structure sizes 2005-05-06 21:24:49 +00:00
Pierangelo Masarati
f0122ce3fc move discover function to frontend 2005-05-05 00:22:43 +00:00
Howard Chu
8f78d064ee Isolate syncrepl stuff in syncrepl.c 2005-04-22 14:38:35 +00:00
Howard Chu
3f542e1868 Fixes for ordered deletes 2005-04-19 18:37:39 +00:00
Howard Chu
b5ef8ea6f4 More modify support. ACL editing works. 2005-04-19 16:39:48 +00:00
Howard Chu
d882ce511d Generic ordered value support 2005-04-14 10:31:51 +00:00
Pierangelo Masarati
a85603c10b more on ITS#3652 2005-04-12 22:38:54 +00:00
Pierangelo Masarati
d2dd3a616c hide changes behind specific #ifdef, conditioned by LDAP_DEBUG; always allow access on back-dnssrv 2005-04-12 01:07:30 +00:00
Howard Chu
119cbcaba4 Schema unparsing support 2005-03-21 08:31:48 +00:00
Howard Chu
fba9235d0f Add HARDCODE schema flags 2005-03-21 00:22:54 +00:00
Howard Chu
2da2336ac6 Reorganiza SLAPD_CRYPT and SLAPD_SPASSWD support for better reentrancy 2005-03-18 06:06:38 +00:00
Howard Chu
bc4564cac4 More back-config / back-ldif integration, added config_generic_wrapper,
added -F option to specify config directory
2005-03-15 08:57:34 +00:00
Howard Chu
74e38c0ad4 More verbmasks cleanup, added index unparsing 2005-03-02 16:35:59 +00:00
Howard Chu
530e93f96e Cleanup verb/mask processing 2005-03-02 14:49:54 +00:00
Howard Chu
58865ccb38 Added general limits retrieval 2005-03-01 23:01:47 +00:00