summaryrefslogtreecommitdiffstats
path: root/src/libirecovery.c
AgeCommit message (Collapse)AuthorFilesLines
2021-06-13Update iPad model names with their marketing namesGravatar Nikias Bassen1-53/+53
2021-06-13Add iPad Pro 11-inch (3rd gen) and iPad Pro 12.9-inch (5th gen) devicesGravatar Nikias Bassen1-0/+8
2021-06-13Add iMac 24-inch M1 modelsGravatar Nikias Bassen1-0/+2
2021-05-26Add new irecv_send_command_breq to allow choosing the b_request usb param ↵Gravatar Benjamin BOURGEAIS1-8/+12
when sending commands
2021-01-25Add support for Apple Silicon/M1 Macs (device lookup) and remaining ↵Gravatar Daniel1-0/+11
T2/iBridge devices
2021-01-25Add support for HomePod and HomePod miniGravatar Daniel1-0/+4
2021-01-06Fix iBridge2,14 hardware model stringGravatar Nikias Bassen1-1/+1
2021-01-02Windows: Fix device enumerationGravatar DanyL1-21/+31
2020-10-23Add support for iPhone 12 model seriesGravatar Nikias Bassen1-0/+4
2020-10-23Add all current Apple Watch models (only for device model lookup)Gravatar Nikias Bassen1-0/+24
2020-10-23Add support for iPad 8 and iPad Air 4 modelsGravatar Nikias Bassen1-0/+4
2020-07-06Fix compiler warning about format string specifiers by using uint64_t ↵Gravatar Nikias Bassen1-6/+6
instead of unsinged long long
2020-07-06linux/libusb: Break out of loop when device is found in ↵Gravatar Nikias Bassen1-3/+2
irecv_open_with_ecid() and make sure device list is always free'd properly Thanks to tihmstar for pointing this out.
2020-06-15Adjust spacing/indentation of terminating device database entryGravatar Martin Szulecki1-1/+1
2020-06-15Add support for Watch1,1 (Apple Watch 38mm 1st gen) and Watch1,2 (42mm variant)Gravatar Martin Szulecki1-0/+3
2020-06-15Add support for iPad4,3 (iPad Air China)Gravatar Martin Szulecki1-0/+1
2020-06-15Fix wrong device information for iPad 7 variantsGravatar Martin Szulecki1-2/+2
2020-06-15Update copyright noticeGravatar Martin Szulecki1-1/+1
2020-05-15Add support for iPhone SE (2020)Gravatar Nikias Bassen1-0/+1
2020-04-21Use uint64_t cast for PRIx64 format specifiersGravatar Nikias Bassen1-3/+3
2020-03-24Add support for iPad Pro 4 modelsGravatar Nikias Bassen1-0/+4
2020-02-05Move fprintf() to debug() and allow setting debug level via environment variableGravatar Nikias Bassen1-15/+20
This prevents unexpected output to stderr.
2020-01-14Use PRI* and SCN* (inttypes.h) format string macros instead of self-defined onesGravatar Nikias Bassen1-9/+6
... also print all values in irecovery as hex with 0x prefix to make it clear they are hex
2019-12-16Update T2 names and add 16" MacBook Pro T2Gravatar Rick Mark1-9/+10
2019-12-16Adding support for Apple T2 processorsGravatar Rick Mark1-5/+15
2019-11-18macOS: Fix "Couldn't create a device interface (80000004)" errorGravatar Nikias Bassen1-1/+1
2019-10-09Fix problem with irecovery shell disconnecting bluetooth or other usb ↵Gravatar Nikias Bassen1-3/+8
devices on macOS
2019-10-03Parse SRTG (build tag string) from usb serial number if availableGravatar Nikias Bassen1-4/+20
2019-10-03Expose entire usb serial number string in struct irecv_device_infoGravatar Nikias Bassen1-0/+7
2019-09-28Add support for iPad7,11 and iPad7,12Gravatar Nikias Bassen1-0/+2
2019-09-28Add display_name to device database and irecv_device structGravatar Nikias Bassen1-103/+107
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-04Add device add/remove event subscription APIGravatar Nikias Bassen1-29/+735
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-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 Bassen1-0/+143
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-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 Bassen1-30/+14
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.