18.5. slapi_rename_internal_set_pb()

Description

This function populates pblock with parameters for use by slapi_modrdn_internal_pb() for an internal rename operation. The function sets the parameter block to contain the following data.

Syntax

 

#include "slapi-plugin.h" 
void slapi_rename_internal_set_pb(Slapi_PBlock *pb, const char *olddn, const char *newrdn, const char *newsuperior, int deloldrdn, 
LDAPControl **controls, const char *uniqueid, Slapi_ComponentId *plugin_identity, int operation_flags);
Parameters

This function takes the following parameters:

pb Parameter block populated with rename parameters.
olddn DN of the entry to be renamed. For unique ID operation, this parameter is used to select the correct backend.
newrdn New RDN of the entry.
newsuperior New entry superior, moddn operation only.
deloldrdn Specifies whether the old RDN should be removed or left as a non-DN attribute.
controls List of controls associated with the operation.
uniqueid Unique identifier of the entry to be renamed. All directory entries contain a unique identifier. Unlike the distinguished name (DN), the unique identifier of an entry never changes, providing a good way to refer unambiguously to an entry in a distributed/replicated environment.
plugin_identity Plug-in identity; a cookie that identifies the plug-in to the Directory Server during an internal operation. This cookie is used by the server to retrieve the plug-in configuration in order to determine whether to allow the operation and which actions to take during the operation processing. Plug-in identity is passed to the plug-in initialization function in the SLAPI_PLUGIN_IDENTITY pblock parameter. A plug-in must save this information and pass it to every internal operation issued by the plug-in.
operation_flags Actions taken during operation processing.
For unique ID-based operation:
  • SLAPI_TARGET_DN set to the DN that allows to select the right backend.
  • SLAPI_TARGET_UNIQUEID set to the uniqueid of the entry.
  • SLAPI_MODRDN_NEWRDN set to the new RDN of the entry.
  • SLAPI_MODRDN_DELOLDRDN indicates whether the old RDN should be kept in the entry.
  • SLAPI_CONTROLS_ARG set to request controls, if present.
For DN-based search:
  • SLAPI_TARGET_DN set to the entry DN.
  • SLAPI_MODRDN_NEWRDN set to the new RDN of the entry.
  • SLAPI_MODRDN_DELOLDRDN indicates whether the old RDN should be kept in the entry.
  • SLAPI_CONTROLS_ARG set to request controls, if present.