preboard.h File Reference

## Description

Service to 'preboard' a device, which allows to ask for passcode during firmware updates.

## Macros

#define | PREBOARD_SERVICE_NAME "com.apple.preboardservice_v2"
| Service identifier passed to lockdownd_start_service() to start the preboard service.

## Typedefs

typedef preboard_client_private * | preboard_client_t
| The client handle.
typedef void(* | preboard_status_cb_t) (plist_t message, void *user_data)
| Reports the status response of the given command.

## Enumerations

enum | preboard_error_t { PREBOARD_E_SUCCESS = 0 , PREBOARD_E_INVALID_ARG = -1 , PREBOARD_E_PLIST_ERROR = -2 , PREBOARD_E_MUX_ERROR = -3 , PREBOARD_E_SSL_ERROR = -4 , PREBOARD_E_NOT_ENOUGH_DATA = -5 , PREBOARD_E_TIMEOUT = -6 , PREBOARD_E_OP_IN_PROGRESS = -10 , PREBOARD_E_UNKNOWN_ERROR = -256 }
| Error Codes.

## Functions

LIBIMOBILEDEVICE_API preboard_error_t | preboard_client_new (idevice_t device, lockdownd_service_descriptor_t service, preboard_client_t *client)
| Connects to the preboard service on the specified device.
LIBIMOBILEDEVICE_API preboard_error_t | preboard_client_start_service (idevice_t device, preboard_client_t *client, const char *label)
| Starts a new preboard service on the specified device and connects to it.
LIBIMOBILEDEVICE_API preboard_error_t | preboard_client_free (preboard_client_t client)
| Disconnects a preboard client from the device and frees up the preboard client data.
LIBIMOBILEDEVICE_API preboard_error_t | preboard_send (preboard_client_t client, plist_t plist)
| Sends a plist to the service.
LIBIMOBILEDEVICE_API preboard_error_t | preboard_receive (preboard_client_t client, plist_t *plist)
| Receives a plist from the service.
LIBIMOBILEDEVICE_API preboard_error_t | preboard_receive_with_timeout (preboard_client_t client, plist_t *plist, uint32_t timeout_ms)
| Receives a plist from the service with the specified timeout.
LIBIMOBILEDEVICE_API preboard_error_t | preboard_create_stashbag (preboard_client_t client, plist_t manifest, preboard_status_cb_t status_cb, void *user_data)
| Tells the preboard service to create a stashbag.
LIBIMOBILEDEVICE_API preboard_error_t | preboard_commit_stashbag (preboard_client_t client, plist_t manifest, preboard_status_cb_t status_cb, void *user_data)
| Instructs the preboard service to commit a previously created stashbag.