dsapi_attr.h
Go to the documentation of this file.
1/* Emacs mode: -*- C -*- */
2
3/*
4 * Copyright (c) 2004-2010, Isode Limited, London, England.
5 * All rights reserved.
6 *
7 * Acquisition and use of this software and related materials for any
8 * purpose requires a written licence agreement from Isode
9 * Limited, or a written licence from an organisation licenced by Isode
10 * Limited to grant such a licence.
11 *
12 */
13
14/*
15 * dsapi_attr.h
16 *
17 * Directory client API methods for manipulating entry attributes.
18 *
19 */
20
21/*
22 *
23 *
24 * @VERSION@
25 */
26
27#ifndef ISODE_DSAPI_ATTR_H
28#define ISODE_DSAPI_ATTR_H
29
30#include <stddef.h>
31#include <isode/ds/dsapi/dsapi_cdecl.h>
34
90LIBDSAPI_CDECL
92 const DS_Entry *entry,
93 const char *type,
94 const DS_Attr **attr_p
95);
96
108LIBDSAPI_CDECL
110 const DS_Entry *entry,
111 const DS_AttrList **attr_list_p
112);
113
127LIBDSAPI_CDECL
129 const DS_Entry *entry,
130 const DS_AttrList **mod_list_p
131);
132
145LIBDSAPI_CDECL
147 DS_AttrList **attrlist_p,
148 const DS_Attr *attr
149);
150
162LIBDSAPI_CDECL
164 DS_AttrList *attrlist,
165 const DS_Attr *attr
166);
167
175LIBDSAPI_CDECL
177 const DS_AttrList *attr_list
178);
179
187LIBDSAPI_CDECL
189 const DS_Attr *attr
190);
191
203LIBDSAPI_CDECL
205 const DS_Attr *attr,
206 const char **str_p
207);
208
223LIBDSAPI_CDECL
225 const DS_Attr *attr,
226 DSModType *type_p
227);
228
240LIBDSAPI_CDECL
242 const DS_Attr *attr,
243 const DS_AttrValList **val_list_p
244);
245
266LIBDSAPI_CDECL
268 DS_Attr *attr,
269 const char *str,
270 size_t len
271);
272
293LIBDSAPI_CDECL
295 DS_Attr *attr,
296 const unsigned char *ber,
297 size_t len
298);
299
311LIBDSAPI_CDECL
313 const char *name,
314 DS_Attr **attr_p
315);
316
328LIBDSAPI_CDECL
330 const char *name,
331 DS_Attr **attr_p
332);
333
345LIBDSAPI_CDECL
347 DS_Attr *attr,
348 int *is_unknown_p
349);
350
360LIBDSAPI_CDECL
362 const DS_Attr *attr,
363 DS_Attr **copy_p
364);
365
371LIBDSAPI_CDECL
373 DS_Attr *attr
374);
375
385LIBDSAPI_CDECL
387 const DS_AttrList *attr_list,
388 DS_AttrList **copy_p
389);
390
396LIBDSAPI_CDECL
398 DS_AttrList *attr_list
399);
400
401/* \} */
402
414LIBDSAPI_CDECL
416 const DS_AttrValList *value_list
417);
418
427LIBDSAPI_CDECL
429 const DS_AttrValList *value_list,
430 int *count_p
431);
432
440LIBDSAPI_CDECL
442 const DS_AttrVal *value
443);
444
459LIBDSAPI_CDECL
461 const DS_AttrVal *value,
462 const unsigned char **ber_ptr_p,
463 size_t *ber_len_p
464);
465
491LIBDSAPI_CDECL
493 const DS_AttrVal *value,
494 const char **str_p,
495 size_t *str_len_p
496);
497
517LIBDSAPI_CDECL
519 const DS_AttrVal *value,
520 const void **ir_p
521);
522
532LIBDSAPI_CDECL
534 const DS_AttrVal *value,
535 void *ir
536);
537
559LIBDSAPI_CDECL
561 const DS_AttrVal *value
562);
563
564
584LIBDSAPI_CDECL
586 const DS_AttrVal *value,
587 DS_AttrVal **copy_p
588);
589
612LIBDSAPI_CDECL
614 const DS_AttrVal *av1,
615 const DS_AttrVal *av2,
616 int *res_p
617);
618
628LIBDSAPI_CDECL
630 const DS_AttrVal *av,
631 DS_AttrVal **copy_p
632);
633
639LIBDSAPI_CDECL
641 DS_AttrVal *av
642);
643
653LIBDSAPI_CDECL
655 const DS_AttrValList *av_list,
656 DS_AttrValList **copy_p
657);
658
664LIBDSAPI_CDECL
666 DS_AttrValList *av_list
667);
668
673#endif /* ISODE_DSAPI_ATTR_H */
Symbolic constants used in the Directory Service API.
Directory API type definitions and forward declarations of private types.
DSModType
struct DS_AttrVal DS_AttrVal
Definition dsapi_types.h:69
struct DS_AttrVal DS_AttrValList
struct DS_Attr DS_Attr
Definition dsapi_types.h:75
struct DS_Entry DS_Entry
Definition dsapi_types.h:81
struct DS_Attr DS_AttrList
void DS_AttrList_Delete(DS_AttrList *attr_list)
Free a DS_AttrList structure (and all elements).
DS_Status DS_Attr_Copy(const DS_Attr *attr, DS_Attr **copy_p)
Copy a DS_Attr structure.
DS_Status DS_Entry_GetNamedAttr(const DS_Entry *entry, const char *type, const DS_Attr **attr_p)
Get the named attribute from an attribute list.
DS_Status DS_Attr_New(const char *name, DS_Attr **attr_p)
Create a new DS_Attr structure.
const DS_Attr * DS_AttrList_GetFirst(const DS_AttrList *attr_list)
Get the first attribute in an attribute list.
DS_Status DS_Attr_AddBERValue(DS_Attr *attr, const unsigned char *ber, size_t len)
Add a new BER value to a DS_Attr.
DS_Status DS_AttrList_Copy(const DS_AttrList *attr_list, DS_AttrList **copy_p)
Copy a DS_AttrList structure.
DS_Status DS_Attr_GetTypeName(const DS_Attr *attr, const char **str_p)
Return the type name of a given attribute.
DS_Status DS_Entry_GetModList(const DS_Entry *entry, const DS_AttrList **mod_list_p)
Get the change-entry's modification list.
DS_Status DS_Entry_GetAttrList(const DS_Entry *entry, const DS_AttrList **attr_list_p)
Get the entry attribute list.
DS_Status DS_Attr_AddStringValue(DS_Attr *attr, const char *str, size_t len)
Add a new string value to a DS_Attr.
DS_Status DS_AttrList_New(DS_AttrList **attrlist_p, const DS_Attr *attr)
Create a new Attribute list. Initially the list contains a single Attribute.
DS_Status DS_Attr_IsUnknown(DS_Attr *attr, int *is_unknown_p)
Check to see if a DS_Attr has an unknown attribute-type.
DS_Status DS_Attr_New_AllowUnknown(const char *name, DS_Attr **attr_p)
Create a new DS_Attr structure, allowing unknown attribute-types.
DS_Status DS_AttrList_Append(DS_AttrList *attrlist, const DS_Attr *attr)
Append an attribute to an Attribute list.
DS_Status DS_Attr_GetModType(const DS_Attr *attr, DSModType *type_p)
Return the modification type of a given attribute.
const DS_Attr * DS_AttrList_GetNext(const DS_Attr *attr)
Get the next attribute in a list.
void DS_Attr_Delete(DS_Attr *attr)
Free a DS_Attr structure.
DS_Status DS_Attr_GetValueList(const DS_Attr *attr, const DS_AttrValList **val_list_p)
Get an attribute's value list.
DS_Status
Definition dsapi_const.h:66
const DS_AttrVal * DS_AttrValList_GetFirst(const DS_AttrValList *value_list)
Get the first attribute in a list.
DS_Status DS_AttrVal_Internal_Delete(const DS_AttrVal *value, void *ir)
Delete a pointer to the internal representation of a value.
DS_Status DS_AttrVal_GetStringPointer(const DS_AttrVal *value, const char **str_p, size_t *str_len_p)
Return a pointer to the stored LDAPv3 format string encoding.
DS_Status DS_AttrValList_GetCount(const DS_AttrValList *value_list, int *count_p)
Count the attribute values in a list.
DS_Status DS_AttrVal_GetInternal(const DS_AttrVal *value, const void **ir_p)
Verify that the contents of a DS_AttrVal have a valid internal representation, and optionally return ...
DS_Status DS_AttrValList_Copy(const DS_AttrValList *av_list, DS_AttrValList **copy_p)
Copy a DS_AttrValList structure.
DS_Status DS_AttrVal_RegenerateBER(const DS_AttrVal *value, DS_AttrVal **copy_p)
Regenerate the attribute value via BER.
DS_Status DS_AttrVal_Copy(const DS_AttrVal *av, DS_AttrVal **copy_p)
Copy a DS_AttrVal structure.
const DS_AttrVal * DS_AttrValList_GetNext(const DS_AttrVal *value)
Get the next attribute in a list.
DS_Status DS_AttrVal_Compare(const DS_AttrVal *av1, const DS_AttrVal *av2, int *res_p)
Compare two DS_AttrVal values.
void DS_AttrValList_Delete(DS_AttrValList *av_list)
Free a DS_AttrValList structure.
void DS_AttrVal_Delete(DS_AttrVal *av)
Free a DS_AttrVal structure.
DS_Status DS_AttrVal_Normalize(const DS_AttrVal *value)
Normalize the value in a DS_AttrVal.
DS_Status DS_AttrVal_GetBERPointer(const DS_AttrVal *value, const unsigned char **ber_ptr_p, size_t *ber_len_p)
Return a pointer to the stored BER encoding.

All rights reserved © 2002 - 2024 Isode Ltd.