Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (HP-UX-11.11)
Apropos / Subsearch:
optional field

 lstat(2)							    lstat(2)

      lstat - get symbolic link status

      #include <&lt&lt&lt;sys/stat.h>&gt&gt&gt;

      int lstat(const char *path, struct stat *buf);

      The lstat() function has the same effect as stat(), except when path
      refers to a symbolic link. In that case lstat() returns information
      about the link, while stat() returns information about the file the
      link references.

      For symbolic links, the st_mode member will contain meaningful
      information when used with the file type macros, and the st_size
      member will contain the length of the pathname contained in the
      symbolic link. File mode bits and the contents of the remaining
      members of the stat structure are unspecified. The value returned in
      the st_size member is the length of the contents of the symbolic link,
      and does not count any trailing null.

      Upon successful completion, lstat() returns 0. Otherwise, it returns
      -1 and sets errno to indicate the error.

      The lstat() function will fail if:

	   [EACCES]		    A component of the path prefix denies
				    search permission.

	   [EIO]		    An error occurred while reading from the
				    file system.

	   [ELOOP]		    Too many symbolic links were encountered
				    in resolving path.

	   [ENAMETOOLONG]	    The length of a pathname exceeds
				    {PATH_MAX}, or pathname component is
				    longer than {NAME_MAX}.

	   [ENOTDIR]		    A component of the path prefix is not a

	   [ENOENT]		    A component of path does not name an
				    existing file or path is an empty

	   [EOVERFLOW]		    The file size in bytes or the number of
				    blocks allocated to the file cannot be

 Hewlett-Packard Company	    - 1 -   HP-UX Release 11i: November 2000

 lstat(2)							    lstat(2)

				    represented correctly in the structure
				    pointed to by buf.

      The lstat() function may fail if:

	   [ENAMETOOLONG]	    Pathname resolution of a symbolic link
				    produced an intermediate result whose
				    length exceeds {PATH_MAX}.

      fstat(2), readlink(2), stat(2), symlink(2), <sys/stat.h>.

      First released in Issue 4, Version 2.

				    - 2 -	  Formatted:  August 2, 2006

 lstat()							     lstat()


      #include <&lt&lt&lt;sys/stat.h>&gt&gt&gt;

      If the chosen path name or file descriptor refers to a Multi-Level
      Directory (MLD), and the process does not have the multilevel
      effective privilege, the i-node number returned in st_ino is the
      i-node of the MLD itself.

      The parameters for the lstat() function is as follows:

	   path		  is a pointer to a path name of any file within the
			  mounted file system.	 (All directories listed in
			  the path name must be searchable.)

	   buf		  is a pointer to a stat structure, which is where
			  the file status information is stored.

      The stat structure contains the following members:

	   dev_t    st_dev;	  /* ID of device containing a */
				  /* directory entry for this file */
	   ino_t    st_ino;	  /* Inode number */
	   ushort   st_fstype;	  /* Type of filesystem this file  */
				  /* is in; see sysfs(2) */
	   ushort   st_mode;	  /* File type, attributes, and */
				  /* access control summary */
	   ushort   st_basemode	  /* Permission bits (see chmod(1)) */
	   ushort   st_nlink;	  /* Number of links */
	   uid_t    st_uid;	  /* User ID of file owner */
	   gid_t    st_gid;	  /* Group ID of file group */
	   dev_t    st_rdev;	  /* Device ID; this entry defined */
				  /* only for char or blk spec files */
	   off_t    st_size;	  /* File size (bytes) */
	   time_t   st_atime;	  /* Time of last access */
	   time_t   st_mtime;	  /* Last modification time */
	   time_t   st_ctime;	  /* Last file status change time */
				  /* Measured in secs since */
				  /* 00:00:00 GMT, Jan 1, 1970 */
	   long	    st_blksize;	  /* File system block size */
	   uint	    st_acl:1;	  /* Set if the file has optional */
				  /* access control list entries */
				  /* HFS File Systems only */
	   uint	    st_aclv:1;	  /* Set if the file has optional */
				  /* access control list entries */
				  /* JFS File Systems only */

 Hewlett-Packard Company	    - 1 -   HP-UX Release 11i: November 2000

 lstat()							     lstat()

      (Note that the position of items in this list does not necessarily
      reflect the order of the members in the structure.)

	   [EFAULT]	  buf points to an invalid address. The reliable
			  detection of this error is implementation

      No ERROR for the following:

	   [EIO]	  An error occurred while reading from the file

      The st_basemode, st_acl and st_aclv fields are zero on files accessed
      remotely.	 The st_acl field is applicable to HFS File Systems only.
      The st_aclv field is applicable to JFS File Systems only.

      Access Control Lists - HFS and JFS File Systems only

      Access control list descriptions in this entry apply only to HFS and
      JFS file systems on standard HP-UX operating systems.

      The st_uid and st_gid fields are set to -1 if they are not specified
      on the disk for a given file.

      stat() and fstat() were developed by AT&T.  lstat() was developed by
      the University of California, Berkeley.

      touch(1), acl(2), chmod(2), chown(2), creat(2), link(2), lstat64(2),
      mknod(2), pipe(2), read(2), rename(2), setacl(2), sysfs(2), time(2),
      truncate(2), unlink(2), utime(2), write(2), stat(5), privileges(5),
      acl(5), aclv(5), stat(5).

      lstat(): AES, SVID3

 Hewlett-Packard Company	    - 2 -   HP-UX Release 11i: November 2000