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.

Info

April 2023 Libstoragemgmt C API Manual