Skip to content

Instantly share code, notes, and snippets.

@GaryOderNichts
Created March 18, 2024 19:34
Show Gist options
  • Save GaryOderNichts/7edbb116da6b27ec860d94d206826ac9 to your computer and use it in GitHub Desktop.
Save GaryOderNichts/7edbb116da6b27ec860d94d206826ac9 to your computer and use it in GitHub Desktop.
FSA capability masks
#pragma once
#define FSA_CAPABILITY_ODD_READ (1llu << 0)
#define FSA_CAPABILITY_ODD_WRITE (1llu << 1)
#define FSA_CAPABILITY_ODD_RAW_OPEN (1llu << 2)
#define FSA_CAPABILITY_ODD_MOUNT (1llu << 3)
#define FSA_CAPABILITY_SLCCMPT_READ (1llu << 4)
#define FSA_CAPABILITY_SLCCMPT_WRITE (1llu << 5)
#define FSA_CAPABILITY_SLCCMPT_RAW_OPEN (1llu << 6)
#define FSA_CAPABILITY_SLCCMPT_MOUNT (1llu << 7)
#define FSA_CAPABILITY_SLC_READ (1llu << 8)
#define FSA_CAPABILITY_SLC_WRITE (1llu << 9)
#define FSA_CAPABILITY_SLC_RAW_OPEN (1llu << 10)
#define FSA_CAPABILITY_SLC_MOUNT (1llu << 11)
#define FSA_CAPABILITY_MLC_READ (1llu << 12)
#define FSA_CAPABILITY_MLC_WRITE (1llu << 13)
#define FSA_CAPABILITY_MLC_RAW_OPEN (1llu << 14)
#define FSA_CAPABILITY_MLC_MOUNT (1llu << 15)
#define FSA_CAPABILITY_SDCARD_READ (1llu << 16)
#define FSA_CAPABILITY_SDCARD_WRITE (1llu << 17)
#define FSA_CAPABILITY_SDCARD_RAW_OPEN (1llu << 18)
#define FSA_CAPABILITY_SDCARD_MOUNT (1llu << 19)
#define FSA_CAPABILITY_HFIO_READ (1llu << 20)
#define FSA_CAPABILITY_HFIO_WRITE (1llu << 21)
#define FSA_CAPABILITY_HFIO_RAW_OPEN (1llu << 22)
#define FSA_CAPABILITY_HFIO_MOUNT (1llu << 23)
#define FSA_CAPABILITY_RAMDISK_READ (1llu << 24)
#define FSA_CAPABILITY_RAMDISK_WRITE (1llu << 25)
#define FSA_CAPABILITY_RAMDISK_RAW_OPEN (1llu << 26)
#define FSA_CAPABILITY_RAMDISK_MOUNT (1llu << 27)
#define FSA_CAPABILITY_USB_READ (1llu << 28)
#define FSA_CAPABILITY_USB_WRITE (1llu << 29)
#define FSA_CAPABILITY_USB_RAW_OPEN (1llu << 30)
#define FSA_CAPABILITY_USB_MOUNT (1llu << 31)
#define FSA_CAPABILITY_OTHER_READ (1llu << 32)
#define FSA_CAPABILITY_OTHER_WRITE (1llu << 33)
#define FSA_CAPABILITY_OTHER_RAW_OPEN (1llu << 34)
#define FSA_CAPABILITY_OTHER_MOUNT (1llu << 35)
// Used by DelUserProcess, MountWithProcess, UnmountWithProcess
#define FSA_CAPABILITY_UNKNOWN_36 (1llu << 36)
// Used by ChangeOwner
#define FSA_CAPABILITY_UNKNOWN_38 (1llu << 38)
// Used by MountWithProcess, UnmountWithProcess
#define FSA_CAPABILITY_UNKNOWN_41 (1llu << 41)
// Used by IOCTL 0x90, 0x92, 0x93, 0x95
#define FSA_CAPABILITY_UNKNOWN_45 (1llu << 45)
// Used by OpenFile when (createMode & 1) != 0 (ExecOther?)
#define FSA_CAPABILITY_UNKNOWN_47 (1llu << 47)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment