SFtpFile C Reference Documentation
SFtpFile
Current Version: 10.0.0
Represents a remote SFTP file.
Create/Dispose
HCkSFtpFile instance = CkSFtpFile_Create(); // ... CkSFtpFile_Dispose(instance);
Creates an instance of the HCkSFtpFile object and returns a handle ("void *" pointer). The handle is passed in the 1st argument for the functions listed on this page.
Objects created by calling CkSFtpFile_Create must be freed by calling this method. A memory leak occurs if a handle is not disposed by calling this function. Also, any handle returned by a Chilkat "C" function must also be freed by the application by calling the appropriate Dispose method, such as CkSFtpFile_Dispose.
Properties
CreateTimeStr
const char *CkSFtpFile_createTimeStr(HCkSFtpFile cHandle);
The same as the CreateTime property, but returns the date/time as an RFC822 formatted string.
topFilename
const char *CkSFtpFile_filename(HCkSFtpFile cHandle);
The filename (or directory name, symbolic link name, etc.)
topFileType
const char *CkSFtpFile_fileType(HCkSFtpFile cHandle);
One of the following values:
regular directory symLink special unknown socket charDevice blockDevice fifotop
Gid
The integer Group ID of the file.
topGroup
const char *CkSFtpFile_group(HCkSFtpFile cHandle);
The group ownership of the file. This property is only supported by servers running SFTP v4 or later.
topIsAppendOnly
If TRUE, this file may only be appended. This property is only supported by servers running SFTP v6 or later.
topIsArchive
If TRUE, the file should be included in backup / archive operations. This property is only supported by servers running SFTP v6 or later.
topIsCaseInsensitive
This attribute applies only to directories. This attribute means that files and directory names in this directory should be compared without regard to case. This property is only supported by servers running SFTP v6 or later.
topIsCompressed
The file is stored on disk using file-system level transparent compression. This flag does not affect the file data on the wire. This property is only supported by servers running SFTP v6 or later.
topIsDirectory
If TRUE, this is a directory.
topIsEncrypted
The file is stored on disk using file-system level transparent encryption. This flag does not affect the file data on the wire (for either READ or WRITE requests.) This property is only supported by servers running SFTP v6 or later.
topIsHidden
If TRUE, the file SHOULD NOT be shown to user unless specifically requested.
topIsImmutable
The file cannot be deleted or renamed, no hard link can be created to this file, and no data can be written to the file.
This bit implies a stronger level of protection than ReadOnly, the file permission mask or ACLs. Typically even the superuser cannot write to immutable files, and only the superuser can set or remove the bit.
This property is only supported by servers running SFTP v6 or later.
topIsReadOnly
If TRUE, the file is read-only. This property is only supported by servers running SFTP v6 or later.
topIsRegular
TRUE if this is a normal file (not a directory or any of the other non-file types).
topIsSparse
The file is a sparse file; this means that file blocks that have not been explicitly written are not stored on disk. For example, if a client writes a buffer at 10 M from the beginning of the file, the blocks between the previous EOF marker and the 10 M offset would not consume physical disk space.
Some servers may store all files as sparse files, in which case this bit will be unconditionally set. Other servers may not have a mechanism for determining if the file is sparse, and so the file MAY be stored sparse even if this flag is not set.
This property is only supported by servers running SFTP v6 or later.
topIsSymLink
TRUE if this is a symbolic link.
topIsSync
When the file is modified, the changes are written synchronously to the disk. This property is only supported by servers running SFTP v6 or later.
topIsSystem
TRUE if the file is part of the operating system. This property is only supported by servers running SFTP v6 or later.
topLastAccessTimeStr
const char *CkSFtpFile_lastAccessTimeStr(HCkSFtpFile cHandle);
The same as the LastAccessTime property, but returns the date/time as an RFC822 formatted string.
topLastMethodSuccess
void CkSFtpFile_putLastMethodSuccess(HCkSFtpFile cHandle, BOOL newVal);
Indicate whether the last method call succeeded or failed. A value of TRUE indicates success, a value of FALSE indicates failure. This property is automatically set for method calls. It is not modified by property accesses. The property is automatically set to indicate success for the following types of method calls:
- Any method that returns a string.
- Any method returning a Chilkat object, binary bytes, or a date/time.
- Any method returning a standard boolean status value where success = TRUE and failure = FALSE.
- Any method returning an integer where failure is defined by a return value less than zero.
Note: Methods that do not fit the above requirements will always set this property equal to TRUE. For example, a method that returns no value (such as a "void" in C++) will technically always succeed.
topLastModifiedTimeStr
const char *CkSFtpFile_lastModifiedTimeStr(HCkSFtpFile cHandle);
The same as the LastModifiedTime property, but returns the date/time as an RFC822 formatted string. Other date/time formats can be obtained by calling the GetLastModifiedDt method to return a CkDateTime object, and then use CkDateTime to get the desired format.
topOwner
const char *CkSFtpFile_owner(HCkSFtpFile cHandle);
The owner of the file. This property is only supported by servers running SFTP v4 or later.
topPermissions
The 'permissions' field contains a bit mask specifying file permissions. These permissions correspond to the st_mode field of the stat structure defined by POSIX [IEEE.1003-1.1996].
This protocol uses the following values for the symbols declared in the POSIX standard.
S_IRUSR 0000400 (octal) S_IWUSR 0000200 S_IXUSR 0000100 S_IRGRP 0000040 S_IWGRP 0000020 S_IXGRP 0000010 S_IROTH 0000004 S_IWOTH 0000002 S_IXOTH 0000001 S_ISUID 0004000 S_ISGID 0002000 S_ISVTX 0001000top
Size32
Size of the file in bytes. If the size is too large for 32-bits, a -1 is returned.
topSize64
Size of the file in bytes. If the file size is a number too large for 64 bits, you have an AMAZINGLY large disk drive.
topSizeStr
const char *CkSFtpFile_sizeStr(HCkSFtpFile cHandle);
Same as Size64, but the number is returned as a string in decimal format.
topUid
The integer User ID of the file.
topUtf8
void CkSFtpFile_putUtf8(HCkSFtpFile cHandle, BOOL newVal);
When set to TRUE, all "const char *" arguments are interpreted as utf-8 strings. If set to FALSE (the default), then "const char *" arguments are interpreted as ANSI strings. Also, when set to TRUE, and Chilkat method returning a "const char *" is returning the utf-8 representation. If set to FALSE, all "const char *" return values are ANSI strings.
topMethods
GetCreateDt
Returns the file creation date and time (GMT / UTC). This method is only supported by servers running SFTP v4 or later.
Returns NULL on failure
topGetLastAccessDt
GetLastModifiedDt
Returns the last-modified date and time (GMT / UTC).
Returns NULL on failure