libssh2_sftp_statvfs.3 (2712B)
1.TH libssh2_sftp_statvfs 3 "22 May 2010" "libssh2" "libssh2" 2.SH NAME 3libssh2_sftp_statvfs, libssh2_sftp_fstatvfs - get file system statistics 4.SH SYNOPSIS 5.nf 6#include <libssh2.h> 7#include <libssh2_sftp.h> 8 9int 10libssh2_sftp_statvfs(LIBSSH2_SFTP *sftp, const char *path, 11 size_t path_len, LIBSSH2_SFTP_STATVFS *st); 12 13int 14libssh2_sftp_fstatvfs(LIBSSH2_SFTP_HANDLE *handle, 15 LIBSSH2_SFTP_STATVFS *st) 16.fi 17.SH DESCRIPTION 18These functions provide statvfs(2)-like operations and require 19statvfs@openssh.com and fstatvfs@openssh.com extension support on the server. 20 21\fIsftp\fP - SFTP instance as returned by 22.BR libssh2_sftp_init(3) 23 24\fIhandle\fP - SFTP File Handle as returned by 25.BR libssh2_sftp_open_ex(3) 26 27\fIpath\fP - full path of any file within the mounted file system. 28 29\fIpath_len\fP - length of the full path. 30 31\fIst\fP - Pointer to a LIBSSH2_SFTP_STATVFS structure to place file system 32statistics into. 33.SH DATA TYPES 34LIBSSH2_SFTP_STATVFS is a typedefed struct that is defined as below 35 36.nf 37struct _LIBSSH2_SFTP_STATVFS { 38 libssh2_uint64_t f_bsize; /* file system block size */ 39 libssh2_uint64_t f_frsize; /* fragment size */ 40 libssh2_uint64_t f_blocks; /* size of fs in f_frsize units */ 41 libssh2_uint64_t f_bfree; /* # free blocks */ 42 libssh2_uint64_t f_bavail; /* # free blocks for non-root */ 43 libssh2_uint64_t f_files; /* # inodes */ 44 libssh2_uint64_t f_ffree; /* # free inodes */ 45 libssh2_uint64_t f_favail; /* # free inodes for non-root */ 46 libssh2_uint64_t f_fsid; /* file system ID */ 47 libssh2_uint64_t f_flag; /* mount flags */ 48 libssh2_uint64_t f_namemax; /* maximum filename length */ 49}; 50.fi 51 52It is unspecified whether all members of the returned struct have meaningful 53values on all file systems. 54 55The field \fIf_flag\fP is a bit mask. Bits are defined as follows: 56.IP LIBSSH2_SFTP_ST_RDONLY 57Read-only file system. 58.IP LIBSSH2_SFTP_ST_NOSUID 59Set-user-ID/set-group-ID bits are ignored by \fBexec\fP(3). 60.SH RETURN VALUE 61Returns 0 on success or negative on failure. If used in non-blocking mode, it 62returns LIBSSH2_ERROR_EAGAIN when it would otherwise block. While 63LIBSSH2_ERROR_EAGAIN is a negative number, it is not really a failure per se. 64.SH ERRORS 65\fILIBSSH2_ERROR_ALLOC\fP - An internal memory allocation call failed. 66 67\fILIBSSH2_ERROR_SOCKET_SEND\fP - Unable to send data on socket. 68 69\fILIBSSH2_ERROR_SOCKET_TIMEOUT\fP - 70 71\fILIBSSH2_ERROR_SFTP_PROTOCOL\fP - An invalid SFTP protocol response was 72received on the socket, or an SFTP operation caused an errorcode to be returned 73by the server. 74.SH AVAILABILITY 75Added in libssh2 1.2.6 76.SH SEE ALSO 77.BR libssh2_sftp_open_ex(3)