diff options
-rw-r--r-- | include/libimobiledevice/mobilebackup.h | 1 | ||||
-rw-r--r-- | src/mobilebackup.c | 23 |
2 files changed, 24 insertions, 0 deletions
diff --git a/include/libimobiledevice/mobilebackup.h b/include/libimobiledevice/mobilebackup.h index bf405f9..8f31cc4 100644 --- a/include/libimobiledevice/mobilebackup.h +++ b/include/libimobiledevice/mobilebackup.h @@ -61,6 +61,7 @@ mobilebackup_error_t mobilebackup_request_backup(mobilebackup_client_t client, p mobilebackup_error_t mobilebackup_send_backup_file_received(mobilebackup_client_t client); mobilebackup_error_t mobilebackup_request_restore(mobilebackup_client_t client, plist_t backup_manifest, mobilebackup_flags_t flags, const char *proto_version); mobilebackup_error_t mobilebackup_receive_restore_file_received(mobilebackup_client_t client, plist_t *result); +mobilebackup_error_t mobilebackup_receive_restore_application_received(mobilebackup_client_t client, plist_t *result); mobilebackup_error_t mobilebackup_send_restore_complete(mobilebackup_client_t client); mobilebackup_error_t mobilebackup_send_error(mobilebackup_client_t client, const char *reason); diff --git a/src/mobilebackup.c b/src/mobilebackup.c index 03d3920..fcff60d 100644 --- a/src/mobilebackup.c +++ b/src/mobilebackup.c @@ -456,6 +456,29 @@ mobilebackup_error_t mobilebackup_receive_restore_file_received(mobilebackup_cli } /** + * Receive a confirmation from the device that it successfully received + * application data file. + * + * @param client The connected MobileBackup client to use. + * @param result Pointer to a plist_t that will be set to the received plist + * for further processing. The caller has to free it using plist_free(). + * Note that it will be set to NULL if the operation itself fails due to + * a communication or plist error. + * If this parameter is NULL, it will be ignored. + * + * @return MOBILEBACKUP_E_SUCCESS on success, MOBILEBACKUP_E_INVALID_ARG if + * client is invalid, MOBILEBACKUP_E_REPLY_NOT_OK if the expected + * 'BackupMessageRestoreApplicationReceived' message could not be received, + * MOBILEBACKUP_E_PLIST_ERROR if the received message is not a valid backup + * message plist, or MOBILEBACKUP_E_MUX_ERROR if a communication error + * occurs. + */ +mobilebackup_error_t mobilebackup_receive_restore_application_received(mobilebackup_client_t client, plist_t *result) +{ + return mobilebackup_receive_message(client, "BackupMessageRestoreApplicationReceived", result); +} + +/** * Tells the device that the restore process is complete and waits for the * device to close the connection. After that, the device should reboot. * |