• Home
  • API Documentation
Show / Hide Table of Contents
  • iMobileDevice
    • ILibiMobileDevice
    • LibiMobileDevice
    • NativeLibraries
    • NativeStringArrayMarshaler
    • NativeStringMarshaler
    • Utf8Marshal
  • iMobileDevice.Afc
    • AfcApi
    • AfcClientHandle
    • AfcClientHandleDelegateMarshaler
    • AfcDictionaryMarshaler
    • AfcError
    • AfcErrorExtensions
    • AfcException
    • AfcFileMode
    • AfcLinkType
    • AfcLockOp
    • AfcNativeMethods
    • IAfcApi
  • iMobileDevice.DebugServer
    • DebugServerApi
    • DebugServerClientHandle
    • DebugServerClientHandleDelegateMarshaler
    • DebugServerCommandHandle
    • DebugServerCommandHandleDelegateMarshaler
    • DebugServerError
    • DebugServerErrorExtensions
    • DebugServerException
    • DebugServerNativeMethods
    • IDebugServerApi
  • iMobileDevice.DiagnosticsRelay
    • DiagnosticsRelayAction
    • DiagnosticsRelayApi
    • DiagnosticsRelayClientHandle
    • DiagnosticsRelayClientHandleDelegateMarshaler
    • DiagnosticsRelayError
    • DiagnosticsRelayErrorExtensions
    • DiagnosticsRelayException
    • DiagnosticsRelayNativeMethods
    • IDiagnosticsRelayApi
  • iMobileDevice.FileRelay
    • FileRelayApi
    • FileRelayClientHandle
    • FileRelayClientHandleDelegateMarshaler
    • FileRelayError
    • FileRelayErrorExtensions
    • FileRelayException
    • FileRelayNativeMethods
    • IFileRelayApi
  • iMobileDevice.HeartBeat
    • HeartBeatApi
    • HeartBeatClientHandle
    • HeartBeatClientHandleDelegateMarshaler
    • HeartBeatError
    • HeartBeatErrorExtensions
    • HeartBeatException
    • HeartBeatNativeMethods
    • IHeartBeatApi
  • iMobileDevice.HouseArrest
    • HouseArrestApi
    • HouseArrestClientHandle
    • HouseArrestClientHandleDelegateMarshaler
    • HouseArrestError
    • HouseArrestErrorExtensions
    • HouseArrestException
    • HouseArrestNativeMethods
    • IHouseArrestApi
  • iMobileDevice.iDevice
    • iDeviceApi
    • iDeviceConnectionHandle
    • iDeviceConnectionHandleDelegateMarshaler
    • iDeviceDebugCallBack
    • iDeviceError
    • iDeviceErrorExtensions
    • iDeviceEvent
    • iDeviceEventCallBack
    • iDeviceEventType
    • iDeviceException
    • iDeviceHandle
    • iDeviceHandleDelegateMarshaler
    • iDeviceListMarshaler
    • iDeviceNativeMethods
    • iDeviceSocketType
    • IiDeviceApi
  • iMobileDevice.InstallationProxy
    • IInstallationProxyApi
    • InstallationProxyApi
    • InstallationProxyClientHandle
    • InstallationProxyClientHandleDelegateMarshaler
    • InstallationProxyError
    • InstallationProxyErrorExtensions
    • InstallationProxyException
    • InstallationProxyNativeMethods
    • InstallationProxyStatusCallBack
  • iMobileDevice.Lockdown
    • ILockdownApi
    • LockdownApi
    • LockdownClientHandle
    • LockdownClientHandleDelegateMarshaler
    • LockdownError
    • LockdownErrorExtensions
    • LockdownException
    • LockdownMarshaler
    • LockdownNativeMethods
    • LockdownPairRecord
    • LockdownPairRecordHandle
    • LockdownPairRecordHandleDelegateMarshaler
    • LockdownServiceDescriptor
    • LockdownServiceDescriptorHandle
    • LockdownServiceDescriptorHandleDelegateMarshaler
  • iMobileDevice.Misagent
    • IMisagentApi
    • MisagentApi
    • MisagentClientHandle
    • MisagentClientHandleDelegateMarshaler
    • MisagentError
    • MisagentErrorExtensions
    • MisagentException
    • MisagentNativeMethods
  • iMobileDevice.Mobileactivation
    • IMobileactivationApi
    • MobileactivationApi
    • MobileactivationClientHandle
    • MobileactivationClientHandleDelegateMarshaler
    • MobileactivationError
    • MobileactivationErrorExtensions
    • MobileactivationException
    • MobileactivationNativeMethods
  • iMobileDevice.MobileBackup
    • IMobileBackupApi
    • MobileBackupApi
    • MobileBackupClientHandle
    • MobileBackupClientHandleDelegateMarshaler
    • MobileBackupError
    • MobileBackupErrorExtensions
    • MobileBackupException
    • MobileBackupFlags
    • MobileBackupNativeMethods
  • iMobileDevice.MobileBackup2
    • IMobileBackup2Api
    • MobileBackup2Api
    • MobileBackup2ClientHandle
    • MobileBackup2ClientHandleDelegateMarshaler
    • MobileBackup2Error
    • MobileBackup2ErrorExtensions
    • MobileBackup2Exception
    • MobileBackup2NativeMethods
  • iMobileDevice.MobileImageMounter
    • IMobileImageMounterApi
    • MobileImageMounterApi
    • MobileImageMounterClientHandle
    • MobileImageMounterClientHandleDelegateMarshaler
    • MobileImageMounterError
    • MobileImageMounterErrorExtensions
    • MobileImageMounterException
    • MobileImageMounterNativeMethods
    • MobileImageMounterUploadCallBack
  • iMobileDevice.MobileSync
    • IMobileSyncApi
    • MobileSyncAnchors
    • MobileSyncAnchorsHandle
    • MobileSyncAnchorsHandleDelegateMarshaler
    • MobileSyncApi
    • MobileSyncClientHandle
    • MobileSyncClientHandleDelegateMarshaler
    • MobileSyncError
    • MobileSyncErrorExtensions
    • MobileSyncException
    • MobileSyncNativeMethods
    • MobileSyncSyncType
  • iMobileDevice.NotificationProxy
    • INotificationProxyApi
    • NotificationProxyApi
    • NotificationProxyClientHandle
    • NotificationProxyClientHandleDelegateMarshaler
    • NotificationProxyError
    • NotificationProxyErrorExtensions
    • NotificationProxyException
    • NotificationProxyNativeMethods
    • NotificationProxyNotifyCallBack
  • iMobileDevice.Pinvoke
    • IPinvokeApi
    • PinvokeApi
    • PinvokeError
    • PinvokeErrorExtensions
    • PinvokeException
    • PinvokeNativeMethods
  • iMobileDevice.Plist
    • IPlistApi
    • PlistApi
    • PlistDictIterHandle
    • PlistDictIterHandleDelegateMarshaler
    • PlistHandle
    • PlistHandleDelegateMarshaler
    • PlistNativeMethods
    • PlistType
  • iMobileDevice.PropertyListService
    • IPropertyListServiceApi
    • PropertyListServiceApi
    • PropertyListServiceClientHandle
    • PropertyListServiceClientHandleDelegateMarshaler
    • PropertyListServiceError
    • PropertyListServiceErrorExtensions
    • PropertyListServiceException
    • PropertyListServiceNativeMethods
  • iMobileDevice.Restore
    • IRestoreApi
    • RestoreApi
    • RestoreClientHandle
    • RestoreClientHandleDelegateMarshaler
    • RestoreError
    • RestoreErrorExtensions
    • RestoreException
    • RestoreNativeMethods
  • iMobileDevice.Screenshotr
    • IScreenshotrApi
    • ScreenshotrApi
    • ScreenshotrClientHandle
    • ScreenshotrClientHandleDelegateMarshaler
    • ScreenshotrError
    • ScreenshotrErrorExtensions
    • ScreenshotrException
    • ScreenshotrNativeMethods
  • iMobileDevice.Service
    • ConstructorFunc
    • IServiceApi
    • ServiceApi
    • ServiceClientHandle
    • ServiceClientHandleDelegateMarshaler
    • ServiceError
    • ServiceErrorExtensions
    • ServiceException
    • ServiceNativeMethods
  • iMobileDevice.SpringBoardServices
    • ISpringBoardServicesApi
    • SpringBoardServicesApi
    • SpringBoardServicesClientHandle
    • SpringBoardServicesClientHandleDelegateMarshaler
    • SpringBoardServicesError
    • SpringBoardServicesErrorExtensions
    • SpringBoardServicesException
    • SpringBoardServicesInterfaceOrientation
    • SpringBoardServicesNativeMethods
  • iMobileDevice.SyslogRelay
    • ISyslogRelayApi
    • SyslogRelayApi
    • SyslogRelayClientHandle
    • SyslogRelayClientHandleDelegateMarshaler
    • SyslogRelayError
    • SyslogRelayErrorExtensions
    • SyslogRelayException
    • SyslogRelayNativeMethods
    • SyslogRelayReceiveCallBack
  • iMobileDevice.Usbmuxd
    • IUsbmuxdApi
    • UsbmuxdApi
    • UsbmuxdDeviceInfo
    • UsbmuxdEvent
    • UsbmuxdEventCallBack
    • UsbmuxdEventType
    • UsbmuxdNativeMethods
    • UsbmuxdSocketType
  • iMobileDevice.WebInspector
    • IWebInspectorApi
    • WebInspectorApi
    • WebInspectorClientHandle
    • WebInspectorClientHandleDelegateMarshaler
    • WebInspectorError
    • WebInspectorErrorExtensions
    • WebInspectorException
    • WebInspectorNativeMethods

Class LockdownApi

Inheritance
System.Object
LockdownApi
Implements
ILockdownApi
Inherited Members
System.Object.ToString()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
Namespace: iMobileDevice.Lockdown
Assembly: iMobileDevice-net.dll
Syntax
public class LockdownApi : ILockdownApi

Constructors

| Improve this Doc View Source

LockdownApi(ILibiMobileDevice)

Declaration
public LockdownApi(ILibiMobileDevice parent)
Parameters
Type Name Description
ILibiMobileDevice parent

Properties

| Improve this Doc View Source

Parent

Declaration
public ILibiMobileDevice Parent { get; }
Property Value
Type Description
ILibiMobileDevice

Methods

| Improve this Doc View Source

lockdownd_activate(LockdownClientHandle, PlistHandle)

Activates the device. Only works within an open session. The ActivationRecord plist dictionary must be obtained using the activation protocol requesting from Apple's https webservice.

Declaration
public virtual LockdownError lockdownd_activate(LockdownClientHandle client, PlistHandle activationRecord)
Parameters
Type Name Description
LockdownClientHandle client

The lockdown client

PlistHandle activationRecord
Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when client or activation_record is NULL, LOCKDOWN_E_NO_RUNNING_SESSION if no session is open, LOCKDOWN_E_PLIST_ERROR if the received plist is broken, LOCKDOWN_E_ACTIVATION_FAILED if the activation failed, LOCKDOWN_E_INVALID_ACTIVATION_RECORD if the device reports that the activation_record is invalid

| Improve this Doc View Source

lockdownd_client_free(IntPtr)

Closes the lockdownd client session if one is running and frees up the lockdownd_client struct.

Declaration
public virtual LockdownError lockdownd_client_free(IntPtr client)
Parameters
Type Name Description
System.IntPtr client

The lockdown client

Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when client is NULL

| Improve this Doc View Source

lockdownd_client_new(iDeviceHandle, out LockdownClientHandle, String)

Creates a new lockdownd client for the device.

Declaration
public virtual LockdownError lockdownd_client_new(iDeviceHandle device, out LockdownClientHandle client, string label)
Parameters
Type Name Description
iDeviceHandle device

The device to create a lockdownd client for

LockdownClientHandle client

The pointer to the location of the new lockdownd_client

System.String label

The label to use for communication. Usually the program name.

Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when client is NULL

Remarks

This function does not pair with the device or start a session. This has to be done manually by the caller after the client is created. 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.

| Improve this Doc View Source

lockdownd_client_new_with_handshake(iDeviceHandle, out LockdownClientHandle, String)

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.

Declaration
public virtual LockdownError lockdownd_client_new_with_handshake(iDeviceHandle device, out LockdownClientHandle client, string label)
Parameters
Type Name Description
iDeviceHandle device

The device to create a lockdownd client for

LockdownClientHandle client

The pointer to the location of the new lockdownd_client

System.String label

The label to use for communication. Usually the program name. Pass NULL to disable sending the label in requests to lockdownd.

Returns
Type Description
LockdownError

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

Remarks

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.

| Improve this Doc View Source

lockdownd_client_set_label(LockdownClientHandle, String)

Sets the label to send for requests to lockdownd.

Declaration
public virtual void lockdownd_client_set_label(LockdownClientHandle client, string label)
Parameters
Type Name Description
LockdownClientHandle client

The lockdown client

System.String label

The label to set or NULL to disable sending a label

| Improve this Doc View Source

lockdownd_data_classes_free(IntPtr)

Frees memory of an allocated array of data classes as returned by lockdownd_get_sync_data_classes()

Declaration
public virtual LockdownError lockdownd_data_classes_free(IntPtr classes)
Parameters
Type Name Description
System.IntPtr classes

An array of class names to free.

Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success

| Improve this Doc View Source

lockdownd_deactivate(LockdownClientHandle)

Deactivates the device, returning it to the locked “Activate with iTunes” screen.

Declaration
public virtual LockdownError lockdownd_deactivate(LockdownClientHandle client)
Parameters
Type Name Description
LockdownClientHandle client

The lockdown client

Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when client is NULL, LOCKDOWN_E_NO_RUNNING_SESSION if no session is open, LOCKDOWN_E_PLIST_ERROR if the received plist is broken

| Improve this Doc View Source

lockdownd_enter_recovery(LockdownClientHandle)

Tells the device to immediately enter recovery mode.

Declaration
public virtual LockdownError lockdownd_enter_recovery(LockdownClientHandle client)
Parameters
Type Name Description
LockdownClientHandle client

The lockdown client

Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when client is NULL

| Improve this Doc View Source

lockdownd_get_device_name(LockdownClientHandle, out String)

Retrieves the name of the device from lockdownd set by the user.

Declaration
public virtual LockdownError lockdownd_get_device_name(LockdownClientHandle client, out string deviceName)
Parameters
Type Name Description
LockdownClientHandle client

An initialized lockdownd client.

System.String deviceName
Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success

| Improve this Doc View Source

lockdownd_get_device_udid(LockdownClientHandle, out String)

Returns the unique id of the device from lockdownd.

Declaration
public virtual LockdownError lockdownd_get_device_udid(LockdownClientHandle client, out string udid)
Parameters
Type Name Description
LockdownClientHandle client

An initialized lockdownd client.

System.String udid

Holds the unique id of the device. The caller is responsible for freeing the memory.

Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success

| Improve this Doc View Source

lockdownd_get_sync_data_classes(LockdownClientHandle, out ReadOnlyCollection<String>, ref Int32)

Calculates and returns the data classes the device supports from lockdownd.

Declaration
public virtual LockdownError lockdownd_get_sync_data_classes(LockdownClientHandle client, out ReadOnlyCollection<string> classes, ref int count)
Parameters
Type Name Description
LockdownClientHandle client

An initialized lockdownd client.

System.Collections.ObjectModel.ReadOnlyCollection<System.String> classes

A pointer to store an array of class names. The caller is responsible for freeing the memory which can be done using mobilesync_data_classes_free().

System.Int32 count

The number of items in the classes array.

Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when client is NULL, LOCKDOWN_E_NO_RUNNING_SESSION if no session is open, LOCKDOWN_E_PLIST_ERROR if the received plist is broken

| Improve this Doc View Source

lockdownd_get_value(LockdownClientHandle, String, String, out PlistHandle)

Retrieves a preferences plist using an optional domain and/or key name.

Declaration
public virtual LockdownError lockdownd_get_value(LockdownClientHandle client, string domain, string key, out PlistHandle value)
Parameters
Type Name Description
LockdownClientHandle client

An initialized lockdownd client.

System.String domain

The domain to query on or NULL for global domain

System.String key

The key name to request or NULL to query for all keys

PlistHandle value

A plist node representing the result value node

Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when client is NULL

| Improve this Doc View Source

lockdownd_goodbye(LockdownClientHandle)

Sends the Goodbye request to lockdownd signaling the end of communication.

Declaration
public virtual LockdownError lockdownd_goodbye(LockdownClientHandle client)
Parameters
Type Name Description
LockdownClientHandle client

The lockdown client

Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when client is NULL, LOCKDOWN_E_PLIST_ERROR if the device did not acknowledge the request

| Improve this Doc View Source

lockdownd_pair(LockdownClientHandle, LockdownPairRecordHandle)

Pairs the device using the supplied pair record.

Declaration
public virtual LockdownError lockdownd_pair(LockdownClientHandle client, LockdownPairRecordHandle pairRecord)
Parameters
Type Name Description
LockdownClientHandle client

The lockdown client

LockdownPairRecordHandle pairRecord
Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when client is NULL, LOCKDOWN_E_PLIST_ERROR if the pair_record certificates are wrong, LOCKDOWN_E_PAIRING_FAILED if the pairing failed, LOCKDOWN_E_PASSWORD_PROTECTED if the device is password protected, LOCKDOWN_E_INVALID_HOST_ID if the device does not know the caller's host id

| Improve this Doc View Source

lockdownd_pair_with_options(LockdownClientHandle, LockdownPairRecordHandle, PlistHandle, out PlistHandle)

Pairs the device using the supplied pair record and passing the given options.

Declaration
public virtual LockdownError lockdownd_pair_with_options(LockdownClientHandle client, LockdownPairRecordHandle pairRecord, PlistHandle options, out PlistHandle response)
Parameters
Type Name Description
LockdownClientHandle client

The lockdown client

LockdownPairRecordHandle pairRecord
PlistHandle options

The pairing options to pass. Can be NULL for no options.

PlistHandle response

If non-NULL a pointer to lockdownd's response dictionary is returned. The caller is responsible to free the response dictionary with plist_free().

Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when client is NULL, LOCKDOWN_E_PLIST_ERROR if the pair_record certificates are wrong, LOCKDOWN_E_PAIRING_FAILED if the pairing failed, LOCKDOWN_E_PASSWORD_PROTECTED if the device is password protected, LOCKDOWN_E_INVALID_HOST_ID if the device does not know the caller's host id

| Improve this Doc View Source

lockdownd_query_type(LockdownClientHandle, out String)

Query the type of the service daemon. Depending on whether the device is queried in normal mode or restore mode, different types will be returned.

Declaration
public virtual LockdownError lockdownd_query_type(LockdownClientHandle client, out string type)
Parameters
Type Name Description
LockdownClientHandle client

The lockdownd client

System.String type

The type returned by the service daemon. Pass NULL to ignore.

Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when client is NULL

| Improve this Doc View Source

lockdownd_receive(LockdownClientHandle, out PlistHandle)

Receives a plist from lockdownd.

Declaration
public virtual LockdownError lockdownd_receive(LockdownClientHandle client, out PlistHandle plist)
Parameters
Type Name Description
LockdownClientHandle client

The lockdownd client

PlistHandle plist

The plist to store the received data

Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when client or plist is NULL

| Improve this Doc View Source

lockdownd_remove_value(LockdownClientHandle, String, String)

Removes a preference node by domain and/or key name.

Declaration
public virtual LockdownError lockdownd_remove_value(LockdownClientHandle client, string domain, string key)
Parameters
Type Name Description
LockdownClientHandle client

An initialized lockdownd client.

System.String domain

The domain to query on or NULL for global domain

System.String key

The key name to remove or NULL remove all keys for the current domain

Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when client is NULL

Remarks

: Use with caution as this could remove vital information on the device

| Improve this Doc View Source

lockdownd_send(LockdownClientHandle, PlistHandle)

Sends a plist to lockdownd.

Declaration
public virtual LockdownError lockdownd_send(LockdownClientHandle client, PlistHandle plist)
Parameters
Type Name Description
LockdownClientHandle client

The lockdownd client

PlistHandle plist

The plist to send

Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when client or plist is NULL

Remarks

This function is low-level and should only be used if you need to send a new type of message.

| Improve this Doc View Source

lockdownd_service_descriptor_free(IntPtr)

Frees memory of a service descriptor as returned by lockdownd_start_service()

Declaration
public virtual LockdownError lockdownd_service_descriptor_free(IntPtr service)
Parameters
Type Name Description
System.IntPtr service

A service descriptor instance to free.

Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success

| Improve this Doc View Source

lockdownd_set_value(LockdownClientHandle, String, String, PlistHandle)

Sets a preferences value using a plist and optional by domain and/or key name.

Declaration
public virtual LockdownError lockdownd_set_value(LockdownClientHandle client, string domain, string key, PlistHandle value)
Parameters
Type Name Description
LockdownClientHandle client

an initialized lockdownd client.

System.String domain

the domain to query on or NULL for global domain

System.String key

the key name to set the value or NULL to set a value dict plist

PlistHandle value

a plist node of any node type representing the value to set

Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when client or value is NULL

| Improve this Doc View Source

lockdownd_start_service(LockdownClientHandle, String, out LockdownServiceDescriptorHandle)

Requests to start a service and retrieve it's port on success.

Declaration
public virtual LockdownError lockdownd_start_service(LockdownClientHandle client, string identifier, out LockdownServiceDescriptorHandle service)
Parameters
Type Name Description
LockdownClientHandle client

The lockdownd client

System.String identifier

The identifier of the service to start

LockdownServiceDescriptorHandle service

The service descriptor on success or NULL on failure

Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG if a parameter is NULL, LOCKDOWN_E_INVALID_SERVICE if the requested service is not known by the device, LOCKDOWN_E_START_SERVICE_FAILED if the service could not be started by the device

| Improve this Doc View Source

lockdownd_start_service_with_escrow_bag(LockdownClientHandle, String, out LockdownServiceDescriptorHandle)

Requests to start a service and retrieve it's port on success. Sends the escrow bag from the device's pair record.

Declaration
public virtual LockdownError lockdownd_start_service_with_escrow_bag(LockdownClientHandle client, string identifier, out LockdownServiceDescriptorHandle service)
Parameters
Type Name Description
LockdownClientHandle client

The lockdownd client

System.String identifier

The identifier of the service to start

LockdownServiceDescriptorHandle service

The service descriptor on success or NULL on failure

Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG if a parameter is NULL, LOCKDOWN_E_INVALID_SERVICE if the requested service is not known by the device, LOCKDOWN_E_START_SERVICE_FAILED if the service could not because started by the device, LOCKDOWN_E_INVALID_CONF if the host id or escrow bag are missing from the device record.

| Improve this Doc View Source

lockdownd_start_session(LockdownClientHandle, String, out String, ref Int32)

Opens a session with lockdownd and switches to SSL mode if device wants it.

Declaration
public virtual LockdownError lockdownd_start_session(LockdownClientHandle client, string hostId, out string sessionId, ref int sslEnabled)
Parameters
Type Name Description
LockdownClientHandle client

The lockdownd client

System.String hostId
System.String sessionId
System.Int32 sslEnabled
Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when a client or host_id is NULL, LOCKDOWN_E_PLIST_ERROR if the response plist had errors, LOCKDOWN_E_INVALID_HOST_ID if the device does not know the supplied HostID, LOCKDOWN_E_SSL_ERROR if enabling SSL communication failed

| Improve this Doc View Source

lockdownd_stop_session(LockdownClientHandle, String)

Closes the lockdownd session by sending the StopSession request.

Declaration
public virtual LockdownError lockdownd_stop_session(LockdownClientHandle client, string sessionId)
Parameters
Type Name Description
LockdownClientHandle client

The lockdown client

System.String sessionId
Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when client is NULL

| Improve this Doc View Source

lockdownd_unpair(LockdownClientHandle, LockdownPairRecordHandle)

Unpairs the device with the given HostID and removes the pairing records from the device and host if the internal pairing record management is used.

Declaration
public virtual LockdownError lockdownd_unpair(LockdownClientHandle client, LockdownPairRecordHandle pairRecord)
Parameters
Type Name Description
LockdownClientHandle client

The lockdown client

LockdownPairRecordHandle pairRecord
Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when client is NULL, LOCKDOWN_E_PLIST_ERROR if the pair_record certificates are wrong, LOCKDOWN_E_PAIRING_FAILED if the pairing failed, LOCKDOWN_E_PASSWORD_PROTECTED if the device is password protected, LOCKDOWN_E_INVALID_HOST_ID if the device does not know the caller's host id

| Improve this Doc View Source

lockdownd_validate_pair(LockdownClientHandle, LockdownPairRecordHandle)

Validates if the device is paired with the given HostID. If successful the specified host will become trusted host of the device indicated by the lockdownd preference named TrustedHostAttached. Otherwise the host must be paired using lockdownd_pair() first.

Declaration
public virtual LockdownError lockdownd_validate_pair(LockdownClientHandle client, LockdownPairRecordHandle pairRecord)
Parameters
Type Name Description
LockdownClientHandle client

The lockdown client

LockdownPairRecordHandle pairRecord
Returns
Type Description
LockdownError

LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when client is NULL, LOCKDOWN_E_PLIST_ERROR if the pair_record certificates are wrong, LOCKDOWN_E_PAIRING_FAILED if the pairing failed, LOCKDOWN_E_PASSWORD_PROTECTED if the device is password protected, LOCKDOWN_E_INVALID_HOST_ID if the device does not know the caller's host id

Implements

ILockdownApi
  • Improve this Doc
  • View Source
Back to top Copyright (c) 2015-2017 Quamotion bvba. All rights reserved