40.3. slapi_send_ldap_search_entry()

Description

Call slapi_send_ldap_search_entry() to send an entry found by a search back to the client.

attrs is the array of attribute types that you want to send from the entry. This value is equivalent to the SLAPI_SEARCH_ATTRS parameter in the parameter block.
attrsonly specifies whether you want to send only the attribute types or the attribute types and their values:
  • Pass 0 for this parameter if you want to send both the attribute types and values to the client.
  • Pass 1 for this parameter if you want to send only the attribute types (not the attribute values) to the client.
This value is equivalent to the SLAPI_SEARCH_ATTRSONLY parameter in the parameter block.
If you want to define your own function for sending entries, write a function that complies with the type definition send_ldap_search_entry_fn_ptr_t, and set the SLAPI_PLUGIN_DB_ENTRY_FN parameter in the parameter block to the name of your function.
Syntax

#include "slapi-plugin.h"
int slapi_send_ldap_search_entry( Slapi_PBlock *pb, Slapi_Entry *e, LDAPControl **ectrls, char **attrs, int attrsonly );

Parameters

This function takes the following parameters:

pb
Parameter block.
e
Pointer to the Section 14.22, “Slapi_Entry” structure representing the entry that you want to send back to the client.
ectrls
Pointer to the array of LDAPControl structures representing the control associated with the search request.
attrs
Attribute types specified in the LDAP search request
attrsonly
Specifies whether the attribute values should be sent back with the result.
  • If 0, the values are included.
  • If 1, the values are not included.
Returns

This function returns one of the following values:

  • 0 if successful.
  • 1 if the entry is not sent; for example, if access control did not allow it to be sent.
  • -1 if an error occurs.