*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Tru64 Unix man pages -> DL_DataModify (3)              
Title
Content
Arch
Section
 

DL_DataModify(3)

Contents


NAME    [Toc]    [Back]

       DL_DataModify, CSSM_DL_DataModify - Modify persistent data
       record (CDSA)

SYNOPSIS    [Toc]    [Back]

       # include <cdsa/cssm.h>

       API:      CSSM_RETURN      CSSMAPI      CSSM_DL_DataModify
       (CSSM_DL_DB_HANDLE  DLDBHandle, CSSM_DB_RECORDTYPE RecordType,
  CSSM_DB_UNIQUE_RECORD_PTR   UniqueRecordIdentifier,
       const  CSSM_DB_RECORD_ATTRIBUTE_DATA  *AttributesToBeModified,
  const  CSSM_DATA  *DataToBeModified,   CSSM_DB_MODIFY_MODE
  ModifyMode) SPI: CSSM_RETURN CSSMDLI DL_DataModify
  (CSSM_DL_DB_HANDLE   DLDBHandle,   CSSM_DB_RECORDTYPE
       RecordType,  CSSM_DB_UNIQUE_RECORD_PTR UniqueRecordIdentifier,
 const CSSM_DB_RECORD_ATTRIBUTE_DATA *AttributesToBeModified,
  const CSSM_DATA *DataToBeModified, CSSM_DB_MODIFY_MODE
 ModifyMode)

LIBRARY    [Toc]    [Back]

       Common Security Services Manager library (libcssm.so)

PARAMETERS    [Toc]    [Back]

       The handle pair that describes  the  add-in  data  storage
       library module to be used to perform this function and the
       open data store  to  search  for  records  satisfying  the
       query.   Indicates the type of data record being modified.
       A pointer to a CSSM_DB_UNIQUE_RECORD containing  a  unique
       identifier  associated  with  the record to modify. If the
       modification succeeds, the  UniqueRecordIdentifier  points
       to  a CSSM_DB_UNIQUE_RECORD containing a unique identifier
       associated with the updated record.  If  the  modification
       fails, the UniqueRecordIdentifier is not modified.  A list
       of structures containing the attribute values to be stored
       in  that  attribute  and  the  meta  information  (schema)
       describing those attributes.  The list  contains  at  most
       one  entry per attribute in the specified record type. The
       specified AttributeFormat for each  attribute  must  match
       that  of  the  database  schema,  otherwise the error CSSMERR_DL_INCOMPATIBLE_FIELD_FORMAT
  is  returned.   If   an
       attribute  is  of type CSSM_DB_ATTRIBUTE_FORMAT_STRING and
       the value specified for that string includes a null-terminator,
  then  the  length count in the CSSM_DATA structure
       containing the input string should include the terminating
       character.  (If  null-terminators are used, they should be
       used consistently when storing, searching, and  retrieving
       the  string value, otherwise selection predicates will not
       locate expected matches.) Each attribute specified is modified
  according  to the value of ModifyMode (see table in
       the  DESCRIPTION  section  of  this   definition).   Those
       attributes  that are not specified as part of this parameter
 remain unchanged. If the AttributesToBeModified parameter
 is NULL, no attribute modification occurs.  A pointer
       to the CSSM_DATA structure which contains the opaque  data
       object  to be stored in the data record. If this parameter
       is NULL, no  Data  modification  occurs.   A  CSSM_DB_MODIFY_MODE
  value  indicating the type of modification to be
       performed  on  the   record   attributes   identified   by
       AttributesToBeModified.  If  no  attributes are specified,
       then this value must be CSSM_DB_MODIFY_ATTRIBUTE_NONE.

DESCRIPTION    [Toc]    [Back]

       This function modifies the persistent data record  identified
  by the UniqueRecordIdentifier. The modifications are
       specified by the Attributes and Data parameters. The ModifyMode
 indicates how the attributes are to be updated. The
       ModifyMode has no affect on updating the  data  blob  contained
  in the record. If the data blob is the only record
       attribute being updated by this function  call,  then  the
       modification  mode  must  be  0.  The current modification
       modes behave as follows:

       ModifyMode Value           Function Behavior
       CSSM_DB_MOD-               No Attributes are being updated.
       IFY_ATTRIBUTE_NONE
       CSSM_DB_MOD-               The specified values are added  to  the  set  of
       IFY_ATTRIBUTE_ADD          current  values  for each attribute. If 0 values
                                  are    specified    then    the    error    CSSMERR_DL_INVALID_MODIFY_MODE
 is returned. If a DL
                                  does not support multiple values per  attribute,
                                  the error CSSMERR_DL_MULTIPLE_VALUES_UNSUPPORTED
                                  is returned.
       CSSM_DB_MOD-               The specified values are removed from the set of
       IFY_ATTRIBUTE_DELETE       current values for each attribute. If  0  values
                                  are specified then all values are deleted or the
                                  attributes value is replaced  with  the  default
                                  for  this  attribute.  If  a DL does not support
                                  multiple values per attribute,  the  error  CSSMERR_DL_MULTIPLE_VALUES_UNSUPPORTED
 is returned.
       CSSM_DB_MOD-               The  values for each attribute are replaced with
       IFY_ATTRIBUTE_REPLACE      the specified set of values for each  attribute.
                                  If  no  values are specified then all values are
                                  deleted or the attributes value is replaced with
                                  the default for this attribute. If a DL does not
                                  support multiple values per attribute, the error
                                  CSSMERR_DL_MULTIPLE_VALUES_UNSUPPORTED        is
                                  returned when more than 1 value is specified.

       If the attribute lists specifies an attribute that is  not
       defined  in the database's meta-information, an error condition
 is returned. For  each  attribute-value  pair,  the
       value  replaces  the  corresponding attribute value in the
       record. If a data value is specified,  the  record's  data
       value  is  replaced  with  the specified value. A record's
       data value or attribute values can be set to NULL or  zero
       to represent deletion or the lack of a known value.

       If  the  record  referenced  by UniqueRecordIdentifier has
       been modified since the last  time  it  was  updated,  the
       error  CSSMERR_DL_STALE_UNIQUE_RECORD  is  returned and no
       modification takes place.

RETURN VALUE    [Toc]    [Back]

       A CSSM_RETURN value indicating  success  or  specifying  a
       particular  error  condition.  The value CSSM_OK indicates
       success. All other values represent an error condition.

ERRORS    [Toc]    [Back]

       Errors are described in the CDSA technical standard.   See
       CDSA_intro(3).   CSSMERR_DL_FIELD_SPECIFIED_MULTIPLE  CSSMERR_DL_INCOMPATIBLE_FIELD_FORMAT
                     CSSMERR_DL_INVALID_DB_HANDLE
    CSSMERR_DL_INVALID_FIELD_NAME
       CSSMERR_DL_INVALID_MODIFY_MODE  CSSMERR_DL_INVALID_RECORDTYPE
           CSSMERR_DL_INVALID_RECORD_UID          CSSMERR_DL_INVALID_UNIQUE_INDEX_DATA
 CSSMERR_DL_INVALID_VALUE
       CSSMERR_DL_MULTIPLE_VALUES_UNSUPPORTED
       CSSMERR_DL_STALE_UNIQUE_RECORD

SEE ALSO    [Toc]    [Back]

      
      
       Books

       Intel   CDSA   Application    Developer's    Guide    (see
       CDSA_intro(3))

       Reference Pages    [Toc]    [Back]

       Functions for the CSSM API:

       CSSM_DL_DataInsert(3), CSSM_DL_DataDelete(3)

       Functions for the DL SPI:

       DL_DataInsert(3), DL_DataDelete(3)



                                                 DL_DataModify(3)
[ Back ]
 Similar pages
Name OS Title
DL_DataInsert Tru64 Create new persistent data record (CDSA)
CSSM_DL_DataInsert Tru64 Create new persistent data record (CDSA)
CSSM_DL_DataGetNext Tru64 Get next data record (CDSA)
CSSM_DL_DataGetFirst Tru64 Get first data record (CDSA)
DL_DataGetNext Tru64 Get next data record (CDSA)
DL_DataGetFromUniqueRecordId Tru64 Get data record (CDSA)
CSSM_DL_DataGetFromUniqueRecordId Tru64 Get data record (CDSA)
DL_DataGetFirst Tru64 Get first data record (CDSA)
DL_DataDelete Tru64 Remove data record (CDSA)
CSSM_DL_DataDelete Tru64 Remove data record (CDSA)
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service