IOKernelDebugger.h Reference

Declared in
IOKernelDebugger.h

Overview

Included Headers

  • <IOKit/IOService.h>

Callbacks

See the Overview section above for header-level documentation.

IODebuggerLinkStatusHandler

typedef UInt32 ( *IODebuggerLinkStatusHandler)(
   IOService *target);

Parameters
target

The target object.

Return Value

Return link status.

Discussion

Defines the link up handler that must be implemented by the target to service KDP link status requests. This handler is called by kdpLinkStatusDispatcher().

Availability
  • Available in OS X v10.7 and later.
Declared In
IOKernelDebugger.h

IODebuggerRxHandler

typedef void ( *IODebuggerRxHandler)(
   IOService *target,
   void *buffer,
   UInt32 *length,
   UInt32 timeout );

Parameters
target

The target object.

buffer

KDP receive buffer. The buffer allocated has room for 1518 bytes. The receive handler must not overflow this buffer.

length

The amount of data received and placed into the buffer. Set to 0 if no frame was received during the poll interval.

timeout

The amount of time to poll in milliseconds while waiting for a frame to arrive.

Discussion

Defines the receive handler that must be implemented by the target to service KDP receive requests. This handler is called by kdpReceiveDispatcher().

Availability
  • Available in OS X v10.0 and later.
Declared In
IOKernelDebugger.h

IODebuggerSetModeHandler

typedef bool ( *IODebuggerSetModeHandler)(
   IOService *target,
   bool active);

Parameters
target

The target object.

active

True if entering KDP and false if exiting KDP.

Return Value

Return true on success and false on failure.

Discussion

Defines the mode handler that must be implemented by the target to service KDP link status requests. This handler is called by kdpSetModeDispatcher().

Availability
  • Available in OS X v10.7 and later.
Declared In
IOKernelDebugger.h

IODebuggerTxHandler

typedef void ( *IODebuggerTxHandler)(
   IOService *target,
   void *buffer,
   UInt32 length );

Parameters
target

The target object.

buffer

KDP transmit buffer. This buffer contains a KDP frame to be sent on the network.

length

The number of bytes in the transmit buffer.

Discussion

Defines the transmit handler that must be implemented by the target to service KDP transmit requests. This handler is called by kdpTransmitDispatcher().

Availability
  • Available in OS X v10.0 and later.
Declared In
IOKernelDebugger.h

Data Types

See the Overview section above for header-level documentation.

IODebuggerLockState

typedef enum {
   kIODebuggerLockTaken = 0x1
} IODebuggerLockState;
Constants
kIODebuggerLockTaken

Set if the debugger lock was taken.

Available in OS X v10.0 and later.

Declared in IOKernelDebugger.h.

Discussion

Defines flags returned by IOKernelDebugger::lock().

Availability
  • Available in OS X v10.0 and later.
Declared In
IOKernelDebugger.h