summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2022-05-05Initial commit of working packet logger (idevicebtlogger)Gravatar Geoffrey Kruse3-1/+273
2022-05-02idevice: Fix sign issue in idevice_get_device_list_extendedGravatar Семён Марьясин1-1/+1
In sync with idevice_from_mux_device, line 384. Without this fix, data size 128 (the common value) is treated as -128, resulting in incorrect allocation. Related to #1248 but doesn't fully fix it.
2022-05-02lockdownd: Fix memory leaks in error conditionsGravatar Sami Kortelainen1-0/+3
2022-04-30[clang-tidy] Do not use else after returnGravatar Rosen Penev9-94/+93
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2022-04-22[clang-tidy] Fix bugprone string compareGravatar Rosen Penev6-9/+9
Found with bugprone-suspicious-string-compare Signed-off-by: Rosen Penev <rosenp@gmail.com>
2022-04-22[clang-tidy] add parentheses to macrosGravatar Rosen Penev3-6/+6
Found with bugprone-macro-parentheses Signed-off-by: Rosen Penev <rosenp@gmail.com>
2022-04-22[clang-tidy] use const pointer parameterGravatar Rosen Penev1-1/+1
Found with readability-non-const-parameter Signed-off-by: Rosen Penev <rosenp@gmail.com>
2022-04-22Fix a few inconsistent declarationsGravatar Nikias Bassen1-7/+4
2022-04-22idevice: Fix mistreatment of 0-byte sent casesGravatar Li Beinan1-1/+4
Currently if 0 byte gets sent, it is treated as not-enough-data. This is wrong, because with TCP, 0-byte-sent usually means the receiver end is closed. We must set a new case for this and must not normalize the sent-bytes to 0 in general.
2022-04-12Add property_list_client_get_service_client() and service_get_connection() ↵Gravatar Nikias Bassen2-0/+14
functions This allows for custom service implementations to easier switch to non-plist communication after the service has been started.
2022-03-29idevice: Fix debug message showing function name twiceGravatar Nikias Bassen1-1/+1
2022-03-29Remove buggy and redundant debug outputGravatar Ben Wagner1-2/+0
2022-03-29Handle connection failures in debugserver_client_receive_response; also ↵Gravatar Ben Wagner1-92/+85
simplify the code
2022-03-29FormatGravatar Ben Wagner1-6/+7
2022-03-29Fix compileGravatar Ben Wagner1-1/+1
2022-03-29Add timeout and interrupt handling to debugserver. Fix ↵Gravatar Ben Wagner2-3/+24
debugserver_client_handle_response
2022-03-29debugserver: Check return value of asprintf to eliminate compiler warningsGravatar Baodong Chen1-6/+14
2022-03-29reverse_proxy: Add asprintf.h include to make sure vasprintf is available on ↵Gravatar Nikias Bassen1-0/+1
Windows
2022-03-29reverse_proxy: Make sure ECONNRESET and ETIMEDOUT are definedGravatar Nikias Bassen1-1/+7
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