listxattr

Autres langues

Langue: ja

Version: 2001-12-01 (openSuse - 09/10/07)

Section: 2 (Appels système)

̾Á°

listxattr, llistxattr, flistxattr - ³Èĥ°À­¤Î̾Á°¥ê¥¹¥È¤òÆÀ¤ë

½ñ¼°


#include <sys/types.h>

#include <attr/xattr.h>



ssize_t listxattr(const char *path, char *list, size_t size);

ssize_t llistxattr(const char *path, char *list, size_t size);

ssize_t flistxattr(int filedes, char *list, size_t size);

ÀâÌÀ

³Èĥ°À­¤Ï¡¢inode (¥Õ¥¡¥¤¥ë¡¢¥Ç¥£¥ì¥¯¥È¥ê¡¢¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯Åù) ¤Ë ´ØÏ¢ÉÕ¤±¤é¤ì¤¿ name:value ¤ÎÂФǤ¢¤ë¡£ ¤³¤ì¤é¤Ï¡¢¥·¥¹¥Æ¥à¾å¤Î¤¹¤Ù¤Æ¤Î inode ¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿Ä̾ï¤Î°À­ (stat(2) ¤¬ÊÖ¤¹¥Ç¡¼¥¿) ¤ò³ÈÄ¥¤¹¤ë¤â¤Î¤Ç¤¢¤ë¡£ ³Èĥ°À­¤Î¥³¥ó¥»¥×¥È¤Ï attr(5) ¤Ë½ñ¤«¤ì¤Æ¤¤¤ë¡£

listxattr() ¤Ï¡¢¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥àÆâ¤Î»ØÄꤵ¤ì¤¿ path ¤ËÂбþ¤¹¤ë³Èĥ°À­¤Î̾Á°¥ê¥¹¥È¤ò¼èÆÀ¤¹¤ë¡£ ¥ê¥¹¥È¤Ï̾Á°¤Î½¸¹ç¤Ç¡¢ NULL ½ªÃ¼¤µ¤ì¤¿Ê¸»úÎó¤¬Ï¢Â³¤·¤Æʤó¤Ç¤¤¤ë¡£ ¸Æ¤Ó½Ð¤·¤¿¥×¥í¥»¥¹¤¬¥¢¥¯¥»¥¹¤¹¤ë¸¢¸Â¤Î¤Ê¤¤³Èĥ°À­¤Î̾Á°¤Ï¡¢ ¥ê¥¹¥È¤Ë´Þ¤Þ¤ì¤Ê¤¤¡£³Èĥ°À­¤Î̾Á°¤Î list ¤ÎŤµ¤¬ÊÖ¤µ¤ì¤ë¡£

llistxattr() ¤Ï listxattr() ¤ÈƱ¤¸¤À¤¬¡¢¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯¤Î¾ì¹ç¤Ë¡¢¥ê¥ó¥¯¤¬»²¾È¤·¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë ¤Ç¤Ï¤Ê¤¯¡¢¥ê¥ó¥¯¤½¤Î¤â¤Î¤Î³Èĥ°À­¤Î̾Á°¥ê¥¹¥È¤ò¼èÆÀ¤¹¤ëÅÀ¤À¤±¤¬°Û¤Ê¤ë¡£

flistxattr() ¤Ï listxattr() ¤ÈƱ¤¸¤À¤¬¡¢ path ¤ÎÂå¤ï¤ê¤Ë filedes ¤Ç»Ø¼¨¤µ¤ì¤¿¥ª¡¼¥×¥óºÑ¤ß¥Õ¥¡¥¤¥ë¤Î¾ðÊó¤À¤±¤ò¼èÆÀ¤¹¤ëÅÀ¤¬°Û¤Ê¤ë (filedes ¤Ï open(2) ¤Ë¤è¤Ã¤ÆÊÖ¤µ¤ì¤ë)¡£

¸Ä¡¹¤Î³Èĥ°À­¤Î name ¤ÏÉáÄ̤ΠNULL ½ªÃ¼¤µ¤ì¤¿Ê¸»úÎó¤Ç¤¢¤ë¡£ ̾Á°¤Ë¤Ï¡¢Ì¾Á°¶õ´Ö¤òɽ¤¹ÀÜƬ¼­ (prefix) ¤¬´Þ¤Þ¤ì¤ë; ¸Ä¡¹¤Î inode ¤ËÂФ·¤Æ¡¢¸ß¤¤¤ËÆÈΩ¤Ê̾Á°¶õ´Ö¤¬Ê£¿ô¤¢¤Ã¤Æ¤â¤è¤¤¡£

size ¤Ë 0 ¤ò»ØÄꤷ¤Æ¶õ¤Î¥Ð¥Ã¥Õ¥¡¤ò¤³¤ì¤é¤Î¥·¥¹¥Æ¥à¥³¡¼¥ë¤ËÅϤ¹¤³¤È¤¬¤Ç¤­¡¢ ¤³¤Î¾ì¹ç¤Ë¤Ï³Èĥ°À­¤Î̾Á°¥ê¥¹¥È¤Î¸½ºß¤Î¥µ¥¤¥º¤¬ÊÖ¤µ¤ì¤ë¡£ ¤³¤ÎÊýË¡¤Ï̾Á°¥ê¥¹¥È¤òÊÝ»ý¤¹¤ë¤Î¤Ë½½Ê¬¤ÊÂ礭¤µ¤Î¥Ð¥Ã¥Õ¥¡¡¦¥µ¥¤¥º¤ò ¸«ÀѤâ¤ë¤Î¤Ë»È¤¦¤³¤È¤¬¤Ç¤­¤ë¡¢

Îã

ÊÖ¤µ¤ì¤ë̾Á°¤Î list ¤Ï¡¢ NULL ½ªÃ¼¤µ¤ì¤¿Ê¸»úÎó¤ÎÇÛÎó (°À­Ì¾¤Ï NULL ¥Ð¥¤¥È ('\0') ¤Ç¶èÀÚ¤é¤ì¤Æ¤¤¤ë) ¤Ç¡¢³ÆÍ×ÁǤÏÀ°Î󤵤ì¤Æ¤¤¤ëÌõ¤Ç¤Ï¤Ê¤¤¡£ °Ê²¼¤ËÎã¤ò¼¨¤¹:



user.name1\0system.name1\0user.name2\0

³Èĥ°À­¤ò»È¤Ã¤Æ POSIX ACL ¤ò¼ÂÁõ¤·¤Æ¤¤¤ë ext2¡¢ext3¡¢XFS ¤Î¤è¤¦¤Ê¥Õ¥¡¥¤¥ë ¥·¥¹¥Æ¥à¤Ç¤Ï¡¢ÊÖ¤µ¤ì¤ë list ¤Ï°Ê²¼¤Î¤è¤¦¤Ë¤Ê¤ë¤³¤È¤À¤í¤¦:



system.posix_acl_access\0system.posix_acl_default\0

ÊÖ¤êÃÍ

À®¸ù¤·¤¿¾ì¹ç¡¢³Èĥ°À­¤Î̾Á°¥ê¥¹¥È¤ÎŤµ¤òɽ¤¹Àµ¤Î¿ô¤¬ÊÖ¤µ¤ì¤ë¡£ ¼ºÇÔ¤·¤¿¾ì¹ç¡¢ -1 ¤¬ÊÖ¤µ¤ì¡¢ errno ¤ËŬÀÚ¤ÊÃͤ¬¥»¥Ã¥È¤µ¤ì¤ë¡£

list ¥Ð¥Ã¥Õ¥¡¤ÎÂ礭¤µ size ¤¬·ë²Ì¤òÊÝ»ý¤¹¤ë¤Î¤Ë½½Ê¬¤ÊÂ礭¤µ¤Ç¤Ê¤¤¾ì¹ç¡¢ errno ¤Ë ERANGE ¤¬¥»¥Ã¥È¤µ¤ì¤ë¡£

³Èĥ°À­¤¬¤½¤Î¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢ ¤â¤·¤¯¤Ï̵¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤ë¾ì¹ç¡¢ errno ¤Ë ENOTSUP ¤¬¥»¥Ã¥È¤µ¤ì¤ë¡£

stat(2) ¥·¥¹¥Æ¥à¥³¡¼¥ë¤ÎÀâÌÀ¤Ë½ñ¤«¤ì¤Æ¤¤¤ë¥¨¥é¡¼¤Ï ¤³¤ì¤é¤Î¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ë¤âŬÍѤµ¤ì¤ë¡£

½àµò

¤³¤ì¤é¤Î¥·¥¹¥Æ¥à¥³¡¼¥ë¤Ï Linux Æȼ«¤Ç¤¢¤ë¡£

´ØÏ¢¹àÌÜ

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