.\" $Id: libssh2_sftp_readdirnb.3,v 1.1 2007/04/21 18:07:17 jehousley Exp $ .\" .TH libssh2_sftp_readdir 3 "16 Apr 2007" "libssh2 0.15" "libssh2 manual" .SH NAME libssh2_sftp_readnb - read data from an SFTP handle non-blocking .SH SYNOPSIS #include int libssh2_sftp_readdirnb(LIBSSH2_SFTP_HANDLE *handle, char *buffer, size_t buffer_maxlen, LIBSSH2_SFTP_ATTRIBUTES *attrs); .SH DESCRIPTION Read a block of data from a LIBSSH2_SFTP_HANDLE non-blocking. This method is modeled after the POSIX \fIreaddir(3)\fP however, it uses a variable sized directory entry (filename) buffer and returns statbuf type data in the same call. \fIhandle\fP is the SFTP File Handle as returned by \fIlibssh2_sftp_diropen(3)\fP. \fIbuffer\fP is a pointer to a pre-allocated buffer of at least \fIbuffer_maxlen\fP bytes to read data into. \fIbuffer_maxlen\fP is the length of buffer in bytes. If the length of the filename is longer than the space provided by buffer_maxlen it will be truncated to fit. \fIattrs\fP is a pointer to LIBSSH2_SFTP_ATTRIBUTES storage to populate statbuf style data into. .SH RETURN VALUE Number of bytes actually populated into buffer, or negative on failure. It returns LIBSSH2CHANNEL_EAGAIN when it would otherwise block. While LIBSSH2CHANNEL_EAGAIN is a negative number, it isn't really a failure per se. .SH "SEE ALSO" .BR libssh2_sftp_opendir(3) .BR libssh2_sftp_readdirnb(3)