DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH
 

/usr/man/cat.3/ldap_modify_ext.3.Z(/usr/man/cat.3/ldap_modify_ext.3.Z)




     LDAP_MODIFY(3)           OpenLDAP 2.1.12           LDAP_MODIFY(3)

     NAME
          ldap_modify, ldap_modify_s - Perform an LDAP modify
          operation

     LIBRARY
          OpenLDAP LDAP (libldap, -lldap)

     SYNOPSIS
          #include <ldap.h>

          int ldap_modify(ld, dn, mods)
          LDAP *ld;
          char *dn;
          LDAPMod *mods[];

          int ldap_modify_s(ld, dn, mods)
          LDAP *ld;
          char *dn;
          LDAPMod *mods[];

          void ldap_mods_free( mods, freemods )
          LDAPMod **mods;
          int freemods;

     DESCRIPTION
          The routine ldap_modify_s() is used to perform an LDAP
          modify operation.  dn is the DN of the entry to modify, and
          mods is a null-terminated array of modifications to make to
          the entry.  Each element of the mods array is a pointer to
          an LDAPMod structure, which is defined below.

               typedef struct ldapmod {
                   int mod_op;
                   char *mod_type;
                   union {
                    char **modv_strvals;
                    struct berval **modv_bvals;
                   } mod_vals;
                   struct ldapmod *mod_next;
               } LDAPMod;
               #define mod_values mod_vals.modv_strvals
               #define mod_bvalues mod_vals.modv_bvals

          The mod_op field is used to specify the type of modification
          to perform and should be one of LDAP_MOD_ADD,
          LDAP_MOD_DELETE, or LDAP_MOD_REPLACE.  The mod_type and
          mod_values fields specify the attribute type to modify and a
          null-terminated array of values to add, delete, or replace
          respectively.  The mod_next field is used only by the LDAP
          server and may be ignored by the client.

          If you need to specify a non-string value (e.g., to add a

     Page 1                                         (printed 1/20/103)

     LDAP_MODIFY(3)           OpenLDAP 2.1.12           LDAP_MODIFY(3)

          photo or audio attribute value), you should set mod_op to
          the logical OR of the operation as above (e.g.,
          LDAP_MOD_REPLACE) and the constant LDAP_MOD_BVALUES.  In
          this case, mod_bvalues should be used instead of mod_values,
          and it should point to a null-terminated array of struct
          bervals, as defined in <lber.h>.

          For LDAP_MOD_ADD modifications, the given values are added
          to the entry, creating the attribute if necessary.  For
          LDAP_MOD_DELETE modifications, the given values are deleted
          from the entry, removing the attribute if no values remain.
          If the entire attribute is to be deleted, the mod_values
          field should be set to NULL.  For LDAP_MOD_REPLACE
          modifications, the attribute will have the listed values
          after the modification, having been created if necessary.
          All modifications are performed in the order in which they
          are listed.

          ldap_modify_s() returns the LDAP error code resulting from
          the modify operation.  This code can be interpreted by
          ldap_perror(3) and friends.

          The ldap_modify() operation works the same way as
          ldap_modify_s(), except that it is asynchronous, returning
          the message id of the request it initiates, or -1 on error.
          The result of the operation can be obtained by calling
          ldap_result(3).

          ldap_mods_free() can be used to free each element of a NULL-
          terminated array of mod structures.  If freemods is non-
          zero, the mods pointer itself is freed as well.

     ERRORS
          ldap_modify_s() returns an ldap error code, either
          LDAP_SUCCESS or an error if there was trouble.
          ldap_modify() returns -1 in case of trouble, setting the
          ld_errno field of ld.

     SEE ALSO
          ldap(3), ldap_error(3), ldap_add(3)

     ACKNOWLEDGEMENTS
          OpenLDAP is developed and maintained by The OpenLDAP Project
          (http://www.openldap.org/).  OpenLDAP is derived from
          University of Michigan LDAP 3.3 Release.

     Page 2                                         (printed 1/20/103)


Man(1) output converted with man2html