diff options
| author | 2014-03-20 23:00:20 +0100 | |
|---|---|---|
| committer | 2014-03-20 23:00:20 +0100 | |
| commit | 88ce6113593158944630435678e689bf155d9a03 (patch) | |
| tree | 0757287665b7e9c7263d77fd269b0777e8228d25 /tools | |
| parent | a34a537d1408f8692daeadd5e1f5859ff13a3473 (diff) | |
| download | libimobiledevice-88ce6113593158944630435678e689bf155d9a03.tar.gz libimobiledevice-88ce6113593158944630435678e689bf155d9a03.tar.bz2 | |
Bump dependency to libplist 1.11 and remove use of "plist_dict_insert_item()"
Diffstat (limited to 'tools')
| -rw-r--r-- | tools/idevicebackup.c | 48 | ||||
| -rw-r--r-- | tools/idevicebackup2.c | 76 |
2 files changed, 62 insertions, 62 deletions
diff --git a/tools/idevicebackup.c b/tools/idevicebackup.c index 8f5362c..0d7ba92 100644 --- a/tools/idevicebackup.c +++ b/tools/idevicebackup.c | |||
| @@ -298,42 +298,42 @@ static plist_t mobilebackup_factory_info_plist_new(const char* udid) | |||
| 298 | 298 | ||
| 299 | /* set fields we understand */ | 299 | /* set fields we understand */ |
| 300 | value_node = plist_dict_get_item(root_node, "BuildVersion"); | 300 | value_node = plist_dict_get_item(root_node, "BuildVersion"); |
| 301 | plist_dict_insert_item(ret, "Build Version", plist_copy(value_node)); | 301 | plist_dict_set_item(ret, "Build Version", plist_copy(value_node)); |
| 302 | 302 | ||
| 303 | value_node = plist_dict_get_item(root_node, "DeviceName"); | 303 | value_node = plist_dict_get_item(root_node, "DeviceName"); |
| 304 | plist_dict_insert_item(ret, "Device Name", plist_copy(value_node)); | 304 | plist_dict_set_item(ret, "Device Name", plist_copy(value_node)); |
| 305 | plist_dict_insert_item(ret, "Display Name", plist_copy(value_node)); | 305 | plist_dict_set_item(ret, "Display Name", plist_copy(value_node)); |
| 306 | 306 | ||
| 307 | /* FIXME: How is the GUID generated? */ | 307 | /* FIXME: How is the GUID generated? */ |
| 308 | plist_dict_insert_item(ret, "GUID", plist_new_string("---")); | 308 | plist_dict_set_item(ret, "GUID", plist_new_string("---")); |
| 309 | 309 | ||
| 310 | value_node = plist_dict_get_item(root_node, "InternationalMobileEquipmentIdentity"); | 310 | value_node = plist_dict_get_item(root_node, "InternationalMobileEquipmentIdentity"); |
| 311 | if (value_node) | 311 | if (value_node) |
| 312 | plist_dict_insert_item(ret, "IMEI", plist_copy(value_node)); | 312 | plist_dict_set_item(ret, "IMEI", plist_copy(value_node)); |
| 313 | 313 | ||
| 314 | plist_dict_insert_item(ret, "Last Backup Date", plist_new_date(time(NULL), 0)); | 314 | plist_dict_set_item(ret, "Last Backup Date", plist_new_date(time(NULL), 0)); |
| 315 | 315 | ||
| 316 | value_node = plist_dict_get_item(root_node, "ProductType"); | 316 | value_node = plist_dict_get_item(root_node, "ProductType"); |
| 317 | plist_dict_insert_item(ret, "Product Type", plist_copy(value_node)); | 317 | plist_dict_set_item(ret, "Product Type", plist_copy(value_node)); |
| 318 | 318 | ||
| 319 | value_node = plist_dict_get_item(root_node, "ProductVersion"); | 319 | value_node = plist_dict_get_item(root_node, "ProductVersion"); |
| 320 | plist_dict_insert_item(ret, "Product Version", plist_copy(value_node)); | 320 | plist_dict_set_item(ret, "Product Version", plist_copy(value_node)); |
| 321 | 321 | ||
| 322 | value_node = plist_dict_get_item(root_node, "SerialNumber"); | 322 | value_node = plist_dict_get_item(root_node, "SerialNumber"); |
| 323 | plist_dict_insert_item(ret, "Serial Number", plist_copy(value_node)); | 323 | plist_dict_set_item(ret, "Serial Number", plist_copy(value_node)); |
| 324 | 324 | ||
| 325 | value_node = plist_dict_get_item(root_node, "UniqueDeviceID"); | 325 | value_node = plist_dict_get_item(root_node, "UniqueDeviceID"); |
| 326 | plist_dict_insert_item(ret, "Target Identifier", plist_new_string(udid)); | 326 | plist_dict_set_item(ret, "Target Identifier", plist_new_string(udid)); |
| 327 | 327 | ||
| 328 | /* uppercase */ | 328 | /* uppercase */ |
| 329 | udid_uppercase = str_toupper((char*)udid); | 329 | udid_uppercase = str_toupper((char*)udid); |
| 330 | plist_dict_insert_item(ret, "Unique Identifier", plist_new_string(udid_uppercase)); | 330 | plist_dict_set_item(ret, "Unique Identifier", plist_new_string(udid_uppercase)); |
| 331 | free(udid_uppercase); | 331 | free(udid_uppercase); |
| 332 | 332 | ||
| 333 | /* FIXME: Embed files as <data> nodes */ | 333 | /* FIXME: Embed files as <data> nodes */ |
| 334 | plist_t files = plist_new_dict(); | 334 | plist_t files = plist_new_dict(); |
| 335 | plist_dict_insert_item(ret, "iTunes Files", files); | 335 | plist_dict_set_item(ret, "iTunes Files", files); |
| 336 | plist_dict_insert_item(ret, "iTunes Version", plist_new_string("9.0.2")); | 336 | plist_dict_set_item(ret, "iTunes Version", plist_new_string("9.0.2")); |
| 337 | 337 | ||
| 338 | plist_free(root_node); | 338 | plist_free(root_node); |
| 339 | 339 | ||
| @@ -466,7 +466,7 @@ static void mobilebackup_write_status(const char *path, int status) | |||
| 466 | { | 466 | { |
| 467 | struct stat st; | 467 | struct stat st; |
| 468 | plist_t status_plist = plist_new_dict(); | 468 | plist_t status_plist = plist_new_dict(); |
| 469 | plist_dict_insert_item(status_plist, "Backup Success", plist_new_bool(status)); | 469 | plist_dict_set_item(status_plist, "Backup Success", plist_new_bool(status)); |
| 470 | char *file_path = mobilebackup_build_path(path, "Status", ".plist"); | 470 | char *file_path = mobilebackup_build_path(path, "Status", ".plist"); |
| 471 | 471 | ||
| 472 | if (stat(file_path, &st) == 0) | 472 | if (stat(file_path, &st) == 0) |
| @@ -1509,12 +1509,12 @@ files_out: | |||
| 1509 | printf("Restoring file %s %d/%d (%d%%)... ", file_path, cur_file, total_files, (cur_file*100/total_files)); | 1509 | printf("Restoring file %s %d/%d (%d%%)... ", file_path, cur_file, total_files, (cur_file*100/total_files)); |
| 1510 | 1510 | ||
| 1511 | /* add additional device link file information keys */ | 1511 | /* add additional device link file information keys */ |
| 1512 | plist_dict_insert_item(file_info, "DLFileAttributesKey", plist_copy(node)); | 1512 | plist_dict_set_item(file_info, "DLFileAttributesKey", plist_copy(node)); |
| 1513 | plist_dict_insert_item(file_info, "DLFileSource", plist_new_string(file_info_path)); | 1513 | plist_dict_set_item(file_info, "DLFileSource", plist_new_string(file_info_path)); |
| 1514 | plist_dict_insert_item(file_info, "DLFileDest", plist_new_string("/tmp/RestoreFile.plist")); | 1514 | plist_dict_set_item(file_info, "DLFileDest", plist_new_string("/tmp/RestoreFile.plist")); |
| 1515 | plist_dict_insert_item(file_info, "DLFileIsEncrypted", plist_new_bool(is_encrypted)); | 1515 | plist_dict_set_item(file_info, "DLFileIsEncrypted", plist_new_bool(is_encrypted)); |
| 1516 | plist_dict_insert_item(file_info, "DLFileOffsetKey", plist_new_uint(file_offset)); | 1516 | plist_dict_set_item(file_info, "DLFileOffsetKey", plist_new_uint(file_offset)); |
| 1517 | plist_dict_insert_item(file_info, "DLFileStatusKey", plist_new_uint(file_status)); | 1517 | plist_dict_set_item(file_info, "DLFileStatusKey", plist_new_uint(file_status)); |
| 1518 | 1518 | ||
| 1519 | /* read data from file */ | 1519 | /* read data from file */ |
| 1520 | free(file_info_path); | 1520 | free(file_info_path); |
| @@ -1531,10 +1531,10 @@ files_out: | |||
| 1531 | file_status = DEVICE_LINK_FILE_STATUS_HUNK; | 1531 | file_status = DEVICE_LINK_FILE_STATUS_HUNK; |
| 1532 | 1532 | ||
| 1533 | plist_dict_remove_item(file_info, "DLFileOffsetKey"); | 1533 | plist_dict_remove_item(file_info, "DLFileOffsetKey"); |
| 1534 | plist_dict_insert_item(file_info, "DLFileOffsetKey", plist_new_uint(file_offset)); | 1534 | plist_dict_set_item(file_info, "DLFileOffsetKey", plist_new_uint(file_offset)); |
| 1535 | 1535 | ||
| 1536 | plist_dict_remove_item(file_info, "DLFileStatusKey"); | 1536 | plist_dict_remove_item(file_info, "DLFileStatusKey"); |
| 1537 | plist_dict_insert_item(file_info, "DLFileStatusKey", plist_new_uint(file_status)); | 1537 | plist_dict_set_item(file_info, "DLFileStatusKey", plist_new_uint(file_status)); |
| 1538 | 1538 | ||
| 1539 | send_file_node = plist_new_array(); | 1539 | send_file_node = plist_new_array(); |
| 1540 | 1540 | ||
| @@ -1615,8 +1615,8 @@ files_out: | |||
| 1615 | tmp_node = plist_dict_get_item(node, "AppInfo"); | 1615 | tmp_node = plist_dict_get_item(node, "AppInfo"); |
| 1616 | 1616 | ||
| 1617 | dict = plist_new_dict(); | 1617 | dict = plist_new_dict(); |
| 1618 | plist_dict_insert_item(dict, "AppInfo", plist_copy(tmp_node)); | 1618 | plist_dict_set_item(dict, "AppInfo", plist_copy(tmp_node)); |
| 1619 | plist_dict_insert_item(dict, "BackupMessageTypeKey", plist_new_string("BackupMessageRestoreApplicationSent")); | 1619 | plist_dict_set_item(dict, "BackupMessageTypeKey", plist_new_string("BackupMessageRestoreApplicationSent")); |
| 1620 | 1620 | ||
| 1621 | array = plist_new_array(); | 1621 | array = plist_new_array(); |
| 1622 | plist_array_append_item(array, plist_new_string("DLMessageProcessMessage")); | 1622 | plist_array_append_item(array, plist_new_string("DLMessageProcessMessage")); |
diff --git a/tools/idevicebackup2.c b/tools/idevicebackup2.c index 8efc2c8..a9bf071 100644 --- a/tools/idevicebackup2.c +++ b/tools/idevicebackup2.c | |||
| @@ -275,56 +275,56 @@ static plist_t mobilebackup_factory_info_plist_new(const char* udid, lockdownd_c | |||
| 275 | 275 | ||
| 276 | /* set fields we understand */ | 276 | /* set fields we understand */ |
| 277 | value_node = plist_dict_get_item(root_node, "BuildVersion"); | 277 | value_node = plist_dict_get_item(root_node, "BuildVersion"); |
| 278 | plist_dict_insert_item(ret, "Build Version", plist_copy(value_node)); | 278 | plist_dict_set_item(ret, "Build Version", plist_copy(value_node)); |
| 279 | 279 | ||
| 280 | value_node = plist_dict_get_item(root_node, "DeviceName"); | 280 | value_node = plist_dict_get_item(root_node, "DeviceName"); |
| 281 | plist_dict_insert_item(ret, "Device Name", plist_copy(value_node)); | 281 | plist_dict_set_item(ret, "Device Name", plist_copy(value_node)); |
| 282 | plist_dict_insert_item(ret, "Display Name", plist_copy(value_node)); | 282 | plist_dict_set_item(ret, "Display Name", plist_copy(value_node)); |
| 283 | 283 | ||
| 284 | /* FIXME: How is the GUID generated? */ | 284 | /* FIXME: How is the GUID generated? */ |
| 285 | plist_dict_insert_item(ret, "GUID", plist_new_string("---")); | 285 | plist_dict_set_item(ret, "GUID", plist_new_string("---")); |
| 286 | 286 | ||
| 287 | value_node = plist_dict_get_item(root_node, "IntegratedCircuitCardIdentity"); | 287 | value_node = plist_dict_get_item(root_node, "IntegratedCircuitCardIdentity"); |
| 288 | if (value_node) | 288 | if (value_node) |
| 289 | plist_dict_insert_item(ret, "ICCID", plist_copy(value_node)); | 289 | plist_dict_set_item(ret, "ICCID", plist_copy(value_node)); |
| 290 | 290 | ||
| 291 | value_node = plist_dict_get_item(root_node, "InternationalMobileEquipmentIdentity"); | 291 | value_node = plist_dict_get_item(root_node, "InternationalMobileEquipmentIdentity"); |
| 292 | if (value_node) | 292 | if (value_node) |
| 293 | plist_dict_insert_item(ret, "IMEI", plist_copy(value_node)); | 293 | plist_dict_set_item(ret, "IMEI", plist_copy(value_node)); |
| 294 | 294 | ||
| 295 | plist_dict_insert_item(ret, "Last Backup Date", plist_new_date(time(NULL), 0)); | 295 | plist_dict_set_item(ret, "Last Backup Date", plist_new_date(time(NULL), 0)); |
| 296 | 296 | ||
| 297 | value_node = plist_dict_get_item(root_node, "PhoneNumber"); | 297 | value_node = plist_dict_get_item(root_node, "PhoneNumber"); |
| 298 | if (value_node && (plist_get_node_type(value_node) == PLIST_STRING)) { | 298 | if (value_node && (plist_get_node_type(value_node) == PLIST_STRING)) { |
| 299 | plist_dict_insert_item(ret, "Phone Number", plist_copy(value_node)); | 299 | plist_dict_set_item(ret, "Phone Number", plist_copy(value_node)); |
| 300 | } | 300 | } |
| 301 | 301 | ||
| 302 | value_node = plist_dict_get_item(root_node, "ProductType"); | 302 | value_node = plist_dict_get_item(root_node, "ProductType"); |
| 303 | plist_dict_insert_item(ret, "Product Type", plist_copy(value_node)); | 303 | plist_dict_set_item(ret, "Product Type", plist_copy(value_node)); |
| 304 | 304 | ||
| 305 | value_node = plist_dict_get_item(root_node, "ProductVersion"); | 305 | value_node = plist_dict_get_item(root_node, "ProductVersion"); |
| 306 | plist_dict_insert_item(ret, "Product Version", plist_copy(value_node)); | 306 | plist_dict_set_item(ret, "Product Version", plist_copy(value_node)); |
| 307 | 307 | ||
| 308 | value_node = plist_dict_get_item(root_node, "SerialNumber"); | 308 | value_node = plist_dict_get_item(root_node, "SerialNumber"); |
| 309 | plist_dict_insert_item(ret, "Serial Number", plist_copy(value_node)); | 309 | plist_dict_set_item(ret, "Serial Number", plist_copy(value_node)); |
| 310 | 310 | ||
| 311 | /* FIXME Sync Settings? */ | 311 | /* FIXME Sync Settings? */ |
| 312 | 312 | ||
| 313 | value_node = plist_dict_get_item(root_node, "UniqueDeviceID"); | 313 | value_node = plist_dict_get_item(root_node, "UniqueDeviceID"); |
| 314 | plist_dict_insert_item(ret, "Target Identifier", plist_new_string(udid)); | 314 | plist_dict_set_item(ret, "Target Identifier", plist_new_string(udid)); |
| 315 | 315 | ||
| 316 | plist_dict_insert_item(ret, "Target Type", plist_new_string("Device")); | 316 | plist_dict_set_item(ret, "Target Type", plist_new_string("Device")); |
| 317 | 317 | ||
| 318 | /* uppercase */ | 318 | /* uppercase */ |
| 319 | udid_uppercase = str_toupper((char*)udid); | 319 | udid_uppercase = str_toupper((char*)udid); |
| 320 | plist_dict_insert_item(ret, "Unique Identifier", plist_new_string(udid_uppercase)); | 320 | plist_dict_set_item(ret, "Unique Identifier", plist_new_string(udid_uppercase)); |
| 321 | free(udid_uppercase); | 321 | free(udid_uppercase); |
| 322 | 322 | ||
| 323 | char *data_buf = NULL; | 323 | char *data_buf = NULL; |
| 324 | uint64_t data_size = 0; | 324 | uint64_t data_size = 0; |
| 325 | mobilebackup_afc_get_file_contents(afc, "/Books/iBooksData2.plist", &data_buf, &data_size); | 325 | mobilebackup_afc_get_file_contents(afc, "/Books/iBooksData2.plist", &data_buf, &data_size); |
| 326 | if (data_buf) { | 326 | if (data_buf) { |
| 327 | plist_dict_insert_item(ret, "iBooks Data 2", plist_new_data(data_buf, data_size)); | 327 | plist_dict_set_item(ret, "iBooks Data 2", plist_new_data(data_buf, data_size)); |
| 328 | free(data_buf); | 328 | free(data_buf); |
| 329 | } | 329 | } |
| 330 | 330 | ||
| @@ -352,17 +352,17 @@ static plist_t mobilebackup_factory_info_plist_new(const char* udid, lockdownd_c | |||
| 352 | mobilebackup_afc_get_file_contents(afc, fname, &data_buf, &data_size); | 352 | mobilebackup_afc_get_file_contents(afc, fname, &data_buf, &data_size); |
| 353 | free(fname); | 353 | free(fname); |
| 354 | if (data_buf) { | 354 | if (data_buf) { |
| 355 | plist_dict_insert_item(files, itunesfiles[i], plist_new_data(data_buf, data_size)); | 355 | plist_dict_set_item(files, itunesfiles[i], plist_new_data(data_buf, data_size)); |
| 356 | free(data_buf); | 356 | free(data_buf); |
| 357 | } | 357 | } |
| 358 | } | 358 | } |
| 359 | plist_dict_insert_item(ret, "iTunes Files", files); | 359 | plist_dict_set_item(ret, "iTunes Files", files); |
| 360 | 360 | ||
| 361 | plist_t itunes_settings = NULL; | 361 | plist_t itunes_settings = NULL; |
| 362 | lockdownd_get_value(lockdown, "com.apple.iTunes", NULL, &itunes_settings); | 362 | lockdownd_get_value(lockdown, "com.apple.iTunes", NULL, &itunes_settings); |
| 363 | plist_dict_insert_item(ret, "iTunes Settings", itunes_settings ? itunes_settings : plist_new_dict()); | 363 | plist_dict_set_item(ret, "iTunes Settings", itunes_settings ? itunes_settings : plist_new_dict()); |
| 364 | 364 | ||
| 365 | plist_dict_insert_item(ret, "iTunes Version", plist_new_string("10.0.1")); | 365 | plist_dict_set_item(ret, "iTunes Version", plist_new_string("10.0.1")); |
| 366 | 366 | ||
| 367 | plist_free(root_node); | 367 | plist_free(root_node); |
| 368 | 368 | ||
| @@ -589,9 +589,9 @@ static void mb2_multi_status_add_file_error(plist_t status_dict, const char *pat | |||
| 589 | { | 589 | { |
| 590 | if (!status_dict) return; | 590 | if (!status_dict) return; |
| 591 | plist_t filedict = plist_new_dict(); | 591 | plist_t filedict = plist_new_dict(); |
| 592 | plist_dict_insert_item(filedict, "DLFileErrorString", plist_new_string(error_message)); | 592 | plist_dict_set_item(filedict, "DLFileErrorString", plist_new_string(error_message)); |
| 593 | plist_dict_insert_item(filedict, "DLFileErrorCode", plist_new_uint(error_code)); | 593 | plist_dict_set_item(filedict, "DLFileErrorCode", plist_new_uint(error_code)); |
| 594 | plist_dict_insert_item(status_dict, path, filedict); | 594 | plist_dict_set_item(status_dict, path, filedict); |
| 595 | } | 595 | } |
| 596 | 596 | ||
| 597 | static int errno_to_device_error(int errno_value) | 597 | static int errno_to_device_error(int errno_value) |
| @@ -1055,11 +1055,11 @@ static void mb2_handle_list_directory(mobilebackup2_client_t mobilebackup2, plis | |||
| 1055 | } else if (S_ISREG(st.st_mode)) { | 1055 | } else if (S_ISREG(st.st_mode)) { |
| 1056 | ftype = "DLFileTypeRegular"; | 1056 | ftype = "DLFileTypeRegular"; |
| 1057 | } | 1057 | } |
| 1058 | plist_dict_insert_item(fdict, "DLFileType", plist_new_string(ftype)); | 1058 | plist_dict_set_item(fdict, "DLFileType", plist_new_string(ftype)); |
| 1059 | plist_dict_insert_item(fdict, "DLFileSize", plist_new_uint(st.st_size)); | 1059 | plist_dict_set_item(fdict, "DLFileSize", plist_new_uint(st.st_size)); |
| 1060 | plist_dict_insert_item(fdict, "DLFileModificationDate", plist_new_date(st.st_mtime, 0)); | 1060 | plist_dict_set_item(fdict, "DLFileModificationDate", plist_new_date(st.st_mtime, 0)); |
| 1061 | 1061 | ||
| 1062 | plist_dict_insert_item(dirlist, ep->d_name, fdict); | 1062 | plist_dict_set_item(dirlist, ep->d_name, fdict); |
| 1063 | free(fpath); | 1063 | free(fpath); |
| 1064 | } | 1064 | } |
| 1065 | } | 1065 | } |
| @@ -1719,7 +1719,7 @@ checkpoint: | |||
| 1719 | switch(cmd) { | 1719 | switch(cmd) { |
| 1720 | case CMD_CLOUD: | 1720 | case CMD_CLOUD: |
| 1721 | opts = plist_new_dict(); | 1721 | opts = plist_new_dict(); |
| 1722 | plist_dict_insert_item(opts, "CloudBackupState", plist_new_bool(cmd_flags & CMD_FLAG_CLOUD_ENABLE ? 1: 0)); | 1722 | plist_dict_set_item(opts, "CloudBackupState", plist_new_bool(cmd_flags & CMD_FLAG_CLOUD_ENABLE ? 1: 0)); |
| 1723 | err = mobilebackup2_send_request(mobilebackup2, "EnableCloudBackup", udid, source_udid, opts); | 1723 | err = mobilebackup2_send_request(mobilebackup2, "EnableCloudBackup", udid, source_udid, opts); |
| 1724 | plist_free(opts); | 1724 | plist_free(opts); |
| 1725 | opts = NULL; | 1725 | opts = NULL; |
| @@ -1767,7 +1767,7 @@ checkpoint: | |||
| 1767 | if (cmd_flags & CMD_FLAG_FORCE_FULL_BACKUP) { | 1767 | if (cmd_flags & CMD_FLAG_FORCE_FULL_BACKUP) { |
| 1768 | PRINT_VERBOSE(1, "Enforcing full backup from device.\n"); | 1768 | PRINT_VERBOSE(1, "Enforcing full backup from device.\n"); |
| 1769 | opts = plist_new_dict(); | 1769 | opts = plist_new_dict(); |
| 1770 | plist_dict_insert_item(opts, "ForceFullBackup", plist_new_bool(1)); | 1770 | plist_dict_set_item(opts, "ForceFullBackup", plist_new_bool(1)); |
| 1771 | } | 1771 | } |
| 1772 | /* request backup from device with manifest from last backup */ | 1772 | /* request backup from device with manifest from last backup */ |
| 1773 | if (willEncrypt) { | 1773 | if (willEncrypt) { |
| @@ -1809,21 +1809,21 @@ checkpoint: | |||
| 1809 | PRINT_VERBOSE(1, "Starting Restore...\n"); | 1809 | PRINT_VERBOSE(1, "Starting Restore...\n"); |
| 1810 | 1810 | ||
| 1811 | opts = plist_new_dict(); | 1811 | opts = plist_new_dict(); |
| 1812 | plist_dict_insert_item(opts, "RestoreSystemFiles", plist_new_bool(cmd_flags & CMD_FLAG_RESTORE_SYSTEM_FILES)); | 1812 | plist_dict_set_item(opts, "RestoreSystemFiles", plist_new_bool(cmd_flags & CMD_FLAG_RESTORE_SYSTEM_FILES)); |
| 1813 | PRINT_VERBOSE(1, "Restoring system files: %s\n", (cmd_flags & CMD_FLAG_RESTORE_SYSTEM_FILES ? "Yes":"No")); | 1813 | PRINT_VERBOSE(1, "Restoring system files: %s\n", (cmd_flags & CMD_FLAG_RESTORE_SYSTEM_FILES ? "Yes":"No")); |
| 1814 | if ((cmd_flags & CMD_FLAG_RESTORE_REBOOT) == 0) | 1814 | if ((cmd_flags & CMD_FLAG_RESTORE_REBOOT) == 0) |
| 1815 | plist_dict_insert_item(opts, "RestoreShouldReboot", plist_new_bool(0)); | 1815 | plist_dict_set_item(opts, "RestoreShouldReboot", plist_new_bool(0)); |
| 1816 | PRINT_VERBOSE(1, "Rebooting after restore: %s\n", (cmd_flags & CMD_FLAG_RESTORE_REBOOT ? "Yes":"No")); | 1816 | PRINT_VERBOSE(1, "Rebooting after restore: %s\n", (cmd_flags & CMD_FLAG_RESTORE_REBOOT ? "Yes":"No")); |
| 1817 | if ((cmd_flags & CMD_FLAG_RESTORE_COPY_BACKUP) == 0) | 1817 | if ((cmd_flags & CMD_FLAG_RESTORE_COPY_BACKUP) == 0) |
| 1818 | plist_dict_insert_item(opts, "RestoreDontCopyBackup", plist_new_bool(1)); | 1818 | plist_dict_set_item(opts, "RestoreDontCopyBackup", plist_new_bool(1)); |
| 1819 | PRINT_VERBOSE(1, "Don't copy backup: %s\n", ((cmd_flags & CMD_FLAG_RESTORE_COPY_BACKUP) == 0 ? "Yes":"No")); | 1819 | PRINT_VERBOSE(1, "Don't copy backup: %s\n", ((cmd_flags & CMD_FLAG_RESTORE_COPY_BACKUP) == 0 ? "Yes":"No")); |
| 1820 | plist_dict_insert_item(opts, "RestorePreserveSettings", plist_new_bool((cmd_flags & CMD_FLAG_RESTORE_SETTINGS) == 0)); | 1820 | plist_dict_set_item(opts, "RestorePreserveSettings", plist_new_bool((cmd_flags & CMD_FLAG_RESTORE_SETTINGS) == 0)); |
| 1821 | PRINT_VERBOSE(1, "Preserve settings of device: %s\n", ((cmd_flags & CMD_FLAG_RESTORE_SETTINGS) == 0 ? "Yes":"No")); | 1821 | PRINT_VERBOSE(1, "Preserve settings of device: %s\n", ((cmd_flags & CMD_FLAG_RESTORE_SETTINGS) == 0 ? "Yes":"No")); |
| 1822 | if (cmd_flags & CMD_FLAG_RESTORE_REMOVE_ITEMS) | 1822 | if (cmd_flags & CMD_FLAG_RESTORE_REMOVE_ITEMS) |
| 1823 | plist_dict_insert_item(opts, "RemoveItemsNotRestored", plist_new_bool(1)); | 1823 | plist_dict_set_item(opts, "RemoveItemsNotRestored", plist_new_bool(1)); |
| 1824 | PRINT_VERBOSE(1, "Remove items that are not restored: %s\n", ((cmd_flags & CMD_FLAG_RESTORE_REMOVE_ITEMS) ? "Yes":"No")); | 1824 | PRINT_VERBOSE(1, "Remove items that are not restored: %s\n", ((cmd_flags & CMD_FLAG_RESTORE_REMOVE_ITEMS) ? "Yes":"No")); |
| 1825 | if (backup_password != NULL) { | 1825 | if (backup_password != NULL) { |
| 1826 | plist_dict_insert_item(opts, "Password", plist_new_string(backup_password)); | 1826 | plist_dict_set_item(opts, "Password", plist_new_string(backup_password)); |
| 1827 | } | 1827 | } |
| 1828 | PRINT_VERBOSE(1, "Backup password: %s\n", (backup_password == NULL ? "No":"Yes")); | 1828 | PRINT_VERBOSE(1, "Backup password: %s\n", (backup_password == NULL ? "No":"Yes")); |
| 1829 | 1829 | ||
| @@ -1860,7 +1860,7 @@ checkpoint: | |||
| 1860 | PRINT_VERBOSE(1, "Starting to unpack backup...\n"); | 1860 | PRINT_VERBOSE(1, "Starting to unpack backup...\n"); |
| 1861 | if (backup_password != NULL) { | 1861 | if (backup_password != NULL) { |
| 1862 | opts = plist_new_dict(); | 1862 | opts = plist_new_dict(); |
| 1863 | plist_dict_insert_item(opts, "Password", plist_new_string(backup_password)); | 1863 | plist_dict_set_item(opts, "Password", plist_new_string(backup_password)); |
| 1864 | } | 1864 | } |
| 1865 | PRINT_VERBOSE(1, "Backup password: %s\n", (backup_password == NULL ? "No":"Yes")); | 1865 | PRINT_VERBOSE(1, "Backup password: %s\n", (backup_password == NULL ? "No":"Yes")); |
| 1866 | err = mobilebackup2_send_request(mobilebackup2, "Unback", udid, source_udid, opts); | 1866 | err = mobilebackup2_send_request(mobilebackup2, "Unback", udid, source_udid, opts); |
| @@ -1874,7 +1874,7 @@ checkpoint: | |||
| 1874 | break; | 1874 | break; |
| 1875 | case CMD_CHANGEPW: | 1875 | case CMD_CHANGEPW: |
| 1876 | opts = plist_new_dict(); | 1876 | opts = plist_new_dict(); |
| 1877 | plist_dict_insert_item(opts, "TargetIdentifier", plist_new_string(udid)); | 1877 | plist_dict_set_item(opts, "TargetIdentifier", plist_new_string(udid)); |
| 1878 | if (cmd_flags & CMD_FLAG_ENCRYPTION_ENABLE) { | 1878 | if (cmd_flags & CMD_FLAG_ENCRYPTION_ENABLE) { |
| 1879 | if (!willEncrypt) { | 1879 | if (!willEncrypt) { |
| 1880 | if (!newpw) { | 1880 | if (!newpw) { |
| @@ -1924,10 +1924,10 @@ checkpoint: | |||
| 1924 | } | 1924 | } |
| 1925 | } | 1925 | } |
| 1926 | if (newpw) { | 1926 | if (newpw) { |
| 1927 | plist_dict_insert_item(opts, "NewPassword", plist_new_string(newpw)); | 1927 | plist_dict_set_item(opts, "NewPassword", plist_new_string(newpw)); |
| 1928 | } | 1928 | } |
| 1929 | if (backup_password) { | 1929 | if (backup_password) { |
| 1930 | plist_dict_insert_item(opts, "OldPassword", plist_new_string(backup_password)); | 1930 | plist_dict_set_item(opts, "OldPassword", plist_new_string(backup_password)); |
| 1931 | } | 1931 | } |
| 1932 | if (newpw || backup_password) { | 1932 | if (newpw || backup_password) { |
| 1933 | mobilebackup2_send_message(mobilebackup2, "ChangePassword", opts); | 1933 | mobilebackup2_send_message(mobilebackup2, "ChangePassword", opts); |
