summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2019-09-28Add display_name to device database and irecv_device structGravatar Nikias Bassen2-103/+108
2019-09-26Fix crash when calling CFRunLoopStop without the runloop being setGravatar Nikias Bassen1-1/+3
2019-09-20Add support for iPhone 11, iPhone 11 Pro, and iPhone 11 Pro Max modelsGravatar Nikias Bassen1-0/+3
2019-09-09Fix invalid Requires.private entry in libirecovery.pc due to missing ↵Gravatar Nikias Bassen1-0/+2
autoconf variable
2019-09-05Converted README to markdown and updated linksGravatar Nikias Bassen1-43/+29
2019-09-05Add missing files for previous commitGravatar Nikias Bassen4-0/+360
I shouldn't do late night commits without checking that I added all files
2019-09-05Add missing ax_pthread.m4Gravatar Nikias Bassen1-0/+485
2019-09-04Add device add/remove event subscription APIGravatar Nikias Bassen5-96/+809
2019-06-10Add support for iPod touch (7th gen), iPad mini (5th gen) & iPad Air (3rd gen)Gravatar s0uthwest1-0/+5
2019-01-28Use new libusb API to set debug level if libusb version is new enoughGravatar Nikias Bassen1-0/+4
2019-01-28libirecovery: Add missing break statements to switch casesGravatar Nikias Bassen1-0/+6
2019-01-28macOS: Make sure to select correct version of IOUSBDeviceInterface and ↵Gravatar Nikias Bassen1-2/+2
IOUSBInterfaceInterface
2019-01-27irecovery: Allow passing ECID in hex or decimalGravatar Nikias Bassen1-2/+2
2019-01-27Allow to run autogen.sh outside $top_srcdirGravatar Christophe Fergeau1-11/+18
This makes it more convenient to do builds out of the source dir.
2019-01-27DFU hash is actually CRC32 checksum, so name it accordinglyGravatar Nikias Bassen1-10/+10
2019-01-16Add support for the iPad Pro 3rd generation modelsGravatar Nikias Bassen1-0/+8
2018-09-17Add configuration option to allow compiling without USB driverGravatar Nikias Bassen4-12/+172
Using --with-dummy, libirecovery can be compiled in a way that it will not require any USB driver at all. This is only useful if you just want to query libirecovery's device database by product type or hardware model, namely using: irecv_devices_get_device_by_product_type(); irecv_devices_get_device_by_hardware_model(); All other function are either no-op or return IRECV_E_UNSUPPORTED if the library is compiled this way.
2018-09-17Updated .gitignore to include udev rules fileGravatar Nikias Bassen1-1/+2
2018-09-17Add support for iPhone XS, iPhone XS Max, iPhone XS Max (China), and iPhone XRGravatar Nikias Bassen1-0/+4
2018-09-11win32: REALLY Fix parsing of usb device path so it works again with older ↵Gravatar Nikias Bassen1-3/+13
drivers
2018-09-03win32: Fix parsing of usb device path since it changed with newer driversGravatar Nikias Bassen1-4/+6
2018-03-28Add support for iPad7,5 (iPad 6 WiFi) and iPad7,6 (iPad 6 Cellular) modelsGravatar Nikias Bassen1-0/+2
2018-03-19Add missing iPad 5 models iPad6,11 (j71tap) + iPad6,12 (j72tap)Gravatar Nikias Bassen1-0/+2
2018-01-03Remove some unnecessary null pointer checksGravatar Nikias Bassen2-32/+15
2017-12-31Fix iPod2,1 resolving from mismatched CPID (0x8920 --> 0x8720)Gravatar St3v3n-D1-1/+1
2017-11-04Add support for iPhone10,3 + iPhone10,6 (iPhone X)Gravatar Nikias Bassen1-0/+2
2017-10-26irecv_send_buffer: Fix DFU file upload failure due to oversized last packetGravatar Nikias Bassen1-1/+12
In DFU mode the last packet contains the checksum for the transferred data (and 12 additional bytes, total 16 bytes). If the last packet is larger than 2032 bytes we would send a packet that is larger than the packet size of 2048 bytes which would make the file upload fail. This is especially the case for the iOS 11.0.x iBSS for the iPhone 8. With this commit the size is checked and if it would be larger than the packet size, we split the data portion and the checksum into two separate packets. It might even be safe to always split the last packet into data and checksum, but until this is proven to work with all (especially older devices) we just split when we detect the oversized packet for now.
2017-09-26Add support for iPhone10,1 + iPhone10,4 (iPhone 8) and iPhone10,2 + ↵Gravatar Nikias Bassen1-0/+4
iPhone10,5 (iPhone 8 plus)
2017-09-19Add support for AppleTV6,2 (AppleTV 4K)Gravatar Nikias Bassen1-0/+1
2017-07-04irecv_send_buffer: Fix status check loop condition by incrementing retry countGravatar Nikias Bassen1-1/+1
This state is hardly reached but nevertheless it doesn't make sense to check a retry count that never increases :)
2017-07-03Updated copyright notices in source file headersGravatar Nikias Bassen3-0/+3
2017-06-15Add udev rules file to allow non-root users access DFU/Recovery mode devicesGravatar Nikias Bassen4-2/+82
2017-06-09Add support for iPad Pro 10.5 inch: iPad7,3 (WiFi) + iPad7,4 (WiFi+Cellular)Gravatar Nikias Bassen1-0/+2
2017-06-09Add support for iPad Pro 12.9 inch 2nd generation: iPad7,1 (WiFi) + iPad7,2 ↵Gravatar Nikias Bassen1-0/+2
(WiFi+Cellular)
2017-03-27Add support for new iPad6,11 (WiFi) + iPad6,12 (WiFi+Cellular)Gravatar Nikias Bassen1-0/+2
2017-01-06irecovery: Add new -q command line switch to print device infoGravatar Nikias Bassen1-38/+52
2017-01-06irecovery: Make /deviceinfo print ApNonce (NONC) and SEPNonce (SNON) if ↵Gravatar Nikias Bassen1-0/+22
available
2017-01-04Use fstat() instead of fseeko() and ftello()Gravatar Nikias Bassen1-5/+8
2016-09-22Add support for iPhone9,1 + iPhone9,3 (iPhone 7) and iPhone9,2 + iPhone9,4 ↵Gravatar Nikias Bassen1-0/+4
(iPhone 7 plus)
2016-06-26IOKit: Make sure to re-enumerate devices after device resetGravatar Nikias Bassen1-0/+5
2016-06-26Add DFU error handlingGravatar Nikias Bassen1-2/+17
2016-04-12Add support for iPad6,3 and iPad6,4 (iPad Pro 9.7 inch)Gravatar Nikias Bassen1-0/+2
2016-04-12Add support for iPhone8,4 (iPhone SE)Gravatar Nikias Bassen1-0/+2
2016-02-17Fix possible invalid free in irecv_open_with_ecid()Gravatar Nikias Bassen1-1/+1
irecv_open_with_ecid calls libusb_open() in a loop. When the operation fails libusb_close() is called with the returned handle - which ideally should be NULL upon calling libusb_open(). However since we're operating in a loop this is only the case for the first time libusb_open() is called and subsequent invocations only overwrite the handle upon success. Whenever the libusb_open() fails and it is not the first invocation, the libusb_close() that is called afterwards may cause an invalid free. To prevent this we set the handle to NULL before calling libusb_open().
2016-01-05autofoo: Fix pkg-config name for libusb in libirecovery.pcGravatar Nikias Bassen1-1/+1
2015-12-31autofoo: Only set Requires.private for libusb if linking against libusbGravatar Nikias Bassen2-2/+3
2015-12-31Fix iokit_get_string_descriptor_ascii by returning the size of the stringGravatar Nikias Bassen1-1/+3
2015-11-13Add support for iPad6,7 and iPad6,8 (iPad Pro)Gravatar Nikias Bassen1-0/+2
2015-11-13Add support for AppleTV5,3 (AppleTV 4th gen)Gravatar Nikias Bassen1-0/+1
2015-10-09Added IOKit option for OS X that removes libusb dependency (enabled by default)Gravatar Aaron Burghardt2-4/+557