X-Git-Url: http://git.cielonegro.org/gitweb.cgi?a=blobdiff_plain;f=Bindings%2FCoreServices%2FCarbonCore%2FFiles.hsc;h=c320115c9f529b92d3e6ac12bd8ffc2950b540f0;hb=949dc98439162a4886154e57fefc0513e3ee4808;hp=c33f230956a4e436e6d8d81e9a023c0f5cd5db23;hpb=8bc392af35d7e2c70dba27f571e1314d651892de;p=bindings-CarbonCore.git diff --git a/Bindings/CoreServices/CarbonCore/Files.hsc b/Bindings/CoreServices/CarbonCore/Files.hsc index c33f230..c320115 100644 --- a/Bindings/CoreServices/CarbonCore/Files.hsc +++ b/Bindings/CoreServices/CarbonCore/Files.hsc @@ -1,9 +1,13 @@ +{- -*- coding: utf-8 -*- -} #include #include module Bindings.CoreServices.CarbonCore.Files where #strict_import +import Bindings.CoreServices.CarbonCore.Finder import Bindings.CoreServices.CarbonCore.MacTypes +import Bindings.CoreServices.CarbonCore.OSUtils +import System.Posix.Types #starttype struct HFSUniStr255 # field length , @@ -178,7 +182,7 @@ import Bindings.CoreServices.CarbonCore.MacTypes #num knoGroup -#synonym_t FSVolumeRefNum, +#integral_t FSVolumeRefNum #integral_t FSIORefNum #num kFSInvalidVolumeRefNum @@ -902,7 +906,7 @@ import Bindings.CoreServices.CarbonCore.MacTypes # field fileSec , #stoptype -#synonym_t FSCatalogInfoBitmap, +#integral_t FSCatalogInfoBitmap #num kFSCatInfoNone #num kFSCatInfoTextEncoding #num kFSCatInfoNodeFlags @@ -1094,10 +1098,851 @@ import Bindings.CoreServices.CarbonCore.MacTypes #stoptype #synonym_t FSCatalogBulkParamPtr, Ptr -#synonym_t FSAllocationFlags, +#integral_t FSAllocationFlags #num kFSAllocDefaultFlags #num kFSAllocAllOrNothingMask #num kFSAllocContiguousMask #num kFSAllocNoRoundUpMask #num kFSAllocReservedMask +#starttype struct FSForkIOParam +# field qLink , +# field qType , +# field ioTrap , +# field ioCmdAddr , +# field ioCompletion, +# field ioResult , +# field reserved1 , Ptr () +# field reserved2 , +# field forkRefNum , +# field reserved3 , +# field permissions , +# field ref , Ptr +# field buffer , +# field requestCount, +# field actualCount , +# field positionMode, +# field positionOffset, +# field allocationFlags, +# field allocationAmount, +# field forkNameLength, +# field forkName, Ptr +# field forkIterator, +# field outForkName , Ptr +#stoptype +#synonym_t FSForkIOParamPtr, Ptr + +{- +        *'``・* 。 +        |     `*。 +       ,。∩      *    もうどうにでもな〜れ +      + (´・ω・`) *。+゚ +      `*。 ヽ、  つ *゚* +       `・+。*・' ゚⊃ +゚ +       ☆   ∪~ 。*゚ +        `・+。*・ ゚ +-} + +#starttype struct FSForkInfo +# field flags , +# field permissions, +# field volume , +# field reserved2 , +# field nodeID , +# field forkID , +# field currentPosition, +# field logicalEOF , +# field physicalEOF, +# field process , +#stoptype +#synonym_t FSForkInfoPtr, Ptr + +#starttype struct FSForkCBInfoParam +# field qLink , +# field qType , +# field ioTrap , +# field ioCmdAddr , +# field ioCompletion, +# field ioResult , +# field desiredRefNum, +# field volumeRefNum, +# field iterator , +# field actualRefNum, +# field ref , Ptr +# field forkInfo , Ptr +# field forkName , Ptr +#stoptype +#synonym_t FSForkCBInfoParamPtr, Ptr + +#starttype struct FSRangeLockParam +# field qLink , +# field qType , +# field ioTrap , +# field ioCmdAddr , +# field ioCompletion, +# field ioResult , +# field forkRefNum , +# field requestCount, +# field positionMode, +# field positionOffset, +# field rangeStart , +#stoptype +#synonym_t FSRangeLockParamPtr, Ptr + +#integral_t FSVolumeInfoBitmap +#num kFSVolInfoNone +#num kFSVolInfoCreateDate +#num kFSVolInfoModDate +#num kFSVolInfoBackupDate +#num kFSVolInfoCheckedDate +#num kFSVolInfoFileCount +#num kFSVolInfoSizes +#num kFSVolInfoBlocks +#num kFSVolInfoNextAlloc +#num kFSVolInfoRsrcClump +#num kFSVolInfoDataClump +#num kFSVolInfoNextID +#num kFSVolInfoFinderInfo +#num kFSVolInfoFlags +#num kFSVolInfoFSInfo +#num kFSVolInfoDriveInfo +#num kFSVolInfoGettableInfo +#num kFSVolInfoSettableInfo + +#num kFSVolFlagDefaultVolumeBit +#num kFSVolFlagDefaultVolumeMask +#num kFSVolFlagFilesOpenBit +#num kFSVolFlagFilesOpenMask +#num kFSVolFlagHardwareLockedBit +#num kFSVolFlagHardwareLockedMask +#num kFSVolFlagJournalingActiveBit +#num kFSVolFlagJournalingActiveMask +#num kFSVolFlagSoftwareLockedBit +#num kFSVolFlagSoftwareLockedMask + +#starttype struct FSVolumeInfo +# field createDate , +# field modifyDate , +# field backupDate , +# field checkedDate, +# field fileCount , +# field folderCount, +# field totalBytes , +# field freeBytes , +# field blockSize , +# field totalBlocks, +# field freeBlocks , +# field nextAllocation , +# field rsrcClumpSize , +# field dataClumpSize , +# field nextCatalogID , +# array_field finderInfo, +# field flags , +# field filesystemID , +# field signature , +# field driveNumber , +# field driverRefNum , +#stoptype +#synonym_t FSVolumeInfoPtr, Ptr + +#starttype struct FSVolumeInfoParam +# field qLink , +# field qType , +# field ioTrap , +# field ioCmdAddr , +# field ioCompletion, +# field ioResult , +# field ioNamePtr , +# field ioVRefNum , +# field volumeIndex , +# field whichInfo , +# field volumeInfo , Ptr +# field volumeName , Ptr +# field ref , Ptr +#stoptype +#synonym_t FSVolumeInfoParamPtr, Ptr + +#starttype struct GetVolParmsInfoBuffer +# field vMVersion , +# field vMAttrib , +# field vMLocalHand, +# field vMServerAdr, +# field vMVolumeGrade , +# field vMForeignPrivID , +# field vMExtendedAttributes, +# field vMDeviceID , Ptr () +# field vMMaxNameLength , +#stoptype + +#synonym_t VolumeType, +#num AppleShareMediaType + +#starttype struct VolMountInfoHeader +# field length, +# field media , +#stoptype +#synonym_t VolMountInfoPtr, Ptr + +#starttype struct VolumeMountInfoHeader +# field length, +# field media , +# field flags , +#stoptype +#synonym_t VolumeMountInfoHeaderPtr, Ptr + +#num volMountNoLoginMsgFlagBit +#num volMountNoLoginMsgFlagMask +#num volMountExtendedFlagsBit +#num volMountExtendedFlagsMask +#num volMountInteractBit +#num volMountInteractMask +#num volMountChangedBit +#num volMountChangedMask +#num volMountFSReservedMask +#num volMountSysReservedMask + +#starttype struct AFPVolMountInfo +# field length , +# field media , +# field flags , +# field nbpInterval , +# field nbpCount , +# field uamType , +# field zoneNameOffset , +# field serverNameOffset , +# field volNameOffset , +# field userNameOffset , +# field userPasswordOffset, +# field volPasswordOffset , +# array_field AFPData , CChar +#stoptype +#synonym_t AFPVolMountInfoPtr, Ptr + +#num kAFPExtendedFlagsAlternateAddressMask + +#num kAFPTagTypeIP +#num kAFPTagTypeIPPort +#num kAFPTagTypeDDP +#num kAFPTagTypeDNS + +#num kAFPTagLengthIP +#num kAFPTagLengthIPPort +#num kAFPTagLengthDDP + +#starttype struct AFPTagData +# field fLength, +# field fType , +# flexible_array_member fData, +#stoptype + +#starttype struct AFPAlternateAddress +# field fVersion , +# field fAddressCount, +# flexible_array_member fAddressList, +#stoptype + +#num kLargeIconSize +#num kLarge4BitIconSize +#num kLarge8BitIconSize +#num kSmallIconSize +#num kSmall4BitIconSize +#num kSmall8BitIconSize + +#ccall FSMakeFSRefUnicode , Ptr -> -> Ptr -> -> Ptr -> IO +#ccall PBMakeFSRefUnicodeSync , Ptr -> IO +#ccall PBMakeFSRefUnicodeAsync , Ptr -> IO () +#ccall FSCompareFSRefs , Ptr -> Ptr -> IO +#ccall PBCompareFSRefsSync , Ptr -> IO +#ccall PBCompareFSRefsAsync , Ptr -> IO () +#ccall FSCreateFileUnicode , Ptr -> -> Ptr -> -> Ptr -> Ptr -> -> IO +#ccall PBCreateFileUnicodeSync , Ptr -> IO +#ccall PBCreateFileUnicodeAsync, Ptr -> IO () +#ccall FSCreateDirectoryUnicode, Ptr -> -> Ptr -> -> Ptr -> Ptr -> -> Ptr -> IO +#ccall PBCreateDirectoryUnicodeSync , Ptr -> IO +#ccall PBCreateDirectoryUnicodeAsync, Ptr -> IO () +#ccall FSDeleteObject , Ptr -> IO +#ccall PBDeleteObjectSync , Ptr -> IO +#ccall PBDeleteObjectAsync , Ptr -> IO () +#ccall FSUnlinkObject , Ptr -> IO +#ccall PBUnlinkObjectSync , Ptr -> IO +#ccall PBUnlinkObjectAsync , Ptr -> IO () +#ccall FSMoveObject , Ptr -> Ptr -> Ptr -> IO +#ccall PBMoveObjectSync , Ptr -> IO +#ccall PBMoveObjectAsync , Ptr -> IO () +#ccall FSExchangeObjects , Ptr -> Ptr -> IO +#ccall PBExchangeObjectsSync , Ptr -> IO +#ccall PBExchangeObjectsAsync , Ptr -> IO () + +#num kFSReplaceObjectDefaultOptions +#num kFSReplaceObjectReplaceMetadata +#num kFSReplaceObjectSaveOriginalAsABackup +#num kFSReplaceObjectReplacePermissionInfo +#num kFSReplaceObjectPreservePermissionInfo +#num kFSReplaceObjectDoNotCheckObjectWriteAccess + +#ccall FSReplaceObject , Ptr -> Ptr -> -> -> Ptr -> -> Ptr -> IO +#ccall FSPathReplaceObject , Ptr CChar -> Ptr CChar -> -> -> Ptr CChar -> -> IO +#ccall FSGetTemporaryDirectoryForReplaceObject , Ptr -> Ptr -> -> IO +#ccall FSPathGetTemporaryDirectoryForReplaceObject, Ptr CChar -> Ptr CChar -> -> -> IO +#ccall FSRenameUnicode , Ptr -> -> Ptr -> -> Ptr -> IO +#ccall PBRenameUnicodeSync , Ptr -> IO +#ccall PBRenameUnicodeAsync , Ptr -> IO () +#ccall FSGetCatalogInfo , Ptr -> -> Ptr -> Ptr -> -> Ptr -> IO +#ccall PBGetCatalogInfoSync , Ptr -> IO +#ccall PBGetCatalogInfoAsync, Ptr -> IO () +#ccall FSSetCatalogInfo , Ptr -> -> Ptr -> IO +#ccall PBSetCatalogInfoSync , Ptr -> IO +#ccall PBSetCatalogInfoAsync, Ptr -> IO () +#ccall FSOpenIterator , Ptr -> -> Ptr -> IO +#ccall PBOpenIteratorSync , Ptr -> IO +#ccall PBOpenIteratorAsync , Ptr -> IO () +#ccall FSCloseIterator , -> IO +#ccall PBCloseIteratorSync , Ptr -> IO +#ccall PBCloseIteratorAsync , Ptr -> IO () +#ccall FSGetCatalogInfoBulk , -> -> Ptr -> Ptr -> -> Ptr -> Ptr -> -> Ptr -> IO +#ccall PBGetCatalogInfoBulkSync , Ptr -> IO +#ccall PBGetCatalogInfoBulkAsync, Ptr -> IO () +#ccall FSCatalogSearch , -> Ptr -> -> Ptr -> Ptr -> -> Ptr -> Ptr -> -> Ptr -> IO +#ccall PBCatalogSearchSync , Ptr -> IO +#ccall PBCatalogSearchAsync , Ptr -> IO () +#ccall FSCreateFileAndOpenForkUnicode , Ptr -> -> Ptr -> -> Ptr -> -> Ptr -> -> Ptr -> Ptr -> IO +#ccall PBCreateFileAndOpenForkUnicodeSync , -> IO +#ccall PBCreateFileAndOpenForkUnicodeAsync, -> IO () +#ccall FSCreateFork , Ptr -> -> Ptr -> IO +#ccall PBCreateForkSync , Ptr -> IO +#ccall PBCreateForkAsync , Ptr -> IO () +#ccall FSDeleteFork , Ptr -> -> Ptr -> IO +#ccall PBDeleteForkSync , Ptr -> IO +#ccall PBDeleteForkAsync , Ptr -> IO () +#ccall FSIterateForks , Ptr -> Ptr -> Ptr -> Ptr -> Ptr -> IO +#ccall PBIterateForksSync , Ptr -> IO +#ccall PBIterateForksAsync , Ptr -> IO () +#ccall FSOpenFork , Ptr -> -> Ptr -> -> Ptr -> IO +#ccall PBOpenForkSync , Ptr -> IO +#ccall PBOpenForkAsync , Ptr -> IO () +#ccall FSReadFork , -> -> -> -> Ptr () -> Ptr -> IO +#ccall PBReadForkSync , Ptr -> IO +#ccall PBReadForkAsync , Ptr -> IO () +#ccall FSWriteFork , -> -> -> -> Ptr () -> Ptr -> IO +#ccall PBWriteForkSync , Ptr -> IO +#ccall PBWriteForkAsync , Ptr -> IO () +#ccall FSGetForkPosition , -> Ptr -> IO +#ccall PBGetForkPositionSync, Ptr -> IO +#ccall PBGetForkPositionAsync, Ptr -> IO () +#ccall FSSetForkPosition , -> -> -> IO +#ccall PBSetForkPositionSync, Ptr -> IO +#ccall PBSetForkPositionAsync, Ptr -> IO () +#ccall FSGetForkSize , -> Ptr -> IO +#ccall PBGetForkSizeSync , Ptr -> IO +#ccall PBGetForkSizeAsync , Ptr -> IO () +#ccall FSSetForkSize , -> -> -> IO +#ccall PBSetForkSizeSync , Ptr -> IO +#ccall PBSetForkSizeAsync , Ptr -> IO () +#ccall FSAllocateFork , -> -> -> -> -> Ptr -> IO +#ccall PBAllocateForkSync , Ptr -> IO +#ccall PBAllocateForkAsync , Ptr -> IO () +#ccall FSFlushFork , -> IO +#ccall PBFlushForkSync , Ptr -> IO +#ccall PBFlushForkAsync , Ptr -> IO () +#ccall FSCloseFork , -> IO +#ccall PBCloseForkSync , Ptr -> IO +#ccall PBCloseForkAsync , Ptr -> IO () +#ccall FSGetForkCBInfo , -> -> Ptr CShort -> Ptr -> Ptr -> Ptr -> Ptr -> IO +#ccall PBGetForkCBInfoSync , Ptr -> IO +#ccall PBGetForkCBInfoAsync , Ptr -> IO () +#ccall FSLockRange , -> -> -> -> Ptr -> IO +#ccall PBXLockRangeSync , -> IO +#ccall PBXLockRangeAsync , -> IO +#ccall FSUnlockRange , -> -> -> -> Ptr -> IO +#ccall PBXUnlockRangeSync , -> IO +#ccall PBXUnlockRangeAsync , -> IO +#ccall FSGetVolumeInfo , -> -> Ptr -> -> Ptr -> Ptr -> Ptr -> IO +#ccall PBGetVolumeInfoSync , Ptr -> IO +#ccall PBGetVolumeInfoAsync , Ptr -> IO () +#ccall FSSetVolumeInfo , -> -> Ptr -> IO +#ccall PBSetVolumeInfoSync , Ptr -> IO +#ccall PBSetVolumeInfoAsync , Ptr -> IO () +#ccall FSGetDataForkName , Ptr -> IO +#ccall FSGetResourceForkName, Ptr -> IO +#ccall FSRefMakePath , Ptr -> Ptr -> -> IO +#ccall FSPathMakeRef , Ptr -> Ptr -> Ptr -> IO + +#num kFSPathMakeRefDefaultOptions +#num kFSPathMakeRefDoNotFollowLeafSymlink + +#ccall FSPathMakeRefWithOptions, Ptr -> -> Ptr -> Ptr -> IO +#ccall FSIsFSRefValid , Ptr -> IO + +#integral_t FNMessage +#num kFNDirectoryModifiedMessage + +#ccall FNNotify , Ptr -> -> -> IO +#ccall FNNotifyByPath, Ptr -> -> -> IO +#ccall FNNotifyAll , -> -> IO + +#opaque_t OpaqueFNSubscriptionRef +#synonym_t FNSubscriptionRef, Ptr + +#num kFNNoImplicitAllSubscription +#num kFNNotifyInBackground + +#callback FNSubscriptionProcPtr, -> -> Ptr () -> -> IO () +#synonym_t FNSubscriptionUPP , + +#ccall FNSubscribe , Ptr -> -> Ptr () -> -> Ptr -> IO +#ccall FNSubscribeByPath, Ptr -> -> Ptr () -> -> Ptr -> IO +#ccall FNUnsubscribe , -> IO +#ccall FNGetDirectoryForSubscription, -> Ptr -> IO + +#num kAsyncMountInProgress +#num kAsyncMountComplete +#num kAsyncUnmountInProgress +#num kAsyncUnmountComplete +#num kAsyncEjectInProgress +#num kAsyncEjectComplete + +#integral_t FSMountStatus +#integral_t FSEjectStatus +#integral_t FSUnmountStatus +#opaque_t OpaqueFSVolumeOperation +#synonym_t FSVolumeOperation , Ptr +#callback FSVolumeMountProcPtr , -> Ptr () -> -> -> IO () +#callback FSVolumeUnmountProcPtr, -> Ptr () -> -> -> CPid -> IO () +#callback FSVolumeEjectProcPtr , -> Ptr () -> -> -> CPid -> IO () +#synonym_t FSVolumeMountUPP , +#synonym_t FSVolumeUnmountUPP , +#synonym_t FSVolumeEjectUPP , + +#num kFSMountServerMarkDoNotDisplay +#num kFSMountServerMountOnMountDir +#num kFSMountServerMountWithoutNotification +#num kFSEjectVolumeForceEject +#num kFSUnmountVolumeForceUnmount + +#ccall FSCreateVolumeOperation , Ptr -> IO +#ccall FSDisposeVolumeOperation, -> IO +#ccall FSMountLocalVolumeSync , -> -> Ptr -> -> IO +#ccall FSMountLocalVolumeAsync , -> -> -> Ptr () -> -> -> -> -> IO +#ccall FSMountServerVolumeSync , -> -> -> -> Ptr -> -> IO +#ccall FSMountServerVolumeAsync, -> -> -> -> -> Ptr () -> -> -> -> -> IO +#ccall FSGetAsyncMountStatus , -> Ptr -> Ptr -> Ptr -> Ptr (Ptr ()) -> IO +#ccall FSUnmountVolumeSync , -> -> Ptr CPid -> IO +#ccall FSUnmountVolumeAsync , -> -> -> Ptr () -> -> -> -> IO +#ccall FSGetAsyncUnmountStatus , -> Ptr -> Ptr -> Ptr -> Ptr CPid -> Ptr (Ptr ()) -> IO +#ccall FSCancelVolumeOperation , -> IO +#ccall FSEjectVolumeSync , -> -> Ptr CPid -> IO +#ccall FSEjectVolumeAsync , -> -> -> Ptr () -> -> -> -> IO +#ccall FSGetAsyncEjectStatus , -> Ptr -> Ptr -> Ptr -> Ptr CPid -> Ptr (Ptr ()) -> IO +#ccall FSCopyDiskIDForVolume , -> Ptr -> IO +#ccall FSCopyURLForVolume , -> Ptr -> IO +#ccall FSGetVolumeForDiskID , -> Ptr -> IO +#ccall FSCopyDADiskForVolume , -> Ptr -> IO +#ccall FSGetVolumeForDADisk , -> Ptr -> IO + +#opaque_t __FSFileOperation +#synonym_t FSFileOperationRef , Ptr <__FSFileOperation> +#integral_t FSFileOperationStage + +#starttype struct FSFileOperationClientContext +# field version, +# field info , Ptr () +# field retain , +# field release, +# field copyDescription, +#stoptype + +#callback FSFileOperationStatusProcPtr , -> Ptr -> -> -> -> Ptr () -> IO () +#callback FSPathFileOperationStatusProcPtr, -> Ptr CChar -> -> -> -> Ptr () -> IO () + +#num kFSFileOperationDefaultOptions +#num kFSFileOperationOverwrite +#num kFSFileOperationSkipSourcePermissionErrors +#num kFSFileOperationDoNotMoveAcrossVolumes +#num kFSFileOperationSkipPreflight + +#num kFSOperationStageUndefined +#num kFSOperationStagePreflighting +#num kFSOperationStageRunning +#num kFSOperationStageComplete + +#cinline kFSOperationTotalBytesKey , IO +#cinline kFSOperationBytesCompleteKey , IO +#cinline kFSOperationBytesRemainingKey , IO +#cinline kFSOperationTotalObjectsKey , IO +#cinline kFSOperationObjectsCompleteKey , IO +#cinline kFSOperationObjectsRemainingKey, IO +#cinline kFSOperationTotalUserVisibleObjectsKey , IO +#cinline kFSOperationUserVisibleObjectsCompleteKey , IO +#cinline kFSOperationUserVisibleObjectsRemainingKey, IO +#cinline kFSOperationThroughputKey , IO + +#ccall FSCopyObjectSync , Ptr -> Ptr -> -> Ptr -> -> IO +#ccall FSMoveObjectSync , Ptr -> Ptr -> -> Ptr -> -> IO +#ccall FSMoveObjectToTrashSync, Ptr -> Ptr -> -> IO +#ccall FSPathCopyObjectSync , Ptr CChar -> Ptr CChar -> -> Ptr (Ptr CChar) -> -> IO +#ccall FSPathMoveObjectSync , Ptr CChar -> Ptr CChar -> -> Ptr (Ptr CChar) -> -> IO +#ccall FSPathMoveObjectToTrashSync, Ptr CChar -> Ptr (Ptr CChar) -> -> IO +#ccall FSFileOperationGetTypeID , IO +#ccall FSFileOperationCreate , -> IO +#ccall FSFileOperationScheduleWithRunLoop , -> -> -> IO +#ccall FSFileOperationUnscheduleFromRunLoop, -> -> -> IO +#ccall FSCopyObjectAsync , -> Ptr -> Ptr -> -> -> -> -> Ptr -> IO +#ccall FSMoveObjectAsync , -> Ptr -> Ptr -> -> -> -> -> Ptr -> IO +#ccall FSMoveObjectToTrashAsync, -> Ptr -> -> -> -> Ptr -> IO +#ccall FSPathCopyObjectAsync , -> Ptr CChar -> Ptr CChar -> -> -> -> -> Ptr -> IO +#ccall FSPathMoveObjectAsync , -> Ptr CChar -> Ptr CChar -> -> -> -> -> Ptr -> IO +#ccall FSPathMoveObjectToTrashAsync, -> Ptr CChar -> -> -> -> Ptr -> IO +#ccall FSFileOperationCancel , -> IO +#ccall FSFileOperationCopyStatus , -> Ptr -> Ptr -> Ptr -> Ptr -> Ptr (Ptr ()) -> IO +#ccall FSPathFileOperationCopyStatus, -> Ptr (Ptr CChar) -> Ptr -> Ptr -> Ptr -> Ptr (Ptr ()) -> IO +#ccall FSCreateStringFromHFSUniStr , -> Ptr -> IO +#ccall FSGetHFSUniStrFromString , -> Ptr -> IO +#ccall FSFileSecurityGetTypeID , IO +#ccall FSFileSecurityCreate , -> IO +#ccall FSFileSecurityCreateWithFSPermissionInfo, -> Ptr -> IO +#ccall FSFileSecurityRefCreateCopy , -> -> IO +#ccall FSFileSecurityGetOwnerUUID , -> Ptr -> IO +#ccall FSFileSecuritySetOwnerUUID , -> Ptr -> IO +#ccall FSFileSecurityGetGroupUUID , -> Ptr -> IO +#ccall FSFileSecuritySetGroupUUID , -> Ptr -> IO +-- FIXME: acl_t +-- #ccall FSFileSecurityCopyAccessControlList, -> CACL -> IO +-- #ccall FSFileSecuritySetAccessControlList , -> CACL -> IO +#ccall FSFileSecurityGetOwner , -> Ptr -> IO +#ccall FSFileSecuritySetOwner , -> -> IO +#ccall FSFileSecurityGetGroup , -> Ptr -> IO +#ccall FSFileSecuritySetGroup , -> -> IO +#ccall FSFileSecurityGetMode , -> Ptr -> IO +#ccall FSFileSecuritySetMode , -> -> IO + +#num pleaseCacheBit +#num pleaseCacheMask +#num noCacheBit +#num noCacheMask +#num rdVerifyBit +#num rdVerifyMask +#num rdVerify +#num forceReadBit +#num forceReadMask +#num newLineBit +#num newLineMask +#num newLineCharMask + +#num kOwnerID2Name +#num kGroupID2Name +#num kOwnerName2ID +#num kGroupName2ID +#num kReturnNextUser +#num kReturnNextGroup +#num kReturnNextUG + +#num kVCBFlagsIdleFlushBit +#num kVCBFlagsIdleFlushMask +#num kVCBFlagsHFSPlusAPIsBit +#num kVCBFlagsHFSPlusAPIsMask +#num kVCBFlagsHardwareGoneBit +#num kVCBFlagsHardwareGoneMask +#num kVCBFlagsVolumeDirtyBit +#num kVCBFlagsVolumeDirtyMask + +#num kioVAtrbDefaultVolumeBit +#num kioVAtrbDefaultVolumeMask +#num kioVAtrbFilesOpenBit +#num kioVAtrbFilesOpenMask +#num kioVAtrbHardwareLockedBit +#num kioVAtrbHardwareLockedMask +#num kioVAtrbSoftwareLockedBit +#num kioVAtrbSoftwareLockedMask + +#num kioFlAttribLockedBit +#num kioFlAttribLockedMask +#num kioFlAttribResOpenBit +#num kioFlAttribResOpenMask +#num kioFlAttribDataOpenBit +#num kioFlAttribDataOpenMask +#num kioFlAttribDirBit +#num kioFlAttribDirMask +#num ioDirFlg +#num ioDirMask +#num kioFlAttribCopyProtBit +#num kioFlAttribCopyProtMask +#num kioFlAttribFileOpenBit +#num kioFlAttribFileOpenMask +#num kioFlAttribInSharedBit +#num kioFlAttribInSharedMask +#num kioFlAttribMountedBit +#num kioFlAttribMountedMask +#num kioFlAttribSharePointBit +#num kioFlAttribSharePointMask + +#num kioFCBWriteBit +#num kioFCBWriteMask +#num kioFCBResourceBit +#num kioFCBResourceMask +#num kioFCBWriteLockedBit +#num kioFCBWriteLockedMask +#num kioFCBLargeFileBit +#num kioFCBLargeFileMask +#num kioFCBSharedWriteBit +#num kioFCBSharedWriteMask +#num kioFCBFileLockedBit +#num kioFCBFileLockedMask +#num kioFCBOwnClumpBit +#num kioFCBOwnClumpMask +#num kioFCBModifiedBit +#num kioFCBModifiedMask + +#num kioACUserNoSeeFolderBit +#num kioACUserNoSeeFolderMask +#num kioACUserNoSeeFilesBit +#num kioACUserNoSeeFilesMask +#num kioACUserNoMakeChangesBit +#num kioACUserNoMakeChangesMask +#num kioACUserNotOwnerBit +#num kioACUserNotOwnerMask + +#num kioACAccessOwnerBit +#num kioACAccessOwnerMask +#num kioACAccessBlankAccessBit +#num kioACAccessBlankAccessMask +#num kioACAccessUserWriteBit +#num kioACAccessUserWriteMask +#num kioACAccessUserReadBit +#num kioACAccessUserReadMask +#num kioACAccessUserSearchBit +#num kioACAccessUserSearchMask +#num kioACAccessEveryoneWriteBit +#num kioACAccessEveryoneWriteMask +#num kioACAccessEveryoneReadBit +#num kioACAccessEveryoneReadMask +#num kioACAccessEveryoneSearchBit +#num kioACAccessEveryoneSearchMask +#num kioACAccessGroupWriteBit +#num kioACAccessGroupWriteMask +#num kioACAccessGroupReadBit +#num kioACAccessGroupReadMask +#num kioACAccessGroupSearchBit +#num kioACAccessGroupSearchMask +#num kioACAccessOwnerWriteBit +#num kioACAccessOwnerWriteMask +#num kioACAccessOwnerReadBit +#num kioACAccessOwnerReadMask +#num kioACAccessOwnerSearchBit +#num kioACAccessOwnerSearchMask +#num kfullPrivileges +#num kownerPrivileges + +#ccall FSGetVolumeParms , -> Ptr -> -> IO +#ccall FSGetVolumeMountInfoSize, -> Ptr -> IO +#ccall FSGetVolumeMountInfo , -> -> -> Ptr -> IO +#ccall FSVolumeMount , -> Ptr -> IO +#ccall FSFlushVolume , -> IO +#ccall PBFlushVolumeSync , -> IO +#ccall PBFlushVolumeAsync , -> IO +#ccall PBFSCopyFileSync , -> IO +#ccall PBFSCopyFileAsync , -> IO +#ccall FSResolveNodeID , -> -> -> IO +#ccall PBFSResolveNodeIDSync , -> IO +#ccall PBFSResolveNodeIDAsync , -> IO + +#if !__LP64__ +# ccall FSpMakeFSRef , Ptr -> Ptr -> IO +# ccall PBMakeFSRefSync , Ptr -> IO +# ccall PBMakeFSRefAsync, Ptr -> IO () +# ccall PBCloseSync , -> IO +# ccall PBCloseAsync , -> IO +# ccall PBReadSync , -> IO +# ccall PBReadAsync , -> IO +# ccall PBWriteSync , -> IO +# ccall PBWriteAsync , -> IO +# ccall PBWaitIOComplete, -> -> IO +# ccall PBHGetVolParmsSync , -> IO +# ccall PBHGetVolParmsAsync , -> IO +# ccall PBGetVolMountInfoSize, -> IO +# ccall PBGetVolMountInfo , -> IO +# ccall PBVolumeMount , -> IO +# ccall FlushVol , -> -> IO +# ccall PBFlushVolSync , -> IO +# ccall PBFlushVolAsync , -> IO +# ccall PBHOpenDenySync , -> IO +# ccall PBHOpenDenyAsync , -> IO +# ccall PBHOpenRFDenySync , -> IO +# ccall PBHOpenRFDenyAsync , -> IO +# ccall PBHGetDirAccessSync , -> IO +# ccall PBHGetDirAccessAsync , -> IO +# ccall PBHSetDirAccessSync , -> IO +# ccall PBHSetDirAccessAsync , -> IO +# ccall PBHMapIDSync , -> IO +# ccall PBHMapIDAsync , -> IO +# ccall PBHMapNameSync , -> IO +# ccall PBHMapNameAsync , -> IO +# ccall PBHCopyFileSync , -> IO +# ccall PBHCopyFileAsync , -> IO +# ccall PBCreateFileIDRefSync, -> IO +# ccall PBCreateFileIDRefAsync , -> IO +# ccall PBResolveFileIDRefSync , -> IO +# ccall PBResolveFileIDRefAsync, -> IO +# ccall PBDeleteFileIDRefSync , -> IO +# ccall PBDeleteFileIDRefAsync , -> IO +# ccall PBXGetVolInfoSync , -> IO +# ccall PBXGetVolInfoAsync , -> IO +# ccall PBAllocateSync , -> IO +# ccall PBAllocateAsync , -> IO +# ccall PBGetEOFSync , -> IO +# ccall PBGetEOFAsync , -> IO +# ccall PBSetEOFSync , -> IO +# ccall PBSetEOFAsync , -> IO +# ccall PBGetFPosSync , -> IO +# ccall PBGetFPosAsync , -> IO +# ccall PBSetFPosSync , -> IO +# ccall PBSetFPosAsync , -> IO +# ccall PBFlushFileSync , -> IO +# ccall PBFlushFileAsync , -> IO +# ccall PBUnmountVol , -> IO +# ccall PBCatSearchSync , -> IO +# ccall PBCatSearchAsync , -> IO +# ccall UnmountVol, -> -> IO +# ccall HSetVol , -> -> -> IO +# ccall FSClose , -> IO +# ccall FSRead , -> Ptr -> Ptr () -> IO +# ccall FSWrite , -> Ptr -> Ptr () -> IO +# ccall Allocate , -> Ptr -> IO +# ccall GetEOF , -> Ptr -> IO +# ccall SetEOF , -> -> IO +# ccall GetFPos , -> Ptr -> IO +# ccall SetFPos , -> -> -> IO +# ccall GetVRefNum, -> Ptr -> IO +# ccall PBLockRangeSync , -> IO +# ccall PBLockRangeAsync , -> IO +# ccall PBUnlockRangeSync , -> IO +# ccall PBUnlockRangeAsync, -> IO +# ccall PBHSetVolSync , -> IO +# ccall PBHSetVolAsync , -> IO +# ccall PBHGetVolSync , -> IO +# ccall PBHGetVolAsync , -> IO +# ccall PBCatMoveSync , -> IO +# ccall PBCatMoveAsync , -> IO +# ccall PBDirCreateSync , -> IO +# ccall PBDirCreateAsync , -> IO +# ccall PBGetFCBInfoSync , -> IO +# ccall PBGetFCBInfoAsync , -> IO +# ccall PBGetCatInfoSync , -> IO +# ccall PBGetCatInfoAsync , -> IO +# ccall PBSetCatInfoSync , -> IO +# ccall PBSetCatInfoAsync , -> IO +# ccall PBAllocContigSync , -> IO +# ccall PBAllocContigAsync, -> IO +# ccall PBSetVInfoSync , -> IO +# ccall PBSetVInfoAsync , -> IO +# ccall PBHGetVInfoSync , -> IO +# ccall PBHGetVInfoAsync , -> IO +# ccall PBHOpenSync , -> IO +# ccall PBHOpenAsync , -> IO +# ccall PBHOpenRFSync , -> IO +# ccall PBHOpenRFAsync , -> IO +# ccall PBHOpenDFSync , -> IO +# ccall PBHOpenDFAsync , -> IO +# ccall PBHCreateSync , -> IO +# ccall PBHCreateAsync , -> IO +# ccall PBHDeleteSync , -> IO +# ccall PBHDeleteAsync , -> IO +# ccall PBHRenameSync , -> IO +# ccall PBHRenameAsync , -> IO +# ccall PBHRstFLockSync , -> IO +# ccall PBHRstFLockAsync , -> IO +# ccall PBHSetFLockSync , -> IO +# ccall PBHSetFLockAsync , -> IO +# ccall PBHGetFInfoSync , -> IO +# ccall PBHGetFInfoAsync , -> IO +# ccall PBHSetFInfoSync , -> IO +# ccall PBHSetFInfoAsync , -> IO +# ccall PBMakeFSSpecSync , -> IO +# ccall PBMakeFSSpecAsync , -> IO +# ccall HGetVol , -> Ptr -> Ptr -> IO +# ccall HOpen , -> -> -> -> Ptr -> IO +# ccall HOpenDF , -> -> -> -> Ptr -> IO +# ccall HOpenRF , -> -> -> -> Ptr -> IO +# ccall AllocContig, -> Ptr -> IO +# ccall HCreate , -> -> -> -> -> IO +# ccall DirCreate , -> -> -> Ptr -> IO +# ccall HDelete , -> -> -> IO +# ccall HGetFInfo , -> -> -> Ptr -> IO +# ccall HSetFInfo , -> -> -> Ptr -> IO +# ccall HSetFLock , -> -> -> Ptr +# ccall HRstFLock , -> -> -> Ptr +# ccall HRename , -> -> -> -> IO +# ccall CatMove , -> -> -> -> -> IO +# ccall PBHGetLogInInfoSync , -> IO +# ccall PBHGetLogInInfoAsync , -> IO +# ccall PBHMoveRenameSync , -> IO +# ccall PBHMoveRenameAsync , -> IO +# ccall PBGetXCatInfoSync , -> IO +# ccall PBGetXCatInfoAsync , -> IO +# ccall PBExchangeFilesSync , -> IO +# ccall PBExchangeFilesAsync , -> IO +# ccall PBGetForeignPrivsSync , -> IO +# ccall PBGetForeignPrivsAsync, -> IO +# ccall PBSetForeignPrivsSync , -> IO +# ccall PBSetForeignPrivsAsync, -> IO +#endif + +#if !__LP64__ +# num kLargeIcon +# num kLarge4BitIcon +# num kLarge8BitIcon +# num kSmallIcon +# num kSmall4BitIcon +# num kSmall8BitIcon +# num kicnsIconFamily +#endif + +#if !__LP64__ +# ccall PBDTGetPath , -> IO +# ccall PBDTCloseDown , -> IO +# ccall PBDTAddIconSync , -> IO +# ccall PBDTAddIconAsync, -> IO +# ccall PBDTGetIconSync , -> IO +# ccall PBDTGetIconAsync, -> IO +# ccall PBDTGetIconInfoSync , -> IO +# ccall PBDTGetIconInfoAsync, -> IO +# ccall PBDTAddAPPLSync , -> IO +# ccall PBDTAddAPPLAsync , -> IO +# ccall PBDTRemoveAPPLSync , -> IO +# ccall PBDTRemoveAPPLAsync , -> IO +# ccall PBDTGetAPPLSync , -> IO +# ccall PBDTGetAPPLAsync , -> IO +# ccall PBDTSetCommentSync , -> IO +# ccall PBDTSetCommentAsync , -> IO +# ccall PBDTRemoveCommentSync , -> IO +# ccall PBDTRemoveCommentAsync, -> IO +# ccall PBDTGetCommentSync , -> IO +# ccall PBDTGetCommentAsync , -> IO +# ccall PBDTFlushSync , -> IO +# ccall PBDTFlushAsync , -> IO +# ccall PBDTResetSync , -> IO +# ccall PBDTResetAsync , -> IO +# ccall PBDTGetInfoSync , -> IO +# ccall PBDTGetInfoAsync , -> IO +# ccall PBDTOpenInform , -> IO +# ccall PBDTDeleteSync , -> IO +# ccall PBDTDeleteAsync , -> IO +# ccall FSMakeFSSpec, -> -> -> Ptr -> IO +# ccall FSpOpenDF , Ptr -> -> Ptr -> IO +# ccall FSpOpenRF , Ptr -> -> Ptr -> IO +# ccall FSpCreate , Ptr -> -> -> -> IO +# ccall FSpDirCreate, Ptr -> -> Ptr -> IO +# ccall FSpDelete , Ptr -> IO +# ccall FSpGetFInfo , Ptr -> Ptr -> IO +# ccall FSpSetFInfo , Ptr -> Ptr -> IO +# ccall FSpSetFLock , Ptr -> IO +# ccall FSpRstFLock , Ptr -> IO +# ccall FSpRename , Ptr -> -> IO +# ccall FSpCatMove , Ptr -> Ptr -> IO +# ccall FSpExchangeFiles , Ptr -> Ptr -> IO +# ccall PBShareSync , -> IO +# ccall PBShareAsync , -> IO +# ccall PBUnshareSync , -> IO +# ccall PBUnshareAsync , -> IO +# ccall PBGetUGEntrySync , -> IO +# ccall PBGetUGEntryAsync, -> IO +#endif