summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGravatar Jay Freeman (saurik)2015-10-21 00:39:14 -0700
committerGravatar Nikias Bassen2015-10-21 13:23:22 +0200
commit6070126868069f2ee01ea9414f4cfbe5de285267 (patch)
treef4a2fcc432a4d307308e9de2630ba455f82694b7 /src
parent40f7dd06496d5b1c8963f760a10a217df926cd85 (diff)
downloadlibimobiledevice-6070126868069f2ee01ea9414f4cfbe5de285267.tar.gz
libimobiledevice-6070126868069f2ee01ea9414f4cfbe5de285267.tar.bz2
Fix installation_proxy when using GnuTLS instead of OpenSSL
Diffstat (limited to 'src')
-rw-r--r--src/idevice.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/idevice.c b/src/idevice.c
index 7c33cdd..b776e84 100644
--- a/src/idevice.c
+++ b/src/idevice.c
@@ -393,10 +393,13 @@ LIBIMOBILEDEVICE_API idevice_error_t idevice_connection_receive_timeout(idevice_
}
if (connection->ssl_data) {
-#ifdef HAVE_OPENSSL
uint32_t received = 0;
while (received < len) {
+#ifdef HAVE_OPENSSL
int r = SSL_read(connection->ssl_data->session, (void*)((char*)(data+received)), (int)len-received);
+#else
+ ssize_t r = gnutls_record_recv(connection->ssl_data->session, (void*)(data+received), (size_t)len-received);
+#endif
if (r > 0) {
received += r;
} else {
@@ -404,9 +407,6 @@ LIBIMOBILEDEVICE_API idevice_error_t idevice_connection_receive_timeout(idevice_
}
}
debug_info("SSL_read %d, received %d", len, received);
-#else
- ssize_t received = gnutls_record_recv(connection->ssl_data->session, (void*)data, (size_t)len);
-#endif
if (received > 0) {
*recv_bytes = received;
return IDEVICE_E_SUCCESS;