summaryrefslogtreecommitdiffstats
path: root/tools/ideviceprovision.c
diff options
context:
space:
mode:
Diffstat (limited to 'tools/ideviceprovision.c')
-rw-r--r--tools/ideviceprovision.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/tools/ideviceprovision.c b/tools/ideviceprovision.c
index 1c6866d..13fd239 100644
--- a/tools/ideviceprovision.c
+++ b/tools/ideviceprovision.c
@@ -193,6 +193,7 @@ static plist_t profile_get_embedded_plist(plist_t profile)
int main(int argc, char *argv[])
{
lockdownd_client_t client = NULL;
+ lockdownd_service_descriptor_t service = NULL;
idevice_t device = NULL;
idevice_error_t ret = IDEVICE_E_UNKNOWN_ERROR;
int i;
@@ -278,8 +279,7 @@ int main(int argc, char *argv[])
return -1;
}
- uint16_t port = 0;
- if (LOCKDOWN_E_SUCCESS != lockdownd_start_service(client, "com.apple.misagent", &port)) {
+ if (LOCKDOWN_E_SUCCESS != lockdownd_start_service(client, "com.apple.misagent", &service)) {
fprintf(stderr, "Could not start service \"com.apple.misagent\"\n");
lockdownd_client_free(client);
idevice_free(device);
@@ -289,13 +289,18 @@ int main(int argc, char *argv[])
client = NULL;
misagent_client_t mis = NULL;
- if (misagent_client_new(device, port, &mis) != MISAGENT_E_SUCCESS) {
+ if (misagent_client_new(device, service, &mis) != MISAGENT_E_SUCCESS) {
fprintf(stderr, "Could not connect to \"com.apple.misagent\" on device\n");
+ if (service)
+ lockdownd_service_descriptor_free(service);
lockdownd_client_free(client);
idevice_free(device);
return -1;
}
+ if (service)
+ lockdownd_service_descriptor_free(service);
+
switch (op) {
case OP_INSTALL:
{