Documentation ¶
Index ¶
- Constants
- Variables
- func Install(device *Device, filepath string) error
- func Lookup(device *Device, bundleID string, attributes []string) (map[string]interface{}, error)
- func Uninstall(device *Device, bundleID string) error
- type AFC
- type AfcFileMode
- type ApplicationType
- type Connection
- type Device
- type InstallationProxy
- type Lockdown
- type PairRecord
- type ReplyCode
- type ServiceName
Constants ¶
View Source
const ( AfcOperationStatus = 0x00000001 AfcOperationWriteFile = 0x00000005 AfcOperationMakeDir = 0x00000009 AfcOperationGetFileInfo = 0x0000000A AfcOperationFileOpen = 0x0000000D AfcOperationFileOpenResult = 0x0000000E AfcOperationFileWrite = 0x00000010 AfcOperationFileClose = 0x00000014 )
View Source
const AfcMagic uint64 = 0x4141504c36414643
View Source
const (
ConnectionTypeUSB = "USB"
)
Variables ¶
View Source
var DefaultLookupAttributes = []string{
"CFBundleDisplayName",
"CFBundleExecutable",
"CFBundleName",
"CFBundleVersion",
"CFBundleShortVersionString",
"CFBundleIdentifier",
}
View Source
var (
ErrObjectNotFound = errors.New("object not found")
)
Functions ¶
Types ¶
type AFC ¶
type AFC struct {
// contains filtered or unexported fields
}
func (*AFC) CreateDirectory ¶
type AfcFileMode ¶
type AfcFileMode uint32
const ( AfcFileModeRdOnly AfcFileMode = 0x00000001 AfcFileModeRw AfcFileMode = 0x00000002 AfcFileModeWrOnly AfcFileMode = 0x00000003 AfcFileModeWr AfcFileMode = 0x00000004 AfcFileModeAppend AfcFileMode = 0x00000005 AfcFileModeRdAppend AfcFileMode = 0x00000006 )
type ApplicationType ¶
type ApplicationType string
const ( ApplicationTypeAny ApplicationType = "Any" ApplicationTypeSystem ApplicationType = "System" ApplicationTypeUser ApplicationType = "User" ApplicationTypeInternal ApplicationType = "Internal" )
type Connection ¶
type Connection struct {
// contains filtered or unexported fields
}
func Open ¶
func Open() (*Connection, error)
func (*Connection) Close ¶
func (c *Connection) Close() error
func (*Connection) Hijack ¶
func (c *Connection) Hijack() net.Conn
func (*Connection) Receive ¶
func (c *Connection) Receive(v interface{}) error
func (*Connection) Send ¶
func (c *Connection) Send(request interface{}) error
type Device ¶
type Device struct { ConnectionSpeed int ConnectionType string DeviceID int LocationID int ProductID int SerialNumber string }
func ListDevices ¶
type InstallationProxy ¶
type InstallationProxy struct {
// contains filtered or unexported fields
}
func (*InstallationProxy) InstallApplication ¶
func (p *InstallationProxy) InstallApplication(bundleID, path string) error
func (*InstallationProxy) LookupApplication ¶
func (p *InstallationProxy) LookupApplication(bundleID string, attributes []string) (map[string]interface{}, error)
func (*InstallationProxy) UninstallApplication ¶
func (p *InstallationProxy) UninstallApplication(bundleID string) error
type Lockdown ¶
type Lockdown struct {
// contains filtered or unexported fields
}
Lockdown is used to start services on the device.
lockdownd uses a simple packet format where each packet is a 32-bit big-endian word indicating the size of the payload of the packet. The packets themselves are in XML plist format.
func LockdownService ¶
func (*Lockdown) AFCService ¶
func (*Lockdown) InstallationProxyService ¶
func (l *Lockdown) InstallationProxyService() (*InstallationProxy, error)
type PairRecord ¶
type PairRecord struct { HostID string SystemBUID string HostCertificate []byte HostPrivateKey []byte DeviceCertificate []byte EscrowBag []byte WiFiMACAddress string RootCertificate []byte RootPrivateKey []byte }
func ReadPairRecord ¶
func ReadPairRecord(device *Device) (*PairRecord, error)
type ServiceName ¶
type ServiceName string
const ( ServiceNameInstallationProxy ServiceName = "com.apple.mobile.installation_proxy" ServiceNameAFC ServiceName = "com.apple.afc" )
Source Files ¶
Click to show internal directories.
Click to hide internal directories.