summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/service.h31
1 files changed, 1 insertions, 30 deletions
diff --git a/src/service.h b/src/service.h
index 8cea7a3..512f9e2 100644
--- a/src/service.h
+++ b/src/service.h
@@ -21,41 +21,12 @@
21#ifndef SERVICE_H 21#ifndef SERVICE_H
22#define SERVICE_H 22#define SERVICE_H
23 23
24#include "libimobiledevice/service.h"
24#include "libimobiledevice/lockdown.h" 25#include "libimobiledevice/lockdown.h"
25#include "idevice.h" 26#include "idevice.h"
26 27
27/* Error Codes */
28#define SERVICE_E_SUCCESS 0
29#define SERVICE_E_INVALID_ARG -1
30#define SERVICE_E_MUX_ERROR -3
31#define SERVICE_E_SSL_ERROR -4
32#define SERVICE_E_START_SERVICE_ERROR -5
33#define SERVICE_E_UNKNOWN_ERROR -256
34
35struct service_client_private { 28struct service_client_private {
36 idevice_connection_t connection; 29 idevice_connection_t connection;
37}; 30};
38 31
39typedef struct service_client_private *service_client_t;
40
41typedef int16_t service_error_t;
42
43#define SERVICE_CONSTRUCTOR(x) (int16_t (*)(idevice_t, lockdownd_service_descriptor_t, void**))(x)
44
45/* creation and destruction */
46service_error_t service_client_new(idevice_t device, lockdownd_service_descriptor_t service, service_client_t *client);
47service_error_t service_client_factory_start_service(idevice_t device, const char* service_name, void **client, const char* label, int16_t (*constructor_func)(idevice_t, lockdownd_service_descriptor_t, void**), int16_t *error_code);
48service_error_t service_client_free(service_client_t client);
49
50/* sending */
51service_error_t service_send(service_client_t client, const char *data, uint32_t size, uint32_t *sent);
52
53/* receiving */
54service_error_t service_receive_with_timeout(service_client_t client, char *data, uint32_t size, uint32_t *received, unsigned int timeout);
55service_error_t service_receive(service_client_t client, char *data, uint32_t size, uint32_t *received);
56
57/* misc */
58service_error_t service_enable_ssl(service_client_t client);
59service_error_t service_disable_ssl(service_client_t client);
60
61#endif 32#endif