libimobiledevice/file_relay.h File Reference

Retrieve compressed CPIO archives. More...

Typedefs

typedef int16_t file_relay_error_t
 Represents an error code.
typedef file_relay_client_privatefile_relay_client_t
 The client handle.

Functions

file_relay_error_t file_relay_client_new (idevice_t device, uint16_t port, file_relay_client_t *client)
 Connects to the file_relay service on the specified device.
file_relay_error_t file_relay_client_free (file_relay_client_t client)
 Disconnects a file_relay client from the device and frees up the file_relay client data.
file_relay_error_t file_relay_request_sources (file_relay_client_t client, const char **sources, idevice_connection_t *connection)
 Request data for the given sources.

Error Codes



#define FILE_RELAY_E_SUCCESS   0
#define FILE_RELAY_E_INVALID_ARG   -1
#define FILE_RELAY_E_PLIST_ERROR   -2
#define FILE_RELAY_E_MUX_ERROR   -3
#define FILE_RELAY_E_INVALID_SOURCE   -4
#define FILE_RELAY_E_STAGING_EMPTY   -5
#define FILE_RELAY_E_UNKNOWN_ERROR   -256

Detailed Description

Retrieve compressed CPIO archives.


Typedef Documentation

The client handle.

typedef int16_t file_relay_error_t

Represents an error code.


Function Documentation

file_relay_error_t file_relay_client_free ( file_relay_client_t  client  ) 

Disconnects a file_relay client from the device and frees up the file_relay client data.

Parameters:
client The file_relay client to disconnect and free.
Returns:
FILE_RELAY_E_SUCCESS on success, FILE_RELAY_E_INVALID_ARG when one of client or client->parent is invalid, or FILE_RELAY_E_UNKNOWN_ERROR when the was an error freeing the parent property_list_service client.
file_relay_error_t file_relay_client_new ( idevice_t  device,
uint16_t  port,
file_relay_client_t client 
)

Connects to the file_relay service on the specified device.

Parameters:
device The device to connect to.
Parameters:
port Destination port (usually given by lockdownd_start_service).
Parameters:
client Reference that will point to a newly allocated file_relay_client_t upon successful return.
Returns:
FILE_RELAY_E_SUCCESS on success, FILE_RELAY_E_INVALID_ARG when one of the parameters is invalid, or FILE_RELAY_E_MUX_ERROR when the connection failed.
file_relay_error_t file_relay_request_sources ( file_relay_client_t  client,
const char **  sources,
idevice_connection_t connection 
)

Request data for the given sources.

Parameters:
client The connected file_relay client.
Parameters:
sources A NULL-terminated list of sources to retrieve. Valid sources are:
  • AppleSupport
    • Network
      • VPN
        • WiFi
          • UserDatabases
            • CrashReporter
              • tmp
                • SystemConfiguration
                  Parameters:
                  connection The connection that has to be used for receiving the data using idevice_connection_receive(). The connection will be closed automatically by the device, but use file_relay_client_free() to clean up properly.
                  Note:
                  WARNING: Don't call this function without reading the data afterwards. A directory mobile_file_relay.XXXX used for creating the archive will remain in the /tmp directory otherwise.
                  Returns:
                  FILE_RELAY_E_SUCCESS on succes, FILE_RELAY_E_INVALID_ARG when one or more parameters are invalid, FILE_RELAY_E_MUX_ERROR if a communication error occurs, FILE_RELAY_E_PLIST_ERROR when the received result is NULL or is not a valid plist, FILE_RELAY_E_INVALID_SOURCE if one or more sources are invalid, FILE_RELAY_E_STAGING_EMPTY if no data is available for the given sources, or FILE_RELAY_E_UNKNOWN_ERROR otherwise.
Generated on Thu Dec 16 22:53:47 2010 for libimobiledevice by  doxygen 1.6.3