summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* conf: Fix false plist read/write errors caused by using new libplist APIHEADmasterNikias Bassen2023-05-051-3/+3
| | | | Thanks to @intelfx for spotting this.
* Update to use latest libplist codeNikias Bassen2023-04-211-4/+5
|
* Set default value for ENV_DEV_MODEClément Decoodt2023-03-011-1/+2
| | | | Fixes regression introduced in 84801d8 that removed the default value.
* Fix use-after-free on get_mode_cbClément Decoodt2023-03-011-1/+1
|
* Guess current mode based on available configurations and interfaces.Eliyahu Stern2022-12-241-15/+73
| | | | Switch mode only if guess is different than desired mode.
* correct logEliyahu Stern2022-12-231-1/+1
|
* Simplify finding valid configuration, interface and endpoints and refactor ↵Eliyahu Stern2022-12-231-99/+87
| | | | | | to a separate function. This function can later be used to determine active mode.
* Best effort for old devices (potentially not supporting mode switch) to ↵Eliyahu Stern2022-12-231-7/+28
| | | | ignore unexpected responses and complete initializations.
* - Add device to collection in usb_device_addEliyahu Stern2022-12-231-52/+67
| | | | | | - Find and use it when completing initialization - Mark device as not alive instead of directly closing it - Debug and plug memory leaks
* Factor out device_complete_initialization and call it from get_mode_cb.Eliyahu Stern2022-12-221-127/+141
| | | | Handle some memory issues.
* styleEliyahu Stern2022-12-221-15/+17
|
* Support switching to different "modes" using vendor specific control messages.Eliyahu Stern2022-12-222-8/+113
| | | | Use USBMUXD_DEFAULT_DEVICE_MODE env. var. to let the user control desired mode.
* preflight: Assume old iOS version if retrieval of ProductVersion failsNikias Bassen2022-10-041-11/+12
| | | | | | Some older devices (e.g. iOS 2.x) wouldn't allow querying the iOS version if the device is not paired. In this case we just assume an old version instead of erroring out, and this way the device will be made available.
* Fix preflight for older devicesJosef Micka2022-09-211-11/+11
| | | | | | | | | On older devices with iOS 5 and even before there is no "ProductName", only "ProductType" or "DeviceClass" (which is still present). usbmuxd fails to connect these devices, because it can't receive product name. "DeviceClass", like "ProductVersion", can be retrieved even in locked state, so this commit changes it to use that instead.
* Add support for PID 0x1905Clément Decoodt2022-06-201-1/+1
| | | | This is the PID used by the mac studio when in recovery mode.
* usb: Add more Apple Silicon retstore PIDsHector Martin2021-09-252-2/+4
| | | | | | 1904 is the M1 iMac; presumably this is now a range Signed-off-by: Hector Martin <marcan@marcan.st>
* Remove common code in favor of new libimobiledevice-glueNikias Bassen2021-09-018-354/+70
|
* preflight: Check platform before attempting to preflightNikias Bassen2021-08-301-7/+25
|
* preflight: Reflect device_class member addition to struct idevice_privateNikias Bassen2021-08-021-0/+2
|
* usb: Enable Apple Silicon restore modeBenjamin BOURGEAIS2021-05-082-1/+3
|
* Don't call libusb_set_option if libusb_init failsFrederik Carlier2021-01-201-5/+5
|
* Add option to allow changing the location of or disabling the pidfileNikias Bassen2021-01-111-37/+59
|
* Fix parsing -S as short option for --socketNikias Bassen2021-01-111-3/+3
|
* Allow specifying a custom listen address:port or unix socketNikias Bassen2021-01-101-20/+167
|
* Fix typo in usbmuxd-proto.hNikias Bassen2021-01-091-1/+1
| | | | Thanks to @timgates32 for spotting this.
* usb: Don't warn about old configuration descriptor if device is unconfiguredNikias Bassen2021-01-091-1/+3
|
* usb: Allow configuration 5 after verifying it is actualy usableNikias Bassen2021-01-091-1/+25
| | | | | | | | VMware on macOS somehow exposes a bad configuration 5 for iDevices. Trying to use it breaks things and can end up in a kernel panic on the device. The code change introduced with this commit tries its best to make sure the USB configuration 5 is not 'bad' before switching to it, and otherwise falling back to configuration 4.
* device: Prevent calling client_close() from connection_teardown() when ↵Nikias Bassen2020-08-051-0/+1
| | | | | | called from device_abort_connect() ... which itself is only called from within client_close()
* device: Add payload type 5 support to device_control_input()Nikias Bassen2020-08-021-0/+7
|
* device: Add device id to device_control_input() log messagesNikias Bassen2020-08-021-6/+6
|
* device: Remove unnecessary copy in device_control_input() loggingNikias Bassen2020-08-021-12/+4
|
* client: Prevent UaF in client_close() by checking if client is validNikias Bassen2020-08-021-1/+14
|
* client: First go at renaming key internal functions for easier refactoringMartin Szulecki2020-07-301-28/+28
|
* main: Increase listen socket backlog sizeNikias Bassen2020-07-301-1/+1
| | | | | | | | In environments with a larger number of devices, especially when these are connected at the time usbmuxd starts, there will be a lot of simultaneous connection attemps. With a backlog size of 5 these connection attempts will easily get a ECONNREFUSED thus failing to perform the required preflight operations. Increasing this to 256 will help to mitigate this.
* Remove trailing whitespace errors from all filesMartin Szulecki2020-06-082-3/+3
|
* Unfold automake variables into multiple lines for maintainabilityMartin Szulecki2020-06-081-11/+24
|
* Extend libusb version log output on startup to include micro version, tooMartin Szulecki2020-06-081-1/+1
|
* Add more logging to catch more possible cases in device_control_input()Martin Szulecki2020-06-081-0/+3
|
* Improve and unify log message output for client, device and configMartin Szulecki2020-06-083-19/+19
|
* Log client process name alongside pid if possible on accept and disconnectMartin Szulecki2020-06-081-5/+44
| | | | This helps identifing a problematic client software much quicker.
* Use libusb_set_option() to set debug level depending on libusb versionMartin Szulecki2020-06-081-1/+5
|
* Use more descriptive libusb_error_name() instead of numeric codesMartin Szulecki2020-06-071-23/+23
| | | | | | This makes it easier to recognize the related libusb error code in the logs rather than numeric error codes which needed to be looked up in the documentation
* Map debug to log levels and enable debug output for libusbMartin Szulecki2020-06-071-1/+3
|
* Use helper to show current libusb version instead of hardcoding itMartin Szulecki2020-06-071-1/+2
|
* Unify usage output with other tools and add project URLsMartin Szulecki2020-06-041-1/+6
|
* Do not perform preflight on T2 devicesRick Mark2020-05-073-6/+22
|
* Show debug message upon successful connectionRick Mark2020-05-071-3/+4
|
* fix: Typo in src/Makefile.amMax Kaulmann2020-04-281-1/+1
| | | | CFLAGS for libimobiledevice are correctly used now.
* device: Fix potential deadlock (#130)Nikias Bassen2020-01-171-3/+2
|
* Support T2 chip in restore modeRick Mark2019-12-162-2/+4
|