IOUserEthernetController.h [plain text]
#ifndef _IOKIT_IOETHERNET_CONTROLLER_USER_H
#define _IOKIT_IOETHERNET_CONTROLLER_USER_H
#include <CoreFoundation/CoreFoundation.h>
#include <IOKit/IOKitLib.h>
__BEGIN_DECLS
typedef struct __IOEthernetController * IOEthernetControllerRef;
typedef void (*IOEthernetControllerCallback)(IOEthernetControllerRef controller, void * refcon);
extern CFTypeRef kIOEthernetHardwareAddress;
extern CFTypeRef kIOUserEthernetInterfaceRole;
extern CFTypeRef kIOUserEthernetInterfaceMergeProperties;
CF_EXPORT
CFTypeID IOEthernetControllerGetTypeID(void);
CF_EXPORT
IOEthernetControllerRef IOEthernetControllerCreate(
CFAllocatorRef allocator,
CFDictionaryRef properties);
CF_EXPORT
io_object_t IOEthernetControllerGetIONetworkInterfaceObject(
IOEthernetControllerRef controller);
CF_EXPORT
IOReturn IOEthernetControllerSetLinkStatus(
IOEthernetControllerRef controller,
Boolean state);
CF_EXPORT
IOReturn IOEthernetControllerSetPowerSavings(
IOEthernetControllerRef controller,
Boolean state);
CF_EXPORT
CFIndex IOEthernetControllerReadPacket(
IOEthernetControllerRef controller,
uint8_t * buffer,
CFIndex bufferLength);
CF_EXPORT
IOReturn IOEthernetControllerWritePacket(
IOEthernetControllerRef controller,
const uint8_t * buffer,
CFIndex bufferLength);
CF_EXPORT
void IOEthernetControllerScheduleWithRunLoop(
IOEthernetControllerRef controller,
CFRunLoopRef runLoop,
CFStringRef runLoopMode);
CF_EXPORT
void IOEthernetControllerUnscheduleFromRunLoop(
IOEthernetControllerRef controller,
CFRunLoopRef runLoop,
CFStringRef runLoopMode);
CF_EXPORT
void IOEthernetControllerRegisterEnableCallback(
IOEthernetControllerRef controller,
IOEthernetControllerCallback callback,
void * refcon);
CF_EXPORT
void IOEthernetControllerRegisterDisableCallback(
IOEthernetControllerRef controller,
IOEthernetControllerCallback callback,
void * refcon);
CF_EXPORT
void IOEthernetControllerRegisterPacketAvailableCallback(
IOEthernetControllerRef controller,
IOEthernetControllerCallback callback,
void * refcon);
__END_DECLS
#endif