安全告警

Signed-off-by: lidongrui <lidongrui3@huawei.com>
Co-Authored-By: Agent

🤖 AI[0%] 🔧 Human Fixed[0%] 🧑 Human[100%] 👌 AI Adopted[0%]
This commit is contained in:
DESKTOP-UGVMD4B\DawnComing
2026-07-30 11:05:35 +08:00
parent 06cfdb381d
commit 82eaeb5be8
9 changed files with 71 additions and 14 deletions
@@ -54,10 +54,13 @@ void JsCliEventHandlerManager::EnsureInitialized()
if (initialized_) {
return;
}
handler_ = std::make_shared<AppExecFwk::EventHandler>(AppExecFwk::EventRunner::GetMainEventRunner());
if (handler_) {
initialized_ = true;
auto runner = AppExecFwk::EventRunner::GetMainEventRunner();
if (runner == nullptr) {
TAG_LOGE(AAFwkTag::CLI_TOOL, "EnsureInitialized failed due to null main event runner");
return;
}
handler_ = std::make_shared<AppExecFwk::EventHandler>(runner);
initialized_ = true;
}
} // namespace CliTool
@@ -467,7 +467,11 @@ napi_value CreateJsSubCommandInfo(napi_env env, const SubCommandInfo &subcmd)
// Set requirePermissions (array)
napi_value jsPermissions = nullptr;
napi_create_array(env, &jsPermissions);
status = napi_create_array(env, &jsPermissions);
if (status != napi_ok) {
TAG_LOGE(AAFwkTag::CLI_TOOL, "napi_create_array failed, %{public}d", status);
return nullptr;
}
for (size_t i = 0; i < subcmd.requirePermissions.size(); i++) {
napi_value jsPerm = AppExecFwk::WrapStringToJS(env, subcmd.requirePermissions[i]);
napi_set_element(env, jsPermissions, i, jsPerm);
@@ -484,7 +488,11 @@ napi_value CreateJsSubCommandInfo(napi_env env, const SubCommandInfo &subcmd)
// Set eventTypes (array)
napi_value jsEventTypes = nullptr;
napi_create_array(env, &jsEventTypes);
status = napi_create_array(env, &jsEventTypes);
if (status != napi_ok) {
TAG_LOGE(AAFwkTag::CLI_TOOL, "napi_create_array failed, %{public}d", status);
return nullptr;
}
for (size_t i = 0; i < subcmd.eventTypes.size(); i++) {
napi_value jsEventType = AppExecFwk::WrapStringToJS(env, subcmd.eventTypes[i]);
napi_set_element(env, jsEventTypes, i, jsEventType);
@@ -568,7 +576,11 @@ napi_value CreateJsToolInfo(napi_env env, const ToolInfo &tool)
// Set requirePermissions (array)
napi_value jsPermissions = nullptr;
napi_create_array(env, &jsPermissions);
status = napi_create_array(env, &jsPermissions);
if (status != napi_ok) {
TAG_LOGE(AAFwkTag::CLI_TOOL, "napi_create_array failed, %{public}d", status);
return nullptr;
}
for (size_t i = 0; i < tool.requirePermissions.size(); i++) {
napi_value jsPerm = AppExecFwk::WrapStringToJS(env, tool.requirePermissions[i]);
napi_set_element(env, jsPermissions, i, jsPerm);
@@ -585,7 +597,11 @@ napi_value CreateJsToolInfo(napi_env env, const ToolInfo &tool)
// Set eventTypes (array)
napi_value jsEventTypes = nullptr;
napi_create_array(env, &jsEventTypes);
status = napi_create_array(env, &jsEventTypes);
if (status != napi_ok) {
TAG_LOGE(AAFwkTag::CLI_TOOL, "napi_create_array failed, %{public}d", status);
return nullptr;
}
for (size_t i = 0; i < tool.eventTypes.size(); i++) {
napi_value jsEventType = AppExecFwk::WrapStringToJS(env, tool.eventTypes[i]);
napi_set_element(env, jsEventTypes, i, jsEventType);
@@ -117,7 +117,12 @@ void CliToolManagerService::HandleProcessTimeout(const std::string &sessionId)
}
EventDispatcher::GetInstance().DispatchErrorEvent(sessionId, "session timed out");
ProcessManager::GetInstance().Killpg(record->processId);
if (record->processId > 0) {
ProcessManager::GetInstance().Killpg(record->processId);
} else {
TAG_LOGW(AAFwkTag::CLI_TOOL, "HandleProcessTimeout skip Killpg: invalid processId, sessionId=%{public}s",
sessionId.c_str());
}
}
void CliToolManagerService::HandleProcessYieldTimeout(const std::string &sessionId)