Commit Graph

1196 Commits

Author SHA1 Message Date
Kurt Zeilenga
000c1ca40b Fix calloc typo 2000-03-09 19:15:48 +00:00
Kurt Zeilenga
9369b9daad Fix malloc of referral pointer array. 2000-03-08 17:37:49 +00:00
Kurt Zeilenga
4710c74605 Rework error handling. Add error descriptions.
Don't use LDAP_OPERATIONS_ERROR for internal errors.  Use LDAP_OTHER
instead.  (more changes needed in this area)
2000-03-03 22:37:06 +00:00
Kurt Zeilenga
5681a79d96 StartTLS now grabs conn->c_mutex before mucking with connection.
Add comment concerning sequencing issues which need to be resolved
by reworking of connection state machine.  Add note that a race
condition exists until this rework is complete.
Rework extended operations to return pointer to static error text.
2000-03-02 20:36:53 +00:00
Kurt Zeilenga
10588da3c5 Print tag with SASL in progress operations error. 2000-03-02 01:20:00 +00:00
Kurt Zeilenga
ddb9755ba7 Move handling of operations errors due to submission of
non-bind requests while a multi-step SASL bind process
is under to connection.c.  Return LDAP_OPERATIONS_ERROR,
not LDAP_SASL_BIND_IN_PROGRESS.
2000-03-02 00:59:10 +00:00
Kurt Zeilenga
e96865c1a8 Reorder error detection based upon precedence 2000-03-01 22:59:34 +00:00
Kurt Zeilenga
add0d847fb Need to strdup subschemasubentry a_type 2000-03-01 19:38:15 +00:00
Kurt Zeilenga
ac7f6c2e37 Replace do_*() return -1 with return SLAPD_DISCONNECT.
Only return SLAPD_DISCONNECT with a send_ldap_disconnect()
was called.
Add initial code for support predetermined filter results
when filter is undefined (or known to be true or false).
2000-02-29 23:48:01 +00:00
Kurt Zeilenga
4091381660 Yet another round of SLAPD_SCHEMA_NOT_COMPAT changes, including:
limited subtype support, modlist handling, filter updates,
lastmod attribute handling.
2000-02-28 21:16:05 +00:00
Kurt Zeilenga
76553ea53f More -DSLAPD_SCHEMA_NOT_COMPAT changes, including initial
impl of slap_modlist2mods() and is_at_subtype().
2000-02-25 19:36:07 +00:00
Kurt Zeilenga
2c16d08b7c noschemacheck should not disable validation of DNs 2000-02-25 19:31:54 +00:00
Kurt Zeilenga
34197ca974 ITS#464: Fix multiple password support 2000-02-24 17:59:10 +00:00
Kurt Zeilenga
ecb915357c Correct comment concerning entry LDIF. 2000-02-22 20:25:54 +00:00
Kurt Zeilenga
550542e020 Use common entry cleanup code. 2000-02-22 19:43:02 +00:00
Kurt Zeilenga
86bd13846f Additional -DSLAPD_SCHEMA_NOT_COMPAT changes
Not hidden "NULLDN" to "<anonymous>" in modify stats
2000-02-22 19:26:15 +00:00
Kurt Zeilenga
ceb6412e62 More -DSLAPD_SCHEMA_NOT_COMPAT changes
Not hidden: "<anonymous>" modifiersname
2000-02-15 18:57:07 +00:00
Kurt Zeilenga
0dbaf87730 Another round of changes behind -DSLAPD_SCHEMA_NOT_COMPAT
plus these changes unhidden changes:
	remove now meaning --enable-discreteaci configure option
	fix ITS#451, slapd filters
	Add ber_bvecadd() to support above
	constify ldap_pvt_find_wildcard() and misc slapd routines
	renamed some slap.h macros
	likely broken something
2000-02-14 20:57:34 +00:00
Kurt Zeilenga
4e4b8204ab ITS#454: fix VPATH support 2000-02-12 20:04:45 +00:00
Kurt Zeilenga
36b0423311 Add Modification/Modifications structures for -DSLAPD_SCHEMA_NOT_COMPAT 2000-02-07 20:37:10 +00:00
Kurt Zeilenga
79e92663e8 Fix -DSLAPD_SCHEMA_NOT_COMPAT -DLDAP_DEBUG builds (still won't run) 2000-02-07 17:50:42 +00:00
Kurt Zeilenga
bc51bd5180 Yet another round of SLAPD_SCHEMA_NOT_COMPAT changes...
Changes outside of #ifdef include three value filter processing.
2000-02-06 21:09:44 +00:00
Kurt Zeilenga
f9195f9b6f Another round of SLAPD_SCHEMA_NOT_COMPAT changes including
basic structures for handing language tags and binary option
(but less actual code to actually support them).  Provided
for reference only.  Will not even compile.
2000-02-05 05:01:41 +00:00
Kurt Zeilenga
86cedc6ac7 ITS#439: Fix logic error 2000-02-04 17:49:32 +00:00
Kurt Zeilenga
2e3d9d7737 Use experimental OID for ACI syntax. Likely need to add
additional schema items.
2000-02-01 18:05:49 +00:00
Kurt Zeilenga
9316c4eace ACI attributes should be of ACI syntax. Need to assign
OID for experimental syntax.
2000-02-01 17:53:07 +00:00
Kurt Zeilenga
3708530620 Didn't return after returning unknown critical control.
Noticed that abandon and unbind don't have control support... something for
another day.
2000-02-01 01:22:06 +00:00
Kurt Zeilenga
3a6e906194 Replace -DSLAPD_SCHEMA_COMPAT with -USLAPD_SCHEMA_NOT_COMPAT 2000-01-31 22:14:16 +00:00
Kurt Zeilenga
08e3b010d5 Move oc_check_allowed() next to oc_check_required() in preparation for
rewrite.
2000-01-31 18:21:07 +00:00
Kurt Zeilenga
10fdd7ff7c Put type;option trimming codes behind SLAPD_SCHEMA_COMPAT.
Attribute subtyping, especially that using attribute description
options, will have to reengineered.
2000-01-31 17:59:10 +00:00
Kurt Zeilenga
d298e35514 Add SLAP_SYNTAX_BINARY flag to indicate binary storage is used for
attributes of the syntax.  Such attribute values be transferred
using binary syntax unless ber2str/str2ber routines are provided.
Used in conjunction with ";binary" attribute description option
and/or the Binary syntax.
2000-01-31 01:49:44 +00:00
Kurt Zeilenga
e0f7614a11 Add matching rule function pointers for index generation and use with
filters.
2000-01-29 23:36:42 +00:00
Kurt Zeilenga
916a63d819 Add schema_init to MSVC5 project 2000-01-29 22:54:11 +00:00
Kurt Zeilenga
49976b5bc1 Constify a few attr_*() routines 2000-01-29 22:03:34 +00:00
Kurt Zeilenga
d4c814ecd9 Move extern to proto header 2000-01-29 20:06:46 +00:00
Kurt Zeilenga
4c52827d28 Split out schema initialization of builtin syntax/matching rule
routines to separate file to keep schema.c of managable size.
2000-01-29 19:43:19 +00:00
Kurt Zeilenga
d8d19d4ff9 Resolve syntax errors created by previous -DSLAPD_SCHEMA_COMPAT work. 2000-01-29 07:00:39 +00:00
Kurt Zeilenga
ad262b3ac6 Fix minor problems with proceeding commit which broken old schema compat 2000-01-28 21:20:28 +00:00
Kurt Zeilenga
ce56fbcba8 Remove ai_syntaxinfo (syntax) from AttrInfo. Call attr_syntax() directly. 2000-01-28 21:10:34 +00:00
Kurt Zeilenga
cca2bdcb40 Move INDEX_ macros from back-ldbm.h to slap.h and prefix with SLAP_
Move AttrInfo from back-ldbm.h to attr.c
2000-01-28 20:38:00 +00:00
Kurt Zeilenga
17f1024ad5 Fix -DSLAPD_SCHEMA_NOT_COMPAT syntax error in last commit 2000-01-28 20:10:25 +00:00
Kurt Zeilenga
c5da0c76ce Additional changes to migrate to new schema codes
Still not usable.
2000-01-28 20:01:00 +00:00
Kurt Zeilenga
51190984ee place old schema codes behind -DSLAPD_SCHEMA_COMPAT 2000-01-28 01:17:58 +00:00
Kurt Zeilenga
e9b1012fb1 Put more old schema code behind SLAPD_SCHEMA_COMPAT (which still
MUST be defined).
2000-01-28 00:33:29 +00:00
Kurt Zeilenga
434e7229ac Add code to handle operational attributes via new schema codes
behind -USLAPD_SCHEMA_COMPAT.
2000-01-27 19:02:24 +00:00
Kurt Zeilenga
df712b8597 Don't exclude no-user-modification attributes from ACL checks
unless access requested is WRITE.  This allows you to apply
an ACL to limit search/reading of no-user-modification attributes.
Writes, of course, are always prohibited (by do_add, do_modify).
2000-01-27 18:35:36 +00:00
Kurt Zeilenga
9dde98577d Move ldap_unicode_t to ldap_pvt.h, typedef to ldap_ucs2_t for now.
ldap_ucs2_t is a short.  The unicode routines may break if
sizeof(short) != 2...
2000-01-27 05:27:36 +00:00
Kurt Zeilenga
cdcb0390ba Last commit was a bit premature. This fixes up compiler
bugs and adds temporary code to glue things until we sort
out unicode UTF-8 vs UCS-4 vs UCS-2 issues.
2000-01-27 01:43:12 +00:00
Kurt Zeilenga
4ec79023bd Add IA5StringConvert (to UCS-2/4). May not be needed if we use
UTF-8 internally.
2000-01-27 01:02:51 +00:00
Kurt Zeilenga
96ba43c591 Add in hooks for mr conversion routines 2000-01-26 00:12:51 +00:00
Kurt Zeilenga
4be3e66aaf Use UTF8Normalize, not IA5Normalize for matching rules for directoryString
syntax.
2000-01-25 23:59:50 +00:00
Kurt Zeilenga
9fec129997 Second round of schema changes
Revert normalization to matching rule per discussions with Julio.
May need separate normalization routines for stored value and asserted
value. Currently rely on passed in syntax/mr to allow "special" behavior.
Reworked filters to pass struct berval * instead of char *. (needs work)
Validation, normalization and matching needed.
2000-01-25 21:13:31 +00:00
Kurt Zeilenga
4bdd788c68 Move uppercase comment to be next to uppercasing code. 2000-01-25 00:49:14 +00:00
Kurt Zeilenga
7f63755d5d Start putting old code behind the currently defined SLAPD_SCHEMA_COMPAT. 2000-01-25 00:38:48 +00:00
Kurt Zeilenga
a412a0529d Have compare use get_ava().
Well help when we split assertion options out from the description.
2000-01-25 00:05:36 +00:00
Kurt Zeilenga
117a37272d Modify slapd syntax struct to have both a validation and normalization
routine.  Could be combined into one routine.
Modify slapd matching rule struct to only have match function.
Modify old attribute such that 'bin' implies octetString, not 'binary'.
Add compatibility for IA5 strings.  Only directoryStrings were handled
before.
Treat attribute types without syntax as incomplete, not default.
Add OctetStringValidate (always returns okay).
Add {UTF8,IA5}StringValidate/Normalize  (IA5 based loosely on
case_exact_normalize).  Need case{Exact,Ignore}UTFMatch, using IA5 versions
for now.
Removed default of syntax/mr handlders, should just skip
registration of syntax/mr's without handlers.
Added comments to slap.h about types versus descriptions.
2000-01-24 23:31:26 +00:00
Kurt Zeilenga
fdcd8465c3 s/case_ignore_normalize/caseIgnoreIA5Normalize/
s/case_ignore_compare/caseIgnoreIA5Match/
s/case_exact_normalize/caseExactIA5Normalize/
s/case_exact_compare/caseExactIA5Match/

to make room for UTF-8 and T.61 varients.
2000-01-23 20:53:12 +00:00
Kurt Zeilenga
2f22b6bf0c Add comment: old schema is OC less category (abstract, struct, aux). 2000-01-23 20:49:17 +00:00
Howard Chu
0b15c19cdf Fix bug in group spec parsing, was failing to set attributeType if a
nondefault objectclass was given
2000-01-15 03:48:37 +00:00
Kurt Zeilenga
a16943d645 Per ITS#419, don't require SLAPD_RLOOKUPS when HAVE_TCPD 2000-01-11 01:12:08 +00:00
Kurt Zeilenga
6437785a82 Initial implementation of Kerberos password verification for
simple bind via:
	{KERBEROS}principal
Code is disabled by default (for security reasons).  Use
--enable-kpasswd to enable.  Behind SLAPD_KPASSWD.
Reworked Kerberos detection and split out KBIND as independent
feature (--disable-kbind) (LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND).
KBIND depends upon detection of KRB4 (or KRB425) support.  Detection,
building with eBones (as distributed with FreeBSD 3.4) okay, but
wasn't able to test as I don't have a K4 KDC handy.
--with-kerberos has a number of detection options... most likely
don't work properly.
2000-01-08 18:42:11 +00:00
Luke Howard
a1ccf169da Filled in Cyrus SASL authz/storage callbacks for all backends
(callbacks not yet implemented though).
2000-01-02 05:42:14 +00:00
Luke Howard
9b4e3b2234 Merged in preliminary support for Cyrus SASL library;
support for DCE slash-delimited, left-to-right DNs;
support for a domain socket transport (enable with
--enable-ldapi); and extensions to URL parsing to
support the latter transport.
2000-01-02 01:21:25 +00:00
Kurt Zeilenga
6fb04da524 Install schema/*.{at,oc}.conf files. 2000-01-01 20:11:50 +00:00
Kurt Zeilenga
8dc0fac3ad Remove 'mail' as it 'standard', not 'laser' 2000-01-01 20:10:41 +00:00
Kurt Zeilenga
13f72e9dde Add missing \n 2000-01-01 19:40:06 +00:00
Kurt Zeilenga
da93ca8c5e Remove DNS_DN experimental code. 1999-12-18 19:54:22 +00:00
Kurt Zeilenga
79b31f63c2 don't treat undefined oc as extensibleObject 1999-12-18 03:10:22 +00:00
Howard Chu
0fa6f1df1e Tentative fix for ITS #402. (Not tested yet.) If successful, this patch
should also be applied to back-bdb2/idl.c.
1999-12-17 10:04:31 +00:00
Kurt Zeilenga
30411f8402 Add slappasswd to generate rootpw. 1999-12-16 02:18:50 +00:00
Kurt Zeilenga
6253e7c278 Updated sasl response to support returning of referrals.
Updates to extended operation framework to support arbitrary
referrals and extended results without OIDs.
Updated passwd extended operation to support returning update_refs
as needed.  Needs replog support.
1999-12-15 23:22:47 +00:00
Kurt Zeilenga
b1639dadd6 Remove lint
Add copyrights
1999-12-13 04:53:59 +00:00
Kurt Zeilenga
3eef87beeb Stop reducing number of substring candiadates when there is only two or
less left.  Based upon suggestion made by bert hubert <ahu@casema.net>
1999-12-12 19:59:05 +00:00
Kurt Zeilenga
7c28aa058c Add password check and generation check.
Modify tests to use -h "ldap://localhost:port/" instead of -p port.
1999-12-12 18:45:06 +00:00
Kurt Zeilenga
fe5608c4d5 Wrap request/response bervals in a sequence. 1999-12-11 19:33:45 +00:00
Mark Valence
a76c9f18a9 Start TLS extension: check that TLS was inited successfully, return default referral on failure as appropriate. 1999-12-10 19:18:33 +00:00
Kurt Zeilenga
01ab716e8a ITS#394: index presence bug fix 1999-12-10 18:07:24 +00:00
Kurt Zeilenga
431dad371c Fix slapd SASL/ExternalOps encoding
Add controls to extended ops API signatures, need impl.
Update password to support optional server side generation of
new password, verification of old password, and changing of
non-bound user's passwords.
1999-12-10 04:52:32 +00:00
Howard Chu
ffca59fc51 Add some mutex symbols, delete unused *_values symbols 1999-12-10 03:42:39 +00:00
Kurt Zeilenga
0c8fdd5b20 Return protocol error if reqdata was provided. 1999-12-09 23:21:48 +00:00
Kurt Zeilenga
1b787171fc Place passwd extended op into builtin list. 1999-12-09 23:05:15 +00:00
Mark Valence
1fadca5419 Start TLS extended op routine. 1999-12-09 22:41:45 +00:00
Mark Valence
454284f1ea Adds for Start TLS functionality on slapd and LDAP C API. 1999-12-09 22:33:22 +00:00
Mark Valence
31eea5f43c On Windows, WSAENOTSOCK is treated the same as EBADF. This is needed because of a race condition (sock is selected just after another thread closes it), which needs a proper fix. 1999-12-09 22:05:00 +00:00
Kurt Zeilenga
354d0d5b50 Modify password code such that backend end routine calls into
frontend to complete parsing of extended op reqdata.
Modify password extended operation to allow optional id (DN)
entry to change (not tested).  Also, provide room to allow
server side password generation (not implemented).  Added optional old
password field to support proxying (not implemented).
Need to implement replog() support.
1999-12-09 21:30:32 +00:00
Mark Valence
bb693fd1b5 Bug fix: re-used Connection have TLS value for previous conn. 1999-12-09 21:06:42 +00:00
Kurt Zeilenga
5e12c84a6f Add simple password test program.
Rework lutil_passwd routines to use struct berval instead of strings.
1999-12-09 01:11:16 +00:00
Howard Chu
2ee9c196d2 Fix the 1.71 fix - only offset the length if the last character of the
referral URL is not a '/'. Also in send_search_reference, corrected the
comparison for the pre-V3 case. Previously, referrals were being dropped
completely for V2 subtree searches. More work is still needed, V2 onelevel
referral handling is wrong.
1999-12-08 23:31:11 +00:00
Kurt Zeilenga
26c7d69e8c Update for new password codes for MSVC5 1999-12-08 06:44:22 +00:00
Kurt Zeilenga
d5edb4bff6 Reengineered ldappasswd(1). Uses extended operation to set
user password.  Likely to be modified to use bind control
instead.  Use of modify deprecated in favor mechanisms that
support passwords stored externally to the directory (such
as in a SASL service).
Modified slapd extended operation infrastructure to support
backend provided extended operations.
1999-12-08 04:37:59 +00:00
Gary Williams
552c86de98 release build needs advapi32.lib added to link 1999-12-07 20:08:05 +00:00
Kurt Zeilenga
831bfa760e reduce slap_passwd_check to simple form 1999-12-06 21:42:10 +00:00
Kurt Zeilenga
6a0dbb229b Modify slapd.conf to match example provided in Quick Start Guide 1999-12-04 18:35:33 +00:00
Howard Chu
ed05ed8025 Fix memory losses, ITS#379 1999-12-03 00:21:32 +00:00
Howard Chu
cbc5c8494e Fix off-by-one in v2ref 1999-12-02 05:19:24 +00:00
Howard Chu
d1841b5c1f Fix WAKE_LISTENER hang in single-threaded server 1999-12-02 03:45:54 +00:00
Howard Chu
7eec31c8f6 Don't call FD_SET for an fd if it is already set. This causes major problems
on NT due to their fd_set implementation.
1999-12-02 03:21:06 +00:00
Mark Valence
9c88ec691d Removed unnecessary #include "back-ldbm.h". 1999-12-01 01:45:23 +00:00
Kurt Zeilenga
a9fb92467e Add send_ldap_sasl() to facility implementation of SASL bind. 1999-11-29 17:44:14 +00:00
Howard Chu
e63364baac Read a full buffer from wake_sds whenever we wake up from select(). 1999-11-28 04:05:59 +00:00