libssh2_sftp_fsync man page

libssh2_sftp_fsync — synchronize file to disk

Synopsis

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

int
libssh2_sftp_fsync(LIBSSH2_SFTP_HANDLE *handle)

Description

This function causes the remote server to synchronize the file data and metadata to disk (like fsync(2)).

For this to work requires fsync@openssh.com support on the server.

handle - SFTP File Handle as returned by libssh2_sftp_open_ex(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_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. In particular, this can be returned if the SSH server does not support the fsync operation: the SFTP subcode LIBSSH2_FX_OP_UNSUPPORTED will be returned in this case.

Availability

Added in libssh2 1.4.4 and OpenSSH 6.3.

See Also

fsync(2)

Info

8 Apr 2013 libssh2 1.4.4 libssh2 manual