lechium / TSSAgent

A mostly Objective-C command line interface TSS Agent for the AppleTV 2 for fetching and sending SHSH blobs + daily LaunchDaemon.
7 stars 1 forks source link

AppleTV TSSAgent - a standalone solution for listing SHSH blobs, fetching SHSH blobs and submitting the blobs to saurik's SHSH server.

Currently this is targeted for the AppleTV but it could definitely be expanded to work with other devices, not that it's necessary.

-l lists all the SHSH blobs that are currently saved on sauriks server. -v osBuildVersion fetches the SHSH blobs for version specified from apples servers. ie -v 8F455. -c osBuildVersion fetches the SHSH blobs for version specified from sauriks's servers. ie -c 8F455. -p osBuildVersion fetch the SHSH blob for the version specified AND pushes to sauriks server. -1337 will fetch the versions that are still elgible to be signed and push them to sauriks server.


yes i am that lazy to just paste the usage output as part of the readme.

anyhow, if you want to build this you need to copy IOKit into theos/include

(the local copy of theos if checked out in this folder will not work without IOKit headers)

after you make sure that folder is copied

Make

done and done.


Some notes on the development of this project.

If there are any build errors it could be because the variable export SDKVERSION=5.1 in the Make file is trying to point towards the 5.1 SDK, if that is missing it wont work and will need to be pointed to a newer version.

Memory management is done manually because ARC is not available across all appletv versions and im comfortable enough with memory management that I see no benefit in convoluting the code to have ARC compliance when supported, and releasing when unsupported.

Currently it only supports the AppleTV 2 because the plist we manage online ONLY has build manifests for AppleTV2 versions, doing anything further would be way too much, plus it would be kind of useless and redundant since Cydia does the same thing on all other iOS devices.

It uses JSONKit rather than the Apple JSON serialization classes because those were not introduced until 5.0 if i recall correctly, and i wanted it to work on ALL firmwares from 4.x-6.x+

The Xcode project was just recently added to make coding of the project easier to manage, it says OS X SDK 10.8 but is really a foundation CLI tool that runs on iOS devices using an external build system and the brilliant theos project by Dustin Howett.