summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/libirecovery.h63
1 files changed, 31 insertions, 32 deletions
diff --git a/include/libirecovery.h b/include/libirecovery.h
index f977ebb..9d30497 100644
--- a/include/libirecovery.h
+++ b/include/libirecovery.h
@@ -19,17 +19,17 @@
19#include <libusb-1.0/libusb.h> 19#include <libusb-1.0/libusb.h>
20 20
21typedef enum { 21typedef enum {
22 IRECV_SUCCESS = 0, 22 IRECV_E_SUCCESS = 0,
23 IRECV_ERROR_NO_DEVICE = -1, 23 IRECV_E_NO_DEVICE = -1,
24 IRECV_ERROR_OUT_OF_MEMORY = -2, 24 IRECV_E_OUT_OF_MEMORY = -2,
25 IRECV_ERROR_UNABLE_TO_CONNECT = -3, 25 IRECV_E_UNABLE_TO_CONNECT = -3,
26 IRECV_ERROR_INVALID_INPUT = -4, 26 IRECV_E_INVALID_INPUT = -4,
27 IRECV_ERROR_UNKNOWN = -5, 27 IRECV_E_UNKNOWN = -5,
28 IRECV_ERROR_FILE_NOT_FOUND = -6, 28 IRECV_E_FILE_NOT_FOUND = -6,
29 IRECV_ERROR_USB_UPLOAD = -7, 29 IRECV_E_USB_UPLOAD = -7,
30 IRECV_ERROR_USB_STATUS = -8, 30 IRECV_E_USB_STATUS = -8,
31 IRECV_ERROR_USB_INTERFACE = -9, 31 IRECV_E_USB_INTERFACE = -9,
32 IRECV_ERROR_USB_CONFIGURATION = -10 32 IRECV_E_USB_CONFIGURATION = -10
33} irecv_error_t; 33} irecv_error_t;
34 34
35#define APPLE_VENDOR_ID 0x05AC 35#define APPLE_VENDOR_ID 0x05AC
@@ -42,13 +42,13 @@ typedef enum {
42 kDfuMode = 0x1227 42 kDfuMode = 0x1227
43} irecv_mode_t; 43} irecv_mode_t;
44 44
45struct irecv_device; 45struct irecv_client;
46typedef struct irecv_device irecv_device_t; 46typedef struct irecv_client* irecv_client_t;
47 47
48typedef int(*irecv_send_callback)(irecv_device_t* device, unsigned char* data, int size); 48typedef int(*irecv_send_callback)(irecv_client_t client, unsigned char* data, int size);
49typedef int(*irecv_receive_callback)(irecv_device_t* device, unsigned char* data, int size); 49typedef int(*irecv_receive_callback)(irecv_client_t client, unsigned char* data, int size);
50 50
51struct irecv_device { 51struct irecv_client {
52 int debug; 52 int debug;
53 int config; 53 int config;
54 int interface; 54 int interface;
@@ -61,21 +61,20 @@ struct irecv_device {
61 irecv_receive_callback receive_callback; 61 irecv_receive_callback receive_callback;
62}; 62};
63 63
64irecv_device_t* irecv_init();
65const char* irecv_strerror(irecv_error_t error); 64const char* irecv_strerror(irecv_error_t error);
66irecv_error_t irecv_open(irecv_device_t* device, const char *uuid); 65irecv_error_t irecv_open(irecv_client_t* client, const char *uuid);
67irecv_error_t irecv_exit(irecv_device_t* device); 66irecv_error_t irecv_reset(irecv_client_t client);
68irecv_error_t irecv_reset(irecv_device_t* device); 67irecv_error_t irecv_close(irecv_client_t client);
69irecv_error_t irecv_close(irecv_device_t* device); 68irecv_error_t irecv_receive(irecv_client_t client);
70irecv_error_t irecv_receive(irecv_device_t* device); 69irecv_error_t irecv_set_debug(irecv_client_t client, int level);
71irecv_error_t irecv_set_debug(irecv_device_t* device, int level); 70irecv_error_t irecv_getenv(irecv_client_t client, unsigned char** var);
72irecv_error_t irecv_getenv(irecv_device_t* device, unsigned char** var); 71irecv_error_t irecv_get_ecid(irecv_client_t client, unsigned long long* pecid);
73irecv_error_t irecv_send(irecv_device_t* device, unsigned char* command); 72irecv_error_t irecv_send(irecv_client_t client, unsigned char* command);
74irecv_error_t irecv_send_file(irecv_device_t* device, const char* filename); 73irecv_error_t irecv_send_file(irecv_client_t client, const char* filename);
75irecv_error_t irecv_send_command(irecv_device_t* device, unsigned char* command); 74irecv_error_t irecv_send_command(irecv_client_t client, unsigned char* command);
76irecv_error_t irecv_set_configuration(irecv_device_t* device, int configuration); 75irecv_error_t irecv_set_configuration(irecv_client_t client, int configuration);
77irecv_error_t irecv_set_sender(irecv_device_t* device, irecv_send_callback callback); 76irecv_error_t irecv_set_sender(irecv_client_t client, irecv_send_callback callback);
78irecv_error_t irecv_set_receiver(irecv_device_t* device, irecv_receive_callback callback); 77irecv_error_t irecv_set_receiver(irecv_client_t client, irecv_receive_callback callback);
79irecv_error_t irecv_set_interface(irecv_device_t* device, int interface, int alt_interface); 78irecv_error_t irecv_set_interface(irecv_client_t client, int interface, int alt_interface);
80irecv_error_t irecv_send_buffer(irecv_device_t* device, unsigned char* buffer, unsigned int length); 79irecv_error_t irecv_send_buffer(irecv_client_t client, unsigned char* buffer, unsigned int length);
81 80