62 lines
2.5 KiB
C
62 lines
2.5 KiB
C
#ifndef KSU_SUSFS_DEF_H
|
|
#define KSU_SUSFS_DEF_H
|
|
|
|
#include <linux/bits.h>
|
|
|
|
/********/
|
|
/* ENUM */
|
|
/********/
|
|
/* shared with userspace ksu_susfs tool */
|
|
#define CMD_SUSFS_ADD_SUS_PATH 0x55550
|
|
#define CMD_SUSFS_ADD_SUS_MOUNT 0x55560
|
|
#define CMD_SUSFS_ADD_SUS_KSTAT 0x55570
|
|
#define CMD_SUSFS_UPDATE_SUS_KSTAT 0x55571
|
|
#define CMD_SUSFS_ADD_SUS_KSTAT_STATICALLY 0x55572
|
|
#define CMD_SUSFS_ADD_TRY_UMOUNT 0x55580
|
|
#define CMD_SUSFS_SET_UNAME 0x55590
|
|
#define CMD_SUSFS_ENABLE_LOG 0x555a0
|
|
#define CMD_SUSFS_SET_CMDLINE_OR_BOOTCONFIG 0x555b0
|
|
#define CMD_SUSFS_ADD_OPEN_REDIRECT 0x555c0
|
|
#define CMD_SUSFS_RUN_UMOUNT_FOR_CURRENT_MNT_NS 0x555d0
|
|
#define CMD_SUSFS_SHOW_VERSION 0x555e1
|
|
#define CMD_SUSFS_SHOW_ENABLED_FEATURES 0x555e2
|
|
#define CMD_SUSFS_SHOW_VARIANT 0x555e3
|
|
#define CMD_SUSFS_SHOW_SUS_SU_WORKING_MODE 0x555e4
|
|
#define CMD_SUSFS_IS_SUS_SU_READY 0x555f0
|
|
#define CMD_SUSFS_SUS_SU 0x60000
|
|
|
|
#define SUSFS_MAX_LEN_PATHNAME 256 // 256 should address many paths already unless you are doing some strange experimental stuff, then set your own desired length
|
|
#define SUSFS_FAKE_CMDLINE_OR_BOOTCONFIG_SIZE 4096
|
|
|
|
#define TRY_UMOUNT_DEFAULT 0 /* used by susfs_try_umount() */
|
|
#define TRY_UMOUNT_DETACH 1 /* used by susfs_try_umount() */
|
|
|
|
#define SUS_SU_DISABLED 0
|
|
#define SUS_SU_WITH_OVERLAY 1 /* deprecated */
|
|
#define SUS_SU_WITH_HOOKS 2
|
|
|
|
#define DEFAULT_SUS_MNT_ID 100000 /* used by mount->mnt_id */
|
|
#define DEFAULT_SUS_MNT_ID_FOR_KSU_PROC_UNSHARE 1000000 /* used by vfsmount->susfs_mnt_id_backup */
|
|
#define DEFAULT_SUS_MNT_GROUP_ID 1000 /* used by mount->mnt_group_id */
|
|
|
|
/*
|
|
* inode->i_state => storing flag 'INODE_STATE_'
|
|
* mount->mnt.susfs_mnt_id_backup => storing original mnt_id of normal mounts or custom sus mnt_id of sus mounts
|
|
* task_struct->susfs_last_fake_mnt_id => storing last valid fake mnt_id
|
|
* task_struct->susfs_task_state => storing flag 'TASK_STRUCT_'
|
|
*/
|
|
|
|
#define INODE_STATE_SUS_PATH BIT(24)
|
|
#define INODE_STATE_SUS_MOUNT BIT(25)
|
|
#define INODE_STATE_SUS_KSTAT BIT(26)
|
|
#define INODE_STATE_OPEN_REDIRECT BIT(27)
|
|
|
|
#define TASK_STRUCT_NON_ROOT_USER_APP_PROC BIT(24)
|
|
|
|
#define MAGIC_MOUNT_WORKDIR "/debug_ramdisk/workdir"
|
|
#define DATA_ADB_UMOUNT_FOR_ZYGOTE_SYSTEM_PROCESS "/data/adb/susfs_umount_for_zygote_system_process"
|
|
#define DATA_ADB_NO_AUTO_ADD_SUS_BIND_MOUNT "/data/adb/susfs_no_auto_add_sus_bind_mount"
|
|
#define DATA_ADB_NO_AUTO_ADD_SUS_KSU_DEFAULT_MOUNT "/data/adb/susfs_no_auto_add_sus_ksu_default_mount"
|
|
#define DATA_ADB_NO_AUTO_ADD_TRY_UMOUNT_FOR_BIND_MOUNT "/data/adb/susfs_no_auto_add_try_umount_for_bind_mount"
|
|
|
|
#endif // #ifndef KSU_SUSFS_DEF_H
|