On 10/10/2011 10:08 AM, Noriko Hosoi wrote:
Reduce the number of DN normalization

. Replacing SLAPI_TARGET_DN with SLAPI_TARGET_SDN (also its macros,
  e.g., SLAPI_SEARCH_TARGET_SDN and SLAPI_ADD_TARGET_SDN).
I haven't reviewed the entire patch yet, but I am concerned about changing the APIs defined in slapi-plugin.h (such as the removal of SLAPI_TARGET_DN).  This will require other plug-ins outside of the 389 source code to be ported to use this new API.  This porting may be necessary in some places, but we should also try to be as backwards compatible as possible.

I know that the SLAPI plug-ins used by FreeIPA use SLAPI_TARGET_DN, so they will need porting work.  We will need to coordinate any API changes with them to ensure that we don't break their plug-ins.
. Replacing the type of SLAPI_MODRDN_NEWSUPERIOR from (char *) to
  (Slapi_DN *), as well.
. Replacing slapi_dn_normalization_ext call with generating Slapi_DN
  APIs (e.g., slapi_sdn_new_dn_...) as much as possible and stash it
  in pblock using SLAPI_TARGET_SDN.
. When a normalized DN string is needed, get it using slapi_sdn_get_[n]dn
  from the stashed Slapi_DN.
. Introduced a new field to Slapi_DN.
  "udn" for the original DN; "dn" is a normalized DN; "ndn" is a case-
  ignored normalized DN.
  Taking advantage of the knowledge of the stage of the DN, call the
  most efficient DN creating API (e.g., slapi_sdn_new_dn_... vs.
  slapi_sdn_new_normdn_... vs. slapi_sdn_new_ndn_...)

Others
. Replacing inefficient array assignment with memset (acl.c) and
  memcpy (idl_common.c).
. Fixing invalid memory access in LASDnsBuild (lib/libaccess/lasdns.cpp).
. Even if Slapi_counter is disabled, the server is allowed to start
  (back-ldbm/cache.c).
. Fixing compiler warnings.

Sorry, it's huge...
-- 389-devel mailing list 389-devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/389-devel