summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2021-01-11Fix parsing -S as short option for --socketGravatar Nikias Bassen1-3/+3
2021-01-10Allow specifying a custom listen address:port or unix socketGravatar Nikias Bassen1-20/+167
2021-01-09Fix typo in usbmuxd-proto.hGravatar Nikias Bassen1-1/+1
Thanks to @timgates32 for spotting this.
2021-01-09usb: Don't warn about old configuration descriptor if device is unconfiguredGravatar Nikias Bassen1-1/+3
2021-01-09usb: Allow configuration 5 after verifying it is actualy usableGravatar Nikias Bassen1-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.
2020-08-05device: Prevent calling client_close() from connection_teardown() when ↵Gravatar Nikias Bassen1-0/+1
called from device_abort_connect() ... which itself is only called from within client_close()
2020-08-02device: Add payload type 5 support to device_control_input()Gravatar Nikias Bassen1-0/+7
2020-08-02device: Add device id to device_control_input() log messagesGravatar Nikias Bassen1-6/+6
2020-08-02device: Remove unnecessary copy in device_control_input() loggingGravatar Nikias Bassen1-12/+4
2020-08-02client: Prevent UaF in client_close() by checking if client is validGravatar Nikias Bassen1-1/+14
2020-07-30client: First go at renaming key internal functions for easier refactoringGravatar Martin Szulecki1-28/+28
2020-07-30main: Increase listen socket backlog sizeGravatar Nikias Bassen1-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.
2020-06-08Remove trailing whitespace errors from all filesGravatar Martin Szulecki2-3/+3
2020-06-08Unfold automake variables into multiple lines for maintainabilityGravatar Martin Szulecki1-11/+24
2020-06-08Extend libusb version log output on startup to include micro version, tooGravatar Martin Szulecki1-1/+1
2020-06-08Add more logging to catch more possible cases in device_control_input()Gravatar Martin Szulecki1-0/+3
2020-06-08Improve and unify log message output for client, device and configGravatar Martin Szulecki3-19/+19
2020-06-08Log client process name alongside pid if possible on accept and disconnectGravatar Martin Szulecki1-5/+44
This helps identifing a problematic client software much quicker.
2020-06-08Use libusb_set_option() to set debug level depending on libusb versionGravatar Martin Szulecki1-1/+5
2020-06-07Use more descriptive libusb_error_name() instead of numeric codesGravatar Martin Szulecki1-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
2020-06-07Map debug to log levels and enable debug output for libusbGravatar Martin Szulecki1-1/+3
2020-06-07Use helper to show current libusb version instead of hardcoding itGravatar Martin Szulecki1-1/+2
2020-06-04Unify usage output with other tools and add project URLsGravatar Martin Szulecki1-1/+6
2020-05-07Do not perform preflight on T2 devicesGravatar Rick Mark3-6/+22
2020-05-07Show debug message upon successful connectionGravatar Rick Mark1-3/+4
2020-04-28fix: Typo in src/Makefile.amGravatar Max Kaulmann1-1/+1
CFLAGS for libimobiledevice are correctly used now.
2020-01-17device: Fix potential deadlock (#130)Gravatar Nikias Bassen1-3/+2
2019-12-16Support T2 chip in restore modeGravatar Rick Mark2-2/+4
2019-11-11Fix compatibility with latest changes in libimobiledeviceGravatar Nikias Bassen1-3/+6
2019-11-02Define _BSD_SOURCE again for older platforms.Gravatar Nikias Bassen2-0/+2
While defining _BSD_SOURCE prints deprecation warnings, defining both _DEFAULT_SOURCE and _BSD_SOURCE will not.
2019-10-07preflight: Prevent possible UaF if usb device is removed while preflight is ↵Gravatar Nikias Bassen1-0/+5
in progress The device serial number is only used by reference, however since the preflight helper runs in a separate thread the usb device might be invalidated before the preflight operation is complete, leading to a use-after-free when passing on the device info, followed by accessing the device serial number. By copying the serial number this can be avoided.
2019-10-07device: Make sure to operate on the copy of the device list in device_get_list()Gravatar Nikias Bassen1-1/+1
2019-10-07Replace obsolete _BSD_SOURCE define with _DEFAULT_SOURCEGravatar Nikias Bassen2-2/+2
2019-10-04preflight: Let insecure notification proxy terminate when pairing is doneGravatar Nikias Bassen1-2/+6
2019-09-13device: Plug memory leak in error condition when TH_SYN sending failsGravatar Nikias Bassen1-4/+4
2019-07-17Avoid using configuration 5Gravatar mrmacete1-4/+8
- this fixes setting configuration for iOS 11 devices inside virtual machines which caused timeout and subsequent reboot of the device when unplugged from USB
2019-03-05client: Plug memory leaks in update_client_info()Gravatar Nikias Bassen1-13/+4
plist_get_string_val() was used to get the string values of the respective nodes, however those strings were never freed. Improved by simply copying the nodes instead.
2019-02-12allow preflight error to pass so simple mode will still workGravatar Adam Laurie1-1/+3
2019-02-07Allow logging to a dedicated logfileGravatar Nikias Bassen1-16/+35
2018-11-29utils: Fix free on invalid pointerGravatar Nikias Bassen1-1/+1
Credit to tjps see: #100 https://github.com/libimobiledevice/usbmuxd/pull/100
2018-11-29client: Fix Use-after-Free in handling of SavePairRecord message when ↵Gravatar Eric Chen1-1/+1
reading device id
2018-10-12usb: Fix adding hyphen to new style UDIDs by not counting '\0' towards ↵Gravatar Nikias Bassen1-0/+2
string length
2018-10-05usb: Add hyphen to new style UDIDs introduced with iPhone XS/XRGravatar Nikias Bassen1-1/+8
2018-10-02preflight: Fix compatibility with latest internal changes to libimobiledeviceGravatar Nikias Bassen1-1/+5
2018-09-15client: Send 'Paired' message when a device's pairing record has been stored ↵Gravatar Nikias Bassen3-1/+60
successfully This requires the SavePairRecord message sent from the client to contain a usbmux device id so the device can be matched accordingly. For the record: This is the original behavior.
2018-07-23client: Implement ListListeners commandGravatar Nikias Bassen1-4/+117
2018-05-15device: Flush buffer to client when remote side unexpectedly terminates ↵Gravatar Nikias Bassen2-2/+16
connection
2018-05-15client: Set socket options for client connections to improve performanceGravatar Nikias Bassen1-0/+12
2018-05-09Remove whitespace errorsGravatar Nikias Bassen1-6/+6
2018-04-09log: Fix timestamps being printed incorrectly when running in foregroundGravatar Nikias Bassen1-5/+11
Due to usage of wrong function (get_tick_count) the timestamps have been printed incorrectly based on clock_gettime. This commit fixes it by using gettimeofday correctly and also makes sure that this is thread-safe by using localtime_r if available. Furthermore, this commit will also have the effect that when logging through syslog we don't determine the current time anymore because the timestamp is not even used.