libimobiledevice  1.3.0
API Documentation - Return to Homepage
Macros | Typedefs | Enumerations | Functions
debugserver.h File Reference

Description

Communicate with debugserver on the device.

Macros

#define DEBUGSERVER_SERVICE_NAME   "com.apple.debugserver"
 

Typedefs

typedef struct debugserver_client_private debugserver_client_private
 
typedef debugserver_client_private * debugserver_client_t
 The client handle.
 
typedef struct debugserver_command_private debugserver_command_private
 
typedef debugserver_command_private * debugserver_command_t
 The command handle.
 

Enumerations

enum  debugserver_error_t {
  DEBUGSERVER_E_SUCCESS = 0,
  DEBUGSERVER_E_INVALID_ARG = -1,
  DEBUGSERVER_E_MUX_ERROR = -2,
  DEBUGSERVER_E_SSL_ERROR = -3,
  DEBUGSERVER_E_RESPONSE_ERROR = -4,
  DEBUGSERVER_E_TIMEOUT = -5,
  DEBUGSERVER_E_UNKNOWN_ERROR = -256
}
 Error Codes.
 

Functions

debugserver_error_t debugserver_client_new (idevice_t device, lockdownd_service_descriptor_t service, debugserver_client_t *client)
 Connects to the debugserver service on the specified device. More...
 
debugserver_error_t debugserver_client_start_service (idevice_t device, debugserver_client_t *client, const char *label)
 Starts a new debugserver service on the specified device and connects to it. More...
 
debugserver_error_t debugserver_client_free (debugserver_client_t client)
 Disconnects a debugserver client from the device and frees up the debugserver client data. More...
 
debugserver_error_t debugserver_client_send (debugserver_client_t client, const char *data, uint32_t size, uint32_t *sent)
 Sends raw data using the given debugserver service client. More...
 
debugserver_error_t debugserver_client_receive_with_timeout (debugserver_client_t client, char *data, uint32_t size, uint32_t *received, unsigned int timeout)
 Receives raw data using the given debugserver client with specified timeout. More...
 
debugserver_error_t debugserver_client_receive (debugserver_client_t client, char *data, uint32_t size, uint32_t *received)
 Receives raw data from the debugserver service. More...
 
debugserver_error_t debugserver_client_send_command (debugserver_client_t client, debugserver_command_t command, char **response, size_t *response_size)
 Sends a command to the debugserver service. More...
 
debugserver_error_t debugserver_client_receive_response (debugserver_client_t client, char **response, size_t *response_size)
 Receives and parses response of debugserver service. More...
 
debugserver_error_t debugserver_client_set_ack_mode (debugserver_client_t client, int enabled)
 Controls status of ACK mode when sending commands or receiving responses. More...
 
debugserver_error_t debugserver_client_set_argv (debugserver_client_t client, int argc, char *argv[], char **response)
 Sets the argv which launches an app. More...
 
debugserver_error_t debugserver_client_set_environment_hex_encoded (debugserver_client_t client, const char *env, char **response)
 Adds or sets an environment variable. More...
 
debugserver_error_t debugserver_command_new (const char *name, int argc, char *argv[], debugserver_command_t *command)
 Creates and initializes a new command object. More...
 
debugserver_error_t debugserver_command_free (debugserver_command_t command)
 Frees memory of command object. More...
 
void debugserver_encode_string (const char *buffer, char **encoded_buffer, uint32_t *encoded_length)
 Encodes a string into hex notation. More...
 
void debugserver_decode_string (const char *encoded_buffer, size_t encoded_length, char **buffer)
 Decodes a hex encoded string. More...