Commit Graph

79 Commits

Author SHA1 Message Date
Sang Seok Lim
71e78dd7f9 Component Matching module
See "contrib/slapd-modules/comp_match/README" to understand
what's the purpose of  this patch is and how to use it.
2004-10-27 19:37:02 +00:00
Kurt Zeilenga
d611a4b49a unifdef -UNEW_LOGGING 2004-09-04 04:54:28 +00:00
Pierangelo Masarati
41569c5ed7 fix attr_merge() usage; cleanup 2004-08-06 16:39:45 +00:00
Pierangelo Masarati
70af36dbf5 trim useless code 2004-06-28 22:01:30 +00:00
Kurt Zeilenga
1372965d89 ITS#3092: Rename sl_free() and friends to slap_sl_free() 2004-04-20 03:44:57 +00:00
Kurt Zeilenga
6b410330ed cleanup 2004-04-08 07:04:34 +00:00
Kurt Zeilenga
44725e7303 use BER_BVNULL 2004-04-07 04:11:43 +00:00
Kurt Zeilenga
3c598e89fb Happy new year 2004-01-01 19:15:16 +00:00
Kurt Zeilenga
4e15a84452 Updated notices 2003-11-27 01:17:14 +00:00
Kurt Zeilenga
aa225c2c70 Explicitly mark attribute/assertion syntax of values to be normalized 2003-10-18 06:18:05 +00:00
Kurt Zeilenga
7bbc903201 fix up nvalues code so that pretty routines work properly
re-add objectClass pretty routines
2003-04-25 02:28:06 +00:00
Kurt Zeilenga
49a4ae59ba Need to pretty assertion values 2003-04-25 01:01:53 +00:00
Pierangelo Masarati
58d1df26d8 fix possible typo 2003-04-16 19:48:14 +00:00
Howard Chu
f0816ec503 Fix value_find_ex result 2003-04-14 12:27:04 +00:00
Howard Chu
130f6e1b7d Memory context tweaks for other ops 2003-04-12 10:47:11 +00:00
Howard Chu
ece7452b05 More memory context tweaks 2003-04-11 01:29:28 +00:00
Kurt Zeilenga
c75be97ae9 #ifdef -DSLAP_NVALUES 2003-04-05 03:35:16 +00:00
Kurt Zeilenga
1a55430c65 SLAP_NVALUES: more fixes 2003-03-17 00:27:33 +00:00
Kurt Zeilenga
16c9e81c80 SLAP_NVALUES: test003 now passes (with help of a substr mr hack) 2003-03-01 00:14:32 +00:00
Kurt Zeilenga
152829be87 SLAP_NVALUES:
schema engine updated (but not schema routines so things don't run yet)
	nvalues mostly populated, enough for tests 0-2 to pass
	schema routines needs lots of work
	modify/mods codes needs lots of work
2003-02-27 01:54:43 +00:00
Kurt Zeilenga
dd66e6e929 SLAP_NVALUES, round 3 2003-02-26 07:39:30 +00:00
Kurt Zeilenga
25886d989a Change MR flag names and add comments as to what they mean to slap.h 2003-02-26 02:55:28 +00:00
Kurt Zeilenga
6939c53170 Happy new year 2003-01-03 20:20:47 +00:00
Howard Chu
09679eb715 Added SLAP_MR_VALUE_NORMALIZED_MATCH, avoid redundant normalize when
calling value_find with already-normalized DNs
2002-12-04 18:19:46 +00:00
Pierangelo Masarati
a62aa61544 much better fix for ITS#2196 (dnattr without sat_equality is bounced at config) 2002-11-25 18:37:04 +00:00
Pierangelo Masarati
95f75aaf15 mr should not be NULL; fixes ITS#2196 2002-11-24 21:36:14 +00:00
Julius Enarusai
2d98b19bf7 Converted ch_malloc, ch_calloc and ch_realloc calls to SLAP_MALLOC and
SLAP_CALLOC in add_value/add_value_one functions and propagated errors to
all functions that use these functions.
2002-11-01 18:59:52 +00:00
Kurt Zeilenga
976c35fbf0 fix possible uninit bug 2002-09-21 04:33:19 +00:00
Pierangelo Masarati
d3ca441ae8 /*
* The original code performs ( n ) normalizations
 * and ( n * ( n - 1 ) / 2 ) matches, which hide
 * the same number of normalizations.  The new code
 * performs the same number of normalizations ( n )
 * and ( n * ( n - 1 ) / 2 ) mem compares, far less
 * expensive than an entire match, if a match is
 * equivalent to a normalization and a mem compare ...
 *
 * This is far more memory expensive than the previous,
 * but it can heavily improve performances when big
 * chunks of data are added (typical example is a group
 * with thousands of DN-syntax members; on my system:
 * for members of 5-RDN DNs,

 members         orig            bvmatch (dirty) new
 1000            0m38.456s       0m0.553s        0m0.608s
 2000            2m33.341s       0m0.851s        0m1.003s

 * Moreover, 100 groups with 10000 members each were
 * added in 37m27.933s (an analogous LDIF file was
 * loaded into Active Directory in 38m28.682s, BTW).
 *
 * Maybe we could switch to the new algorithm when
 * the number of values overcomes a given threshold?
 */
2002-09-02 19:41:03 +00:00
Pierangelo Masarati
a038ef68e6 added attr_merge/value_add functions that dela with single attribute; bervals for '*', '+' and '1.1' made available 2002-08-23 08:49:19 +00:00
Kurt Zeilenga
a71cd15182 Add normalize_validate_normalize() to be use instead of value_normalize()
where value has not yet been validated.
2002-03-01 18:05:47 +00:00
Kurt Zeilenga
c0fdb1aaca Add a value_validate() function to be used by prior to value_normalize
calls as needed (compare/filters).
2002-03-01 17:36:22 +00:00
Howard Chu
ac1332cdb8 Renamed BVarray to BerVarray. Moved slapd:bvarray_{add,free} to
liblber:ber_bvarray_{add,free}.
2002-01-14 01:43:17 +00:00
Kurt Zeilenga
0e2af54a3f Update copyright statements 2002-01-04 21:17:25 +00:00
Kurt Zeilenga
af121f0489 Remove lint 2002-01-02 17:02:30 +00:00
Howard Chu
f52cc9bab5 Change struct berval ** to BVarray 2002-01-02 11:00:36 +00:00
Howard Chu
1f8cf93db8 One more uninit 2001-12-30 00:38:44 +00:00
Howard Chu
7ffc723c40 Cleanup, fix uninitialized vars 2001-12-30 00:14:45 +00:00
Howard Chu
185ff129b5 Change struct berval * to struct berval in various structures 2001-12-29 15:01:10 +00:00
Kurt Zeilenga
999b3dad7b Fix replacing of all values with an empty value. 2001-12-05 01:16:12 +00:00
Kurt Zeilenga
2ac7c91cae Replace existing SLAP_MR_ matching flags with:
SLAP_MR_ASSERTION_SYNTAX_MATCH
	SLAP_MR_VALUE_SYNTAX_MATCH
	SLAP_MR_VALUE_SYNTAX_CONVERTED_MATCH,
add supporting evaluation macros, and update code as needed.
Misc other code cleanup included.
2001-11-27 21:59:56 +00:00
Pierangelo Masarati
aee3600276 minor cleanup 2001-11-17 16:18:07 +00:00
Julio Sánchez Fernández
9752cea92c No code change, added a comment warning of a possible future difficulty.
Apparently, we refuse to index ;binary attributes.  That is mostly
bogus.  Whether it is indexable or not depends on whether we know how
to or not, nothing more.  I.e., the existance of indexer and filter
functions for the matching rules that are relevant to the attribute
type.
2001-10-23 13:35:54 +00:00
Julio Sánchez Fernández
cb98a604fb Replacement for value_find and compatibility macro.
Now we will be able to fix compares.
2001-10-23 09:43:20 +00:00
Julio Sánchez Fernández
5f6d5494dd Extend value_match to extract an asserted value from a full value
if needed.  This is controlled by SLAP_MR_VALUE_IS_IN_MR_SYNTAX,
a new flag that should be set when evaluating filters such as in
searches and compares and unset otherwise (such as in modify).

Now, some callers of value_match, notably value_find, don't know
whether to set it or not.  We'll see to that.
2001-10-22 20:03:30 +00:00
Kurt Zeilenga
7cb1176502 Plug memory leak of normalized value in value_find() 2000-07-20 23:56:12 +00:00
Kurt Zeilenga
3112f21612 Add attribute type/matching rule support for structuralObjectClass attribute
type.  Add type to core.schema.  Not yet populated on add nor checked on modify.
2000-06-26 05:13:41 +00:00
Kurt Zeilenga
3bacb800d4 unrecognized objectIdentifer in desc form shall result in
an undefined matched.  unrecognized objectIdentifer in OID form
shall result in false match.
2000-06-19 20:53:56 +00:00
Kurt Zeilenga
693fb9424a unifdef -DSLAPD_SCHEMA_NOT_COMPAT -USLAPD_SCHEMA_COMPAT 2000-06-06 19:43:18 +00:00
Kurt Zeilenga
3e9868b4ec Prepare for unifdef -DSLAPD_SCHEMA_NOT_COMPAT 2000-06-06 04:49:19 +00:00