Commit Graph

96 Commits

Author SHA1 Message Date
Howard Chu
d474789d0d First pass at converting bind to struct bervals 2001-12-26 11:41:38 +00:00
Howard Chu
ede3abc8c7 Changed search attrs to struct berval **.
Use typedefs for all backend functions, to minimize work in future API
updates. (back-*/external.h will never need updating in the future.)
2001-12-26 08:47:04 +00:00
Howard Chu
68b1bbb89d Changed search attrs to struct berval **.
Use typedefs for all backend functions, to minimize work in future API
updates. (back-*/external.h will never need updating in the future.)
2001-12-26 08:17:44 +00:00
Howard Chu
0552b1c53f NT updates from jon@symas.com. 2001-12-07 04:03:25 +00:00
Kurt Zeilenga
5fc22599e2 Update SASL code to reuse context through life of session.
Replace 'negotiated' with 'interactive' bind
Add hooks for SASL/EXTERNAL
Disable SASL security layers
Rework SASL command line and config file parameters
2000-07-13 22:54:38 +00:00
Mark Valence
51bd73ce7d New backend routine: back_attribute 2000-06-21 17:41:49 +00:00
Kurt Zeilenga
a3414536a4 Add backend_check_referrals() framework. 2000-06-16 01:46:42 +00:00
Kurt Zeilenga
a56c161bdb Misc code cleanup. 2000-06-10 22:39:30 +00:00
Kurt Zeilenga
60802201e3 Const'ification
SASL mech removed from backend bind callback (as SASL is managed by frontend)
Changes to some backends are untested (as I don't have all dependent
  software install)
2000-05-22 03:46:57 +00:00
Howard Chu
2d9a7620b5 LDAP_F macro is obsolete. Redeclare perl_ack_xs_init static, since it
is, and declare boot_DynaLoader as EXT since it actually comes from
perl, not from this module.
2000-05-11 09:35:29 +00:00
Howard Chu
3d5553abc2 Removed XLDFLAGS, unnecessary for modules. 2000-05-11 09:33:34 +00:00
Kurt Zeilenga
36b0423311 Add Modification/Modifications structures for -DSLAPD_SCHEMA_NOT_COMPAT 2000-02-07 20:37:10 +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
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
John Quillan
c6744aea36 fixed problem in which we didn't statically link in the dynamic
loader, there for not allowing any modules with shared libraries
to be loaded.
1999-11-11 06:14:41 +00:00
Ben Collins
ed75be1b3c * configure.in: add tcl8.2 to list of tcl libs to search for, also added new MOD_TCL_LIB
and related AC_SUBST() so that when back-tcl is compiled as a dynamic module we link
  -ltcl to the module and not slapd (this is the correct way to do this since the .la file
  handles giving the correct libs when we pass the module to it in the linker line with
  -dlopen). Also modified the perl backend in a similar way except that the PERL_CPPFLAGS
  always go to the module and never to slapd (slapd doesn't need them).
* build/mod.mk: added $(MODLIBS) to the dynamic module link line to accomodate module
  specific libraries. These should be defined in the back-*/Makefile.in file for each
  module (so far only back-tcl and back-perl need it).
* build/top.mk: modified the perl ldflags and cppflags slightly
* servers/slapd/Makefile.in: same here
* servers/slapd/back-perl/Makefile.in: added MODLIBS=$(MOD_PERL_LDFLAGS) for when we are
  using a dynamic module (problem, libtool wont allow linking static libs into a libtool
  lib, so unless perl's libs are compiled dynamic, then back-perl can't be a dynamic
  module. We need a test for this on perl and tcl).
* servers/slapd/back-tcl/Makefile.in: added MODLIBS=$(MOD_TCL_LIB)
* back-perl and back-tcl now compile
1999-09-23 05:32:10 +00:00
Howard Chu
f991ef04e6 Added mixed-case as well as up-cased DN argument. The behavior of back-bdb2
and back-ldbm are preserved, they only use the up-cased DNs. back-passwd
uses the mixed-case DN. All others are using mixed-case DN, may need more
fixing.
1999-09-18 23:40:03 +00:00
Kurt Zeilenga
e642a1b9cd Add OpenLDAP RCSid 1999-09-08 22:52:19 +00:00
Kurt Zeilenga
403f4479bc Add OpenLDAP RCSid to *.[ch] in clients, libraries, and servers.
Replace old Id as needed (back-tcl).
Leave updating of contribWare to contributors (for now).
1999-09-08 19:06:24 +00:00
Kurt Zeilenga
8ac21b67a1 more const'ification 1999-08-20 19:29:43 +00:00
Kurt Zeilenga
e4f6d54877 New dn2id format with base/one/subtree indices (ldbm/bdb2)
New id2entry (id-less) format (ldbm/bdb2)
Removed id2children (ldbm/bdb2)
Added nextid database (ldbm)
Broke ldbmtest
Removed ldif2* tools (ldbm/bdb2)
Added slap tools (slapadd, slapcat, slapindex)
1999-08-17 19:00:59 +00:00
Howard Chu
d620793b6f Make init_module return a success/fail value. 1999-08-17 00:28:01 +00:00
Howard Chu
638f37743b Fix explicit backend dependencies. Wildcard was unreliable. 1999-08-09 01:29:27 +00:00
Howard Chu
366e8fd5ad Final round of module changes 1999-08-07 11:37:43 +00:00
Howard Chu
03b58cc9cf For dynamic modules, must explicitly zero BackendInfo structure in
init_module. Since it's a local var, you have no idea what kind of
garbage is sitting in important function pointers...
1999-08-06 13:16:26 +00:00
Kurt Zeilenga
df8f7cbb9b s/exit(1)/exit(EXIT_FAILURE)/
s/exit(0)/exit(EXIT_SUCCESS)/
add <ac/stdlib.h> where needed and other minor header adjustments
1999-08-03 18:14:24 +00:00
Kurt Zeilenga
a39cf6f93d Add support for LDAP_ALL_OPERATIONAL_ATTRIBUTES ("+") (based on
LDAPext discussions).
Add attrs and attrsonly support to monitor/config info.
Add rdn attributes to schema/monitor/config.
Add extensibleObject objectclass to schema/monitor/config.
Add top objectclass to rootdse/monitor/config.
Remove opattrs option from send_search_entry().
1999-07-24 03:39:23 +00:00
Kurt Zeilenga
73276e84ae Import experimental referral implementation from OPENLDAP_DEVEL_REFERRALS.
Includes support for update referral for each replicated backend.
	Reworked replication test to use update referral.
Includes major rewrite of response encoding codes (result.c).
Includes reworked alias support and eliminates old suffix alias codes
(can be emulated using named alias).
Includes (untested) support for the Manage DSA IT control.
Works in LDAPv2 world.  Still testing in LDAPv3 world.
Added default referral (test009) test.
1999-07-16 02:45:46 +00:00
Kurt Zeilenga
e9c2895472 Add support for unsolicited notifications. 1999-07-07 18:51:39 +00:00
Kurt Zeilenga
51d1c90887 unifdef -DSLAPD_ACLGROUPS -DSLAPD_ACLAUTH 1999-07-05 06:26:26 +00:00
Kurt Zeilenga
d7b311c6e1 s/LDAP_NOT_SUPPORTED/LDAP_UNWILLING_TO_PERFORM/ 1999-07-01 04:43:48 +00:00
Kurt Zeilenga
a7dfc2aada Add sasl "mech" argument to backend bind routines. 1999-06-29 03:29:26 +00:00
Bastiaan Bakker
5a470f8959 Merged dynamic module support patch (see ITS #196). To enable, run ./configure w
ith --enable-modules. GLib v1.2 or higher is required.
1999-06-24 17:06:34 +00:00
Bastiaan Bakker
e2b5b21155 Added connection initialisation and destruction notification. Now backends can register functions in backend_info.bi_connection_init and backend_info.bi_connection_destroy that will be called when a connection is initialized or destroyed. 1999-06-23 12:31:35 +00:00
Kurt Zeilenga
450b02ca58 s/WIN32/HAVE_WINSOCK/
remove old Version.c
1999-05-21 03:53:37 +00:00
Kurt Zeilenga
dba57a312c Add mkversion script to generate version.c files. mkversion generates
identification strings compatible with ident(1) and what(1).
Uses $(VERSION) generated from configure.in.  rm build/version
rm old version .c files
1999-04-28 05:40:17 +00:00
John Quillan
3f1fd3bcee Fix bug in compare.c where obj_ref to pb_obj_ref
Added call to perl "config" method so the the
perl module can have its own configuration
options.

Fix bug in init.c where the address of the be_private
object was being retrieved when it was already
a pointer.

Added the dn parameter to the modify.c call to the
modify method.  Not sure why this wasn't there
in the beginning.

Expects and array from the search method instead of
a scalar in search.c so that it can return search
results and a return code.

Added the demo file SampleLDAP.pm
1999-04-04 04:16:14 +00:00
Juan Gomez
654f21b237 Implemented newSuperior handling. 1999-03-05 19:14:23 +00:00
Juan Gomez
3ba99a75ef Added parameter newSuperior in preparation to support
LDAP v3 MODDN request.
1999-03-05 03:38:12 +00:00
Hallvard Furuseth
69a93a0582 function pointers are incompatible with `void *'; remove NULL or replace with 0 1999-03-03 17:02:10 +00:00
Hallvard Furuseth
0fe0efeeac wrap bi_acl_group in #ifdef SLAPD_ACLGROUPS 1999-02-20 08:53:48 +00:00
Kurt Zeilenga
216049bd12 New Frontend->Backend Interface
Separates per backend type from per backend database initialization
	and startup.  Also supports per type / per backend shutdown.
New frontend startup/shutdown routines are also provided:
	slap_init() slap_startup() slap_shutdown() slap_destroy()
New frontend->backend startup/shutdown is managed by:
	backend_init() backend_startup() backend_shutdown backend_destroy
backend_init() now calls bi_init() to initial all function pointers
for the backend (excepting bi_init() which is now the only hardcoded
entry point).  New entry points are detailed in slap.h struct
backend_info.  backend_info is a per database type structure.
Besides the new startup/shutdown entry points, the new interface
also supports per backend type configuration options.  One could have:

	backend bdb2	(new Berkeley DB 2 backend)
	bdb2_home	/directory

	database bdb2
	...

	*** This code is fairly experimental ***
	*** Much cleanup and testing is still needed ***

see slap.h for details on struct backend_db and backend_info.
1999-02-05 09:03:47 +00:00
Kurt Zeilenga
72400d11fc Fix mutex initialization. new init function only has one argument. 1999-02-04 18:20:26 +00:00
Kurt Zeilenga
72ba4cfb71 Use -lldap_r instead of -lldap -lthread.
Likely broke things for non-posix threadings....

Update -lldap_r implementation to:
	remove attribute support
	hide thread detachment
	provide concurrency accessors
	provide initialization function
	fix gethostby{addr,name}_r codes (not coverred by HAVE_REENTRANT_FUNCTIONS)
Update servers/libraries to use ldap_pvt_thread_ calls.
Cleanup server codes (no #ifdef HAVE_PTHREAD_THIS or _THATs)!
Removed -llthread
1999-01-28 04:34:55 +00:00
Kurt Zeilenga
e2a15115b0 Update slap_conn to maintain client provided dn and bound dn.
Update slap_op to maintain dn and ndn (derived from conn->c_dn).
Update ldbm_back_bind to return actual bound dn (including rootdn)
	for use in slapd_conn.  Other backends use client dn.
Modify other codes to use ndn (normalized uppercase dn) most everywhere.
Aliasing, Suffixing and modrdn could use more work.
Applied suffixing to compare and modrdn.
1999-01-19 05:10:50 +00:00
Kurt Zeilenga
b7beec1663 Initial version of the experimental 'back-perl'
John's still working on the 'perl-test' (the perl backend test module).
1999-01-14 06:33:09 +00:00