libimobiledevice
1.3.0
|
Handle device activation and deactivation. More...
Macros | |
#define | MOBILEACTIVATION_SERVICE_NAME "com.apple.mobileactivationd" |
Typedefs | |
typedef struct mobileactivation_client_private | mobileactivation_client_private |
typedef mobileactivation_client_private * | mobileactivation_client_t |
The client handle. | |
Enumerations | |
enum | mobileactivation_error_t { MOBILEACTIVATION_E_SUCCESS = 0, MOBILEACTIVATION_E_INVALID_ARG = -1, MOBILEACTIVATION_E_PLIST_ERROR = -2, MOBILEACTIVATION_E_MUX_ERROR = -3, MOBILEACTIVATION_E_UNKNOWN_REQUEST = -4, MOBILEACTIVATION_E_REQUEST_FAILED = -5, MOBILEACTIVATION_E_UNKNOWN_ERROR = -256 } |
Error Codes. | |
Functions | |
mobileactivation_error_t | mobileactivation_client_new (idevice_t device, lockdownd_service_descriptor_t service, mobileactivation_client_t *client) |
Connects to the mobileactivation service on the specified device. More... | |
mobileactivation_error_t | mobileactivation_client_start_service (idevice_t device, mobileactivation_client_t *client, const char *label) |
Starts a new mobileactivation service on the specified device and connects to it. More... | |
mobileactivation_error_t | mobileactivation_client_free (mobileactivation_client_t client) |
Disconnects a mobileactivation client from the device and frees up the mobileactivation client data. More... | |
mobileactivation_error_t | mobileactivation_get_activation_state (mobileactivation_client_t client, plist_t *state) |
Retrieves the device's activation state. More... | |
mobileactivation_error_t | mobileactivation_create_activation_session_info (mobileactivation_client_t client, plist_t *blob) |
Retrieves a session blob required for 'drmHandshake' via albert.apple.com. More... | |
mobileactivation_error_t | mobileactivation_create_activation_info (mobileactivation_client_t client, plist_t *info) |
Retrieves the activation info required for device activation. More... | |
mobileactivation_error_t | mobileactivation_create_activation_info_with_session (mobileactivation_client_t client, plist_t handshake_response, plist_t *info) |
Retrieves the activation info required for device activation in 'session' mode. More... | |
mobileactivation_error_t | mobileactivation_activate (mobileactivation_client_t client, plist_t activation_record) |
Activates the device with the given activation record. More... | |
mobileactivation_error_t | mobileactivation_activate_with_session (mobileactivation_client_t client, plist_t activation_record, plist_t headers) |
Activates the device with the given activation record in 'session' mode. More... | |
mobileactivation_error_t | mobileactivation_deactivate (mobileactivation_client_t client) |
Deactivates the device. More... | |
Handle device activation and deactivation.
mobileactivation_error_t mobileactivation_activate | ( | mobileactivation_client_t | client, |
plist_t | activation_record | ||
) |
Activates the device with the given activation record.
The activation record plist dictionary must be obtained using the activation protocol requesting from Apple's https webservice.
client | The mobileactivation client |
activation_record | The activation record plist dictionary |
mobileactivation_error_t mobileactivation_activate_with_session | ( | mobileactivation_client_t | client, |
plist_t | activation_record, | ||
plist_t | headers | ||
) |
Activates the device with the given activation record in 'session' mode.
The activation record plist must be obtained using the activation protocol requesting from Apple's https webservice.
client | The mobileactivation client |
activation_record | The activation record in plist format |
headers | A plist dictionary with the activation response headers as returned from Apple's https webservice with the activation record |
mobileactivation_error_t mobileactivation_client_free | ( | mobileactivation_client_t | client | ) |
Disconnects a mobileactivation client from the device and frees up the mobileactivation client data.
client | The mobileactivation client to disconnect and free. |
mobileactivation_error_t mobileactivation_client_new | ( | idevice_t | device, |
lockdownd_service_descriptor_t | service, | ||
mobileactivation_client_t * | client | ||
) |
Connects to the mobileactivation service on the specified device.
device | The device to connect to. |
service | The service descriptor returned by lockdownd_start_service. |
client | Reference that will point to a newly allocated mobileactivation_client_t upon successful return. |
mobileactivation_error_t mobileactivation_client_start_service | ( | idevice_t | device, |
mobileactivation_client_t * | client, | ||
const char * | label | ||
) |
Starts a new mobileactivation service on the specified device and connects to it.
device | The device to connect to. |
client | Pointer that will point to a newly allocated mobileactivation_client_t upon successful return. Must be freed using mobileactivation_client_free() after use. |
label | The label to use for communication. Usually the program name. Pass NULL to disable sending the label in requests to lockdownd. |
mobileactivation_error_t mobileactivation_create_activation_info | ( | mobileactivation_client_t | client, |
plist_t * | info | ||
) |
Retrieves the activation info required for device activation.
client | The mobileactivation client |
info | Pointer to a plist_t variable that will be set to the activation info created by the mobileactivation service. The consumer is responsible for freeing the returned object using plist_free(). |
mobileactivation_error_t mobileactivation_create_activation_info_with_session | ( | mobileactivation_client_t | client, |
plist_t | handshake_response, | ||
plist_t * | info | ||
) |
Retrieves the activation info required for device activation in 'session' mode.
This function expects a handshake result retrieved from https://albert.apple.com/deviceservies/drmHandshake with a blob provided by mobileactivation_create_activation_session_info().
client | The mobileactivation client @aram handshake_response The handshake response returned from drmHandshake |
info | Pointer to a plist_t variable that will be set to the activation info created by the mobileactivation service. The consumer is responsible for freeing the returned object using plist_free(). |
mobileactivation_error_t mobileactivation_create_activation_session_info | ( | mobileactivation_client_t | client, |
plist_t * | blob | ||
) |
Retrieves a session blob required for 'drmHandshake' via albert.apple.com.
client | The mobileactivation client |
blob | Pointer to a plist_t variable that will be set to the session blob created by the mobielactivation service. The consumer is responsible for freeing the returned object using plist_free(). |
mobileactivation_error_t mobileactivation_deactivate | ( | mobileactivation_client_t | client | ) |
Deactivates the device.
client | The mobileactivation client |
mobileactivation_error_t mobileactivation_get_activation_state | ( | mobileactivation_client_t | client, |
plist_t * | state | ||
) |
Retrieves the device's activation state.
client | The mobileactivation client. |
state | Pointer to a plist_t variable that will be set to the activation state reported by the mobileactivation service. The consumer is responsible for freeing the returned object using plist_free(). |