ssh2.sftp

SFTP channel class and related SFTP flags.

File types

var LIBSSH2_SFTP_S_IFMT:

Type of file mask

var LIBSSH2_SFTP_S_IFIFO:

Named pipe (fifo)

var LIBSSH2_SFTP_S_IFCHR:

Character special (character device)

var LIBSSH2_SFTP_S_IFDIR:

Directory

var LIBSSH2_SFTP_S_IFBLK:

Block special (block device)

var LIBSSH2_SFTP_S_IFREG:

Regular file

var LIBSSH2_SFTP_S_IFLNK:

Symbolic link

var LIBSSH2_SFTP_S_IFSOCK:

Socket

File transfer flags

var LIBSSH2_FXF_READ:

File read flag

var LIBSSH2_FXF_WRITE:

File write flag

var LIBSSH2_FXF_APPEND:

File append flag

var LIBSSH2_FXF_CREAT:

File create flag

var LIBSSH2_FXF_TRUNC:

File truncate flag

var LIBSSH2_FXF_EXCL:

Exclusive file flag

File Attributes

These flags need to be set on SFTPAttributes.attrs when changing any of their associated attributes via setstat.

var LIBSSH2_SFTP_ATTR_SIZE:

Size attribute flag

var LIBSSH2_SFTP_ATTR_UIDGID:

UID and GID attribute flag

var LIBSSH2_SFTP_ATTR_PERMISSIONS:

Permissions attribute flag

var LIBSSH2_SFTP_ATTR_ACMODTIME:

File access/created/modified time attribute flag

var LIBSSH2_SFTP_ATTR_EXTENDED:

Extended attributes flag

File mode masks

Owner masks

var LIBSSH2_SFTP_S_IRWXU:

Read/write/execute

var LIBSSH2_SFTP_S_IRUSR:

Read

var LIBSSH2_SFTP_S_IWUSR:

Write

var LIBSSH2_SFTP_S_IXUSR:

Execute

Group masks

var LIBSSH2_SFTP_S_IRWXG:

Read/write/execute

var LIBSSH2_SFTP_S_IRGRP:

Read

var LIBSSH2_SFTP_S_IWUSR:

Write

var LIBSSH2_SFTP_S_IXUSR:

Execute

Other masks

var LIBSSH2_SFTP_S_IRWXO:

Read/write/execute

var LIBSSH2_SFTP_S_IROTH:

Read

var LIBSSH2_SFTP_S_IWOTH:

Write

var LIBSSH2_SFTP_S_IXOTH:

Execute

Generic mode masks

var LIBSSH2_SFTP_ST_RDONLY:

Read only

var LIBSSH2_SFTP_ST_NOSUID:

No suid

class ssh2.sftp.SFTP

SFTP session.

Parameters:

session (ssh2.session.Session pointer) – Session that initiated SFTP.

get_channel(self)

Get new channel from the SFTP session

last_error(self)

Get last error code from SFTP channel.

Return type:

int

lstat(self, path)

Link stat a file.

mkdir(self, path, long mode)

Make directory.

Parameters:
  • path (str) – Path of directory to create.

  • mode (int) – Permissions mode of new directory.

Return type:

int

Raises:

Appropriate exception from ssh2.exceptions on errors.

open(self, filename, unsigned long flags, long mode)

Open file handle for file name.

Parameters:
  • filename (str) – Name of file to open.

  • flags (int) –

    One or more LIBSSH2_FXF_* flags.

    Eg for reading flags is LIBSSH2_FXF_READ,

    for writing LIBSSH2_FXF_WRITE,

    for both LIBSSH2_FXF_READ | LIBSSH2_FXF_WRITE.

  • mode (int) –

    File permissions mode. LIBSSH2_SFTP_S_IRUSR for reading.

    For writing one or more LIBSSH2_SFTP_S_* flags.

    Eg, for 664 permission mask (read/write owner/group, read other),

    mode is

    LIBSSH2_SFTP_S_IRUSR | LIBSSH2_SFTP_S_IWUSR | \ LIBSSH2_SFTP_S_IRGRP | LIBSSH2_SFTP_S_IWGRP | \ LIBSSH2_SFTP_S_IROTH

Return type:

ssh2.sftp.SFTPHandle or None

Raises:

ssh2.exceptions.SFTPHandleError on errors opening file.

open_ex(self, const char *filename, unsigned int filename_len, unsigned long flags, long mode, int open_type)
opendir(self, path)

Open handle to directory path.

Parameters:

path (str) – Path of directory

Return type:

ssh2.sftp.SFTPHandle or None

Raises:

ssh2.exceptions.SFTPHandleError on errors opening directory.

realpath(self, path, size_t max_len=256)

Get real path for path.

Param:

Path name to get real path for.

Parameters:

max_len (int) – Max size of returned real path.

Raises:

ssh2.exceptions.SFTPHandleError on errors getting real path.

Raises:

ssh2.exceptions.SFTPBufferTooSmall on max_len less than real path length.

rename(self, source_filename, dest_filename)

Rename file.

Parameters:
  • source_filename (str) – Old name of file.

  • dest_filename (str) – New name of file.

rename_ex(self, const char *source_filename, unsigned int source_filename_len, const char *dest_filename, unsigned int dest_filename_len, long flags)
rmdir(self, path)

Remove directory.

Parameters:

path (str) – Directory path to remove.

Return type:

int

setstat(self, path, SFTPAttributes attrs)

Set file attributes.

Parameters:
Return type:

int

stat(self, path)

Stat file.

Parameters:

path (str) – Path of file to stat.

Return type:

ssh2.sftp_handle.SFTPAttributes or LIBSSH2_ERROR_EAGAIN

statvfs(self, path)

Get file system statistics from path.

Return type:

ssh2.sftp.SFTPStatVFS or int of error code

Create symlink.

Parameters:
  • path (str) – Source file path.

  • target (str) – Target file path.

Return type:

int

Delete/unlink file.

Parameters:

filename (str) – Name of file to delete/unlink.

session

Originating session.