summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2022-03-29idevice: win32: Add winsock2.h include for struct sockaddr_storageGravatar Nikias Bassen1-4/+5
2022-03-29idevice: Make sure ECONNREFUSED is definedGravatar Nikias Bassen1-0/+4
2022-03-25afc: Some minor code polishingGravatar Nikias Bassen1-24/+25
2022-03-01diagnostics_relay: Check for errors after sending requests to service connectionGravatar 怯花颜1-0/+9
2022-02-09Add support for wireless pairingGravatar Nikias Bassen5-3/+1219
2022-02-09companion_proxy: Fix invalid argument passed to plist_dict_mergeGravatar Nikias Bassen1-1/+1
2022-02-04service: Silence compiler warning when configured without --enable-debugGravatar Nikias Bassen1-1/+1
2022-02-04tools: Print meaningful error messages when service startup failsGravatar Nikias Bassen1-2/+2
2021-11-24Add Reverse Proxy implementationGravatar Nikias Bassen3-0/+850
2021-10-12idevice: Add IDEVICE_E_CONNREFUSED and have idevice_connect() return ↵Gravatar Nikias Bassen1-2/+17
meaningful error codes This allows clients to properly detect that a connection to the requested port failed because it is not open on the device, instead of just returning an "unknown error"
2021-09-13Check availability of constructor attribute and use it on Windows in favor ↵Gravatar Nikias Bassen1-10/+18
of DllMain
2021-09-06pkgconfig: Fix libimobiledevice-glue dependency in .pc fileGravatar Nikias Bassen1-1/+1
2021-09-01Updated pkg-config file with libimobiledevice-glue dependencyGravatar Nikias Bassen1-1/+1
2021-09-01Remove common code in favor of new libimobiledevice-glueGravatar Nikias Bassen13-13/+16
2021-07-30idevice: Reset receive length variable in internal_ssl_read retry loop and ↵Gravatar Nikias Bassen1-1/+2
fix wrong variable in debug message
2021-07-29lockdown: Replace udid and mux_id members from client struct with idevice_t ↵Gravatar Nikias Bassen2-26/+19
reference
2021-07-29lockdown: Get DeviceClass to make sure OS version dependent code is executed ↵Gravatar Nikias Bassen3-1/+34
correctly The code in lockdownd_client_new_with_handshake would call the function lockdownd_validate_pair based on the OS version being less than 7.0 without taking into account that Watch OS has a different versioning scheme compared to the other device classes. For this and any future version/device specific checks, the code now queries the DeviceClass and stores it in the idevice_private struct.
2021-07-29Handle error cases in relevant code when retrieving pair record failsGravatar Nikias Bassen2-11/+43
2021-07-27afc: Suppress compiler warning when compiling without --enable-debugGravatar Nikias Bassen1-2/+1
2021-07-27Add support for MbedTLSGravatar Nikias Bassen3-37/+188
2021-07-26idevice: Remove unnecessary memcpy from internal_ssl_read()Gravatar Nikias Bassen1-29/+15
2021-07-26idevice: Route OpenSSL reads/writes through internal_connection_*Gravatar Kabir Oberai2-42/+66
Let's not allow OpenSSL to directly access our file descriptors
2021-07-25idevice: Make sure to handle timeout condition for network connections tooGravatar Nikias Bassen1-9/+11
2021-06-22installation_proxy: Ignore non-status messages instead of terminating loopGravatar Simon Søndergaard1-6/+3
Some iOS versions will interleave a CFBundleIdentifier message into the Status messages, and the code would treat the CFBundleIdentifier message as an error. Terminating the loop, never seeing the last message - and even worse - never calling back to ideviceinstaller that would be stuck waiting for a callback with a message where Status == Complete.
2021-06-02mobilesync: Set DeviceLink version to 400 to support iOS 14b4+Gravatar Nikias Bassen1-1/+1
Thanks to @darshilgada24 for pointing this out.
2021-02-01debugserver: Return success when a receive timed out but actualy bytes have ↵Gravatar Nikias Bassen1-1/+1
been read
2021-02-01idevice: Allow partial reads in idevice_connection_receive_timeout() and ↵Gravatar Nikias Bassen1-6/+9
handle timeouts more adequate idevice_connection_receive_timeout(), when in SSL mode, was assuming it should always try to read the exact amount of data specified in `len` parameter. While this works with most protocols that have length fields or fixed sized headers/packets, some others (e.g. debugserver) break because it will request a read but doesn't know the size that is expected to be returned beforehand. This commit will handle timeouts better and return the number of bytes that were read in such cases (instead of returning 0 bytes read + error). Note that in the event of a timeout, IDEVICE_E_TIMEOUT will be returned even though actual data might have been read. The number of bytes read will be returned in recv_bytes.
2020-11-19idevice: Handle -EAGAIN in case usbmuxd_send() returns itGravatar Nikias Bassen1-1/+4
2020-09-10debugserver: Fix service startup for iOS 14b4+Gravatar Nikias Bassen2-3/+13
2020-08-10screenshotr: Set DeviceLink version to 400 to support iOS 14b4+Gravatar Nikias Bassen1-1/+1
2020-08-07mobilebackup2: Set DeviceLink version to 400 to support iOS 14b4+Gravatar Nikias Bassen1-1/+1
2020-08-06idevice: Fix build with LibreSSLGravatar Nikias Bassen1-1/+1
2020-06-14Add API version to library and pkgconfig file for proper linkingGravatar Nikias Bassen2-7/+7
2020-06-13Allow OpenSSL >= 1.1.0 to use older/disallowed TLS versionsGravatar Author: Frederik Carlier1-1/+5
2020-06-10lockdown: Remove unused includesGravatar Nikias Bassen1-9/+0
2020-06-08configure: Update libplist and libusbmuxd version dependenciesGravatar Nikias Bassen1-2/+2
2020-06-08Remove whitespace errors from all filesGravatar Martin Szulecki3-3/+7
2020-06-08Unfold automake variables into multiple lines for maintainabilityGravatar Martin Szulecki1-29/+48
2020-06-08idevice: Add fix for potential SSL_write timeout error caseGravatar Nikias Bassen1-3/+3
2020-06-08Rename "compproxy" names to "companion_proxy" in all related codeGravatar Martin Szulecki2-92/+92
This now matches how other services are named as we try to use the lockdownd provided name or otherwise a more readable one even if it is longer.
2020-06-08Fix filename typo in comments of companion_proxy service implementationGravatar Martin Szulecki2-2/+2
2020-06-06idevice: Revert not copying scope id for IPv6 addresses from usbmuxd againGravatar Martin Szulecki1-2/+2
This should still catch the more common case when using usbmuxd on the same host. Not copying the scope id in that case actually removes vital routing information.
2020-06-06idevice: Slightly improve connectivity logic and fix IPv6 for network devicesGravatar Martin Szulecki1-6/+8
This change removes copying the scope id for IPv6 connections which caused problems if the usbmux connection data is used on different hosts or context.
2020-06-06idevice: Add some newlines for better code readabilityGravatar Martin Szulecki1-0/+7
2020-06-04idevice: Fix compiler warning about switch case fallthroughGravatar Martin Szulecki1-1/+1
2020-05-21idevice: [OpenSSL] Handle non-blocking SSL_writeGravatar Nikias Bassen1-0/+13
2020-05-19afc: Reduce packet segmentation and unnecessary malloc/freeGravatar Nikias Bassen2-97/+188
2020-05-18idevice_connection_send: Make sure send works with non-blocking socketsGravatar Nikias Bassen1-1/+17
2020-05-18Add support for com.apple.companion_proxyGravatar Nikias Bassen3-0/+416
2020-05-18Use direct socket connection for network devicesGravatar Nikias Bassen1-7/+76
Instead of relaying data via usbmuxd this change will have it connect directly to the device via network after retrieving its address from usbmuxd