diff options
-rw-r--r-- | src/libirecovery.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/libirecovery.c b/src/libirecovery.c index a2e54b1..23e1501 100644 --- a/src/libirecovery.c +++ b/src/libirecovery.c @@ -447,7 +447,7 @@ irecv_error_t mobiledevice_connect(irecv_client_t* client, unsigned long long ec continue; } - char* serial_str[256]; + char serial_str[256]; serial_str[0] = '\0'; if ((sscanf(result, "\\\\?\\usb#vid_%*04x&pid_%*04x#%s#", serial_str) != 1) || (serial_str[0] == '\0')) { mobiledevice_closepipes(_client); @@ -469,6 +469,8 @@ irecv_error_t mobiledevice_connect(irecv_client_t* client, unsigned long long ec } irecv_load_device_info_from_iboot_string(_client, serial_str); + irecv_copy_nonce_with_tag(_client, "NONC", &_client->device_info.ap_nonce, &_client->device_info.ap_nonce_size); + irecv_copy_nonce_with_tag(_client, "SNON", &_client->device_info.sep_nonce, &_client->device_info.sep_nonce_size); if (ecid != 0) { if (_client->device_info.ecid != ecid) { @@ -544,6 +546,10 @@ irecv_error_t mobiledevice_connect(irecv_client_t* client, unsigned long long ec } } + irecv_load_device_info_from_iboot_string(_client, serial_str); + irecv_copy_nonce_with_tag(_client, "NONC", &_client->device_info.ap_nonce, &_client->device_info.ap_nonce_size); + irecv_copy_nonce_with_tag(_client, "SNON", &_client->device_info.sep_nonce, &_client->device_info.sep_nonce_size); + if (ecid != 0) { if (_client->device_info.ecid != ecid) { mobiledevice_closepipes(_client); |