summaryrefslogtreecommitdiffstats
path: root/src/lockdown.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lockdown.c')
-rw-r--r--src/lockdown.c18
1 files changed, 11 insertions, 7 deletions
diff --git a/src/lockdown.c b/src/lockdown.c
index 05ecc49..3969868 100644
--- a/src/lockdown.c
+++ b/src/lockdown.c
@@ -299,25 +299,29 @@ int lockdownd_init(iPhone *phone, lockdownd_client **control)
299 } 299 }
300 300
301 host_id = get_host_id(); 301 host_id = get_host_id();
302 if (!host_id) host_id = lockdownd_generate_hostid();
303 302
304 if (!is_device_known(public_key)){ 303 if (!is_device_known(public_key))
305 ret = lockdownd_pair_device(*control, public_key, host_id); 304 ret = lockdownd_pair_device(*control, public_key, host_id);
306 }else{ 305 else
307 ret = 1; 306 ret = 1;
307
308 if (public_key) {
309 free(public_key);
310 public_key = NULL;
308 } 311 }
309 free(public_key);
310 public_key = NULL;
311 312
312 if (ret && host_id && lockdownd_start_SSL_session(*control, host_id)) { 313 if (ret && host_id && lockdownd_start_SSL_session(*control, host_id)) {
313 ret = 1; 314 ret = 1;
314 free(host_id);
315 host_id = NULL;
316 } else { 315 } else {
317 ret = 0; 316 ret = 0;
318 fprintf(stderr, "lockdownd_init: SSL Session opening failed, has libiphone-initconf been run?\n"); 317 fprintf(stderr, "lockdownd_init: SSL Session opening failed, has libiphone-initconf been run?\n");
319 } 318 }
320 319
320 if (host_id) {
321 free(host_id);
322 host_id = NULL;
323 }
324
321 return ret; 325 return ret;
322} 326}
323 327