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.