libimobiledevice  1.1.5
Macros | Typedefs | Functions
diagnostics_relay.h File Reference

Request iOS diagnostic information from device. More...

Macros

#define DIAGNOSTICS_RELAY_ACTION_FLAG_WAIT_FOR_DISCONNECT   (1 << 1)
#define DIAGNOSTICS_RELAY_ACTION_FLAG_DISPLAY_PASS   (1 << 2)
#define DIAGNOSTICS_RELAY_ACTION_FLAG_DISPLAY_FAIL   (1 << 3)
#define DIAGNOSTICS_RELAY_REQUEST_TYPE_ALL   "All"
#define DIAGNOSTICS_RELAY_REQUEST_TYPE_WIFI   "WiFi"
#define DIAGNOSTICS_RELAY_REQUEST_TYPE_GAS_GAUGE   "GasGauge"
#define DIAGNOSTICS_RELAY_REQUEST_TYPE_NAND   "NAND"

Typedefs

typedef int16_t diagnostics_relay_error_t
 Represents an error code.
typedef
diagnostics_relay_client_private
diagnostics_relay_client_t
 The client handle.

Functions

diagnostics_relay_error_t diagnostics_relay_client_new (idevice_t device, lockdownd_service_descriptor_t service, diagnostics_relay_client_t *client)
 Connects to the diagnostics_relay service on the specified device.
diagnostics_relay_error_t diagnostics_relay_client_free (diagnostics_relay_client_t client)
 Disconnects a diagnostics_relay client from the device and frees up the diagnostics_relay client data.
diagnostics_relay_error_t diagnostics_relay_goodbye (diagnostics_relay_client_t client)
 Sends the Goodbye request signaling the end of communication.
diagnostics_relay_error_t diagnostics_relay_sleep (diagnostics_relay_client_t client)
 Puts the device into deep sleep mode and disconnects from host.
diagnostics_relay_error_t diagnostics_relay_restart (diagnostics_relay_client_t client, int flags)
 Restart the device and optionally show a user notification.
diagnostics_relay_error_t diagnostics_relay_shutdown (diagnostics_relay_client_t client, int flags)
 Shutdown of the device and optionally show a user notification.
diagnostics_relay_error_t diagnostics_relay_request_diagnostics (diagnostics_relay_client_t client, const char *type, plist_t *diagnostics)
diagnostics_relay_error_t diagnostics_relay_query_mobilegestalt (diagnostics_relay_client_t client, plist_t keys, plist_t *result)
diagnostics_relay_error_t diagnostics_relay_query_ioregistry_entry (diagnostics_relay_client_t client, const char *name, const char *class, plist_t *result)
diagnostics_relay_error_t diagnostics_relay_query_ioregistry_plane (diagnostics_relay_client_t client, const char *plane, plist_t *result)

Error Codes

#define DIAGNOSTICS_RELAY_E_SUCCESS   0
#define DIAGNOSTICS_RELAY_E_INVALID_ARG   -1
#define DIAGNOSTICS_RELAY_E_PLIST_ERROR   -2
#define DIAGNOSTICS_RELAY_E_MUX_ERROR   -3
#define DIAGNOSTICS_RELAY_E_UNKNOWN_REQUEST   -4
#define DIAGNOSTICS_RELAY_E_UNKNOWN_ERROR   -256

Detailed Description

Request iOS diagnostic information from device.


Typedef Documentation

The client handle.

typedef int16_t diagnostics_relay_error_t

Represents an error code.


Function Documentation

diagnostics_relay_error_t diagnostics_relay_client_free ( diagnostics_relay_client_t  client)

Disconnects a diagnostics_relay client from the device and frees up the diagnostics_relay client data.

Parameters:
clientThe diagnostics_relay client to disconnect and free.
Returns:
DIAGNOSTICS_RELAY_E_SUCCESS on success, DIAGNOSTICS_RELAY_E_INVALID_ARG when one of client or client->parent is invalid, or DIAGNOSTICS_RELAY_E_UNKNOWN_ERROR when the was an error freeing the parent property_list_service client.
diagnostics_relay_error_t diagnostics_relay_client_new ( idevice_t  device,
lockdownd_service_descriptor_t  service,
diagnostics_relay_client_t client 
)

Connects to the diagnostics_relay service on the specified device.

Parameters:
deviceThe device to connect to.
serviceThe service descriptor returned by lockdownd_start_service.
clientReference that will point to a newly allocated diagnostics_relay_client_t upon successful return.
Returns:
DIAGNOSTICS_RELAY_E_SUCCESS on success, DIAGNOSTICS_RELAY_E_INVALID_ARG when one of the parameters is invalid, or DIAGNOSTICS_RELAY_E_MUX_ERROR when the connection failed.
diagnostics_relay_error_t diagnostics_relay_goodbye ( diagnostics_relay_client_t  client)

Sends the Goodbye request signaling the end of communication.

Parameters:
clientThe diagnostics_relay client
Returns:
DIAGNOSTICS_RELAY_E_SUCCESS on success, DIAGNOSTICS_RELAY_E_INVALID_ARG when client is NULL, DIAGNOSTICS_RELAY_E_PLIST_ERROR if the device did not acknowledge the request
diagnostics_relay_error_t diagnostics_relay_restart ( diagnostics_relay_client_t  client,
int  flags 
)

Restart the device and optionally show a user notification.

Parameters:
clientThe diagnostics_relay client
flagsA binary flag combination of DIAGNOSTICS_RELAY_ACTION_FLAG_WAIT_FOR_DISCONNECT to wait until diagnostics_relay_client_free() disconnects before execution and DIAGNOSTICS_RELAY_ACTION_FLAG_DISPLAY_FAIL to show a "FAIL" dialog or DIAGNOSTICS_RELAY_ACTION_FLAG_DISPLAY_PASS to show an "OK" dialog
Returns:
DIAGNOSTICS_RELAY_E_SUCCESS on success, DIAGNOSTICS_RELAY_E_INVALID_ARG when client is NULL, DIAGNOSTICS_RELAY_E_PLIST_ERROR if the device did not acknowledge the request
diagnostics_relay_error_t diagnostics_relay_shutdown ( diagnostics_relay_client_t  client,
int  flags 
)

Shutdown of the device and optionally show a user notification.

Parameters:
clientThe diagnostics_relay client
flagsA binary flag combination of DIAGNOSTICS_RELAY_ACTION_FLAG_WAIT_FOR_DISCONNECT to wait until diagnostics_relay_client_free() disconnects before execution and DIAGNOSTICS_RELAY_ACTION_FLAG_DISPLAY_FAIL to show a "FAIL" dialog or DIAGNOSTICS_RELAY_ACTION_FLAG_DISPLAY_PASS to show an "OK" dialog
Returns:
DIAGNOSTICS_RELAY_E_SUCCESS on success, DIAGNOSTICS_RELAY_E_INVALID_ARG when client is NULL, DIAGNOSTICS_RELAY_E_PLIST_ERROR if the device did not acknowledge the request
diagnostics_relay_error_t diagnostics_relay_sleep ( diagnostics_relay_client_t  client)

Puts the device into deep sleep mode and disconnects from host.

Parameters:
clientThe diagnostics_relay client
Returns:
DIAGNOSTICS_RELAY_E_SUCCESS on success, DIAGNOSTICS_RELAY_E_INVALID_ARG when client is NULL, DIAGNOSTICS_RELAY_E_PLIST_ERROR if the device did not acknowledge the request