-/* HSM copytool interface. priv is private state, managed internally
- by these functions */
-extern int llapi_copytool_start(void **priv, char *fsname, int flags,
- int archive_count, int *archives);
-extern int llapi_copytool_fini(void **priv);
-extern int llapi_copytool_recv(void *priv, struct hsm_action_list **hal,
- int *msgsize);
-extern int llapi_copytool_free(struct hsm_action_list **hal);
-
+/* HSM copytool interface.
+ * priv is private state, managed internally by these functions
+ */
+struct hsm_copytool_private;
+struct hsm_copyaction_private;
+
+extern int llapi_hsm_copytool_register(struct hsm_copytool_private **priv,
+ const char *mnt, int flags,
+ int archive_count, int *archives);
+extern int llapi_hsm_copytool_unregister(struct hsm_copytool_private **priv);
+extern int llapi_hsm_copytool_recv(struct hsm_copytool_private *priv,
+ struct hsm_action_list **hal, int *msgsize);
+extern void llapi_hsm_action_list_free(struct hsm_action_list **hal);
+extern int llapi_hsm_action_begin(struct hsm_copyaction_private **phcp,
+ const struct hsm_copytool_private *ct,
+ const struct hsm_action_item *hai,
+ int restore_mdt_index, int restore_open_flags,
+ bool is_error);
+extern int llapi_hsm_action_end(struct hsm_copyaction_private **phcp,
+ const struct hsm_extent *he,
+ int hp_flags, int errval);
+extern int llapi_hsm_action_progress(struct hsm_copyaction_private *hcp,
+ const struct hsm_extent *he, int hp_flags);
+extern int llapi_hsm_action_get_dfid(const struct hsm_copyaction_private *hcp,
+ lustre_fid *fid);
+extern int llapi_hsm_action_get_fd(const struct hsm_copyaction_private *hcp);
+extern int llapi_hsm_import(const char *dst, int archive, const struct stat *st,
+ unsigned long long stripe_size, int stripe_offset,
+ int stripe_count, int stripe_pattern,
+ char *pool_name, lustre_fid *newfid);
+
+/* HSM user interface */
+extern struct hsm_user_request *llapi_hsm_user_request_alloc(int itemcount,
+ int data_len);
+extern int llapi_hsm_request(const char *path,
+ const struct hsm_user_request *request);
+extern int llapi_hsm_current_action(const char *path,
+ struct hsm_current_action *hca);