LinuxGuruz
  • Last 5 Forum Topics
    Replies
    Views
    Last post


The Web Only This Site
  • BOOKMARK

  • ADD TO FAVORITES

  • REFERENCES


  • MARC

    Mailing list ARChives
    - Search by -
     Subjects
     Authors
     Bodies





    FOLDOC

    Computing Dictionary




  • Text Link Ads






  • LINUX man pages
  • Linux Man Page Viewer


    The following form allows you to view linux man pages.

    Command:

    attr_list

    
    
    
    

    C SYNOPSIS

           #include <sys/attributes.h>
    
           int attr_list (const char *path, char *buffer,
                          const int buffersize, int flags,
                          attrlist_cursor_t *cursor);
    
           int attr_listf (int fd, char *buffer,
                           const int buffersize, int flags,
                           attrlist_cursor_t *cursor);
    
    
    

    DESCRIPTION

           The attr_list and attr_listf functions provide a way to list the exist-
           ing attributes of a filesystem object.
    
           Path  points  to  a path name for a filesystem object, and fd refers to
           the file descriptor associated with a file.  The buffer will be  filled
           with  a structure describing at least a portion of the attributes asso-
           ciated with the given filesystem object.  Buffer  will  be  overwritten
           with  an aattttrrlliisstt_tt structure containing a list of the attributes asso-
           ciated with that filesystem object,  up  to  a  maximum  of  buffersize
           bytes.   The  buffer must be sufficiently large to hold the appropriate
           data structures plus at least one maximally sized attribute  name,  but
           cannot be more than ATTR_MAX_VALUELEN (currently 64KB) bytes in length.
    
           The contents of an aattttrrlliisstt_tt structure include the following members:
    
              __iinntt3322_tt aall_ccoouunntt;; //** nnuummbbeerr ooff eennttrriieess iinn aattttrrlliisstt **//
              __iinntt3322_tt aall_mmoorree;; //** TT//FF:: mmoorree aattttrrss ((ddoo ssyyssccaallll aaggaaiinn)) **//
              __iinntt3322_tt aall_ooffffsseett[[11]];; //** bbyyttee ooffffsseettss ooff aattttrrss [[vvaarr--ssiizzeedd]] **//
    
           The al_count field shows the number of attributes represented  in  this
           buffer,  which  is  also the number of elements in the al_offset array.
           The al_more field will be non-zero  if  another  attr_list  call  would
           result  in more attributes.  The al_offset array contains the byte off-
           set  within  the  buffer  of  the  structure  describing  each  of  the
           attributes, an aattttrrlliisstt_eenntt_tt structure.  The AATTTTRR_EENNTTRRYY((bbuuffffeerr,, iinnddeexx))
           macro will help with decoding the list.  It  takes  a  pointer  to  the
           buffer  and  an index into the al_offset array and returns a pointer to
           the corresponding aattttrrlliisstt_eenntt_tt structure.
    
           The contents of an aattttrrlliisstt_eenntt_tt structure include the following  mem-
           bers:
    
              uu_iinntt3322_tt aa_vvaalluueelleenn;; //** nnuummbbeerr bbyytteess iinn vvaalluuee ooff aattttrr **//
              cchhaarr aa_nnaammee[[]];; //** aattttrr nnaammee ((NNUULLLL tteerrmmiinnaatteedd)) **//
    
           The  a_valuelen  field  shows the size in bytes of the value associated
           with the attribute whose name is stored in the a_name field.  The  name
           is a NULL terminated string.
    
                  attr_list  function  call.   The  default  is to follow symbolic
                  links.
    
           The cursor argument is a pointer to an opaque data structure  that  the
           kernel  uses  to  track the calling process?s position in the attribute
           list.  The only valid operations on a cursor are to  pass  it  into  an
           attr_list  function  call  or to zero it out.  It should be zero?ed out
           before the first attr_list call.  Note that multi-threaded applications
           may  keep more than one cursor in order to serve multiple contexts, ie:
           the attr_list call is "thread-safe".
    
           attr_list will fail if one or more of the following are true:
    
           [ENOENT]         The named file does not exist.
    
           [EPERM]          The effective user ID does not match the owner of  the
                            file and the effective user ID is not super-user.
    
           [ENOTDIR]        A component of the path prefix is not a directory.
    
           [EACCES]         Search permission is denied on a component of the path
                            prefix.
    
           [EINVAL]         A bit was set in the flag argument that is not defined
                            for  this  system call, or the buffer was too small or
                            too large.
    
           [EFAULT]         Either Path or buffer  points  outside  the  allocated
                            address space of the process, or buffer or bufsize are
                            not 32bit aligned.
    
           [ELOOP]          A path name lookup involved too many symbolic links.
    
           [ENAMETOOLONG]   The length of path exceeds {MAXPATHLEN}, or a pathname
                            component is longer than {MAXNAMELEN}.
    
           [ENOATTR]        attribute does not exist for this file.
    
           attr_listf will fail if:
    
           [EINVAL]       A  bit  was set in the flag argument that is not defined
                          for this system call, or fd refers to a  socket,  not  a
                          file, or the buffer was too small or too large.
    
           [EFAULT]       Either  Path  or  buffer  points  outside  the allocated
                          address space of the process, or buffer or  bufsize  are
                          not 32bit aligned.
    
           [EBADF]        Fd does not refer to a valid descriptor.
    
    
    

    DIAGNOSTICS

           Upon  successful  completion,  a  value of 0 is returned.  Otherwise, a
    
  • MORE RESOURCE


  • Linux

    The Distributions





    Linux

    The Software





    Linux

    The News



  • MARKETING






  • Toll Free

webmaster@linuxguruz.com
Copyright © 1999 - 2016 by LinuxGuruz