* Copyright (c) 2015, Patrick Monnerat, D+H <patrick.monnerat@dh.com> | |
* All rights reserved. | |
* | |
* Redistribution and use in source and binary forms, | |
* with or without modification, are permitted provided | |
* that the following conditions are met: | |
* | |
* Redistributions of source code must retain the above | |
* copyright notice, this list of conditions and the | |
* following disclaimer. | |
* | |
* Redistributions in binary form must reproduce the above | |
* copyright notice, this list of conditions and the following | |
* disclaimer in the documentation and/or other materials | |
* provided with the distribution. | |
* | |
* Neither the name of the copyright holder nor the names | |
* of any other contributors may be used to endorse or | |
* promote products derived from this software without | |
* specific prior written permission. | |
* | |
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND | |
* CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, | |
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES | |
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | |
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR | |
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | |
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, | |
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | |
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | |
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, | |
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING | |
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE | |
* USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY | |
* OF SUCH DAMAGE. | |
/if not defined(LIBSSH2_SFTP_H_) | |
/define LIBSSH2_SFTP_H_ | |
/include "libssh2rpg/libssh2" | |
* Note: Version 6 was documented at the time of writing | |
* However it was marked as "DO NOT IMPLEMENT" due to pending changes | |
* | |
* Let's start with Version 3 (The version found in OpenSSH) and go from | |
* there. | |
d LIBSSH2_SFTP_VERSION... | |
d c 3 | |
* Flags for open_ex(). | |
d LIBSSH2_SFTP_OPENFILE... | |
d c 0 | |
d LIBSSH2_SFTP_OPENDIR... | |
d c 1 | |
* Flags for rename_ex(). | |
d LIBSSH2_SFTP_RENAME_OVERWRITE... | |
d c X'00000001' | |
d LIBSSH2_SFTP_RENAME_ATOMIC... | |
d c X'00000002' | |
d LIBSSH2_SFTP_RENAME_NATIVE... | |
d c X'00000004' | |
* Flags for stat_ex(). | |
d LIBSSH2_SFTP_STAT... | |
d c 0 | |
d LIBSSH2_SFTP_LSTAT... | |
d c 1 | |
d LIBSSH2_SFTP_SETSTAT... | |
d c 2 | |
* Flags for symlink_ex(). | |
d LIBSSH2_SFTP_SYMLINK... | |
d c 0 | |
d LIBSSH2_SFTP_READLINK... | |
d c 1 | |
d LIBSSH2_SFTP_REALPATH... | |
d c 2 | |
* SFTP attribute flag bits. | |
d LIBSSH2_SFTP_ATTR_SIZE... | |
d c X'00000001' | |
d LIBSSH2_SFTP_ATTR_UIDGID... | |
d c X'00000002' | |
d LIBSSH2_SFTP_ATTR_PERMISSIONS... | |
d c X'00000004' | |
d LIBSSH2_SFTP_ATTR_ACMODTIME... | |
d c X'00000008' | |
d LIBSSH2_SFTP_ATTR_EXTENDED... | |
d c X'80000000' | |
* SFTP statvfs flag bits. | |
d LIBSSH2_SFTP_ST_RDONLY... | |
d c X'00000001' | |
d LIBSSH2_SFTP_ST_NOSUID... | |
d c X'00000002' | |
d #LIBSSH2_SFTP_ATTRIBUTES... | |
d ds based(######typedef######) | |
d align qualified | |
* If flags & ATTR_* bit is set, then the value in this struct will be | |
* meaningful Otherwise it should be ignored. | |
d flags like(libssh2_Culong) | |
d filesize like(libssh2_uint64_t) | |
d uid like(libssh2_Culong) | |
d gid like(libssh2_Culong) | |
d permissions like(libssh2_Culong) | |
d atime like(libssh2_Culong) | |
d mtime like(libssh2_Culong) | |
d #LIBSSH2_SFTP_STATVFS... | |
d ds based(######typedef######) | |
d align qualified | |
d f_bsize like(libssh2_uint64_t) Filesys block size | |
d f_frsize like(libssh2_uint64_t) Fragment size | |
d f_blocks like(libssh2_uint64_t) FS size in f_frsize | |
d f_bfree like(libssh2_uint64_t) Free blocks | |
d f_bavail like(libssh2_uint64_t) Free blks f. nonroot | |
d f_files like(libssh2_uint64_t) Inodes | |
d f_ffree like(libssh2_uint64_t) Free inodes | |
d f_favail like(libssh2_uint64_t) Free inds f. nonroot | |
d f_fsid like(libssh2_uint64_t) File system ID | |
d f_flag like(libssh2_uint64_t) Mount flags | |
d f_namemax like(libssh2_uint64_t) Max filename length | |
* SFTP filetypes. | |
d LIBSSH2_SFTP_TYPE_REGULAR... | |
d c 1 | |
d LIBSSH2_SFTP_TYPE_DIRECTORY... | |
d c 2 | |
d LIBSSH2_SFTP_TYPE_SYMLINK... | |
d c 3 | |
d LIBSSH2_SFTP_TYPE_SPECIAL... | |
d c 4 | |
d LIBSSH2_SFTP_TYPE_UNKNOWN... | |
d c 5 | |
d LIBSSH2_SFTP_TYPE_SOCKET... | |
d c 6 | |
d LIBSSH2_SFTP_TYPE_CHAR_DEVICE... | |
d c 7 | |
d LIBSSH2_SFTP_TYPE_BLOCK_DEVICE... | |
d c 8 | |
d LIBSSH2_SFTP_TYPE_FIFO... | |
d c 9 | |
* Reproduce the POSIX file modes here for systems that are not POSIX | |
* compliant. | |
* | |
* These is used in "permissions" of "struct _LIBSSH2_SFTP_ATTRIBUTES" | |
* File type. | |
d LIBSSH2_SFTP_S_IFMT... type of file mask | |
d c X'F000' | |
d LIBSSH2_SFTP_S_IFIFO... named pipe (fifo) | |
d c X'1000' | |
d LIBSSH2_SFTP_S_IFCHR... character special | |
d c X'2000' | |
d LIBSSH2_SFTP_S_IFDIR... directory | |
d c X'4000' | |
d LIBSSH2_SFTP_S_IFBLK... block special | |
d c X'6000' | |
d LIBSSH2_SFTP_S_IFREG... regular | |
d c X'8000' | |
d LIBSSH2_SFTP_S_IFLNK... symbolic link | |
d c X'A000' | |
d LIBSSH2_SFTP_S_IFSOCK... socket | |
d c X'C000' | |
* File mode. | |
* Read, write, execute/search by owner. | |
d LIBSSH2_SFTP_S_IRWXU... RWX mask for owner | |
d c X'01C0' | |
d LIBSSH2_SFTP_S_IRUSR... R for owner | |
d c X'0100' | |
d LIBSSH2_SFTP_S_IWUSR... W for owner | |
d c X'0080' | |
d LIBSSH2_SFTP_S_IXUSR... X for owner | |
d c X'0040' | |
* Read, write, execute/search by group. | |
d LIBSSH2_SFTP_S_IRWXG... RWX mask for group | |
d c X'0038' | |
d LIBSSH2_SFTP_S_IRGRP... R for group | |
d c X'0020' | |
d LIBSSH2_SFTP_S_IWGRP... W for group | |
d c X'0010' | |
d LIBSSH2_SFTP_S_IXGRP... X for group | |
d c X'0008' | |
* Read, write, execute/search by others. | |
d LIBSSH2_SFTP_S_IRWXO... RWX mask for other | |
d c X'0007' | |
d LIBSSH2_SFTP_S_IROTH... R for other | |
d c X'0004' | |
d LIBSSH2_SFTP_S_IWOTH... W for other | |
d c X'0002' | |
d LIBSSH2_SFTP_S_IXOTH... X for other | |
d c X'0001' | |
* C macro implementation. | |
d LIBSSH2_SFTP_S_ISLNK... | |
d pr extproc('LIBSSH2_SFTP_S_ISLNK') | |
d like(libssh2_Cint) | |
d permissions value like(libssh2_Culong) | |
* C macro implementation. | |
d LIBSSH2_SFTP_S_ISREG... | |
d pr extproc('LIBSSH2_SFTP_S_ISREG') | |
d like(libssh2_Cint) | |
d permissions value like(libssh2_Culong) | |
* C macro implementation. | |
d LIBSSH2_SFTP_S_ISDIR... | |
d pr extproc('LIBSSH2_SFTP_S_ISDIR') | |
d like(libssh2_Cint) | |
d permissions value like(libssh2_Culong) | |
* C macro implementation. | |
d LIBSSH2_SFTP_S_ISCHR... | |
d pr extproc('LIBSSH2_SFTP_S_ISCHR') | |
d like(libssh2_Cint) | |
d permissions value like(libssh2_Culong) | |
* C macro implementation. | |
d LIBSSH2_SFTP_S_ISBLK... | |
d pr extproc('LIBSSH2_SFTP_S_ISBLK') | |
d like(libssh2_Cint) | |
d permissions value like(libssh2_Culong) | |
* C macro implementation. | |
d LIBSSH2_SFTP_S_ISFIFO... | |
d pr extproc('LIBSSH2_SFTP_S_ISFIFO') | |
d like(libssh2_Cint) | |
d permissions value like(libssh2_Culong) | |
* C macro implementation. | |
d LIBSSH2_SFTP_S_ISSOCK... | |
d pr extproc('LIBSSH2_SFTP_S_ISSOCK') | |
d like(libssh2_Cint) | |
d permissions value like(libssh2_Culong) | |
* SFTP File Transfer Flags -- (e.g. flags parameter to sftp_open()) | |
* Danger will robinson... APPEND doesn't have any effect on OpenSSH | |
* servers. | |
d LIBSSH2_FXF_READ... | |
d c X'00000001' | |
d LIBSSH2_FXF_WRITE... | |
d c X'00000002' | |
d LIBSSH2_FXF_APPEND... | |
d c X'00000004' | |
d LIBSSH2_FXF_CREAT... | |
d c X'00000008' | |
d LIBSSH2_FXF_TRUNC... | |
d c X'00000010' | |
d LIBSSH2_FXF_EXCL... | |
d c X'00000020' | |
* SFTP Status Codes (returned by libssh2_sftp_last_error()). | |
d LIBSSH2_FX_OK... | |
d c 0 | |
d LIBSSH2_FX_EOF... | |
d c 1 | |
d LIBSSH2_FX_NO_SUCH_FILE... | |
d c 2 | |
d LIBSSH2_FX_PERMISSION_DENIED... | |
d c 3 | |
d LIBSSH2_FX_FAILURE... | |
d c 4 | |
d LIBSSH2_FX_BAD_MESSAGE... | |
d c 5 | |
d LIBSSH2_FX_NO_CONNECTION... | |
d c 6 | |
d LIBSSH2_FX_CONNECTION_LOST... | |
d c 7 | |
d LIBSSH2_FX_OP_UNSUPPORTED... | |
d c 8 | |
d LIBSSH2_FX_INVALID_HANDLE... | |
d c 9 | |
d LIBSSH2_FX_NO_SUCH_PATH... | |
d c 10 | |
d LIBSSH2_FX_FILE_ALREADY_EXISTS... | |
d c 11 | |
d LIBSSH2_FX_WRITE_PROTECT... | |
d c 12 | |
d LIBSSH2_FX_NO_MEDIA... | |
d c 13 | |
d LIBSSH2_FX_NO_SPACE_ON_FILESYSTEM... | |
d c 14 | |
d LIBSSH2_FX_QUOTA_EXCEEDED... | |
d c 15 | |
d LIBSSH2_FX_UNKNOWN_PRINCIPAL... | |
d c 16 | |
d LIBSSH2_FX_LOCK_CONFLICT... | |
d c 17 | |
d LIBSSH2_FX_DIR_NOT_EMPTY... | |
d c 18 | |
d LIBSSH2_FX_NOT_A_DIRECTORY... | |
d c 19 | |
d LIBSSH2_FX_INVALID_FILENAME... | |
d c 20 | |
d LIBSSH2_FX_LINK_LOOP... | |
d c 21 | |
* Returned by any function that would block during a read/write operation. | |
d LIBSSH2SFTP_EAGAIN... | |
d c -37 | |
* SFTP API. | |
d libssh2_sftp_init... | |
d pr * extproc('libssh2_sftp_init') LIBSSH2_SFTP * | |
d session * value LIBSSH2_SESSION * | |
d libssh2_sftp_shutdown... | |
d pr extproc('libssh2_sftp_shutdown') | |
d like(libssh2_Cint) | |
d sftp * value LIBSSH2_SFTP * | |
d libssh2_sftp_last_error... | |
d pr extproc('libssh2_sftp_last_error') | |
d like(libssh2_Culong) | |
d sftp * value LIBSSH2_SFTP * | |
d libssh2_sftp_get_channel... | |
d pr * extproc('libssh2_sftp_get_channel') LIBSSH2_CHANNEL * | |
d sftp * value LIBSSH2_SFTP * | |
* File / Directory Ops. | |
d libssh2_sftp_open_ex... | |
d pr * extproc('libssh2_sftp_open_ex') LIBSSH2_SFTP_HANDLE* | |
d sftp * value LIBSSH2_SFTP * | |
d filename * value options(*string) const char * | |
d filename_len value like(libssh2_Cuint) | |
d flags value like(libssh2_Culong) | |
d mode value like(libssh2_Clong) | |
d open_type value like(libssh2_Cint) | |
* C macro implementation. | |
d libssh2_sftp_open... | |
d pr * extproc('libssh2_sftp_open') LIBSSH2_SFTP_HANDLE | |
d * | |
d sftp * value LIBSSH2_SFTP * | |
d filename * value options(*string) const char * | |
d flags value like(libssh2_Culong) | |
d mode value like(libssh2_Clong) | |
* C macro libssh2_sftp_opendir implementation. | |
* Renamed to avoid upper/lower case name clash. | |
d libssh2_sftp_open_dir... | |
d pr * extproc('libssh2_sftp_opendir') LIBSSH2_SFTP_HANDLE | |
d * | |
d sftp * value LIBSSH2_SFTP * | |
d path * value options(*string) const char * | |
d libssh2_sftp_read... | |
d pr extproc('libssh2_sftp_read') | |
d like(libssh2_Cssize_t) | |
d handle * value LIBSSH2_SFTP_HANDLE* | |
d buffer * value options(*string) char * | |
d buffer_maxlen value like(libssh2_Csize_t) | |
d libssh2_sftp_readdir_ex... | |
d pr extproc('libssh2_sftp_readdir_ex') | |
d like(libssh2_Cint) | |
d handle * value LIBSSH2_SFTP_HANDLE* | |
d buffer * value char * | |
d buffer_maxlen value like(libssh2_Csize_t) | |
d longentry * value char * | |
d longentry_maxlen... | |
d value like(libssh2_Csize_t) | |
d attrs * value LIBSSH2_SFTP_... | |
d ATTRIBUTES * | |
* C macro implementation. | |
d libssh2_sftp_readdir... | |
d pr extproc('libssh2_sftp_readdir') | |
d like(libssh2_Cint) | |
d handle * value LIBSSH2_SFTP_HANDLE* | |
d buffer * value char * | |
d buffer_maxlen value like(libssh2_Csize_t) | |
d attrs * value LIBSSH2_SFTP_... | |
d ATTRIBUTES * | |
d libssh2_sftp_write... | |
d pr extproc('libssh2_sftp_write') | |
d like(libssh2_Cssize_t) | |
d handle * value LIBSSH2_SFTP_HANDLE* | |
d buffer * value options(*string) const char * | |
d count value like(libssh2_Csize_t) | |
d libssh2_sftp_fsync... | |
d pr extproc('libssh2_sftp_fsync') | |
d like(libssh2_Cint) | |
d handle * value LIBSSH2_SFTP_HANDLE* | |
d libssh2_sftp_close_handle... | |
d pr extproc('libssh2_sftp_close_handle') | |
d like(libssh2_Cint) | |
d handle * value LIBSSH2_SFTP_HANDLE* | |
* C macro implementation. | |
d libssh2_sftp_close... | |
d pr extproc('libssh2_sftp_close_handle') | |
d like(libssh2_Cint) | |
d handle * value LIBSSH2_SFTP_HANDLE* | |
* C macro implementation. | |
d libssh2_sftp_closedir... | |
d pr extproc('libssh2_sftp_close_handle') | |
d like(libssh2_Cint) | |
d handle * value LIBSSH2_SFTP_HANDLE* | |
d libssh2_sftp_seek... | |
d pr extproc('libssh2_sftp_seek') | |
d handle * value LIBSSH2_SFTP_HANDLE* | |
d offset value like(libssh2_Csize_t) | |
d libssh2_sftp_seek64... | |
d pr extproc('libssh2_sftp_seek64') | |
d handle * value LIBSSH2_SFTP_HANDLE* | |
d offset value like(libssh2_uint64_t) | |
* C macro implementation. | |
d libssh2_sftp_rewind... | |
d pr extproc('libssh2_sftp_rewind') | |
d handle * value LIBSSH2_SFTP_HANDLE* | |
d libssh2_sftp_tell... | |
d pr extproc('libssh2_sftp_tell') | |
d like(libssh2_Csize_t) | |
d handle * value LIBSSH2_SFTP_HANDLE* | |
d libssh2_sftp_tell64... | |
d pr extproc('libssh2_sftp_tell64') | |
d like(libssh2_uint64_t) | |
d handle * value LIBSSH2_SFTP_HANDLE* | |
d libssh2_sftp_fstat_ex... | |
d pr extproc('libssh2_sftp_fstat_ex') | |
d like(libssh2_Cint) | |
d handle * value LIBSSH2_SFTP_HANDLE* | |
d attrs * value LIBSSH2_SFTP_... | |
d ATTRIBUTES * | |
d setstat value like(libssh2_Cint) | |
* C macro implementation. | |
d libssh2_sftp_fstat... | |
d pr extproc('libssh2_sftp_fstat') | |
d like(libssh2_Cint) | |
d handle * value LIBSSH2_SFTP_HANDLE* | |
d attrs * value LIBSSH2_SFTP_... | |
d ATTRIBUTES * | |
* C macro implementation. | |
d libssh2_sftp_fsetstat... | |
d pr extproc('libssh2_sftp_fsetstat') | |
d like(libssh2_Cint) | |
d handle * value LIBSSH2_SFTP_HANDLE* | |
d attrs * value LIBSSH2_SFTP_... | |
d ATTRIBUTES * | |
* Miscellaneous Ops. | |
d libssh2_sftp_rename_ex... | |
d pr extproc('libssh2_sftp_rename_ex') | |
d like(libssh2_Cint) | |
d sftp * value LIBSSH2_SFTP * | |
d source_filename... | |
d * value options(*string) const char * | |
d source_filename_len... | |
d value like(libssh2_Cuint) | |
d dest_filename * value options(*string) const char * | |
d dest_filename_len... | |
d value like(libssh2_Cuint) | |
d flags value like(libssh2_Clong) | |
* C macro implementation. | |
d libssh2_sftp_rename... | |
d pr extproc('libssh2_sftp_rename') | |
d like(libssh2_Cint) | |
d sftp * value LIBSSH2_SFTP * | |
d source_filename... | |
d * value options(*string) const char * | |
d dest_filename * value options(*string) const char * | |
d libssh2_sftp_unlink_ex... | |
d pr extproc('libssh2_sftp_unlink_ex') | |
d like(libssh2_Cint) | |
d sftp * value LIBSSH2_SFTP * | |
d filename * value options(*string) const char * | |
d filename_len value like(libssh2_Cuint) | |
* C macro implementation. | |
d libssh2_sftp_unlink... | |
d pr extproc('libssh2_sftp_unlink') | |
d like(libssh2_Cint) | |
d sftp * value LIBSSH2_SFTP * | |
d filename * value options(*string) const char * | |
d libssh2_sftp_fstatvfs... | |
d pr extproc('libssh2_sftp_fstatvfs') | |
d like(libssh2_Cint) | |
d handle * value LIBSSH2_SFTP_HANDLE* | |
d st * value LIBSSH2_SFTP_STATVFS | |
d * | |
d libssh2_sftp_statvfs... | |
d pr extproc('libssh2_sftp_statvfs') | |
d like(libssh2_Cint) | |
d sftp * value LIBSSH2_SFTP * | |
d path * value options(*string) const char * | |
d path_len value like(libssh2_Csize_t) | |
d st * value LIBSSH2_SFTP_STATVFS | |
d * | |
d libssh2_sftp_mkdir_ex... | |
d pr extproc('libssh2_sftp_mkdir_ex') | |
d like(libssh2_Cint) | |
d sftp * value LIBSSH2_SFTP * | |
d path * value options(*string) const char * | |
d path_len value like(libssh2_Cuint) | |
d mode value like(libssh2_Clong) | |
* C macro implementation. | |
d libssh2_sftp_mkdir... | |
d pr extproc('libssh2_sftp_mkdir') | |
d like(libssh2_Cint) | |
d sftp * value LIBSSH2_SFTP * | |
d path * value options(*string) const char * | |
d mode value like(libssh2_Clong) | |
d libssh2_sftp_rmdir_ex... | |
d pr extproc('libssh2_sftp_rmdir_ex') | |
d like(libssh2_Cint) | |
d sftp * value LIBSSH2_SFTP * | |
d path * value options(*string) const char * | |
d path_len value like(libssh2_Cuint) | |
* C macro implementation. | |
d libssh2_sftp_rmdir... | |
d pr extproc('libssh2_sftp_rmdir') | |
d like(libssh2_Cint) | |
d sftp * value LIBSSH2_SFTP * | |
d path * value options(*string) const char * | |
d libssh2_sftp_stat_ex... | |
d pr extproc('libssh2_sftp_stat_ex') | |
d like(libssh2_Cint) | |
d sftp * value LIBSSH2_SFTP * | |
d path * value options(*string) const char * | |
d path_len value like(libssh2_Cuint) | |
d stat_type value like(libssh2_Cint) | |
d attrs * value LIBSSH2_SFTP_... | |
d ATTRIBUTES * | |
* C macro libssh2_sftp_stat implementation. | |
* Renamed to avoid upper/lower case name clash. | |
d libssh2_sftp_get_stat... | |
d pr extproc('libssh2_sftp_stat') | |
d like(libssh2_Cint) | |
d sftp * value LIBSSH2_SFTP * | |
d path * value options(*string) const char * | |
d attrs * value LIBSSH2_SFTP_... | |
d ATTRIBUTES * | |
* C macro libssh2_sftp_lstat implementation. | |
* Renamed to avoid upper/lower case name clash. | |
d libssh2_sftp_get_lstat... | |
d pr extproc('libssh2_sftp_lstat') | |
d like(libssh2_Cint) | |
d sftp * value LIBSSH2_SFTP * | |
d path * value options(*string) const char * | |
d attrs * value LIBSSH2_SFTP_... | |
d ATTRIBUTES * | |
* C macro libssh2_sftp_setstat implementation. | |
* Renamed to avoid upper/lower case name clash. | |
d libssh2_sftp_set_stat... | |
d pr extproc('libssh2_sftp_setstat') | |
d like(libssh2_Cint) | |
d sftp * value LIBSSH2_SFTP * | |
d path * value options(*string) const char * | |
d attrs * value LIBSSH2_SFTP_... | |
d ATTRIBUTES * | |
d libssh2_sftp_symlink_ex... | |
d pr extproc('libssh2_sftp_symlink_ex') | |
d like(libssh2_Cint) | |
d sftp * value LIBSSH2_SFTP * | |
d path * value options(*string) const char * | |
d path_len value like(libssh2_Cuint) | |
d target * value options(*string) char * | |
d target_len value like(libssh2_Cuint) | |
d link_type value like(libssh2_Cint) | |
* C macro libssh2_sftp_symlink implementation. | |
* Renamed to avoid upper/lower case name clash. | |
d libssh2_sftp_sym_link... | |
d pr extproc('libssh2_sftp_symlink') | |
d like(libssh2_Cint) | |
d sftp * value LIBSSH2_SFTP * | |
d orig * value options(*string) const char * | |
d linkpath * value options(*string) char * | |
* C macro libssh2_sftp_readlink implementation. | |
* Renamed to avoid upper/lower case name clash. | |
d libssh2_sftp_read_link... | |
d pr extproc('libssh2_sftp_readlink') | |
d like(libssh2_Cint) | |
d sftp * value LIBSSH2_SFTP * | |
d path * value options(*string) const char * | |
d target * value char * | |
d maxlen value like(libssh2_Cuint) | |
* C macro libssh2_sftp_realpath implementation. | |
* Renamed to avoid upper/lower case name clash. | |
d libssh2_sftp_real_path... | |
d pr extproc('libssh2_sftp_realpath') | |
d like(libssh2_Cint) | |
d sftp * value LIBSSH2_SFTP * | |
d path * value options(*string) const char * | |
d target * value char * | |
d maxlen value like(libssh2_Cuint) | |
/endif LIBSSH2_SFTP_H_ |