libssh2_sftp_fstat_ex man page on Archlinux

Man page or keyword search:  
man Server   11224 pages
apropos Keyword Search (all sections)
Output format
Archlinux logo
[printable version]

libssh2_sftp_fstat_ex(3)	libssh2 manual	      libssh2_sftp_fstat_ex(3)

       libssh2_sftp_fstat_ex - get or set attributes on an SFTP file handle

       #include <libssh2.h>
       #include <libssh2_sftp.h>

       libssh2_sftp_fstat_ex(LIBSSH2_SFTP_HANDLE *handle,
			     LIBSSH2_SFTP_ATTRIBUTES *attrs, int setstat)

       #define libbssh2_sftp_fstat(handle, attrs) \
	   libssh2_sftp_fstat_ex((handle), (attrs), 0)
       #define libssh2_sftp_fsetstat(handle, attrs) \
	   libssh2_sftp_fstat_ex((handle), (attrs), 1)

       handle - SFTP File Handle as returned by libssh2_sftp_open_ex(3)

       attrs  -	 Pointer  to  an LIBSSH2_SFTP_ATTRIBUTES structure to set file
       metadata from or into depending on the value of setstat.

       setstat - When non-zero, the file's metadata will be updated  with  the
       data  found  in attrs according to the values of attrs->flags and other
       relevant member attributes.

       Get or Set statbuf type data for a given LIBSSH2_SFTP_HANDLE instance.

       LIBSSH2_SFTP_ATTRIBUTES is a typedefed struct that is defined as below

       struct _LIBSSH2_SFTP_ATTRIBUTES {

	   /* If flags & ATTR_* bit is set, then the value in this
	    * struct will be meaningful Otherwise it should be ignored
	   unsigned long flags;

	   /* size of file, in bytes */
	   libssh2_uint64_t filesize;

	   /* numerical representation of the user and group owner of
	    * the file
	   unsigned long uid, gid;

	   /* bitmask of permissions */
	   unsigned long permissions;

	   /* access time and modified time of file */
	   unsigned long atime, mtime;

       You will find a full set of defines and macros to  identify  flags  and
       permissions  on	the  libssh2_sftp.h  header file, but some of the most
       common ones are:

       To check for specific user permissions, the set of defines are  in  the
       pattern	LIBSSH2_SFTP_S_I<action><who>  where <action> is R, W or X for
       read, write and excutable and <who> is USR, GRP and OTH for user, group
       and  other.  So,	 you  check for a user readable file, use the bit LIB‐
       SSH2_SFTP_S_IRUSR while you want to see if it is executable for	other,
       you use LIBSSH2_SFTP_S_IXOTH and so on.

       To  check for specific file types, you would previously (before libssh2
       1.2.5) use the standard posix S_IS***() macros, but since 1.2.5 libssh2
       offers its own set of macros for this functionality:

	      Test for a symbolic link

	      Test for a regular file

	      Test for a directory

	      Test for a character special file

	      Test for a block special file

	      Test for a pipe or FIFO special file

	      Test for a socket

       Return	0  on  success	or  negative  on  failure.   It	 returns  LIB‐
       SSH2_ERROR_EAGAIN  when	it   would   otherwise	 block.	  While	  LIB‐
       SSH2_ERROR_EAGAIN  is  a negative number, it isn't really a failure per

       LIBSSH2_ERROR_ALLOC -  An internal memory allocation call failed.

       LIBSSH2_ERROR_SOCKET_SEND - Unable to send data on socket.


       LIBSSH2_ERROR_SFTP_PROTOCOL - An invalid	 SFTP  protocol	 response  was
       received	 on the socket, or an SFTP operation caused an errorcode to be
       returned by the server.

       This function has been around since  forever,  but  most	 of  the  LIB‐
       SSH2_SFTP_S_*  defines  were  introduced	 in  libssh2 0.14 and the LIB‐
       SSH2_SFTP_S_IS***() macros were introduced in libssh2 1.2.5.


libssh2 0.15			  1 Jun 2007	      libssh2_sftp_fstat_ex(3)

List of man pages available for Archlinux

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
Vote for polarhome
Free Shell Accounts :: the biggest list on the net