================
Written by Hallvard B. Furuseth and placed into the public domain.
This software is not subject to any license of the University of Oslo.
================
Here is a patch which does what I described. Of course, someone has
to decide if that is the right solution:-)
- Add an "opid:" line to the input to back-shell commands.
- Add an "abandonid: <opid> line to back-shell/abandon input.
- Replace message id with opid in back-tcl arguments.
- Add an abandonid = <opid> argument to back-tcl/abandon.
An opid (operation ID) is a "connection ID/message ID" string. I
would have liked to use another name to avoid confusion with struct
slap_op->o_opid, but I could not think of another apt word.
This also fixes ITS#1784 and ITS#1792. Since calling conventions
changed anyway, I fixed back-shell by adding abandonid: and making
opid: always be the ID of the current operation.
Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>, May 2002.
Backend documentation patch, version 1
================
Most of this text is taken from OpenLDAP. The work of rewriting it
to manual pages is done by by Hallvard B. Furuseth and placed into
the public domain. This software is not subject to any license of
the University of Oslo.
================
Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>, April 2002.
Re: Untested patch: back-tcl used wrong types (ITS#1719)
================
Written by Hallvard B. Furuseth and placed into the public domain.
This software is not subject to any license of the University of Oslo.
================
> I turned it into an automatic variable.
...and used a variable-length array. That's a gcc extension, it is not
in ANSI C89. (It is in C99 though.) You seem to be compiling without
-pedantic:-) Anyway, here is a patch to turn it back into ch_malloc(),
plus some README fixes
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)
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
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.
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.
* Fixed unfree'd 'char *results' in all tcl_* functions (only unfree'd in
certain cases, moved the free to the actual function) so no more mem
leaks. Tested this with over 500,000 access's for testing :)
* Miscellaneous source style and tabulation fixes