diff options
| -rw-r--r-- | dev/msyncclient.c | 45 | ||||
| -rw-r--r-- | src/MobileSync.c | 8 | ||||
| -rw-r--r-- | src/NotificationProxy.c | 15 | ||||
| -rw-r--r-- | src/lockdown.c | 84 |
4 files changed, 60 insertions, 92 deletions
diff --git a/dev/msyncclient.c b/dev/msyncclient.c index 4b27eb7..fff4c44 100644 --- a/dev/msyncclient.c +++ b/dev/msyncclient.c | |||
| @@ -37,12 +37,12 @@ static mobilesync_error_t mobilesync_get_all_contacts(mobilesync_client_t client | |||
| 37 | plist_t array = NULL; | 37 | plist_t array = NULL; |
| 38 | 38 | ||
| 39 | array = plist_new_array(); | 39 | array = plist_new_array(); |
| 40 | plist_add_sub_string_el(array, "SDMessageSyncDataClassWithDevice"); | 40 | plist_array_append_item(array, plist_new_string("SDMessageSyncDataClassWithDevice")); |
| 41 | plist_add_sub_string_el(array, "com.apple.Contacts"); | 41 | plist_array_append_item(array, plist_new_string("com.apple.Contacts")); |
| 42 | plist_add_sub_string_el(array, "---"); | 42 | plist_array_append_item(array, plist_new_string("---")); |
| 43 | plist_add_sub_string_el(array, "2009-01-09 18:03:58 +0100"); | 43 | plist_array_append_item(array, plist_new_string("2009-01-09 18:03:58 +0100")); |
| 44 | plist_add_sub_uint_el(array, 106); | 44 | plist_array_append_item(array, plist_new_uint(106)); |
| 45 | plist_add_sub_string_el(array, "___EmptyParameterString___"); | 45 | plist_array_append_item(array, plist_new_string("___EmptyParameterString___")); |
| 46 | 46 | ||
| 47 | ret = mobilesync_send(client, array); | 47 | ret = mobilesync_send(client, array); |
| 48 | plist_free(array); | 48 | plist_free(array); |
| @@ -59,9 +59,8 @@ static mobilesync_error_t mobilesync_get_all_contacts(mobilesync_client_t client | |||
| 59 | array = NULL; | 59 | array = NULL; |
| 60 | 60 | ||
| 61 | array = plist_new_array(); | 61 | array = plist_new_array(); |
| 62 | plist_add_sub_string_el(array, "SDMessageGetAllRecordsFromDevice"); | 62 | plist_array_append_item(array, plist_new_string("SDMessageGetAllRecordsFromDevice")); |
| 63 | plist_add_sub_string_el(array, "com.apple.Contacts"); | 63 | plist_array_append_item(array, plist_new_string("com.apple.Contacts")); |
| 64 | |||
| 65 | 64 | ||
| 66 | ret = mobilesync_send(client, array); | 65 | ret = mobilesync_send(client, array); |
| 67 | plist_free(array); | 66 | plist_free(array); |
| @@ -81,8 +80,8 @@ static mobilesync_error_t mobilesync_get_all_contacts(mobilesync_client_t client | |||
| 81 | array = NULL; | 80 | array = NULL; |
| 82 | 81 | ||
| 83 | array = plist_new_array(); | 82 | array = plist_new_array(); |
| 84 | plist_add_sub_string_el(array, "SDMessageAcknowledgeChangesFromDevice"); | 83 | plist_array_append_item(array, plist_new_string("SDMessageAcknowledgeChangesFromDevice")); |
| 85 | plist_add_sub_string_el(array, "com.apple.Contacts"); | 84 | plist_array_append_item(array, plist_new_string("com.apple.Contacts")); |
| 86 | 85 | ||
| 87 | ret = mobilesync_send(client, array); | 86 | ret = mobilesync_send(client, array); |
| 88 | plist_free(array); | 87 | plist_free(array); |
| @@ -95,26 +94,26 @@ static mobilesync_error_t mobilesync_get_all_contacts(mobilesync_client_t client | |||
| 95 | } | 94 | } |
| 96 | 95 | ||
| 97 | array = plist_new_array(); | 96 | array = plist_new_array(); |
| 98 | plist_add_sub_string_el(array, "DLMessagePing"); | 97 | plist_array_append_item(array, plist_new_string("DLMessagePing")); |
| 99 | plist_add_sub_string_el(array, "Preparing to get changes for device"); | 98 | plist_array_append_item(array, plist_new_string("Preparing to get changes for device")); |
| 100 | 99 | ||
| 101 | ret = mobilesync_send(client, array); | 100 | ret = mobilesync_send(client, array); |
| 102 | plist_free(array); | 101 | plist_free(array); |
| 103 | array = NULL; | 102 | array = NULL; |
| 104 | 103 | ||
| 105 | array = plist_new_array(); | 104 | array = plist_new_array(); |
| 106 | plist_add_sub_string_el(array, "SDMessageProcessChanges"); | 105 | plist_array_append_item(array, plist_new_string("SDMessageProcessChanges")); |
| 107 | plist_add_sub_string_el(array, "com.apple.Contacts"); | 106 | plist_array_append_item(array, plist_new_string("com.apple.Contacts")); |
| 108 | plist_add_sub_node(array, plist_new_dict()); | 107 | plist_array_append_item(array, plist_new_dict()); |
| 109 | plist_add_sub_bool_el(array, 0); | 108 | plist_array_append_item(array, plist_new_bool(0)); |
| 109 | |||
| 110 | plist_t dict = plist_new_dict(); | 110 | plist_t dict = plist_new_dict(); |
| 111 | plist_add_sub_node(array, dict); | 111 | plist_array_append_item(array, dict); |
| 112 | plist_add_sub_key_el(dict, "SyncDeviceLinkEntityNamesKey"); | ||
| 113 | plist_t array2 = plist_new_array(); | 112 | plist_t array2 = plist_new_array(); |
| 114 | plist_add_sub_string_el(array2, "com.apple.contacts.Contact"); | 113 | plist_dict_insert_item(dict, "SyncDeviceLinkEntityNamesKey", array2); |
| 115 | plist_add_sub_string_el(array2, "com.apple.contacts.Group"); | 114 | plist_array_append_item(array2, plist_new_string("com.apple.contacts.Contact")); |
| 116 | plist_add_sub_key_el(dict, "SyncDeviceLinkAllRecordsOfPulledEntityTypeSentKey"); | 115 | plist_array_append_item(array2, plist_new_string("com.apple.contacts.Group")); |
| 117 | plist_add_sub_bool_el(dict, 0); | 116 | plist_dict_insert_item(dict, "SyncDeviceLinkAllRecordsOfPulledEntityTypeSentKey", plist_new_bool(0)); |
| 118 | 117 | ||
| 119 | ret = mobilesync_send(client, array); | 118 | ret = mobilesync_send(client, array); |
| 120 | plist_free(array); | 119 | plist_free(array); |
diff --git a/src/MobileSync.c b/src/MobileSync.c index 8a7d724..9e52f32 100644 --- a/src/MobileSync.c +++ b/src/MobileSync.c | |||
| @@ -76,8 +76,8 @@ mobilesync_error_t mobilesync_client_new(iphone_device_t device, int dst_port, | |||
| 76 | && ver_2_val == MSYNC_VERSION_INT2) { | 76 | && ver_2_val == MSYNC_VERSION_INT2) { |
| 77 | 77 | ||
| 78 | array = plist_new_array(); | 78 | array = plist_new_array(); |
| 79 | plist_add_sub_string_el(array, "DLMessageVersionExchange"); | 79 | plist_array_append_item(array, plist_new_string("DLMessageVersionExchange")); |
| 80 | plist_add_sub_string_el(array, "DLVersionsOk"); | 80 | plist_array_append_item(array, plist_new_string("DLVersionsOk")); |
| 81 | 81 | ||
| 82 | ret = mobilesync_send(client_loc, array); | 82 | ret = mobilesync_send(client_loc, array); |
| 83 | 83 | ||
| @@ -112,8 +112,8 @@ static void mobilesync_disconnect(mobilesync_client_t client) | |||
| 112 | return; | 112 | return; |
| 113 | 113 | ||
| 114 | plist_t array = plist_new_array(); | 114 | plist_t array = plist_new_array(); |
| 115 | plist_add_sub_string_el(array, "DLMessageDisconnect"); | 115 | plist_array_append_item(array, plist_new_string("DLMessageDisconnect")); |
| 116 | plist_add_sub_string_el(array, "All done, thanks for the memories"); | 116 | plist_array_append_item(array, plist_new_string("All done, thanks for the memories")); |
| 117 | 117 | ||
| 118 | mobilesync_send(client, array); | 118 | mobilesync_send(client, array); |
| 119 | plist_free(array); | 119 | plist_free(array); |
diff --git a/src/NotificationProxy.c b/src/NotificationProxy.c index da636ab..ee2ad95 100644 --- a/src/NotificationProxy.c +++ b/src/NotificationProxy.c | |||
| @@ -177,17 +177,14 @@ np_error_t np_post_notification(np_client_t client, const char *notification) | |||
| 177 | np_lock(client); | 177 | np_lock(client); |
| 178 | 178 | ||
| 179 | plist_t dict = plist_new_dict(); | 179 | plist_t dict = plist_new_dict(); |
| 180 | plist_add_sub_key_el(dict, "Command"); | 180 | plist_dict_insert_item(dict,"Command", plist_new_string("PostNotification")); |
| 181 | plist_add_sub_string_el(dict, "PostNotification"); | 181 | plist_dict_insert_item(dict,"Name", plist_new_string(notification)); |
| 182 | plist_add_sub_key_el(dict, "Name"); | ||
| 183 | plist_add_sub_string_el(dict, notification); | ||
| 184 | 182 | ||
| 185 | np_error_t res = np_plist_send(client, dict); | 183 | np_error_t res = np_plist_send(client, dict); |
| 186 | plist_free(dict); | 184 | plist_free(dict); |
| 187 | 185 | ||
| 188 | dict = plist_new_dict(); | 186 | dict = plist_new_dict(); |
| 189 | plist_add_sub_key_el(dict, "Command"); | 187 | plist_dict_insert_item(dict,"Command", plist_new_string("Shutdown")); |
| 190 | plist_add_sub_string_el(dict, "Shutdown"); | ||
| 191 | 188 | ||
| 192 | res = np_plist_send(client, dict); | 189 | res = np_plist_send(client, dict); |
| 193 | plist_free(dict); | 190 | plist_free(dict); |
| @@ -213,10 +210,8 @@ np_error_t np_observe_notification( np_client_t client, const char *notification | |||
| 213 | np_lock(client); | 210 | np_lock(client); |
| 214 | 211 | ||
| 215 | plist_t dict = plist_new_dict(); | 212 | plist_t dict = plist_new_dict(); |
| 216 | plist_add_sub_key_el(dict, "Command"); | 213 | plist_dict_insert_item(dict,"Command", plist_new_string("ObserveNotification")); |
| 217 | plist_add_sub_string_el(dict, "ObserveNotification"); | 214 | plist_dict_insert_item(dict,"Name", plist_new_string(notification)); |
| 218 | plist_add_sub_key_el(dict, "Name"); | ||
| 219 | plist_add_sub_string_el(dict, notification); | ||
| 220 | 215 | ||
| 221 | np_error_t res = np_plist_send(client, dict); | 216 | np_error_t res = np_plist_send(client, dict); |
| 222 | if (res != NP_E_SUCCESS) { | 217 | if (res != NP_E_SUCCESS) { |
diff --git a/src/lockdown.c b/src/lockdown.c index a05b5db..6f9c922 100644 --- a/src/lockdown.c +++ b/src/lockdown.c | |||
| @@ -137,10 +137,8 @@ lockdownd_error_t lockdownd_stop_session(lockdownd_client_t client, const char * | |||
| 137 | lockdownd_error_t ret = LOCKDOWN_E_UNKNOWN_ERROR; | 137 | lockdownd_error_t ret = LOCKDOWN_E_UNKNOWN_ERROR; |
| 138 | 138 | ||
| 139 | plist_t dict = plist_new_dict(); | 139 | plist_t dict = plist_new_dict(); |
| 140 | plist_add_sub_key_el(dict, "Request"); | 140 | plist_dict_insert_item(dict,"Request", plist_new_string("StopSession")); |
| 141 | plist_add_sub_string_el(dict, "StopSession"); | 141 | plist_dict_insert_item(dict,"SessionID", plist_new_string(session_id)); |
| 142 | plist_add_sub_key_el(dict, "SessionID"); | ||
| 143 | plist_add_sub_string_el(dict, session_id); | ||
| 144 | 142 | ||
| 145 | log_dbg_msg(DBGMASK_LOCKDOWND, "%s: called\n", __func__); | 143 | log_dbg_msg(DBGMASK_LOCKDOWND, "%s: called\n", __func__); |
| 146 | 144 | ||
| @@ -365,8 +363,7 @@ lockdownd_error_t lockdownd_query_type(lockdownd_client_t client) | |||
| 365 | lockdownd_error_t ret = LOCKDOWN_E_UNKNOWN_ERROR; | 363 | lockdownd_error_t ret = LOCKDOWN_E_UNKNOWN_ERROR; |
| 366 | 364 | ||
| 367 | plist_t dict = plist_new_dict(); | 365 | plist_t dict = plist_new_dict(); |
| 368 | plist_add_sub_key_el(dict, "Request"); | 366 | plist_dict_insert_item(dict,"Request", plist_new_string("QueryType")); |
| 369 | plist_add_sub_string_el(dict, "QueryType"); | ||
| 370 | 367 | ||
| 371 | log_dbg_msg(DBGMASK_LOCKDOWND, "%s: called\n", __func__); | 368 | log_dbg_msg(DBGMASK_LOCKDOWND, "%s: called\n", __func__); |
| 372 | ret = lockdownd_send(client, dict); | 369 | ret = lockdownd_send(client, dict); |
| @@ -410,15 +407,12 @@ lockdownd_error_t lockdownd_get_value(lockdownd_client_t client, const char *dom | |||
| 410 | /* setup request plist */ | 407 | /* setup request plist */ |
| 411 | dict = plist_new_dict(); | 408 | dict = plist_new_dict(); |
| 412 | if (domain) { | 409 | if (domain) { |
| 413 | plist_add_sub_key_el(dict, "Domain"); | 410 | plist_dict_insert_item(dict,"Domain", plist_new_string(domain)); |
| 414 | plist_add_sub_string_el(dict, domain); | ||
| 415 | } | 411 | } |
| 416 | if (key) { | 412 | if (key) { |
| 417 | plist_add_sub_key_el(dict, "Key"); | 413 | plist_dict_insert_item(dict,"Key", plist_new_string(key)); |
| 418 | plist_add_sub_string_el(dict, key); | ||
| 419 | } | 414 | } |
| 420 | plist_add_sub_key_el(dict, "Request"); | 415 | plist_dict_insert_item(dict,"Request", plist_new_string("GetValue")); |
| 421 | plist_add_sub_string_el(dict, "GetValue"); | ||
| 422 | 416 | ||
| 423 | /* send to device */ | 417 | /* send to device */ |
| 424 | ret = lockdownd_send(client, dict); | 418 | ret = lockdownd_send(client, dict); |
| @@ -483,18 +477,13 @@ lockdownd_error_t lockdownd_set_value(lockdownd_client_t client, const char *dom | |||
| 483 | /* setup request plist */ | 477 | /* setup request plist */ |
| 484 | dict = plist_new_dict(); | 478 | dict = plist_new_dict(); |
| 485 | if (domain) { | 479 | if (domain) { |
| 486 | plist_add_sub_key_el(dict, "Domain"); | 480 | plist_dict_insert_item(dict,"Domain", plist_new_string(domain)); |
| 487 | plist_add_sub_string_el(dict, domain); | ||
| 488 | } | 481 | } |
| 489 | if (key) { | 482 | if (key) { |
| 490 | plist_add_sub_key_el(dict, "Key"); | 483 | plist_dict_insert_item(dict,"Key", plist_new_string(key)); |
| 491 | plist_add_sub_string_el(dict, key); | ||
| 492 | } | 484 | } |
| 493 | plist_add_sub_key_el(dict, "Request"); | 485 | plist_dict_insert_item(dict,"Request", plist_new_string("SetValue")); |
| 494 | plist_add_sub_string_el(dict, "SetValue"); | 486 | plist_dict_insert_item(dict,"Value", value); |
| 495 | |||
| 496 | plist_add_sub_key_el(dict, "Value"); | ||
| 497 | plist_add_sub_node(dict, value); | ||
| 498 | 487 | ||
| 499 | /* send to device */ | 488 | /* send to device */ |
| 500 | ret = lockdownd_send(client, dict); | 489 | ret = lockdownd_send(client, dict); |
| @@ -545,15 +534,12 @@ lockdownd_error_t lockdownd_remove_value(lockdownd_client_t client, const char * | |||
| 545 | /* setup request plist */ | 534 | /* setup request plist */ |
| 546 | dict = plist_new_dict(); | 535 | dict = plist_new_dict(); |
| 547 | if (domain) { | 536 | if (domain) { |
| 548 | plist_add_sub_key_el(dict, "Domain"); | 537 | plist_dict_insert_item(dict,"Domain", plist_new_string(domain)); |
| 549 | plist_add_sub_string_el(dict, domain); | ||
| 550 | } | 538 | } |
| 551 | if (key) { | 539 | if (key) { |
| 552 | plist_add_sub_key_el(dict, "Key"); | 540 | plist_dict_insert_item(dict,"Key", plist_new_string(key)); |
| 553 | plist_add_sub_string_el(dict, key); | ||
| 554 | } | 541 | } |
| 555 | plist_add_sub_key_el(dict, "Request"); | 542 | plist_dict_insert_item(dict,"Request", plist_new_string("RemoveValue")); |
| 556 | plist_add_sub_string_el(dict, "RemoveValue"); | ||
| 557 | 543 | ||
| 558 | /* send to device */ | 544 | /* send to device */ |
| 559 | ret = lockdownd_send(client, dict); | 545 | ret = lockdownd_send(client, dict); |
| @@ -752,19 +738,15 @@ lockdownd_error_t lockdownd_pair(lockdownd_client_t client, char *uuid, char *ho | |||
| 752 | 738 | ||
| 753 | /* Setup Pair request plist */ | 739 | /* Setup Pair request plist */ |
| 754 | dict = plist_new_dict(); | 740 | dict = plist_new_dict(); |
| 755 | plist_add_sub_key_el(dict, "PairRecord"); | ||
| 756 | dict_record = plist_new_dict(); | 741 | dict_record = plist_new_dict(); |
| 757 | plist_add_sub_node(dict, dict_record); | 742 | plist_dict_insert_item(dict,"PairRecord", dict_record); |
| 758 | plist_add_sub_key_el(dict_record, "DeviceCertificate"); | 743 | |
| 759 | plist_add_sub_data_el(dict_record, (const char*)device_cert.data, device_cert.size); | 744 | plist_dict_insert_item(dict_record, "DeviceCertificate", plist_new_data((const char*)device_cert.data, device_cert.size)); |
| 760 | plist_add_sub_key_el(dict_record, "HostCertificate"); | 745 | plist_dict_insert_item(dict_record, "HostCertificate", plist_new_data((const char*)host_cert.data, host_cert.size)); |
| 761 | plist_add_sub_data_el(dict_record, (const char*)host_cert.data, host_cert.size); | 746 | plist_dict_insert_item(dict_record, "HostID", plist_new_string(host_id)); |
| 762 | plist_add_sub_key_el(dict_record, "HostID"); | 747 | plist_dict_insert_item(dict_record, "RootCertificate", plist_new_data((const char*)root_cert.data, root_cert.size)); |
| 763 | plist_add_sub_string_el(dict_record, host_id); | 748 | |
| 764 | plist_add_sub_key_el(dict_record, "RootCertificate"); | 749 | plist_dict_insert_item(dict, "Request", plist_new_string("Pair")); |
| 765 | plist_add_sub_data_el(dict_record, (const char*)root_cert.data, root_cert.size); | ||
| 766 | plist_add_sub_key_el(dict, "Request"); | ||
| 767 | plist_add_sub_string_el(dict, "Pair"); | ||
| 768 | 750 | ||
| 769 | /* send to iPhone */ | 751 | /* send to iPhone */ |
| 770 | ret = lockdownd_send(client, dict); | 752 | ret = lockdownd_send(client, dict); |
| @@ -813,8 +795,7 @@ lockdownd_error_t lockdownd_enter_recovery(lockdownd_client_t client) | |||
| 813 | lockdownd_error_t ret = LOCKDOWN_E_UNKNOWN_ERROR; | 795 | lockdownd_error_t ret = LOCKDOWN_E_UNKNOWN_ERROR; |
| 814 | 796 | ||
| 815 | plist_t dict = plist_new_dict(); | 797 | plist_t dict = plist_new_dict(); |
| 816 | plist_add_sub_key_el(dict, "Request"); | 798 | plist_dict_insert_item(dict,"Request", plist_new_string("EnterRecovery")); |
| 817 | plist_add_sub_string_el(dict, "EnterRecovery"); | ||
| 818 | 799 | ||
| 819 | log_dbg_msg(DBGMASK_LOCKDOWND, "%s: telling device to enter recovery mode\n", __func__); | 800 | log_dbg_msg(DBGMASK_LOCKDOWND, "%s: telling device to enter recovery mode\n", __func__); |
| 820 | 801 | ||
| @@ -849,8 +830,7 @@ lockdownd_error_t lockdownd_goodbye(lockdownd_client_t client) | |||
| 849 | lockdownd_error_t ret = LOCKDOWN_E_UNKNOWN_ERROR; | 830 | lockdownd_error_t ret = LOCKDOWN_E_UNKNOWN_ERROR; |
| 850 | 831 | ||
| 851 | plist_t dict = plist_new_dict(); | 832 | plist_t dict = plist_new_dict(); |
| 852 | plist_add_sub_key_el(dict, "Request"); | 833 | plist_dict_insert_item(dict,"Request", plist_new_string("Goodbye")); |
| 853 | plist_add_sub_string_el(dict, "Goodbye"); | ||
| 854 | 834 | ||
| 855 | log_dbg_msg(DBGMASK_LOCKDOWND, "%s: called\n", __func__); | 835 | log_dbg_msg(DBGMASK_LOCKDOWND, "%s: called\n", __func__); |
| 856 | 836 | ||
| @@ -1028,10 +1008,8 @@ lockdownd_error_t lockdownd_start_ssl_session(lockdownd_client_t client, const c | |||
| 1028 | 1008 | ||
| 1029 | /* Setup DevicePublicKey request plist */ | 1009 | /* Setup DevicePublicKey request plist */ |
| 1030 | dict = plist_new_dict(); | 1010 | dict = plist_new_dict(); |
| 1031 | plist_add_sub_key_el(dict, "HostID"); | 1011 | plist_dict_insert_item(dict,"HostID", plist_new_string(HostID)); |
| 1032 | plist_add_sub_string_el(dict, HostID); | 1012 | plist_dict_insert_item(dict,"Request", plist_new_string("StartSession")); |
| 1033 | plist_add_sub_key_el(dict, "Request"); | ||
| 1034 | plist_add_sub_string_el(dict, "StartSession"); | ||
| 1035 | 1013 | ||
| 1036 | ret = lockdownd_send(client, dict); | 1014 | ret = lockdownd_send(client, dict); |
| 1037 | plist_free(dict); | 1015 | plist_free(dict); |
| @@ -1062,10 +1040,8 @@ lockdownd_error_t lockdownd_start_ssl_session(lockdownd_client_t client, const c | |||
| 1062 | /* start session again */ | 1040 | /* start session again */ |
| 1063 | plist_free(dict); | 1041 | plist_free(dict); |
| 1064 | dict = plist_new_dict(); | 1042 | dict = plist_new_dict(); |
| 1065 | plist_add_sub_key_el(dict, "HostID"); | 1043 | plist_dict_insert_item(dict,"HostID", plist_new_string(HostID)); |
| 1066 | plist_add_sub_string_el(dict, HostID); | 1044 | plist_dict_insert_item(dict,"Request", plist_new_string("StartSession")); |
| 1067 | plist_add_sub_key_el(dict, "Request"); | ||
| 1068 | plist_add_sub_string_el(dict, "StartSession"); | ||
| 1069 | 1045 | ||
| 1070 | ret = lockdownd_send(client, dict); | 1046 | ret = lockdownd_send(client, dict); |
| 1071 | plist_free(dict); | 1047 | plist_free(dict); |
| @@ -1263,10 +1239,8 @@ lockdownd_error_t lockdownd_start_service(lockdownd_client_t client, const char | |||
| 1263 | host_id = NULL; | 1239 | host_id = NULL; |
| 1264 | 1240 | ||
| 1265 | dict = plist_new_dict(); | 1241 | dict = plist_new_dict(); |
| 1266 | plist_add_sub_key_el(dict, "Request"); | 1242 | plist_dict_insert_item(dict,"Request", plist_new_string("StartService")); |
| 1267 | plist_add_sub_string_el(dict, "StartService"); | 1243 | plist_dict_insert_item(dict,"Service", plist_new_string(service)); |
| 1268 | plist_add_sub_key_el(dict, "Service"); | ||
| 1269 | plist_add_sub_string_el(dict, service); | ||
| 1270 | 1244 | ||
| 1271 | /* send to iPhone */ | 1245 | /* send to iPhone */ |
| 1272 | ret = lockdownd_send(client, dict); | 1246 | ret = lockdownd_send(client, dict); |
