Entitlements: Difference between revisions

From iPhone Development Wiki
(How entitlements are verified)
(add missing word)
Line 1: Line 1:
Entitlements are used to grant specific privileges to a program. For example, an entitlement is required to be able to use some of [[CoreTelephony.framework]]'s calling APIs.
Entitlements are used to grant specific privileges to a program. For example, an entitlement is required to be able to use some of [[CoreTelephony.framework]]'s calling APIs.


They are verified using the [https://opensource.apple.com/source/libsecurity_codesigning/libsecurity_codesigning-55037.6/lib/SecTask.h SecTaskCopyValueForEntitlement] from Security.framework.
They are verified using the [https://opensource.apple.com/source/libsecurity_codesigning/libsecurity_codesigning-55037.6/lib/SecTask.h SecTaskCopyValueForEntitlement] function from Security.framework.


== How to dump from binaries ==
== How to dump from binaries ==

Revision as of 18:48, 15 July 2014

Entitlements are used to grant specific privileges to a program. For example, an entitlement is required to be able to use some of CoreTelephony.framework's calling APIs.

They are verified using the SecTaskCopyValueForEntitlement function from Security.framework.

How to dump from binaries

Using ldid you can extract a property list containing the entitlements of a binary. To do so, you can do:

 ldid -e binary

For example, to dump SpringBoard's entitlements you would do:

 ldid -e /System/Library/CoreServices/SpringBoard.app/SpringBoard

Known entitlements

This section could contain a table of binaries with their respective entitlements, their types (boolean or array), iOS versions where they exist, "Used by" and "Checked by".

References