#ifndef __DISKARBITRATIOND_DAINTERNAL__
#define __DISKARBITRATIOND_DAINTERNAL__
#include <mach/mach.h>
#include <sys/mount.h>
#include <CoreFoundation/CoreFoundation.h>
#ifdef __cplusplus
extern "C" {
#endif
#define ___GID_WHEEL 0
#define ___UID_ROOT 0
#define ___GID_UNKNOWN 99
#define ___UID_UNKNOWN 99
#define _kDADaemonName "com.apple.DiskArbitration.diskarbitrationd"
enum
{
_kDAAuthorizeOptionDefault = 0x00000000,
_kDAAuthorizeOptionAuthenticateAdministrator = 0x00000001,
_kDAAuthorizeOptionIsOwner = 0x00080000
};
typedef UInt32 _DAAuthorizeOptions;
enum
{
_kDADiskAppearedCallback,
_kDADiskClaimCallback,
_kDADiskClaimReleaseCallback,
_kDADiskDescriptionChangedCallback,
_kDADiskDisappearedCallback,
_kDADiskEjectCallback,
_kDADiskEjectApprovalCallback,
_kDADiskMountCallback,
_kDADiskMountApprovalCallback,
_kDADiskPeekCallback,
_kDADiskProbeCallback,
_kDADiskRefreshCallback,
_kDADiskRenameCallback,
_kDADiskUnmountCallback,
_kDADiskUnmountApprovalCallback,
_kDAIdleCallback
};
typedef UInt32 _DACallbackKind;
enum
{
_kDADiskClaim = _kDADiskClaimCallback,
_kDADiskEject = _kDADiskEjectCallback,
_kDADiskMount = _kDADiskMountCallback,
_kDADiskProbe = _kDADiskProbeCallback,
_kDADiskRefresh = _kDADiskRefreshCallback,
_kDADiskRename = _kDADiskRenameCallback,
_kDADiskUnmount = _kDADiskUnmountCallback
};
typedef UInt32 _DARequestKind;
const char * _kDAAuthorizeRightAdopt;
const char * _kDAAuthorizeRightEncode;
const char * _kDAAuthorizeRightMount;
const char * _kDAAuthorizeRightRename;
const char * _kDAAuthorizeRightUnmount;
const CFStringRef _kDACallbackAddressKey;
const CFStringRef _kDACallbackArgument0Key;
const CFStringRef _kDACallbackArgument1Key;
const CFStringRef _kDACallbackContextKey;
const CFStringRef _kDACallbackDiskKey;
const CFStringRef _kDACallbackKindKey;
const CFStringRef _kDACallbackMatchKey;
const CFStringRef _kDACallbackOrderKey;
const CFStringRef _kDACallbackSessionKey;
const CFStringRef _kDACallbackTimeKey;
const CFStringRef _kDACallbackWatchKey;
const CFStringRef _kDADiskIDKey;
const CFStringRef _kDADissenterProcessIDKey;
const CFStringRef _kDADissenterStatusKey;
const CFStringRef _kDADissenterStatusStringKey;
const CFStringRef _kDARequestArgument1Key;
const CFStringRef _kDARequestArgument2Key;
const CFStringRef _kDARequestArgument3Key;
const CFStringRef _kDARequestCallbackKey;
const CFStringRef _kDARequestDiskKey;
const CFStringRef _kDARequestDissenterKey;
const CFStringRef _kDARequestKindKey;
const CFStringRef _kDARequestLinkKey;
const CFStringRef _kDARequestStateKey;
const CFStringRef _kDARequestUserGIDKey;
const CFStringRef _kDARequestUserUIDKey;
__private_extern__ int ___statfs( const char * path, struct statfs * buf, int flags );
__private_extern__ Boolean ___CFArrayContainsValue( CFArrayRef array, const void * value );
__private_extern__ void ___CFArrayRemoveValue( CFMutableArrayRef array, const void * value );
__private_extern__ vm_address_t ___CFDataCopyBytes( CFDataRef data, mach_msg_type_number_t * length );
__private_extern__ SInt64 ___CFDictionaryGetIntegerValue( CFDictionaryRef dictionary, const void * key );
__private_extern__ void ___CFDictionarySetIntegerValue( CFMutableDictionaryRef dictionary, const void * key, SInt64 value );
__private_extern__ CFNumberRef ___CFNumberCreateWithIntegerValue( CFAllocatorRef allocator, SInt64 value );
__private_extern__ SInt64 ___CFNumberGetIntegerValue( CFNumberRef number );
__private_extern__ char * ___CFStringCopyCString( CFStringRef string );
__private_extern__ char * ___CFURLCopyFileSystemRepresentation( CFURLRef url );
__private_extern__ const char * _DACallbackKindGetName( _DACallbackKind kind );
__private_extern__ const char * _DARequestKindGetName( _DARequestKind kind );
__private_extern__ CFDataRef _DASerialize( CFAllocatorRef allocator, CFTypeRef object );
__private_extern__ CFDataRef _DASerializeDiskDescription( CFAllocatorRef allocator, CFDictionaryRef description );
__private_extern__ CFTypeRef _DAUnserialize( CFAllocatorRef allocator, CFDataRef data );
__private_extern__ CFMutableDictionaryRef _DAUnserializeDiskDescription( CFAllocatorRef allocator, CFDataRef data );
__private_extern__ CFMutableDictionaryRef _DAUnserializeDiskDescriptionWithBytes( CFAllocatorRef allocator, vm_address_t bytes, vm_size_t length );
__private_extern__ CFTypeRef _DAUnserializeWithBytes( CFAllocatorRef allocator, vm_address_t bytes, vm_size_t length );
__private_extern__ char * _DAVolumeCopyID( const struct statfs * fs );
__private_extern__ char * _DAVolumeGetID( const struct statfs * fs );
#ifdef __cplusplus
}
#endif
#endif