libssh2_sftp_statvfs - tics
#include <libssh2.h> #include <libssh2_sftp.h> int libssh2_sftp_statvfs(LIBSSH2_SFTP *sftp, const char *path, size_t path_len, LIBSSH2_SFTP_STATVFS *st); int libssh2_sftp_fstatvfs(LIBSSH2_SFTP_HANDLE *handle, LIBSSH2_SFTP_STATVFS *st)
libssh2 manual libssh2_sftp_statvfs(3ssh2) NAME libssh2_sftp_statvfs, libssh2_sftp_fstatvfs - get file system statis- tics SYNOPSIS #include <libssh2.h> #include <libssh2_sftp.h> int libssh2_sftp_statvfs(LIBSSH2_SFTP *sftp, const char *path, size_t path_len, LIBSSH2_SFTP_STATVFS *st); int libssh2_sftp_fstatvfs(LIBSSH2_SFTP_HANDLE *handle, LIBSSH2_SFTP_STATVFS *st) DESCRIPTION These functions provide statvfs(2)-like operations and require statvfs@openssh.com and fstatvfs@openssh.com extension support on the server. sftp - SFTP instance as returned by libssh2_sftp_init(3) handle - SFTP File Handle as returned by libssh2_sftp_open_ex(3) path - full path of any file within the mounted file system. path_len - length of the full path. st - Pointer to a LIBSSH2_SFTP_STATVFS structure to place file system statistics into. DATA TYPES LIBSSH2_SFTP_STATVFS is a typedefed struct that is defined as below struct _LIBSSH2_SFTP_STATVFS { libssh2_uint64_t f_bsize; /* file system block size */ libssh2_uint64_t f_frsize; /* fragment size */ libssh2_uint64_t f_blocks; /* size of fs in f_frsize units */ libssh2_uint64_t f_bfree; /* # free blocks */ libssh2_uint64_t f_bavail; /* # free blocks for non-root */ libssh2_uint64_t f_files; /* # inodes */ libssh2_uint64_t f_ffree; /* # free inodes */ libssh2_uint64_t f_favail; /* # free inodes for non-root */ libssh2_uint64_t f_fsid; /* file system ID */ libssh2_uint64_t f_flag; /* mount flags */ libssh2_uint64_t f_namemax; /* maximum filename length */ }; It is unspecified whether all members of the returned struct have mean- ingful values on all file systems. The field f_flag is a bit mask. Bits are defined as follows: LIBSSH2_SFTP_ST_RDONLY Read-only file system. LIBSSH2_SFTP_ST_NOSUID Set-user-ID/set-group-ID bits are ignored by exec(3). RETURN VALUE Returns 0 on success or negative on failure. If used in non-blocking mode, it returns LIBSSH2_ERROR_EAGAIN when it would otherwise block. While LIBSSH2_ERROR_EAGAIN is a negative number, it isn't really a failure per se. ERRORS LIBSSH2_ERROR_ALLOC - An internal memory allocation call failed. LIBSSH2_ERROR_SOCKET_SEND - Unable to send data on socket. LIBSSH2_ERROR_SOCKET_TIMEOUT - 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. AVAILABILITY Added in libssh2 1.2.6 ATTRIBUTES See attributes(7) for descriptions of the following attributes: +---------------+------------------+ |ATTRIBUTE TYPE | ATTRIBUTE VALUE | +---------------+------------------+ |Availability | library/libssh2 | +---------------+------------------+ |Stability | Uncommitted | +---------------+------------------+ SEE ALSO libssh2_sftp_open_ex(3) NOTES Source code for open source software components in Oracle Solaris can be found at https://www.oracle.com/downloads/opensource/solaris-source- code-downloads.html. This software was built from source available at https://github.com/oracle/solaris-userland. The original community source was downloaded from https://www.libssh2.org/download/lib- ssh2-1.10.0.tar.gz. Further information about this software can be found on the open source community website at https://www.libssh2.org/. libssh2 1.2.6 22 May 2010 libssh2_sftp_statvfs(3ssh2)