Add untested 2G/3G/touch 1 support

supports pre-jailbroken/hacktivated ipsw creation/restore for 3.1.3 (also 4.1 and 4.2.1 for 3g), and ssh ramdisk
This commit is contained in:
LukeZGD 2023-09-01 21:26:45 +08:00
parent ba1de61a4b
commit c14d712851
61 changed files with 143 additions and 64 deletions

View File

@ -29,7 +29,7 @@
- Device activation using ideviceactivation - Device activation using ideviceactivation
- Dumping and stitching baseband to IPSW (requires `--disable-bbupdate`) - Dumping and stitching baseband to IPSW (requires `--disable-bbupdate`)
- Dumping and stitching activation records to IPSW (requires `--activation-records`) - Dumping and stitching activation records to IPSW (requires `--activation-records`)
- Hacktivation for iPhone 3GS (activate without valid SIM card) - Hacktivation for iPhone 2G, 3G, 3GS (activate without valid SIM card)
## Supported devices ## Supported devices
- [Identify your device here](https://ipsw.me/device-finder) - [Identify your device here](https://ipsw.me/device-finder)
@ -71,10 +71,9 @@
- Restoring with SHSH blobs and using SSH Ramdisks are supported on the following devices: - Restoring with SHSH blobs and using SSH Ramdisks are supported on the following devices:
- Supports most 32-bit devices (iOS 3 to 10, version range depends on device) - Supports most 32-bit devices (iOS 3 to 10, version range depends on device)
- iPhone 3GS, 4, 4S, 5, 5C - iPhone 2G, 3G, 3GS, 4, 4S, 5, 5C
- iPad 1, 2, 3, 4, mini 1 - iPad 1, 2, 3, 4, mini 1
- iPod touch 2, 3, 4, 5 - iPod touch 1, 2, 3, 4, 5
- S5L8900 devices are not (yet) supported
- Restoring with SHSH blobs is also supported on most A7/A8 devices: - Restoring with SHSH blobs is also supported on most A7/A8 devices:
- See [SEP/BB Compatibility Chart](https://docs.google.com/spreadsheets/d/1Mb1UNm6g3yvdQD67M413GYSaJ4uoNhLgpkc7YKi3LBs/edit#gid=1191207636) for iOS versions - See [SEP/BB Compatibility Chart](https://docs.google.com/spreadsheets/d/1Mb1UNm6g3yvdQD67M413GYSaJ4uoNhLgpkc7YKi3LBs/edit#gid=1191207636) for iOS versions
- iPhone 5S, 6, 6 Plus - iPhone 5S, 6, 6 Plus
@ -87,12 +86,13 @@
- Using powdersn0w requires iOS 7.1.x blobs for your device (7.0.x can also be used for iPhone 5) - Using powdersn0w requires iOS 7.1.x blobs for your device (7.0.x can also be used for iPhone 5)
- Restoring with 24Kpwn/alloc8 is supported on the following devices: - Restoring with 24Kpwn/alloc8 is supported on the following devices:
- iPhone 3GS - targets iOS 3.1.3 to 5.1.1 - iPhone 3GS - targets iOS 3.1.3 to 5.1.1
- iPod touch 2 - targets iOS 3.1.3 to 4.0 - iPod touch 2 - targets iOS 3.1.3 to 4.1
- Restoring to latest iOS version with jailbreak for the following devices: - Restoring to latest iOS version with jailbreak for the following devices:
- iPhone 4 - iOS 7.1.2 with Pangu - iPhone 4 - iOS 7.1.2
- iPhone 3GS, iPod touch 4 - iOS 6.1.6 with p0sixspwn - iPhone 3GS, iPod touch 4 - iOS 6.1.6
- iPad 1, iPod touch 3 - iOS 5.1.1 with pris0nbarake - iPad 1, iPod touch 3 - iOS 5.1.1
- iPod touch 2 - iOS 4.2.1 with greenpois0n - iPhone 3G, iPod touch 2 - iOS 4.2.1
- iPhone 2G, iPod touch 1 - iOS 3.1.3
## Supported OS versions/distros ## Supported OS versions/distros

View File

@ -0,0 +1 @@
{"identifier":"iPhone1,1","buildid":"7E18","codename":"SUNorthstarTwo","restoreramdiskexists":true,"updateramdiskexists":true,"keys":[{"image":"RootFS","filename":"018-6482-014.dmg","date":"2023-09-01T05:54:02.009569","key":"3c0f821663316c08a0a059c2979ecf47d13b363de3a44010d0de0b0a5cf878cfe39d00c3"},{"image":"UpdateRamdisk","filename":"018-6488-015.dmg","date":"2023-09-01T05:54:02.009710","iv":"28f586f972f37ada68ccb1db9c0809d7","key":"05ad3977f313f7efaf9263bb33915af0","kbag":"28f586f972f37ada68ccb1db9c0809d705ad3977f313f7efaf9263bb33915af0"},{"image":"RestoreRamdisk","filename":"018-6494-014.dmg","date":"2023-09-01T05:54:02.009806","iv":"25e713dd5663badebe046d0ffa164fee","key":"7029389c2dadaaa1d1e51bf579493824","kbag":"25e713dd5663badebe046d0ffa164fee7029389c2dadaaa1d1e51bf579493824"},{"image":"AppleLogo","filename":"applelogo.s5l8900x.img3","date":"2023-09-01T05:54:02.009889","iv":"29900b1381b112bc6ca157b8d5e533fb","key":"f991b79dc86f1ed7d997785b4e93c0b9","kbag":"29900b1381b112bc6ca157b8d5e533fbf991b79dc86f1ed7d997785b4e93c0b9"},{"image":"BatteryCharging0","filename":"batterycharging0.s5l8900x.img3","date":"2023-09-01T05:54:02.009965","iv":"4a7131c4e4ab53c54c9cd67000022c0c","key":"5c5e265adf97ff887f83c1964cd26fbc","kbag":"4a7131c4e4ab53c54c9cd67000022c0c5c5e265adf97ff887f83c1964cd26fbc"},{"image":"BatteryCharging1","filename":"batterycharging1.s5l8900x.img3","date":"2023-09-01T05:54:02.010043","iv":"d95821f8d527c863bc83384b2a49d70f","key":"3e94246a2893d04223b960ec163a0d1f","kbag":"d95821f8d527c863bc83384b2a49d70f3e94246a2893d04223b960ec163a0d1f"},{"image":"BatteryFull","filename":"batteryfull.s5l8900x.img3","date":"2023-09-01T05:54:02.010119","iv":"b510390a90fe02ba01fc72e25bc4bed0","key":"92669d64fb9ea886317d8c38b3cf88cd","kbag":"b510390a90fe02ba01fc72e25bc4bed092669d64fb9ea886317d8c38b3cf88cd"},{"image":"BatteryLow0","filename":"batterylow0.s5l8900x.img3","date":"2023-09-01T05:54:02.010195","iv":"18c4cc5b9881a7f46fb6816b6bf98621","key":"7a2f4af7bfad3190a119533432e4ea79","kbag":"18c4cc5b9881a7f46fb6816b6bf986217a2f4af7bfad3190a119533432e4ea79"},{"image":"BatteryLow1","filename":"batterylow1.s5l8900x.img3","date":"2023-09-01T05:54:02.010279","iv":"43046878e50b200c94208e71d54d7d46","key":"3b2abd9b9b4cc7ed6e9981ba208f129c","kbag":"43046878e50b200c94208e71d54d7d463b2abd9b9b4cc7ed6e9981ba208f129c"},{"image":"DeviceTree","filename":"DeviceTree.m68ap.img3","date":"2023-09-01T05:54:02.010355","iv":"6b36a5f109ef5e6dc77f03ba3e8567c7","key":"29d6801ad7829e31c1f8c6b98fa076ef","kbag":"6b36a5f109ef5e6dc77f03ba3e8567c729d6801ad7829e31c1f8c6b98fa076ef"},{"image":"GlyphCharging","filename":"glyphcharging.s5l8900x.img3","date":"2023-09-01T05:54:02.010431","iv":"f063514314d014e962d072d144869448","key":"4efaa97201e0be8eebc633be2bd8e80e","kbag":"f063514314d014e962d072d1448694484efaa97201e0be8eebc633be2bd8e80e"},{"image":"GlyphPlugin","filename":"glyphplugin.s5l8900x.img3","date":"2023-09-01T05:54:02.010506","iv":"e2cbdecb935e44022411251450e09e25","key":"51e76b6183f5de42988cd3f983714c11","kbag":"e2cbdecb935e44022411251450e09e2551e76b6183f5de42988cd3f983714c11"},{"image":"iBoot","filename":"iBoot.m68ap.RELEASE.img3","date":"2023-09-01T05:54:02.010642","iv":"768745fc3d6984e6d6938b819426a3cb","key":"57baddbdf7d64453e26c1dec97027f9e","kbag":"768745fc3d6984e6d6938b819426a3cb57baddbdf7d64453e26c1dec97027f9e"},{"image":"Kernelcache","filename":"kernelcache.release.s5l8900x","date":"2023-09-01T05:54:02.011001","iv":"31e711201cf4dcf47be5be2a5b1b87a1","key":"d0dfac22c03212f8a75fc9c69fe548b6","kbag":"31e711201cf4dcf47be5be2a5b1b87a1d0dfac22c03212f8a75fc9c69fe548b6"},{"image":"NeedService","filename":"needservice.s5l8900x.img3","date":"2023-09-01T05:54:02.011137","iv":"e16e51ec62db28fb3d84a9ee0f8ef502","key":"de308342ba029c5c569f3a96f2723f3b","kbag":"e16e51ec62db28fb3d84a9ee0f8ef502de308342ba029c5c569f3a96f2723f3b"},{"image":"RecoveryMode","filename":"recoverymode.s5l8900x.img3","date":"2023-09-01T05:54:02.011213","iv":"1df103ab51af7ad9f8488d9e3b9edf11","key":"72e3360fae2d22252f497bd08d060d83","kbag":"1df103ab51af7ad9f8488d9e3b9edf1172e3360fae2d22252f497bd08d060d83"}]}

View File

@ -0,0 +1 @@
eab23a7f8d2a17cb71046c50fc5f67ec390a3c2b

View File

@ -0,0 +1 @@
http://appldnld.apple.com.edgesuite.net/content.info.apple.com/iPhone/061-7481.20100202.4orot/iPhone1,1_3.1.3_7E18_Restore.ipsw

View File

@ -0,0 +1 @@
m68

View File

@ -0,0 +1 @@
{"identifier":"iPhone1,2","buildid":"7E18","codename":"SUNorthstarTwo","restoreramdiskexists":true,"updateramdiskexists":true,"keys":[{"image":"RootFS","filename":"018-6482-014.dmg","date":"2023-09-01T06:02:08.847153","key":"bf5eb72cd65e9c37cf9920707cb6b4f7ecc10b38cfec6b167002ac9fd6a3ab6643e45005"},{"image":"UpdateRamdisk","filename":"018-6488-015.dmg","date":"2023-09-01T06:02:08.847366","iv":"28f586f972f37ada68ccb1db9c0809d7","key":"05ad3977f313f7efaf9263bb33915af0","kbag":"28f586f972f37ada68ccb1db9c0809d705ad3977f313f7efaf9263bb33915af0"},{"image":"RestoreRamdisk","filename":"018-6494-014.dmg","date":"2023-09-01T06:02:08.847575","iv":"25e713dd5663badebe046d0ffa164fee","key":"7029389c2dadaaa1d1e51bf579493824","kbag":"25e713dd5663badebe046d0ffa164fee7029389c2dadaaa1d1e51bf579493824"},{"image":"AppleLogo","filename":"applelogo.s5l8900x.img3","date":"2023-09-01T06:02:08.847763","iv":"29900b1381b112bc6ca157b8d5e533fb","key":"f991b79dc86f1ed7d997785b4e93c0b9","kbag":"29900b1381b112bc6ca157b8d5e533fbf991b79dc86f1ed7d997785b4e93c0b9"},{"image":"BatteryCharging0","filename":"batterycharging0.s5l8900x.img3","date":"2023-09-01T06:02:08.847939","iv":"4a7131c4e4ab53c54c9cd67000022c0c","key":"5c5e265adf97ff887f83c1964cd26fbc","kbag":"4a7131c4e4ab53c54c9cd67000022c0c5c5e265adf97ff887f83c1964cd26fbc"},{"image":"BatteryCharging1","filename":"batterycharging1.s5l8900x.img3","date":"2023-09-01T06:02:08.848133","iv":"d95821f8d527c863bc83384b2a49d70f","key":"3e94246a2893d04223b960ec163a0d1f","kbag":"d95821f8d527c863bc83384b2a49d70f3e94246a2893d04223b960ec163a0d1f"},{"image":"BatteryFull","filename":"batteryfull.s5l8900x.img3","date":"2023-09-01T06:02:08.848310","iv":"b510390a90fe02ba01fc72e25bc4bed0","key":"92669d64fb9ea886317d8c38b3cf88cd","kbag":"b510390a90fe02ba01fc72e25bc4bed092669d64fb9ea886317d8c38b3cf88cd"},{"image":"BatteryLow0","filename":"batterylow0.s5l8900x.img3","date":"2023-09-01T06:02:08.848483","iv":"18c4cc5b9881a7f46fb6816b6bf98621","key":"7a2f4af7bfad3190a119533432e4ea79","kbag":"18c4cc5b9881a7f46fb6816b6bf986217a2f4af7bfad3190a119533432e4ea79"},{"image":"BatteryLow1","filename":"batterylow1.s5l8900x.img3","date":"2023-09-01T06:02:08.848675","iv":"43046878e50b200c94208e71d54d7d46","key":"3b2abd9b9b4cc7ed6e9981ba208f129c","kbag":"43046878e50b200c94208e71d54d7d463b2abd9b9b4cc7ed6e9981ba208f129c"},{"image":"DeviceTree","filename":"DeviceTree.n82ap.img3","date":"2023-09-01T06:02:08.848850","iv":"77cbb8d3e874efa1364cab1bbd38a8fc","key":"9532919c4b4ff636f0559ff25be64f35","kbag":"77cbb8d3e874efa1364cab1bbd38a8fc9532919c4b4ff636f0559ff25be64f35"},{"image":"GlyphCharging","filename":"glyphcharging.s5l8900x.img3","date":"2023-09-01T06:02:08.849041","iv":"f063514314d014e962d072d144869448","key":"4efaa97201e0be8eebc633be2bd8e80e","kbag":"f063514314d014e962d072d1448694484efaa97201e0be8eebc633be2bd8e80e"},{"image":"GlyphPlugin","filename":"glyphplugin.s5l8900x.img3","date":"2023-09-01T06:02:08.849269","iv":"e2cbdecb935e44022411251450e09e25","key":"51e76b6183f5de42988cd3f983714c11","kbag":"e2cbdecb935e44022411251450e09e2551e76b6183f5de42988cd3f983714c11"},{"image":"iBoot","filename":"iBoot.n82ap.RELEASE.img3","date":"2023-09-01T06:02:08.849599","iv":"bc3a7ecbad75285a0b9ea96e268ac0c2","key":"fcce502abcfac78aad6e842f64f79864","kbag":"bc3a7ecbad75285a0b9ea96e268ac0c2fcce502abcfac78aad6e842f64f79864"},{"image":"Kernelcache","filename":"kernelcache.release.s5l8900x","date":"2023-09-01T06:02:08.849911","iv":"31e711201cf4dcf47be5be2a5b1b87a1","key":"d0dfac22c03212f8a75fc9c69fe548b6","kbag":"31e711201cf4dcf47be5be2a5b1b87a1d0dfac22c03212f8a75fc9c69fe548b6"},{"image":"NeedService","filename":"needservice.s5l8900x.img3","date":"2023-09-01T06:02:08.850241","iv":"e16e51ec62db28fb3d84a9ee0f8ef502","key":"de308342ba029c5c569f3a96f2723f3b","kbag":"e16e51ec62db28fb3d84a9ee0f8ef502de308342ba029c5c569f3a96f2723f3b"},{"image":"RecoveryMode","filename":"recoverymode.s5l8900x.img3","date":"2023-09-01T06:02:08.850416","iv":"1df103ab51af7ad9f8488d9e3b9edf11","key":"72e3360fae2d22252f497bd08d060d83","kbag":"1df103ab51af7ad9f8488d9e3b9edf1172e3360fae2d22252f497bd08d060d83"}]}

View File

@ -0,0 +1 @@
f5950afca546f93e281ba3cdb08bc0cfed7f0896

View File

@ -0,0 +1 @@
http://appldnld.apple.com.edgesuite.net/content.info.apple.com/iPhone/061-7468.20100202.pbnrt/iPhone1,2_3.1.3_7E18_Restore.ipsw

View File

@ -0,0 +1 @@
{"identifier":"iPhone1,2","buildid":"8B117","codename":"Baker","restoreramdiskexists":true,"updateramdiskexists":true,"keys":[{"image":"RootFS","filename":"018-7060-114.dmg","date":"2023-09-01T06:03:04.472497","key":"4c3c83d3899ea9bef415b1c9c656aaef966b2362494d2c9093a9283d388257562a228c86"},{"image":"UpdateRamdisk","filename":"018-7072-079.dmg","date":"2023-09-01T06:03:04.472709","iv":"4f545fda195abfded796f10627fedd6f","key":"dc4ee98876c3106888fc501576f0c1b7","kbag":"4f545fda195abfded796f10627fedd6fdc4ee98876c3106888fc501576f0c1b7"},{"image":"RestoreRamdisk","filename":"018-7079-079.dmg","date":"2023-09-01T06:03:04.472817","iv":"a0fc6ca4ef7ef305d975e7f881ddcc7f","key":"18eab1ba646ae018b013bc959001fbde","kbag":"a0fc6ca4ef7ef305d975e7f881ddcc7f18eab1ba646ae018b013bc959001fbde"},{"image":"AppleLogo","filename":"applelogo.s5l8900x.img3","date":"2023-09-01T06:03:04.472934","iv":"9cdcfbdf36175c103d4f3d4993bc8423","key":"91f2b4c9a8a69f502a294200472059f3","kbag":"9cdcfbdf36175c103d4f3d4993bc842391f2b4c9a8a69f502a294200472059f3"},{"image":"BatteryCharging0","filename":"batterycharging0.s5l8900x.img3","date":"2023-09-01T06:03:04.473026","iv":"be8c599d54c7db4c73d5f625dabe5b9e","key":"b999597f1c7c5e69787e557c7d4005a0","kbag":"be8c599d54c7db4c73d5f625dabe5b9eb999597f1c7c5e69787e557c7d4005a0"},{"image":"BatteryCharging1","filename":"batterycharging1.s5l8900x.img3","date":"2023-09-01T06:03:04.473199","iv":"717b2fc18a4144734472d610d35e6cad","key":"ad089848459714cc4b8eccc20b39ec49","kbag":"717b2fc18a4144734472d610d35e6cadad089848459714cc4b8eccc20b39ec49"},{"image":"BatteryFull","filename":"batteryfull.s5l8900x.img3","date":"2023-09-01T06:03:04.473293","iv":"274fdb766f0429b42b567233e6efaa98","key":"a326f6b58fcfe493146430bead54a040","kbag":"274fdb766f0429b42b567233e6efaa98a326f6b58fcfe493146430bead54a040"},{"image":"BatteryLow0","filename":"batterylow0.s5l8900x.img3","date":"2023-09-01T06:03:04.473395","iv":"040eafd07ba3f2cfa489ea63057e5431","key":"ef36455a0bdaa272930e258a601d2085","kbag":"040eafd07ba3f2cfa489ea63057e5431ef36455a0bdaa272930e258a601d2085"},{"image":"BatteryLow1","filename":"batterylow1.s5l8900x.img3","date":"2023-09-01T06:03:04.473487","iv":"61bcf143fdf8eef414f1a54117418691","key":"5f24bbec11ae22f04956a16d6cfe851b","kbag":"61bcf143fdf8eef414f1a541174186915f24bbec11ae22f04956a16d6cfe851b"},{"image":"DeviceTree","filename":"DeviceTree.n82ap.img3","date":"2023-09-01T06:03:04.473578","iv":"1500e2b65dc6e9bc958d92f014f090a5","key":"15118cb6f0f542da929cb5858cb6fdb2","kbag":"1500e2b65dc6e9bc958d92f014f090a515118cb6f0f542da929cb5858cb6fdb2"},{"image":"GlyphCharging","filename":"glyphcharging.s5l8900x.img3","date":"2023-09-01T06:03:04.473669","iv":"2002b24db0abaad78411e3cf47007aff","key":"fe54f722d6ddb22cc263ef5e8b1c0235","kbag":"2002b24db0abaad78411e3cf47007afffe54f722d6ddb22cc263ef5e8b1c0235"},{"image":"GlyphPlugin","filename":"glyphplugin.s5l8900x.img3","date":"2023-09-01T06:03:04.473760","iv":"4236670ec4fdab27363451fdb27e633f","key":"d23902e0efe394a1f09b37c6e86dd6a3","kbag":"4236670ec4fdab27363451fdb27e633fd23902e0efe394a1f09b37c6e86dd6a3"},{"image":"iBoot","filename":"iBoot.n82ap.RELEASE.img3","date":"2023-09-01T06:03:04.473939","iv":"4c8dd5528dcf283bec1ecd8d741aa540","key":"9b5a1fc8c62912cc1404a6bd5cc45685","kbag":"4c8dd5528dcf283bec1ecd8d741aa5409b5a1fc8c62912cc1404a6bd5cc45685"},{"image":"Kernelcache","filename":"kernelcache.release.n82","date":"2023-09-01T06:03:04.474104","iv":"7238dcea75bf213eff209825a03add51","key":"0295d4ef87b9db687b44f54c8585d2b6","kbag":"7238dcea75bf213eff209825a03add510295d4ef87b9db687b44f54c8585d2b6"},{"image":"RecoveryMode","filename":"recoverymode.s5l8900x.img3","date":"2023-09-01T06:03:04.474263","iv":"8926b78e0a2b9e4ec9dd34b0f99148fb","key":"536e5c0303edd8f11ca90535c0770963","kbag":"8926b78e0a2b9e4ec9dd34b0f99148fb536e5c0303edd8f11ca90535c0770963"}]}

View File

@ -0,0 +1 @@
d87bab469dd1146ab83ddcc23f03b3164d7e09d4

View File

@ -0,0 +1 @@
http://appldnld.apple.com/iPhone4/061-7932.20100908.3fgt5/iPhone1,2_4.1_8B117_Restore.ipsw

View File

@ -0,0 +1 @@
{"identifier":"iPhone1,2","buildid":"8C148","codename":"Jasper","restoreramdiskexists":true,"updateramdiskexists":true,"keys":[{"image":"RootFS","filename":"038-0015-002.dmg","date":"2023-09-01T06:03:25.118397","key":"82c9280927224637c77a96a26d22f42f2ca08fa9a798a8d06fbc8202fc83ec7f45dda79e"},{"image":"UpdateRamdisk","filename":"038-0022-002.dmg","date":"2023-09-01T06:03:25.118537","iv":"694b0eef314fb613cd51830fa9f5aa3e","key":"160e72355c3053a726b6ea5305619515","kbag":"694b0eef314fb613cd51830fa9f5aa3e160e72355c3053a726b6ea5305619515"},{"image":"RestoreRamdisk","filename":"038-0029-002.dmg","date":"2023-09-01T06:03:25.118635","iv":"673d874f06e87e018adbe8a34425df19","key":"91fd0e11469cafd56cff8ac906e54b93","kbag":"673d874f06e87e018adbe8a34425df1991fd0e11469cafd56cff8ac906e54b93"},{"image":"AppleLogo","filename":"applelogo.s5l8900x.img3","date":"2023-09-01T06:03:25.118742","iv":"7ac3b3cc96fe0466b84b25829e6b44a0","key":"ba9241b3e214dcca8cd20dddf3699acb","kbag":"7ac3b3cc96fe0466b84b25829e6b44a0ba9241b3e214dcca8cd20dddf3699acb"},{"image":"BatteryCharging0","filename":"batterycharging0.s5l8900x.img3","date":"2023-09-01T06:03:25.118832","iv":"d0b66a703ab9f0ed4305b7a024e228c3","key":"3fb475b627041a4746866b6b43b9455b","kbag":"d0b66a703ab9f0ed4305b7a024e228c33fb475b627041a4746866b6b43b9455b"},{"image":"BatteryCharging1","filename":"batterycharging1.s5l8900x.img3","date":"2023-09-01T06:03:25.118921","iv":"ed8d58918d881aa366a1b06efb38f4cc","key":"55dbf95d6ad638ef7e8b6de0d6f5a16d","kbag":"ed8d58918d881aa366a1b06efb38f4cc55dbf95d6ad638ef7e8b6de0d6f5a16d"},{"image":"BatteryFull","filename":"batteryfull.s5l8900x.img3","date":"2023-09-01T06:03:25.119011","iv":"5bfd936749eff5a063fcd1db12f46899","key":"7ae07b9e3a01fdee6be4b5c528613c81","kbag":"5bfd936749eff5a063fcd1db12f468997ae07b9e3a01fdee6be4b5c528613c81"},{"image":"BatteryLow0","filename":"batterylow0.s5l8900x.img3","date":"2023-09-01T06:03:25.119099","iv":"241ad6cc0932702d99851a9edb4150ad","key":"217cdcc14d0a458ce33ace8b81e94336","kbag":"241ad6cc0932702d99851a9edb4150ad217cdcc14d0a458ce33ace8b81e94336"},{"image":"BatteryLow1","filename":"batterylow1.s5l8900x.img3","date":"2023-09-01T06:03:25.119198","iv":"0e925344196cf625ceba814c76f9b6ee","key":"dc62f8f1db98cbe7e80d7f5cd3f4988f","kbag":"0e925344196cf625ceba814c76f9b6eedc62f8f1db98cbe7e80d7f5cd3f4988f"},{"image":"DeviceTree","filename":"DeviceTree.n82ap.img3","date":"2023-09-01T06:03:25.119288","iv":"34e494314bbc370905c88564b76f3257","key":"1fa64d180acddd10346a70a2edccf494","kbag":"34e494314bbc370905c88564b76f32571fa64d180acddd10346a70a2edccf494"},{"image":"GlyphCharging","filename":"glyphcharging.s5l8900x.img3","date":"2023-09-01T06:03:25.119377","iv":"6553267a1976ab11b56c6268e57bf325","key":"a66de26baa6710b663f6b2586e3be7f9","kbag":"6553267a1976ab11b56c6268e57bf325a66de26baa6710b663f6b2586e3be7f9"},{"image":"GlyphPlugin","filename":"glyphplugin.s5l8900x.img3","date":"2023-09-01T06:03:25.119466","iv":"1b8c5da60ef92616746bc7d517a07faa","key":"6558696bcf94261016fc02defd5b505c","kbag":"1b8c5da60ef92616746bc7d517a07faa6558696bcf94261016fc02defd5b505c"},{"image":"iBoot","filename":"iBoot.n82ap.RELEASE.img3","date":"2023-09-01T06:03:25.119625","iv":"79ec4fb2d57ea1896febf5244a39aed1","key":"2841457265327a4c4d0eebdbbd90c0de","kbag":"79ec4fb2d57ea1896febf5244a39aed12841457265327a4c4d0eebdbbd90c0de"},{"image":"Kernelcache","filename":"kernelcache.release.n82","date":"2023-09-01T06:03:25.119836","iv":"63e4f6107e33379100b2f3e1cc0fdd94","key":"899504f05b254e543d98fcff61d1dc03","kbag":"63e4f6107e33379100b2f3e1cc0fdd94899504f05b254e543d98fcff61d1dc03"},{"image":"RecoveryMode","filename":"recoverymode.s5l8900x.img3","date":"2023-09-01T06:03:25.119997","iv":"e26f281077fcbd85af323327258c1a3c","key":"6f12794e39135f36f4edf8b11194b783","kbag":"e26f281077fcbd85af323327258c1a3c6f12794e39135f36f4edf8b11194b783"}]}

View File

@ -0,0 +1 @@
d2ed58586e8ca2153f2e2ec585bba8afc5173378

View File

@ -0,0 +1 @@
http://appldnld.apple.com/iPhone4/061-9853.20101122.Vfgt5/iPhone1,2_4.2.1_8C148_Restore.ipsw

View File

@ -0,0 +1 @@
n82

View File

@ -0,0 +1 @@
{"identifier":"iPod1,1","buildid":"7E18","codename":"SUNorthstarTwo","restoreramdiskexists":true,"updateramdiskexists":true,"keys":[{"image":"RootFS","filename":"018-6539-012.dmg","date":"2023-09-01T05:54:19.875024","key":"467e695041d01e3f58886314bfe70c9b89a7f0c09d6622931f57d1cfa1f7abd9c307563a"},{"image":"UpdateRamdisk","filename":"018-6488-015.dmg","date":"2023-09-01T05:54:19.875189","iv":"28f586f972f37ada68ccb1db9c0809d7","key":"05ad3977f313f7efaf9263bb33915af0","kbag":"28f586f972f37ada68ccb1db9c0809d705ad3977f313f7efaf9263bb33915af0"},{"image":"RestoreRamdisk","filename":"018-6494-014.dmg","date":"2023-09-01T05:54:19.875333","iv":"25e713dd5663badebe046d0ffa164fee","key":"7029389c2dadaaa1d1e51bf579493824","kbag":"25e713dd5663badebe046d0ffa164fee7029389c2dadaaa1d1e51bf579493824"},{"image":"AppleLogo","filename":"applelogo.s5l8900x.img3","date":"2023-09-01T05:54:19.875487","iv":"29900b1381b112bc6ca157b8d5e533fb","key":"f991b79dc86f1ed7d997785b4e93c0b9","kbag":"29900b1381b112bc6ca157b8d5e533fbf991b79dc86f1ed7d997785b4e93c0b9"},{"image":"BatteryCharging0","filename":"batterycharging0.s5l8900x.img3","date":"2023-09-01T05:54:19.875619","iv":"4a7131c4e4ab53c54c9cd67000022c0c","key":"5c5e265adf97ff887f83c1964cd26fbc","kbag":"4a7131c4e4ab53c54c9cd67000022c0c5c5e265adf97ff887f83c1964cd26fbc"},{"image":"BatteryCharging1","filename":"batterycharging1.s5l8900x.img3","date":"2023-09-01T05:54:19.875751","iv":"d95821f8d527c863bc83384b2a49d70f","key":"3e94246a2893d04223b960ec163a0d1f","kbag":"d95821f8d527c863bc83384b2a49d70f3e94246a2893d04223b960ec163a0d1f"},{"image":"BatteryFull","filename":"batteryfull.s5l8900x.img3","date":"2023-09-01T05:54:19.875894","iv":"b510390a90fe02ba01fc72e25bc4bed0","key":"92669d64fb9ea886317d8c38b3cf88cd","kbag":"b510390a90fe02ba01fc72e25bc4bed092669d64fb9ea886317d8c38b3cf88cd"},{"image":"BatteryLow0","filename":"batterylow0.s5l8900x.img3","date":"2023-09-01T05:54:19.876038","iv":"18c4cc5b9881a7f46fb6816b6bf98621","key":"7a2f4af7bfad3190a119533432e4ea79","kbag":"18c4cc5b9881a7f46fb6816b6bf986217a2f4af7bfad3190a119533432e4ea79"},{"image":"BatteryLow1","filename":"batterylow1.s5l8900x.img3","date":"2023-09-01T05:54:19.876173","iv":"43046878e50b200c94208e71d54d7d46","key":"3b2abd9b9b4cc7ed6e9981ba208f129c","kbag":"43046878e50b200c94208e71d54d7d463b2abd9b9b4cc7ed6e9981ba208f129c"},{"image":"DeviceTree","filename":"DeviceTree.n45ap.img3","date":"2023-09-01T05:54:19.876316","iv":"97c9d0d3bc305f85d44964cffccd41f3","key":"1e15fe11d1c45b7632345aa6e2525e06","kbag":"97c9d0d3bc305f85d44964cffccd41f31e15fe11d1c45b7632345aa6e2525e06"},{"image":"GlyphCharging","filename":"glyphcharging.s5l8900x.img3","date":"2023-09-01T05:54:19.876448","iv":"f063514314d014e962d072d144869448","key":"4efaa97201e0be8eebc633be2bd8e80e","kbag":"f063514314d014e962d072d1448694484efaa97201e0be8eebc633be2bd8e80e"},{"image":"GlyphPlugin","filename":"glyphplugin.s5l8900x.img3","date":"2023-09-01T05:54:19.876581","iv":"e2cbdecb935e44022411251450e09e25","key":"51e76b6183f5de42988cd3f983714c11","kbag":"e2cbdecb935e44022411251450e09e2551e76b6183f5de42988cd3f983714c11"},{"image":"iBoot","filename":"iBoot.n45ap.RELEASE.img3","date":"2023-09-01T05:54:19.876827","iv":"9a1e756768c29932460b2996315de82b","key":"6f0728e07f3591394a51c780476b52f5","kbag":"9a1e756768c29932460b2996315de82b6f0728e07f3591394a51c780476b52f5"},{"image":"Kernelcache","filename":"kernelcache.release.s5l8900x","date":"2023-09-01T05:54:19.877115","iv":"31e711201cf4dcf47be5be2a5b1b87a1","key":"d0dfac22c03212f8a75fc9c69fe548b6","kbag":"31e711201cf4dcf47be5be2a5b1b87a1d0dfac22c03212f8a75fc9c69fe548b6"},{"image":"NeedService","filename":"needservice.s5l8900x.img3","date":"2023-09-01T05:54:19.877355","iv":"e16e51ec62db28fb3d84a9ee0f8ef502","key":"de308342ba029c5c569f3a96f2723f3b","kbag":"e16e51ec62db28fb3d84a9ee0f8ef502de308342ba029c5c569f3a96f2723f3b"},{"image":"RecoveryMode","filename":"recoverymode.s5l8900x.img3","date":"2023-09-01T05:54:19.877488","iv":"1df103ab51af7ad9f8488d9e3b9edf11","key":"72e3360fae2d22252f497bd08d060d83","kbag":"1df103ab51af7ad9f8488d9e3b9edf1172e3360fae2d22252f497bd08d060d83"}]}

View File

@ -0,0 +1 @@
5f897990f19d2f093b35e0813d7d77806404fb1f

View File

@ -0,0 +1 @@
https://invoxiplaygames.uk/ipsw/iPod1,1_3.1.3_7E18_Restore.ipsw

View File

@ -0,0 +1 @@
n45

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -674,6 +674,8 @@ device_get_info() {
device_latest_bb=0 device_latest_bb=0
# set device_proc (what processor the device has) # set device_proc (what processor the device has)
case $device_type in case $device_type in
iPhone1,[12] | iPod1,1 )
device_proc=1;; # S5L8900
iPhone3,[123] | iPhone2,1 | iPod2,1 | iPod3,1 | iPad1,1 | iPod4,1 ) iPhone3,[123] | iPhone2,1 | iPod2,1 | iPod3,1 | iPad1,1 | iPod4,1 )
device_proc=4;; # A4/S5L8920/22/8720 device_proc=4;; # A4/S5L8920/22/8720
iPad2,[1234567] | iPad3,[123] | iPhone4,1 | iPod5,1 ) iPad2,[1234567] | iPad3,[123] | iPhone4,1 | iPod5,1 )
@ -697,7 +699,7 @@ device_get_info() {
case $device_type in case $device_type in
iPhone1,1 | iPod1,1 ) iPhone1,1 | iPod1,1 )
device_use_vers="3.1.3" device_use_vers="3.1.3"
device_use_vers="7E18" device_use_build="7E18"
;; ;;
iPhone1,2 | iPod2,1 ) iPhone1,2 | iPod2,1 )
device_use_vers="4.2.1" device_use_vers="4.2.1"
@ -812,12 +814,18 @@ device_find_mode() {
local timeout=4 local timeout=4
local i=0 local i=0
local device_in local device_in
local mode="$1"
case $1 in if [[ $mode == "Recovery" ]]; then
"DFU" ) usb=1227;; usb=1281
"Recovery" ) usb=1281;; elif [[ $device_proc == 1 ]]; then
"Restore" ) usb=1297;; usb=1222
esac if [[ $mode == "DFU" ]]; then
mode="WTF"
fi
else
usb=1227
fi
if [[ -n $2 ]]; then if [[ -n $2 ]]; then
timeout=$2 timeout=$2
@ -825,19 +833,19 @@ device_find_mode() {
timeout=24 timeout=24
fi fi
log "Finding device in $1 mode..." log "Finding device in $mode mode..."
while (( i < timeout )); do while (( i < timeout )); do
if [[ $platform == "linux" ]]; then if [[ $platform == "linux" ]]; then
device_in=$(lsusb | grep -c "05ac:$usb") device_in=$(lsusb | grep -c "05ac:$usb")
elif [[ $1 == "Restore" && $($ideviceinfo -s) ]]; then elif [[ $mode == "Restore" && $($ideviceinfo -s) ]]; then
device_in=1 device_in=1
elif [[ $($irecovery -q 2>/dev/null | grep -w "MODE" | cut -c 7-) == "$1" ]]; then elif [[ $($irecovery -q 2>/dev/null | grep -w "MODE" | cut -c 7-) == "$mode" ]]; then
device_in=1 device_in=1
fi fi
if [[ $device_in == 1 ]]; then if [[ $device_in == 1 ]]; then
log "Found device in $1 mode." log "Found device in $mode mode."
device_mode="$1" device_mode="$mode"
break break
fi fi
sleep 1 sleep 1
@ -846,7 +854,7 @@ device_find_mode() {
if [[ $device_in != 1 ]]; then if [[ $device_in != 1 ]]; then
if [[ $timeout != 1 ]]; then if [[ $timeout != 1 ]]; then
error "Failed to find device in $1 mode (Timed out). Please run the script again." error "Failed to find device in $mode mode (Timed out). Please run the script again."
fi fi
return 1 return 1
fi fi
@ -1435,7 +1443,7 @@ ipsw_preference_set() {
# latest version check # latest version check
case $device_latest_vers in case $device_latest_vers in
7.1.2 | 6.1.6 | 5.1.1 | 4.2.1 ) ipsw_canjailbreak=1;; 7.1.2 | 6.1.6 | 5.1.1 | 4.2.1 | 3.1.3 ) ipsw_canjailbreak=1;;
esac esac
if [[ $device_target_vers == "$device_latest_vers" && $ipsw_canjailbreak != 1 ]] || (( device_proc >= 7 )); then if [[ $device_target_vers == "$device_latest_vers" && $ipsw_canjailbreak != 1 ]] || (( device_proc >= 7 )); then
return return
@ -1453,10 +1461,10 @@ ipsw_preference_set() {
return return
fi fi
if [[ $device_target_vers == "3.1"* ]]; then if [[ $device_target_vers == "3.1.3" && $device_proc != 1 ]]; then
#log "Jailbreak Option is always enabled for $device_target_vers" #log "Jailbreak Option is always enabled for $device_target_vers"
ipsw_jailbreak=1 ipsw_jailbreak=1
elif [[ $device_target_other != 1 || $ipsw_canjailbreak == 1 ]] && [[ -z $ipsw_jailbreak ]]; then elif [[ -z $ipsw_jailbreak ]]; then
input "Jailbreak Option" input "Jailbreak Option"
print "* When this option is enabled, your device will be jailbroken on restore." print "* When this option is enabled, your device will be jailbroken on restore."
print "* I recommend to enable this option to have the jailbreak and Cydia pre-installed." print "* I recommend to enable this option to have the jailbreak and Cydia pre-installed."
@ -1472,7 +1480,8 @@ ipsw_preference_set() {
echo echo
fi fi
if [[ $ipsw_jailbreak == 1 && -z $ipsw_hacktivate && $device_type == "iPhone2,1" ]]; then if [[ $ipsw_jailbreak == 1 && -z $ipsw_hacktivate ]] &&
[[ $device_type == "iPhone1"* || $device_type == "iPhone2,1" ]]; then
input "Hacktivate Option" input "Hacktivate Option"
print "* When this option is enabled, your device will be activated on restore." print "* When this option is enabled, your device will be activated on restore."
print "* Enable this option if you have no valid SIM card to activate the phone." print "* Enable this option if you have no valid SIM card to activate the phone."
@ -1490,7 +1499,7 @@ ipsw_preference_set() {
if [[ -n $ipsw_memory ]]; then if [[ -n $ipsw_memory ]]; then
: :
elif [[ $device_type == "iPhone2,1" || $device_type == "iPod2,1" ]] && [[ $device_target_other != 1 ]]; then elif [[ $device_type == "iPhone2,1" || $device_type == "iPod2,1" || $device_proc == 1 ]] && [[ $device_target_other != 1 ]]; then
: :
elif [[ $ipsw_jailbreak == 1 || $device_type == "$device_disable_bbupdate" || $device_target_powder == 1 ]] || elif [[ $ipsw_jailbreak == 1 || $device_type == "$device_disable_bbupdate" || $device_target_powder == 1 ]] ||
[[ $device_type == "iPad2"* && $device_target_vers == "4.3"* ]] || [[ $device_type == "iPad2"* && $device_target_vers == "4.3"* ]] ||
@ -2274,8 +2283,10 @@ ipsw_prepare_custom() {
if [[ $device_target_vers == "5"* || $device_target_vers == "6"* ]]; then if [[ $device_target_vers == "5"* || $device_target_vers == "6"* ]]; then
comps+=("iBEC") comps+=("iBEC")
fi fi
if [[ $device_type == "iPod2,1" && $device_target_vers == "3.1"* ]]; then if [[ $device_type == "iPod2,1" && $device_target_vers == "3.1.3" ]]; then
: :
elif [[ $device_proc == 1 ]]; then
comps+=("iBoot" "Kernelcache" "LLB")
else else
case $device_target_vers in case $device_target_vers in
6.1.6 | 4.2.1 | 4.1 ) :;; 6.1.6 | 4.2.1 | 4.1 ) :;;
@ -2298,8 +2309,14 @@ ipsw_prepare_custom() {
if [[ -n $iv && -n $key ]]; then if [[ -n $iv && -n $key ]]; then
decrypt="-iv $iv -k $key" decrypt="-iv $iv -k $key"
fi fi
if [[ -z $name ]]; then
case $getcomp in
"iBSS" ) name="iBSS.${device_model}ap.RELEASE.dfu";;
"LLB" ) name="LLB.${device_model}ap.RELEASE.img3";;
esac
fi
log "$getcomp" log "Patching $getcomp: $name"
cp "$ipsw_path/${path}$name" . cp "$ipsw_path/${path}$name" .
mv $name $name.orig mv $name $name.orig
if [[ $getcomp == "iBoot" || $getcomp == "LLB" ]]; then if [[ $getcomp == "iBoot" || $getcomp == "LLB" ]]; then
@ -2318,6 +2335,15 @@ ipsw_prepare_custom() {
fi fi
cp $name "$ipsw_path/$path" cp $name "$ipsw_path/$path"
done done
if [[ $device_proc == 1 ]]; then
local path="Firmware/dfu/"
local name="WTF.s5l8900xall.RELEASE.dfu"
log "Patching WTF: $name"
cp "$ipsw_path/${path}$name" .
mv $name $name.orig
$bspatch $name.orig $name $patch/$name.patch
cp $name "$ipsw_path/$path"
fi
log "Getting RootFS information" log "Getting RootFS information"
"$dir/hfsplus" Ramdisk.raw extract usr/local/share/restore/options.$device_model.plist >/dev/null "$dir/hfsplus" Ramdisk.raw extract usr/local/share/restore/options.$device_model.plist >/dev/null
@ -2328,8 +2354,10 @@ ipsw_prepare_custom() {
fi fi
if [[ $device_target_vers == "3"* ]]; then if [[ $device_target_vers == "3"* ]]; then
case $device_type in case $device_type in
iPod2,1 ) RootSize=450;; iPhone1,[12] ) RootSize=420;;
iPhone2,1 ) RootSize=530;; iPhone2,1 ) RootSize=530;;
iPod1,1 ) RootSize=413;;
iPod2,1 ) RootSize=450;;
esac esac
elif [[ $platform == "macos" ]]; then elif [[ $platform == "macos" ]]; then
plutil -extract 'SystemPartitionSize' xml1 options.$device_model.plist -o size plutil -extract 'SystemPartitionSize' xml1 options.$device_model.plist -o size
@ -2353,38 +2381,39 @@ ipsw_prepare_custom() {
log "Extracting Cydia" log "Extracting Cydia"
"$dir/hfsplus" out.dmg untar $jelbrek/freeze.tar "$dir/hfsplus" out.dmg untar $jelbrek/freeze.tar
log "Extracting untether" log "Extracting untether"
case $device_target_vers in
"6.1.6" ) "$dir/hfsplus" out.dmg untar $jelbrek/p0sixspwn.tar;;
"5"* | "4.3"* ) "$dir/hfsplus" out.dmg untar $jelbrek/unthredeh4il.tar;;
"4.2.1" )
if [[ $device_proc != 1 ]]; then
"$dir/hfsplus" out.dmg mv sbin/launchd sbin/punchd
"$dir/hfsplus" out.dmg untar $jelbrek/greenpois0n/${device_type}_${device_target_build}.tar
fi
;;
"4.1" ) "$dir/hfsplus" out.dmg untar $jelbrek/greenpois0n/${device_type}_${device_target_build}.tar;;
esac
case $device_target_vers in case $device_target_vers in
"5.1.1" ) "$dir/hfsplus" out.dmg untar $jelbrek/rockyracoon.tar;; "5.1.1" ) "$dir/hfsplus" out.dmg untar $jelbrek/rockyracoon.tar;;
"5.0.1" ) "$dir/hfsplus" out.dmg untar $jelbrek/corona.tar;; "5.0.1" ) "$dir/hfsplus" out.dmg untar $jelbrek/corona.tar;;
"3.1"* | "4"* ) "4"* | "3.1.3" )
"$dir/hfsplus" out.dmg rm private/etc/fstab "$dir/hfsplus" out.dmg rm private/etc/fstab
"$dir/hfsplus" out.dmg add $jelbrek/fstab_old private/etc/fstab "$dir/hfsplus" out.dmg add $jelbrek/fstab_old private/etc/fstab
;; ;;
esac esac
case $device_target_vers in if [[ $device_type == "iPod2,1" && $device_target_vers == "3.1.3" ]]; then
"4.2.1" | "4.1" )
if [[ $device_target_vers == "4.2.1" ]]; then
"$dir/hfsplus" out.dmg mv sbin/launchd sbin/punchd
fi
"$dir/hfsplus" out.dmg untar $jelbrek/greenpois0n/${device_type}_${device_target_build}.tar
;;
"6.1.6" ) "$dir/hfsplus" out.dmg untar $jelbrek/p0sixspwn.tar;;
* ) "$dir/hfsplus" out.dmg untar $jelbrek/unthredeh4il.tar;;
esac
if [[ $device_type == "iPod2,1" && $device_target_vers == "3.1"* ]]; then
"$dir/hfsplus" out.dmg untar $jelbrek/greenpois0n/${device_type}_${device_target_build}.tar "$dir/hfsplus" out.dmg untar $jelbrek/greenpois0n/${device_type}_${device_target_build}.tar
fi fi
if [[ $device_target_vers != "6"* ]]; then if [[ $device_target_vers != "6"* ]]; then
"$dir/hfsplus" out.dmg untar $jelbrek/cydiasubstrate.tar "$dir/hfsplus" out.dmg untar $jelbrek/cydiasubstrate.tar
fi fi
if [[ $device_target_vers == "3.1"* ]]; then if [[ $device_target_vers == "3.1.3" ]]; then
"$dir/hfsplus" out.dmg untar $jelbrek/cydiahttpatch.tar "$dir/hfsplus" out.dmg untar $jelbrek/cydiahttpatch.tar
fi fi
if [[ $ipsw_openssh == 1 ]]; then if [[ $ipsw_openssh == 1 ]]; then
"$dir/hfsplus" out.dmg untar $jelbrek/sshdeb.tar "$dir/hfsplus" out.dmg untar $jelbrek/sshdeb.tar
fi fi
if [[ $ipsw_hacktivate == 1 ]]; then if [[ $ipsw_hacktivate == 1 ]]; then
log "Hacktivate" log "Patching lockdownd for hacktivation"
"$dir/hfsplus" out.dmg extract usr/libexec/lockdownd "$dir/hfsplus" out.dmg extract usr/libexec/lockdownd
"$dir/hfsplus" out.dmg mv usr/libexec/lockdownd usr/libexec/lockdownd.orig "$dir/hfsplus" out.dmg mv usr/libexec/lockdownd usr/libexec/lockdownd.orig
$bspatch lockdownd lockdownd.patched $patch/lockdownd.patch $bspatch lockdownd lockdownd.patched $patch/lockdownd.patch
@ -2715,6 +2744,15 @@ device_buttons() {
restore_prepare() { restore_prepare() {
case $device_proc in case $device_proc in
1 )
device_enter_mode DFU
if [[ $ipsw_jailbreak == 1 ]]; then
restore_latest custom
else
restore_latest
fi
;;
4 ) 4 )
if [[ $device_target_other == 1 ]] && [[ $device_target_vers == "3"* || $device_target_vers == "4"* ]]; then if [[ $device_target_other == 1 ]] && [[ $device_target_vers == "3"* || $device_target_vers == "4"* ]]; then
if [[ $device_type == "iPhone3,1" ]]; then if [[ $device_type == "iPhone3,1" ]]; then
@ -2834,6 +2872,12 @@ restore_prepare() {
ipsw_prepare() { ipsw_prepare() {
case $device_proc in case $device_proc in
1 )
if [[ $ipsw_jailbreak == 1 ]]; then
ipsw_prepare_custom
fi
;;
4 ) 4 )
if [[ $device_target_other == 1 ]]; then if [[ $device_target_other == 1 ]]; then
ipsw_prepare_32bit ipsw_prepare_32bit
@ -2938,6 +2982,7 @@ device_ramdisk() {
local ramdisk_path local ramdisk_path
case $device_type in case $device_type in
iPhone1,[12] | iPod1,1 ) device_target_build="7E18";;
iPod2,1 ) device_target_build="8C148";; iPod2,1 ) device_target_build="8C148";;
iPod3,1 | iPad1,1 ) device_target_build="9B206";; iPod3,1 | iPad1,1 ) device_target_build="9B206";;
iPhone2,1 | iPod4,1 ) device_target_build="10B500";; iPhone2,1 | iPod4,1 ) device_target_build="10B500";;
@ -2967,6 +3012,11 @@ device_ramdisk() {
"DeviceTree" | "AppleLogo" ) path="Firmware/all_flash/all_flash.${device_model}ap.production/";; "DeviceTree" | "AppleLogo" ) path="Firmware/all_flash/all_flash.${device_model}ap.production/";;
* ) path="";; * ) path="";;
esac esac
if [[ -z $name ]]; then
case $getcomp in
"iBSS" ) name="iBSS.${device_model}ap.RELEASE.dfu";;
esac
fi
log "$getcomp" log "$getcomp"
if [[ -e $ramdisk_path/$name ]]; then if [[ -e $ramdisk_path/$name ]]; then
@ -2976,7 +3026,7 @@ device_ramdisk() {
cp $name $ramdisk_path/ cp $name $ramdisk_path/
fi fi
mv $name $getcomp.orig mv $name $getcomp.orig
if [[ $getcomp == "Kernelcache" && $device_type == "iPod2,1" ]]; then if [[ $getcomp == "Kernelcache" || $getcomp == "iBSS" ]] && [[ $device_type == "iPod2,1" || $device_proc == 1 ]]; then
decrypt="-iv $iv -k $key" decrypt="-iv $iv -k $key"
"$dir/xpwntool" $getcomp.orig $getcomp.dec $decrypt "$dir/xpwntool" $getcomp.orig $getcomp.dec $decrypt
else else
@ -2988,14 +3038,19 @@ device_ramdisk() {
"$dir/xpwntool" RestoreRamdisk.dec Ramdisk.raw "$dir/xpwntool" RestoreRamdisk.dec Ramdisk.raw
"$dir/hfsplus" Ramdisk.raw grow 30000000 "$dir/hfsplus" Ramdisk.raw grow 30000000
if [[ $device_type == "iPod2,1" ]]; then if [[ $device_type == "iPod2,1" || $device_proc == 1 ]]; then
"$dir/hfsplus" Ramdisk.raw untar ../resources/ssh_old.tar "$dir/hfsplus" Ramdisk.raw untar ../resources/ssh_old.tar
"$dir/xpwntool" Ramdisk.raw Ramdisk.dmg -t RestoreRamdisk.dec "$dir/xpwntool" Ramdisk.raw Ramdisk.dmg -t RestoreRamdisk.dec
log "Patch iBSS" log "Patch iBSS"
$bspatch iBSS.orig iBSS ../resources/patch/iBSS.${device_model}ap.$device_target_build.patch $bspatch iBSS.dec iBSS.patched ../resources/patch/iBSS.${device_model}ap.RELEASE.patch
"$dir/xpwntool" iBSS.patched iBSS -t iBSS.orig
log "Patch Kernelcache" log "Patch Kernelcache"
mv Kernelcache.dec Kernelcache0.dec mv Kernelcache.dec Kernelcache0.dec
$bspatch Kernelcache0.dec Kernelcache.patched ../resources/patch/kernelcache.release.$device_model.patch if [[ $device_proc == 1 ]]; then
$bspatch Kernelcache0.dec Kernelcache.patched ../resources/patch/kernelcache.release.s5l8900x.patch
else
$bspatch Kernelcache0.dec Kernelcache.patched ../resources/patch/kernelcache.release.${device_model}.patch
fi
"$dir/xpwntool" Kernelcache.patched Kernelcache.dec -t Kernelcache.orig $decrypt "$dir/xpwntool" Kernelcache.patched Kernelcache.dec -t Kernelcache.orig $decrypt
rm DeviceTree.dec rm DeviceTree.dec
mv DeviceTree.orig DeviceTree.dec mv DeviceTree.orig DeviceTree.dec
@ -3041,7 +3096,9 @@ device_ramdisk() {
fi fi
$irecovery -f $ramdisk_path/Kernelcache.dec $irecovery -f $ramdisk_path/Kernelcache.dec
$irecovery -c bootx $irecovery -c bootx
sleep 20 if [[ -n $1 ]]; then
sleep 20
fi
case $1 in case $1 in
"nvram" | "jailbreak" | "activation" | "baseband" | "getversion" ) "nvram" | "jailbreak" | "activation" | "baseband" | "getversion" )
@ -3364,11 +3421,11 @@ menu_main() {
menu_items+=("Restore/Downgrade") menu_items+=("Restore/Downgrade")
if [[ $device_type == "iPad2"* && $device_vers == "4"* ]]; then if [[ $device_type == "iPad2"* && $device_vers == "4"* ]]; then
: :
elif (( device_proc < 7 )); then elif (( device_proc < 7 )) && [[ $device_proc != 1 ]]; then
menu_items+=("Jailbreak Device") menu_items+=("Jailbreak Device")
fi fi
fi fi
if (( device_proc < 8 )); then if (( device_proc < 8 )) && [[ $device_proc != 1 ]]; then
menu_items+=("Save SHSH Blobs") menu_items+=("Save SHSH Blobs")
fi fi
menu_items+=("Other Utilities" "Exit") menu_items+=("Other Utilities" "Exit")
@ -3498,9 +3555,8 @@ menu_restore() {
menu_items+=("5.1.1" "5.0.1" "4.3.3" "4.1" "3.1.3");; menu_items+=("5.1.1" "5.0.1" "4.3.3" "4.1" "3.1.3");;
iPod3,1 ) iPod3,1 )
menu_items+=("4.1");; menu_items+=("4.1");;
iPod2,1 ) iPhone1,2 | iPod2,1 )
menu_items+=("4.1" "3.1.3") menu_items+=("4.1" "3.1.3");;
;;
esac esac
if (( device_proc < 7 )); then if (( device_proc < 7 )); then
menu_items+=("Latest iOS ($device_latest_vers)") menu_items+=("Latest iOS ($device_latest_vers)")
@ -3510,15 +3566,17 @@ menu_restore() {
menu_items+=("Other (powdersn0w 7.x blobs)");; menu_items+=("Other (powdersn0w 7.x blobs)");;
iPhone3,[13] ) iPhone3,[13] )
menu_items+=("powdersn0w (any iOS)");; menu_items+=("powdersn0w (any iOS)");;
iPhone2,1 | iPhone3,2 | iPad1,1 | iPod2,1 | iPod3,1 | iPod4,1 ) iPhone1,[12] | iPhone2,1 | iPhone3,2 | iPad1,1 | iPod1,1 | iPod2,1 | iPod3,1 | iPod4,1 )
if [[ -z $1 ]]; then if [[ -z $1 ]]; then
menu_items+=("Other (Custom IPSW)") menu_items+=("Other (Custom IPSW)")
fi fi
;; ;;
esac esac
menu_items+=("Other (Use SHSH Blobs)") if [[ $device_proc != 1 ]]; then
if (( device_proc < 7 )); then menu_items+=("Other (Use SHSH Blobs)")
menu_items+=("DFU IPSW") if (( device_proc < 7 )); then
menu_items+=("DFU IPSW")
fi
fi fi
menu_items+=("Go Back") menu_items+=("Go Back")
menu_print_info menu_print_info
@ -3610,9 +3668,9 @@ menu_ipsw() {
"Latest iOS"* ) "Latest iOS"* )
device_target_vers="$device_latest_vers" device_target_vers="$device_latest_vers"
device_target_build="$device_latest_build" device_target_build="$device_latest_build"
if [[ $device_latest_vers == "6.1.6" ]]; then case $device_latest_vers in
device_canhacktivate=1 "6.1.6" | "4.2.1" | "3.1.3" ) device_canhacktivate=1;;
fi esac
;; ;;
esac esac
if [[ $device_target_vers == "$device_latest_vers" ]]; then if [[ $device_target_vers == "$device_latest_vers" ]]; then
@ -3738,7 +3796,7 @@ menu_ipsw() {
else else
print "* Select $1 IPSW to continue" print "* Select $1 IPSW to continue"
fi fi
if [[ $device_canhacktivate == 1 && $device_type == "iPhone2,1" ]]; then if [[ $device_canhacktivate == 1 ]] && [[ $device_type == "iPhone2,1" || $device_proc == 1 ]]; then
print "* Hacktivation is supported for this restore" print "* Hacktivation is supported for this restore"
fi fi
fi fi
@ -3957,7 +4015,7 @@ menu_other() {
ipsw_path= ipsw_path=
while [[ -z "$mode" && -z "$back" ]]; do while [[ -z "$mode" && -z "$back" ]]; do
menu_items=() menu_items=()
if [[ $device_mode != "none" ]]; then if [[ $device_mode != "none" && $device_proc != 1 ]]; then
if (( device_proc < 7 )); then if (( device_proc < 7 )); then
if [[ $device_mode == "Normal" ]]; then if [[ $device_mode == "Normal" ]]; then
menu_items+=("Enter kDFU Mode" "Enter pwnDFU Mode") menu_items+=("Enter kDFU Mode" "Enter pwnDFU Mode")
@ -3971,7 +4029,7 @@ menu_other() {
if [[ $device_type == "iPhone"* ]]; then if [[ $device_type == "iPhone"* ]]; then
menu_items+=("Dump Baseband") menu_items+=("Dump Baseband")
fi fi
menu_items+=("Activation Records" "SSH Ramdisk" "Clear NVRAM") menu_items+=("Activation Records" "Clear NVRAM")
if [[ $device_type != "iPod2,1" ]]; then if [[ $device_type != "iPod2,1" ]]; then
menu_items+=("Just Boot") menu_items+=("Just Boot")
fi fi
@ -3982,6 +4040,9 @@ menu_other() {
iPhone3,1 ) menu_items+=("Disable/Enable Exploit");; iPhone3,1 ) menu_items+=("Disable/Enable Exploit");;
iPhone2,1 ) menu_items+=("Install alloc8 Exploit");; iPhone2,1 ) menu_items+=("Install alloc8 Exploit");;
esac esac
fi
if [[ $device_mode != "none" ]]; then
menu_items+=("SSH Ramdisk")
case $device_mode in case $device_mode in
"Normal" ) menu_items+=("Attempt Activation" "Enter Recovery Mode");; "Normal" ) menu_items+=("Attempt Activation" "Enter Recovery Mode");;
"Recovery" ) menu_items+=("Exit Recovery Mode");; "Recovery" ) menu_items+=("Exit Recovery Mode");;