lsm_fs_file_clone - Man Page
Clones a file on a file system.
Synopsis
int lsm_fs_file_clone (lsm_connect *conn, lsm_fs *fs, const char *src_file_name, const char *dest_file_name, lsm_fs_ss *snapshot, char **job, lsm_flag flags);
Arguments
- conn
Valid connection.
- fs
Pointer of lsm_fs which file resides.
- src_file_name
String. Source file relative name & path.
- dest_file_name
String. Destination file relative name & path.
- snapshot
Pointer of lsm_fs_ss. Snapshot of source file is based on. If NULL, use current state of this file. Returned value must be freed with a call to lsm_fs_ss_record_free.
- job
Output pointer of string. If storage system support asynchronous action on this, a job will be created and could be tracked via lsm_job_status_get. NULL if storage system does not support asynchronous action on this.
- flags
Reserved for future use, must be LSM_CLIENT_FLAG_RSVD.
Version
1.0
Description
Clones the specified file on a file system.
Capability
LSM_CAP_FILE_CLONE
Return
Error code as enumerated by 'lsm_error_number'.
* LSM_ERR_OK
On success.
* LSM_ERR_JOB_STARTED
A job is started. Please check the 'job' output pointer.
* LSM_ERR_INVALID_ARGUMENT
When any argument is NULL or not a valid lsm_connect pointer
or invalid flags.
* LSM_ERR_NOT_FOUND_FS
When file system not found.
* LSM_ERR_NOT_ENOUGH_SPACE
Pool does not have enough space.
* LSM_ERR_NO_SUPPORT
Not supported.