NAME FN_attribute_t, fn_attribute_create, fn_attribute_destroy, fn_attribute_copy, fn_attribute_assign, fn_attribute_identifier, fn_attribute_syntax, fn_attribute_valuecount, fn_attribute_first, fn_attribute_next, fn_attribute_add, fn_attribute_remove - an XFN attribute SYNOPSIS cc [ flag ... ] file ... -lxfn [ library ... ] #include <xfn/xfn.h> FN_attribute_t *fn_attribute_create(constFN_identifier_t *attribute_id, const FN_identifier_t *attribute_syntax); void fn_attribute_destroy(FN_attribute_t *attr); FN_attribute_t *fn_attribute_copy(constFN_attribute_t *attr); FN_attribute_t *fn_attribute_assign(FN_attribute_t *dst, const FN_attribute_t *src); const FN_identifier_t *fn_attribute_identifier(constFN_attribute_t *attr); const FN_identifier_t *fn_attribute_syntax(constFN_attribute_t *attr); unsigned int fn_attribute_valuecount(constFN_attribute_t *attr); const FN_attrvalue_t *fn_attribute_first(constFN_attribute_t *attr, void **iter_pos); const FN_attrvalue_t *fn_attribute_next(constFN_attribute_t *attr, void **iter_pos); int fn_attribute_add(FN_attribute_t *attr, const FN_attrvalue_t *attribute_value, unsigned int exclusive); int fn_attribute_remove(FN_attribute_t *attr, const FN_attrvalue_t *attribute_value); DESCRIPTION An attribute has an attribute identifier, a syntax, and a set of distinct values. Each value is a sequence of octets. The operations associated with objects of type FN_attribute_t allow the construction, destruction, and manipulation of an attribute and its value set. The attribute identifier and its syntax are specified using an FN_identifier_t. fn_attribute_create() creates a new attribute object with the given identifier and syntax, and an empty set of values. fn_attribute_destroy() releases the storage associated with attr. fn_attribute_copy() returns a copy of the object pointed to by attr. fn_attribute_assign() makes a copy of the attribute object pointed to by src and assigns it to dst, releasing any old contents of dst. A pointer to the same object as dst is returned. fn_attribute_identifier() returns the attribute identifier of attr. fn_attribute_syntax() returns the attribute syntax of attr. fn_attribute_valuecount() returns the number of attribute values in attr. fn_attribute_first() and fn_attribute_next() are used to enumerate the values of an attribute. Enumeration of the values of an attribute may return the values in any order. fn_attribute_first() returns an attribute value from attr and sets the iteration marker iter_pos. Subsequent calls to fn_attribute_next() returns the next attribute value identi- fied by iter_pos and advances iter_pos. Adding or removing values from an attribute invalidates any iteration markers that the caller holds. fn_attribute_add() adds a new value attribute_value to attr. The operation succeeds (but no change is made) if attribute_value is already in attr and exclusive is 0; the operation fails if attribute_value is already in attr and exclusive is non-zero. fn_attribute_remove() removes attribute_value from attr. The operation succeeds even if attribute_value is not amongst attr's values. RETURN VALUES fn_attribute_first() returns 0 if the attribute contains no values. fn_attribute_next() returns 0 if there are no more values to be returned in the attribute (as identified by the iteration marker) or if the iteration marker is invalid. fn_attribute_add() and fn_attribute_remove() return 1 if the operation succeeds, 0 if it fails. USAGE Manipulation of attributes using the operations described in this manual page does not affect their representation in the underlying naming system. Changes to attributes in the underlying naming system can only be effected through the use of the interfaces described in xfn_attributes(3XFN). ATTRIBUTES See attributes(5) for descriptions of the following attri- butes: ____________________________________________________________ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | |_____________________________|_____________________________| | MT-Level | MT-Safe | |_____________________________|_____________________________| SEE ALSO FN_attrset_t(3XFN), FN_attrvalue_t(3XFN), FN_identifier_t(3XFN), fn_attr_get(3XFN), fn_attr_modify(3XFN), xfn(3XFN), xfn_attributes(3XFN), attributes(5) NOTES The implementation of XFN in this Solaris release is based on the X/Open preliminary specification. It is likely that there will be minor changes to these interfaces to reflect changes in the final version of this specification. The next minor release of Solaris will offer binary compatibility for applications developed using the current interfaces. As the interfaces evolve toward standardization, it is possible that future releases of Solaris will require minor source code changes to applications that have been developed against the preliminary specification.
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |