lockdownd_activate
lockdownd_client_free
lockdownd_client_new
lockdownd_client_new_with_handshake
lockdownd_client_set_label
lockdownd_client_t
lockdownd_cu_pairing_cb_t
lockdownd_cu_pairing_cb_type_t
lockdownd_cu_pairing_create
lockdownd_cu_send_request_and_get_reply
lockdownd_data_classes_free
lockdownd_deactivate
lockdownd_enter_recovery
lockdownd_error_t
lockdownd_get_device_name
lockdownd_get_device_udid
lockdownd_get_sync_data_classes
lockdownd_get_value
lockdownd_get_value_cu
lockdownd_goodbye
lockdownd_pair
lockdownd_pair_cu
lockdownd_pair_with_options
lockdownd_query_type
lockdownd_receive
lockdownd_remove_value
lockdownd_send
lockdownd_service_descriptor_free
lockdownd_set_value
lockdownd_start_service
lockdownd_start_service_with_escrow_bag
lockdownd_start_session
lockdownd_stop_session
lockdownd_strerror
lockdownd_unpair
lockdownd_validate_pair

## lockdownd_client_new_with_handshake()

LIBIMOBILEDEVICE_API lockdownd_error_t lockdownd_client_new_with_handshake | ( | idevice_t | device,
|  | lockdownd_client_t * | client,
|  | const char * | label )

Creates a new lockdownd client for the device and starts initial handshake.

The handshake consists out of query_type, validate_pair, pair and start_session calls. It uses the internal pairing record management.

Note
  The device disconnects automatically if the lockdown connection idles for more than 10 seconds. Make sure to call lockdownd_client_free() as soon as the connection is no longer needed.

Parameters

  device | The device to create a lockdownd client for
  client | The pointer to the location of the new lockdownd_client
  label | The label to use for communication. Usually the program name. Pass NULL to disable sending the label in requests to lockdownd.

Returns
  LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when client is NULL, LOCKDOWN_E_INVALID_CONF if configuration data is wrong