Skip to content

Commit

Permalink
latest goodness
Browse files Browse the repository at this point in the history
  • Loading branch information
kevin bradley authored and kevin bradley committed Jul 18, 2011
1 parent f685495 commit 1d3c9f8
Show file tree
Hide file tree
Showing 21 changed files with 771 additions and 133 deletions.
3 changes: 2 additions & 1 deletion Credits.rtf
Expand Up @@ -14,11 +14,12 @@
jan0 / pod2g (untether exploits)\
DjayB6 (4.3 bundle)\
Stefan Esser (4.3 untether exploit)\
iH8Sn0w (bundle)\
\

\b Human Interface Design:
\b0 \
Kevin Bradley (layout)\
Louis Cohen (icon / image design)\
\
Special Thanks to James Abeler, (making this all possible), Joshua Hill, Scott Davilla and Thomas Cool for testing and linking/building troubleshooting, iPhone + Chronic Dev teams for all the work that paved the way for applications like this!! Thanks to DjayB6 for the bundle(s) and to lilstevie for his test notes!!! Stefan Esser for his amazingly quick work on the latest untether!!}
Special Thanks to James Abeler, (making this all possible), Joshua Hill, Scott Davilla and Thomas Cool for testing and linking/building troubleshooting, iPhone + Chronic Dev teams for all the work that paved the way for applications like this!! Thanks to DjayB6 for the bundle(s) and to lilstevie for his test notes!!! Stefan Esser for his amazingly quick work on the latest untether!! iH8Sn0w for most recent bundle + tethered booting info.}
3 changes: 3 additions & 0 deletions FWBundle.h
Expand Up @@ -64,17 +64,20 @@ enum {
- (NSString *)outputName;
- (NSDictionary *)appleLogo;
- (NSString *)filesystemSize;
- (NSDictionary *)kernelcache;

//really lazy convenience classes
- (NSDictionary *)buildManifest;
- (NSString *)localKernel;
- (NSString *)localiBSS;
- (NSString *)localiBEC;
- (NSString *)kernelCacheName;
- (NSString *)iBSSName;
- (NSDictionary *)fwDictionary;
- (NSString *)localBundlePath;

- (BOOL)is4point3;
- (BOOL)is4point4;
- (BOOL)untethered;
@end

Expand Down
84 changes: 78 additions & 6 deletions FWBundle.m
Expand Up @@ -61,6 +61,13 @@ - (NSString *)iBSSName
return [[[[self buildManifest] valueForKey:@"iBSS"] valueForKey:@"Info"] valueForKey:@"Path"];
}


- (NSString *)iBECName
{
return [[[[self buildManifest] valueForKey:@"iBEC"] valueForKey:@"Info"] valueForKey:@"Path"];
}


- (NSDictionary *)fwDictionary
{
NSString *buildM = [TMP_ROOT stringByAppendingPathComponent:@"BuildManifest.plist"];
Expand Down Expand Up @@ -105,6 +112,15 @@ - (NSString *)localiBSS
return nil;
}

- (NSString *)localiBEC
{
if ([self localManifest] != nil)
{
return [[self localBundlePath] stringByAppendingPathComponent:[[self localManifest] valueForKey:@"iBEC"]];
}
return nil;
}

- (NSString *)localKernel
{
if ([self localManifest] != nil)
Expand Down Expand Up @@ -146,9 +162,7 @@ - (NSString *)ramdiskSize

- (BOOL)untethered
{
return YES;

if ([self is4point3])
if ([self is4point4])
return NO;

return YES;
Expand Down Expand Up @@ -198,6 +212,54 @@ - (int)deviceInt
return kUnknownDevice;
}

- (BOOL)is4point4
{
NSString *clippedPath = nil;
int deviceInteger = [self deviceInt];

switch (deviceInteger) {


case kAppleTVDevice:

clippedPath = [[self bundleName] substringWithRange:NSMakeRange(11, 3)];
break;

case kiPadDevice:
//iPad1,1_4.3.1_8G4_Restore.ipsw
clippedPath = [[self bundleName] substringWithRange:NSMakeRange(8, 3)];
break;

case kiPhoneDevice:

clippedPath = [[self bundleName] substringWithRange:NSMakeRange(10, 3)];

break;

}

NSComparisonResult theResult = [clippedPath compare:@"4.4" options:NSNumericSearch];
//NSLog(@"theversion: %@ installed version %@", theVersion, installedVersion);
if ( theResult == NSOrderedDescending )
{
// NSLog(@"%@ is greater than %@", clippedPath, @"4.4");

return YES;

} else if ( theResult == NSOrderedAscending ){

// NSLog(@"%@ is greater than %@", @"4.4", clippedPath);
return NO;

} else if ( theResult == NSOrderedSame ) {

// NSLog(@"%@ is equal to %@", clippedPath, @"4.4");
return YES;
}

return NO;
}

- (BOOL)is4point3
{
NSString *clippedPath = nil;
Expand Down Expand Up @@ -228,18 +290,18 @@ - (BOOL)is4point3
//NSLog(@"theversion: %@ installed version %@", theVersion, installedVersion);
if ( theResult == NSOrderedDescending )
{
NSLog(@"%@ is greater than %@", clippedPath, @"4.3");
//NSLog(@"%@ is greater than %@", clippedPath, @"4.3");

return YES;

} else if ( theResult == NSOrderedAscending ){

NSLog(@"%@ is greater than %@", @"4.3", clippedPath);
//NSLog(@"%@ is greater than %@", @"4.3", clippedPath);
return NO;

} else if ( theResult == NSOrderedSame ) {

NSLog(@"%@ is equal to %@", clippedPath, @"4.3");
// NSLog(@"%@ is equal to %@", clippedPath, @"4.3");
return YES;
}

Expand Down Expand Up @@ -359,6 +421,11 @@ - (NSDictionary *)updateRamdisk
return [[self firmwarePatches] valueForKey:UPDATE_RD];
}

- (NSDictionary *)iBEC
{
return [[self firmwarePatches] valueForKey:@"iBEC"];
}

- (NSDictionary *)iBSS
{
return [[self firmwarePatches] valueForKey:@"iBSS"];
Expand All @@ -369,6 +436,11 @@ - (NSDictionary *)appleLogo
return [[self firmwarePatches] valueForKey:@"AppleLogo"];
}

- (NSDictionary *)kernelcache
{
return [[self firmwarePatches] valueForKey:@"kernelcache"];
}


- (NSString *)rootFilesystem
{
Expand Down
110 changes: 110 additions & 0 deletions bundles/AppleTV2,1_4.4_9A5248d.bundle/Info.plist
@@ -0,0 +1,110 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>FilesystemPatches</key>
<dict>
<key>Filesystem Jailbreak</key>
<array>
<dict>
<key>Action</key>
<string>Patch</string>
<key>File</key>
<string>etc/fstab</string>
<key>Name</key>
<string>Filesystem Write Access</string>
<key>Patch</key>
<string>fstab.patch</string>
</dict>
<dict>
<key>Action</key>
<string>Patch</string>
<key>File</key>
<string>System/Library/Lockdown/Services.plist</string>
<key>Name</key>
<string>Apple File Connection v2</string>
<key>Patch</key>
<string>Services.patch</string>
</dict>
</array>
</dict>
<key>FirmwarePatches</key>
<dict>
<key>Restore Ramdisk</key>
<dict>
<key>File</key>
<string>038-1994-002.dmg</string>
<key>IV</key>
<string>4620cab31d75420e7dd87a64e2caf445</string>
<key>Key</key>
<string>b0a52615dd7bf87d112d529e76d5bda8ee498e0c66622843450b50fafb96340b</string>
<key>TypeFlag</key>
<integer>8</integer>
</dict>
<key>iBSS</key>
<dict>
<key>File</key>
<string>Firmware/dfu/iBSS.k66ap.RELEASE.dfu</string>
<key>IV</key>
<string>815eae7b5d4ae56b71524f8525727216</string>
<key>Key</key>
<string>dd9097872e06b0723d5d4e28c3766cd04810da80422119629df5e5dc52d3081d</string>
<key>Patch</key>
<string>iBSS.k66ap.RELEASE.patch</string>
<key>TypeFlag</key>
<integer>8</integer>
</dict>
<key>iBEC</key>
<dict>
<key>File</key>
<string>Firmware/dfu/iBEC.k66ap.RELEASE.dfu</string>
<key>IV</key>
<string>8c4af45382657348c40dda5b43faf26b</string>
<key>Key</key>
<string>63fceec5d9429d1ab3185d8d1eeac1b1a8b0c916c721e825b211e789465f68ae</string>
<key>Patch</key>
<string>iBEC.k66ap.RELEASE.patch</string>
<key>TypeFlag</key>
<integer>8</integer>
</dict>
</dict>
<key>RamdiskPatches</key>
<dict>
<key>asr</key>
<dict>
<key>File</key>
<string>usr/sbin/asr</string>
<key>Patch</key>
<string>asr.patch</string>
</dict>
</dict>
<key>PreInstalledPackages</key>
<array>
<string>org.saurik.cydia-atv</string>
</array>
<key>DeleteBuildManifest</key>
<false/>
<key>RestoreRamdiskMountVolume</key>
<string>ramdisk</string>
<key>RootFilesystem</key>
<string>038-1997-002.dmg</string>
<key>RootFilesystemSize</key>
<integer>700</integer>
<key>RootFilesystemKey</key>
<string>7bf1338a764b9e566982f86a95e597aae247cff3b55f30aeb7f61ec35a1f5b43e6d78773</string>
<key>RootFilesystemMountVolume</key>
<string>TellurideVail9A5248d.K66DeveloperOS</string>
<key>SHA1</key>
<string>667706ddec73886c8a1e1ff5bdd243a3727afa51</string>
<key>Filename</key>
<string>AppleTV2,1_4.4_9A5248d_Restore.ipsw</string>
<key>Name</key>
<string>AppleTV2,1_4.4_9A5248d</string>
<key>DownloadUrl</key>
<string></string>
<key>Platform</key>
<integer>3</integer>
<key>SubPlatform</key>
<integer>10</integer>
</dict>
</plist>
Binary file not shown.
Binary file added bundles/AppleTV2,1_4.4_9A5248d.bundle/asr.patch
Binary file not shown.
Binary file added bundles/AppleTV2,1_4.4_9A5248d.bundle/fstab.patch
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added bundles/AppleTV2,1_4.4_9A5259f.bundle/AppleTV.patch
Binary file not shown.

0 comments on commit 1d3c9f8

Please sign in to comment.