Sun Java System Directory Server Enterprise Edition 6.2 Developer's Guide

slapi_build_control_from_berval()

Creates an LDAPControl structure based on a berval structure, an OID, and a criticality flag.

Syntax

#include "slapi-plugin.h"
 int slapi_build_control_from_berval( char const *oid,
    struct berval *bvp, char iscritical, LDAPControl **ctrlp );

Parameters

This function takes the following parameters:

oid

The OID (object identifier) for the control that is to be created.

bvp

A berval that contains the control value. Pass NULL if the control has no value.

iscritical

The criticality flag. If non-zero, the control will be marked as critical. If 0, it will not be marked as critical.

ctrlp

Pointer that will receive the allocated LDAPControl structure.

Returns

This function always returns LDAP_SUCCESS (LDAP result code).

Description

This function creates an LDAPControl structure based on a berval, an OID, and a criticality flag. The LDAPControl that is created can be used in LDAP client requests or internal operations.

Memory Concerns

Directory Server makes a copy of the oid string.

The contents of the bvp parameter are consumed by this function. Because of this, the caller should not free the bvp->bv_val pointer once a successful call to this function has been made.

The LDAPControl pointer that is returned in ctrlp should be freed by calling ldap_control_free(3LDAP), which is an LDAP API function.

See Also

ldap_control_free(3LDAP)

slapi_build_control()