summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorGravatar Martin Szulecki2010-01-12 17:17:48 +0100
committerGravatar Martin Szulecki2010-01-12 17:17:48 +0100
commit219a8db037ec1cc163d2ad4902e6e4578040a2de (patch)
tree2084e1b9bd0b3666042ce0a1cf2c68f6d8650ee5 /include
parente7884c40d73e25ee6e6addb3f9d9efc0ffbe068e (diff)
downloadlibimobiledevice-219a8db037ec1cc163d2ad4902e6e4578040a2de.tar.gz
libimobiledevice-219a8db037ec1cc163d2ad4902e6e4578040a2de.tar.bz2
Refactor lockdown session handling and expose it in public API
This splits out SSL code and allows implementations to manually handle session start and stop if needed. Also brings the API closer to the lockdown request protocol.
Diffstat (limited to 'include')
-rw-r--r--include/libiphone/lockdown.h13
1 files changed, 9 insertions, 4 deletions
diff --git a/include/libiphone/lockdown.h b/include/libiphone/lockdown.h
index e134f5f..f4b3f6a 100644
--- a/include/libiphone/lockdown.h
+++ b/include/libiphone/lockdown.h
@@ -47,6 +47,7 @@ extern "C" {
47#define LOCKDOWN_E_ACTIVATION_FAILED -13 47#define LOCKDOWN_E_ACTIVATION_FAILED -13
48#define LOCKDOWN_E_PASSWORD_PROTECTED -14 48#define LOCKDOWN_E_PASSWORD_PROTECTED -14
49#define LOCKDOWN_E_NO_RUNNING_SESSION -15 49#define LOCKDOWN_E_NO_RUNNING_SESSION -15
50#define LOCKDOWN_E_INVALID_HOST_ID -16
50 51
51#define LOCKDOWN_E_UNKNOWN_ERROR -256 52#define LOCKDOWN_E_UNKNOWN_ERROR -256
52 53
@@ -59,13 +60,14 @@ typedef struct lockdownd_client_int *lockdownd_client_t;
59lockdownd_error_t lockdownd_client_new(iphone_device_t device, lockdownd_client_t *client, const char *label); 60lockdownd_error_t lockdownd_client_new(iphone_device_t device, lockdownd_client_t *client, const char *label);
60lockdownd_error_t lockdownd_client_new_with_handshake(iphone_device_t device, lockdownd_client_t *client, const char *label); 61lockdownd_error_t lockdownd_client_new_with_handshake(iphone_device_t device, lockdownd_client_t *client, const char *label);
61lockdownd_error_t lockdownd_client_free(lockdownd_client_t client); 62lockdownd_error_t lockdownd_client_free(lockdownd_client_t client);
62void lockdownd_client_set_label(lockdownd_client_t client, const char *label); 63
63lockdownd_error_t lockdownd_query_type(lockdownd_client_t client, char **type); 64lockdownd_error_t lockdownd_query_type(lockdownd_client_t client, char **type);
64lockdownd_error_t lockdownd_get_value(lockdownd_client_t client, const char *domain, const char *key, plist_t *value); 65lockdownd_error_t lockdownd_get_value(lockdownd_client_t client, const char *domain, const char *key, plist_t *value);
65lockdownd_error_t lockdownd_set_value(lockdownd_client_t client, const char *domain, const char *key, plist_t value); 66lockdownd_error_t lockdownd_set_value(lockdownd_client_t client, const char *domain, const char *key, plist_t value);
66lockdownd_error_t lockdownd_remove_value(lockdownd_client_t client, const char *domain, const char *key); 67lockdownd_error_t lockdownd_remove_value(lockdownd_client_t client, const char *domain, const char *key);
67lockdownd_error_t lockdownd_start_service(lockdownd_client_t client, const char *service, int *port); 68lockdownd_error_t lockdownd_start_service(lockdownd_client_t client, const char *service, int *port);
68lockdownd_error_t lockdownd_stop_session(lockdownd_client_t client); 69lockdownd_error_t lockdownd_start_session(lockdownd_client_t client, const char *host_id, char **session_id, int *ssl_enabled);
70lockdownd_error_t lockdownd_stop_session(lockdownd_client_t client, const char *session_id);
69lockdownd_error_t lockdownd_send(lockdownd_client_t client, plist_t plist); 71lockdownd_error_t lockdownd_send(lockdownd_client_t client, plist_t plist);
70lockdownd_error_t lockdownd_recv(lockdownd_client_t client, plist_t *plist); 72lockdownd_error_t lockdownd_recv(lockdownd_client_t client, plist_t *plist);
71lockdownd_error_t lockdownd_pair(lockdownd_client_t client, char *host_id); 73lockdownd_error_t lockdownd_pair(lockdownd_client_t client, char *host_id);
@@ -73,11 +75,14 @@ lockdownd_error_t lockdownd_validate_pair(lockdownd_client_t client, char *host_
73lockdownd_error_t lockdownd_unpair(lockdownd_client_t client, char *host_id); 75lockdownd_error_t lockdownd_unpair(lockdownd_client_t client, char *host_id);
74lockdownd_error_t lockdownd_activate(lockdownd_client_t client, plist_t activation_record); 76lockdownd_error_t lockdownd_activate(lockdownd_client_t client, plist_t activation_record);
75lockdownd_error_t lockdownd_deactivate(lockdownd_client_t client); 77lockdownd_error_t lockdownd_deactivate(lockdownd_client_t client);
76lockdownd_error_t lockdownd_get_device_uuid(lockdownd_client_t control, char **uuid);
77lockdownd_error_t lockdownd_get_device_name(lockdownd_client_t client, char **device_name);
78lockdownd_error_t lockdownd_enter_recovery(lockdownd_client_t client); 78lockdownd_error_t lockdownd_enter_recovery(lockdownd_client_t client);
79lockdownd_error_t lockdownd_goodbye(lockdownd_client_t client); 79lockdownd_error_t lockdownd_goodbye(lockdownd_client_t client);
80 80
81/* Helper */
82void lockdownd_client_set_label(lockdownd_client_t client, const char *label);
83lockdownd_error_t lockdownd_get_device_uuid(lockdownd_client_t control, char **uuid);
84lockdownd_error_t lockdownd_get_device_name(lockdownd_client_t client, char **device_name);
85
81#ifdef __cplusplus 86#ifdef __cplusplus
82} 87}
83#endif 88#endif