diff --git a/appdata-sandbox-app.json b/appdata-sandbox-app.json index 8a104e794812ba994916117251620a6f75e529c0..2a44886e469d7a5cdea52f52296168129e851da2 100755 --- a/appdata-sandbox-app.json +++ b/appdata-sandbox-app.json @@ -423,6 +423,12 @@ "src-path": "/system/app", "sandbox-path": "/system/app" }] + }, { + "name": "CUSTOM_SANDBOX_HAP", + "mount-paths": [{ + "src-path": "/tmp", + "sandbox-path": "/tmp" + }] }], "package-name": [{ "name": "com.ohos.medialibrary.medialibrarydata", diff --git a/appdata-sandbox.json b/appdata-sandbox.json index 4aaf262338b513584aef5d6f81eb3e958022d634..4de8ee7762007a4a8ca093401422701e9fb95ebf 100755 --- a/appdata-sandbox.json +++ b/appdata-sandbox.json @@ -359,6 +359,14 @@ "sandbox-flags": [ "bind", "rec" ], "check-action-status": "false" } + ]}, { + "flags": "CUSTOM_SANDBOX_HAP", + "mount-paths": [{ + "src-path": "/tmp", + "sandbox-path": "/tmp", + "sandbox-flags": [ "bind", "rec" ], + "check-action-status": "false" + } ]} ], "symbol-links" : [ diff --git a/modules/sandbox/sandbox_load.c b/modules/sandbox/sandbox_load.c index 9ed25882d9294dd20e932d8d2aed51925a4c1dfc..8bbd98de0b7ba634bc954badc0388d6daf041767 100644 --- a/modules/sandbox/sandbox_load.c +++ b/modules/sandbox/sandbox_load.c @@ -46,7 +46,8 @@ static const SandboxFlagInfo FLAGE_POINT_MAP[] = { {"START_FLAGS_BACKUP", (unsigned long)APP_FLAGS_BACKUP_EXTENSION}, {"DLP_MANAGER", (unsigned long)APP_FLAGS_DLP_MANAGER}, {"DEVELOPER_MODE", (unsigned long)APP_FLAGS_DEVELOPER_MODE}, - {"PREINSTALLED_HAP", (unsigned long)APP_FLAGS_PRE_INSTALLED_HAP} + {"PREINSTALLED_HAP", (unsigned long)APP_FLAGS_PRE_INSTALLED_HAP}, + {"CUSTOM_SANDBOX_HAP", (unsigned long)APP_FLAGS_CUSTOM_SANDBOX} }; static const SandboxFlagInfo MOUNT_MODE_MAP[] = { diff --git a/modules/sandbox/sandbox_utils.cpp b/modules/sandbox/sandbox_utils.cpp index 6f30d7b423913aeeca055716796387a7a2f25153..77ebec861487b7e238eec11ec90620eea5938f88 100644 --- a/modules/sandbox/sandbox_utils.cpp +++ b/modules/sandbox/sandbox_utils.cpp @@ -779,7 +779,8 @@ static uint32_t ConvertFlagStr(const std::string &flagStr) const std::map flagsMap = {{"0", 0}, {"START_FLAGS_BACKUP", 1}, {"DLP_MANAGER", 2}, {"DEVELOPER_MODE", 17}, - {"PREINSTALLED_HAP", 29}}; + {"PREINSTALLED_HAP", 29}, + {"CUSTOM_SANDBOX_HAP", 31}}; if (flagsMap.count(flagStr)) { return 1 << flagsMap.at(flagStr);