The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

setxattr (2)
  • >> setxattr (2) ( Русские man: Системные вызовы )
  • setxattr (2) ( Linux man: Системные вызовы )
  •  

    НАЗВАНИЕ

    setxattr, lsetxattr, fsetxattr - устанавливает расширенное значение атрибутов  

    СИНТАКСИС

    #include <sys/types.h>
    #include <attr/xattr.h>
    
    int setxattr (const char *path, const char *name,
    			 const void *value, size_t size, int flags);
    int lsetxattr (const char *path, const char *name,
    			 const void *value, size_t size, int flags);
    int fsetxattr (int filedes, const char *name,
    			 const void *value, size_t size, int flags);
    
     

    ОПИСАНИЕ

    Расширенные атрибуты являются парами name:value ассоциированными с записями inode (файлы, каталоги, символьные ссылки и т.п.). Они являются расширениями к обычным атрибутам, ассоциированными со всеми записями inode в системе (например, данные stat(2)). Полный обзор концепции расширенных атрибутов можно посмотреть в attr(5).

    setxattr устанавливает значение value расширенного атрибута, идентифицированного по имени name и ассоциированного с указанным путем path в файловой системе. Должна быть указана длина size атрибута value.

    lsetxattr идентично setxattr, за исключением случаем символьной ссылки, когда устанавливается расширенный атрибут на ссылке, а не на том файле, на который она указывает.

    fsetxattr идентично setxattr, только расширенный атрибут устанавливается на открываемом файле, на который указывает filedes (возвращаемый от open(2)) вместо path.

    Расширенный атрибут name является просто строкой, заканчивающейся на NULL. Имя включает префикс пространства имен - их может быть несколько, разрозненные пространства ассоциируются с разными записями inode. Значением value расширенного атрибута является произвольный кусок текстовых или двоичных данных определенной длины.

    Параметр flags может использоваться для уточнения семантики операций. XATTR_CREATE определяет только создание, причем выдает ошибку, если указанный атрибут уже существует. XATTR_REPLACE определяет только операцию замены, выдающую ошибку, если указанный атрибут не существует. По умолчанию (без флагов) расширенный атрибут будет создан при необходимости, или просто заменит значение существующего атрибута.  

    ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ

    При успешном завершении работы возвращается 0. При ошибках возвращается -1 и errno устанавливается соответственно ошибке.

    Если указано XATTR_CREATE, и атрибут уже существует, то errno устанавливается в EEXIST. Если указано XATTR_REPLACE, а атрибут не существует, то errno устанавливается в ENOATTR.

    Если не хватает пространства для хранения расширенного атрибута, то errno устанавливается в ENOSPC, либо в EDQUOT, если причиной этого было ограничение по квоте.

    Если расширенный атрибут не поддерживается файловой системой или отключен, то errno устанавливается в ENOTSUP.

    Ошибки, документированные для системного вызова stat(2) также применимы и тут.  

    АВТОРЫ

    Andreas Gruenbacher, <[email protected]> и команда разработчиков SGI XFS, <[email protected]>. Пожалуйста, отправляйте все замечания или сообщения по ошибкам на этот адрес.  

    СМ. ТАКЖЕ

    getfattr(1), setfattr(1), open(2), stat(2), getxattr(2), listxattr(2), removexattr(2), attr(5).


     

    Index

    НАЗВАНИЕ
    СИНТАКСИС
    ОПИСАНИЕ
    ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ
    АВТОРЫ
    СМ. ТАКЖЕ


    Поиск по тексту MAN-ов: 




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру