Poster of Linux kernelThe best gift for a Linux geek
libssh2_sftp_readdir_ex

libssh2_sftp_readdir_ex

Section: libssh2 manual (3) Updated: 1 Jun 2007
Local index Up
 

NAME

libssh2_sftp_readdir_ex - read directory data from an SFTP handle  

SYNOPSIS

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

int 
libssh2_sftp_readdir_ex(LIBSSH2_SFTP_HANDLE *handle,
                        char *buffer, size_t buffer_maxlen,
                        char *longentry, size_t longentry_maxlen,
                        LIBSSH2_SFTP_ATTRIBUTES *attrs);

#define libssh2_sftp_readdir(h, b, bl, a)      \
    libssh2_sftp_readdir_ex((h), (b), (bl), NULL, 0, (a))
 

DESCRIPTION

Reads a block of data from a LIBSSH2_SFTP_HANDLE and returns file entry information for the next entry, if any.

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

buffer - is a pointer to a pre-allocated buffer of at least buffer_maxlen bytes to read data into.

buffer_maxlen - 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.

longentry - is a pointer to a pre-allocated buffer of at least longentry_maxlen bytes to read data into. The format of the `longname' field is unspecified by SFTP protocol. It MUST be suitable for use in the output of a directory listing command (in fact, the recommended operation for a directory listing command is to simply display this data).

longentry_maxlen - is the length of longentry in bytes. If the length of the full directory entry is longer than the space provided by longentry_maxlen it will be truncated to fit.

attrs - is a pointer to LIBSSH2_SFTP_ATTRIBUTES storage to populate statbuf style data into.  

RETURN VALUE

Number of bytes actually populated into buffer (not counting the terminating zero), or negative on failure. 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.  

SEE ALSO

libssh2_sftp_open_ex(3), libssh2_sftp_close_handle(3)


 

Index

NAME
SYNOPSIS
DESCRIPTION
RETURN VALUE
ERRORS
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 21:49:23 GMT, April 16, 2011