| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
fix supportBind Signed-off-by: xiehd <xiehuandong@huawei.com> | 1 年前 | |
fix_log Signed-off-by: tantingting <tantingting5@huawei.com> | 2 年前 | |
记录查杀接口 Signed-off-by: zhoulanzhi <zhoulanzhi@huawei.com> Signed-off-by: opencode <ai@local> AI[72%] Human Fixed[0%] Human[28%] AI Adopted[80%] Co-authored-by: opencode (glm-5.2) <ai@local> Change-Id: Idf9a8a59c2a9af9415dccac6f744d7c3b1f764bc | 26 天前 | |
稳定性代码检视修复 Signed-off-by: xia <xialiangwei1@huawei.com> | 1 年前 | |
hyper Signed-off-by: xialiangwei <2049500708@qq.com> | 6 个月前 | |
modify log Signed-off-by: tantingting <tantingting5@huawei.com> | 2 年前 | |
fix fdsan Signed-off-by: 任国军 <renguojun1@h-partners.com> | 8 个月前 | |
ams adaption for ffrt Signed-off-by: darkness33 <zhongyan27@huawei.com> | 2 个月前 | |
youhua Signed-off-by: wkljy <wangkailong6@huawei.com> | 8 个月前 | |
!20340 merge snapshot_dfx into master 快照dfx检视建议修改 Created-by: pptaozz Commit-by: zhangatao Merged-by: openharmony_ci Description: **IssueNo**: https://gitcode.com/openharmony/ability_ability_runtime/issues/16099 **Description**: 快照dfx检视建议修改 **稳定性自检:** | 自检项 | 自检结果 | | ------------------------------------------------------------ | -------- | | 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发 | | | 成员变量进行赋值或创建需要排查并发 | | | 谨慎在lambda表达式中使用引用捕获 | | | 谨慎在未经拷贝的情况下使用外部传入的string、C字符串 | | | map\vector\list\set等stl模板类使用时需要排查并发 | | | 谨慎考虑加锁范围 | | | 在IPC通信中谨慎使用同步通信方式 | | | 禁止传递this指针至其他模块或线程(特别是eventhandler任务) | | | 禁止将外部传入的裸指针在内部直接构造智能指针 | | | 禁止多个独立创建的智能指针管理同一地址 | | | 禁止在析构函数中抛异步任务 | | | 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁 | | | 禁止在对外接口中未经判空直接使用外部传入的指针 | | | 禁止接口返回局部变量引用 | | | 禁止在信号函数中加锁 | | | 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作 | | | 禁止将同一个cpp编译在不同的so中 | | **安全编码自检:** | 自检项 | 自检结果 | | -------------------------------------------------------------- | -------- | | 裸指针避免通过隐式转换构造为sptr | | | json对象在取值之前必须先判断类型,避免类型不匹配 | | | 序列化时必须对传入的数组大小进行校验,避免出现超大数组 | | | 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型 | | | 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 | | | 指针变量、表示资源描述符的变量、bool变量必须赋初值 | | | readParcelable获取的对象使用前需要判空 | | | 分配和释放内存的函数需要成对出现 | | | 申请内存后异常退出前需要及时进行内存释放 | | | 内存申请前必须对内存大小进行合法性校验 | | | 内存分配后必须判断是否成功 | | | 禁止使用realloc、alloca函数 | | | 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰 | | | 禁止打印内存地址 | | | 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0 | | | 禁止对有符号整数进行位操作符运算 | | | 禁止对指针进行逻辑或位运算 | | | 循环次数如果收外部数据控制,需要检验其合法性 | | | 禁止使用内存操作类危险函数,需要使用安全函数 | | | 谨慎使用不可重入函数 | | | 必须检查安全函数的返回值,并进行正确处理 | | | 禁止仅通过TokenType类型判断绕过权限校验 | | **TDD Result**: **XTS Result**: ### 是否已执行L0用例 - [ ] 已验证 - [ ] 不涉及。如不涉及,请写明理由 ### AI检视评分(使用本地代码检视skills扫描): See merge request: openharmony/ability_ability_runtime!20340 | 1 个月前 | |
Add half timeout for app lifecycle Signed-off-by: wangzhen <wangzhen346@huawei.com> Change-Id: Ifabe424597e3ee25fb9960f5ceefa03ad4bce6cd | 1 年前 | |
!20500 merge master into master Message:提供Exit和signal杀应用进程的原因设置和查询接口 Created-by: zhengdongdong12 Commit-by: zhengdongdong12 Merged-by: openharmony_ci Description: https://gitcode.com/openharmony/ability_ability_runtime/issues/16264 See merge request: openharmony/ability_ability_runtime!20500 | 20 天前 | |
fixbug/Null Pointer Dereference Signed-off-by: Alang <gaoyulang@huawei.com> Change-Id: I542fcc9b8992dc926e4846540dd24c2194ececd3 | 1 个月前 | |
fdsan: 接管 pidfd 与 memfd fd 所有权,删除裸 close Signed-off-by: zhangyuhang72 <zhangyuhang72@h-partners.com> Change-Id: I5c59998b946f0ca136c93ad642588dcbbb5be040 | 25 天前 | |
AMS指令数降负载 Signed-off-by: SKY2001 <songtianyu10@huawei.com> 🤖 AI[0%] 🔧 Human Fixed[0%] 🧑 Human[100%] 👌 AI Adopted[0%] | 2 个月前 | |
hyper Signed-off-by: xialiangwei <2049500708@qq.com> | 6 个月前 | |
移除已废弃的jointUserId及signCode字段相关代码 Signed-off-by: zhangyuhang72 <zhangyuhang72@h-partners.com> AI[0%] Human Fixed[0%] Human[0%] AI Adopted[0%] Change-Id: I0dfb91dec696429c0db80b5c1302aa6ea88225d4 | 26 天前 | |
!20500 merge master into master Message:提供Exit和signal杀应用进程的原因设置和查询接口 Created-by: zhengdongdong12 Commit-by: zhengdongdong12 Merged-by: openharmony_ci Description: https://gitcode.com/openharmony/ability_ability_runtime/issues/16264 See merge request: openharmony/ability_ability_runtime!20500 | 20 天前 | |
fix_log Signed-off-by: tantingting <tantingting5@huawei.com> | 2 年前 | |
!20506 merge OptimizeStartMsgFlag into master 优化StartMsg标志位管理 Created-by: SKY2001 Commit-by: SKY2001 Merged-by: openharmony_ci Description: 优化StartMsg标志位管理 https://gitcode.com/openharmony/ability_ability_runtime/issues/16278?ref=&did=4345635#tid-4345635 See merge request: openharmony/ability_ability_runtime!20506 | 20 天前 | |
modify log Signed-off-by: tantingting <tantingting5@huawei.com> | 2 年前 | |
!20264 merge dev_profiler into master 静态支持调优 Created-by: ProfaneAria Commit-by: renguojun Merged-by: openharmony_ci Description: **IssueNo**: **Description**: **稳定性自检:** | 自检项 | 自检结果 | | ------------------------------------------------------------ | -------- | | 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发 | | | 成员变量进行赋值或创建需要排查并发 | | | 谨慎在lambda表达式中使用引用捕获 | | | 谨慎在未经拷贝的情况下使用外部传入的string、C字符串 | | | map\vector\list\set等stl模板类使用时需要排查并发 | | | 谨慎考虑加锁范围 | | | 在IPC通信中谨慎使用同步通信方式 | | | 禁止传递this指针至其他模块或线程(特别是eventhandler任务) | | | 禁止将外部传入的裸指针在内部直接构造智能指针 | | | 禁止多个独立创建的智能指针管理同一地址 | | | 禁止在析构函数中抛异步任务 | | | 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁 | | | 禁止在对外接口中未经判空直接使用外部传入的指针 | | | 禁止接口返回局部变量引用 | | | 禁止在信号函数中加锁 | | | 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作 | | | 禁止将同一个cpp编译在不同的so中 | | **安全编码自检:** | 自检项 | 自检结果 | | -------------------------------------------------------------- | -------- | | 裸指针避免通过隐式转换构造为sptr | | | json对象在取值之前必须先判断类型,避免类型不匹配 | | | 序列化时必须对传入的数组大小进行校验,避免出现超大数组 | | | 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型 | | | 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 | | | 指针变量、表示资源描述符的变量、bool变量必须赋初值 | | | readParcelable获取的对象使用前需要判空 | | | 分配和释放内存的函数需要成对出现 | | | 申请内存后异常退出前需要及时进行内存释放 | | | 内存申请前必须对内存大小进行合法性校验 | | | 内存分配后必须判断是否成功 | | | 禁止使用realloc、alloca函数 | | | 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰 | | | 禁止打印内存地址 | | | 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0 | | | 禁止对有符号整数进行位操作符运算 | | | 禁止对指针进行逻辑或位运算 | | | 循环次数如果收外部数据控制,需要检验其合法性 | | | 禁止使用内存操作类危险函数,需要使用安全函数 | | | 谨慎使用不可重入函数 | | | 必须检查安全函数的返回值,并进行正确处理 | | | 禁止仅通过TokenType类型判断绕过权限校验 | | **TDD Result**: **XTS Result**: - [ ] 已验证 - [ ] 不涉及。如不涉及,请写明理由 > 统一报告由 codecheck 工作台生成,**用于门禁管控**。本轮仅报告本次提交**引入的**问题(新增/修改代码中的缺陷),不含 pre-existing 问题。 --- <!-- codecheck-report-metadata:start --> yaml codecheck_report: schema_version: "1.0" scope: "commit-85eff3e5-静态支持调优-仅引入问题" round: 1 commit_id: "85eff3e5e9317714081db3d001bf627e2c21581a" change_id: "N/A" report_id: "85eff3e5-R1" date: "2026-09-11" gate_decision: "approve" risk_level: "low" score: 91 dimensions_required: ["security-scanner", "logic-scanner"] dimensions_executed: ["security-scanner", "logic-scanner"] findings_total: 3 findings_by_severity: {P0: 0, P1: 0, P2: 1, P3: 2} gate_blockers: [] must_fix: [] followups: ["LOG-01", "LOG-02", "LOG-03"] <!-- codecheck-report-metadata:end --> --- | 项目 | 结论 | |---|---| | 决策 | **approve** | | 风险等级 | 🟢 low | | 评分 | **91/100** | | 阻塞项 | 无 | | 必须修复(P0/P1) | 0 项 | | 建议跟进(P2/P3) | 3 项 | **一句话结论**:本次提交为 ETS 运行时新增 Profiler 功能,未引入 P0/P1 级缺陷;security-scanner 未发现引入的安全问题,logic-scanner 发现 1 个返回值语义混淆(P2)和 2 个观察项(P3),建议跟进但不阻塞上库。 --- **无。** --- | ID | 优先级 | 问题 | 建议行动 | 排期 | |---|---|---|---|---| | LOG-01 | P2 | JsperfProfilerCommandParse 返回值 0 语义混淆——"jsperf 未找到"与"显式 jsperf 0"不可区分,显式 0 被静默替换为 500 | 改用 std::optional<int32_t> 或负哨兵值区分"未找到"与解析值;与 JsRuntime 同步重构 | 下一补档 | | LOG-02 | P3 | ETSRuntime 与 JsRuntime 默认 interval 行为不一致(500 vs 0) | 确认 ark API 对 interval=0 的语义;若 0 表示"使用内部默认值"则统一两运行时策略 | 确认型 | | LOG-03 | P3 | StartProfilerTask 无幂等保护,多次调用 StartProfiler 会重复启动 profiler | 确认 ark API 幂等性;若不幂等则增加 profilerStarted_ 标志位 | 确认型 | --- | 维度 | 结果 | 关键说明 | |---|---|---| | security-scanner | 通过(0 项) | 11 项核心扫描均无命中(9 项无命中 + 2 项 N/A);15 个 G 类已知缺陷模式均无匹配;SEC-02(jsVm 空检)和 LOG-02(不可达检查)的修复均已正确到位且未引入新风险 | | logic-scanner | 通过(3 项 P2/P3) | 返回值 0 语义混淆(P2,标准 aa 校验器缓解但设计缺陷真实);默认 interval 行为不一致(P3,需确认 ark API 语义);无幂等保护(P3,遵循 JsRuntime 既有模式);int32_t→uint32_t 转换链经分析确认安全 | --- - **位置**:frameworks/native/runtime/ets_runtime.cpp:929(返回 0 表示未找到);ets_runtime.cpp:952(返回解析值可为 0);ets_runtime.cpp:966-970(调用方 != 0 守卫) - **触发路径**:perfCmd = "profile jsperf 0" → command.find("jsperf") 命中 → 正则匹配成功 → strtol("0")=0,通过 >INT32_MAX 校验 → 返回 0 → jsperfInterval=0 → if (0 != 0) 为 false → interval 保持 500,用户显式值 0 被静默丢弃 - **影响**:返回值 0 同时表示"jsperf 未找到"(929 行)和"显式 jsperf 0"(952 行),StartProfilerTask 的 != 0 守卫无法区分两者。标准 aa 命令校验器(ability_command.cpp:1317)合法区间为 100–5000,拒绝 "0",--ps 路径同样经 CheckReservedPerfCmd 校验(ability_command.cpp:2209),标准路径不可触发。仅当特权系统服务绕过校验直接注入 perfCmd 时暴露。interval=0 对 profiler 大概率本身即非法,fallback 到 500 可能是安全行为,但返回值契约歧义是真实设计缺陷。 - **证据**: - ets_runtime.cpp:929:return 0;(jsperf 未找到) - ets_runtime.cpp:952:return static_cast<int32_t>(result);(result 可为 0) - ets_runtime.cpp:968:if (jsperfInterval != 0) { interval = jsperfInterval; } — 0 被跳过 - 对比 JsRuntime(js_runtime.cpp:409)直接赋值无 != 0 守卫,两运行时行为不一致 - ability_command.cpp:1317:std::regex regexCmd(R"(^jsperf($|\s+($|((5000|([1-9]|[1-4]\d)\d\d)|)\s*($|nativeperf.*))))") — 合法区间 100–5000 - **建议**:方案 A:JsperfProfilerCommandParse 在"未找到"时返回 defaultValue 而非 0,消除 0 的歧义;方案 B:使用 std::optional<int32_t> 作为返回类型;方案 C:StartProfilerTask 先判 command.find("jsperf") == npos 再决定是否调用解析函数。建议与 JsRuntime 同步重构。 - **位置**:frameworks/native/runtime/ets_runtime.cpp:962(uint32_t interval = DEFAULT_INTER_VAL) - **触发路径**:当 perfCmd 不含 "profile" 或不含 "jsperf" 时(如 "", "dumpheap", "profile nativeperf"),ETSRuntime 使用 interval=500,JsRuntime 使用 interval=0 - **影响**:底层 ark::ArkDebugNativeAPI::StartProfiler 收到的 interval 参数在两种运行时下不同。如果 interval=0 表示"使用内部默认值",则 ETSRuntime 硬编码 500 可能与底层默认值不一致。实际影响取决于 ark API 对 interval=0 的语义解释。 - **证据**: - ets_runtime.cpp:962:uint32_t interval = DEFAULT_INTER_VAL;(= 500) - 对比 JsRuntime(js_runtime.cpp:405):int32_t interval = 0; - **建议**:确认 ark API 对 interval=0 的语义。若 0 表示"使用内部默认值"则统一两运行时策略;若 0 非法则 ETSRuntime 的 500 兜底是合理的设计差异,建议补注释标注。 - **位置**:frameworks/native/runtime/ets_runtime.cpp:955-986(StartProfilerTask);ets_runtime.cpp:1032(公共 StartProfiler 末尾无条件调用) - **触发路径**:runtime->StartProfiler(opt1) → StartProfilerTask → ark::ArkDebugNativeAPI::StartProfiler(第 1 次)→ 后续 runtime->StartProfiler(opt2) → StartProfilerTask → ark::ArkDebugNativeAPI::StartProfiler(第 2 次) - **影响**:若 ark API 不幂等,重复调用可能导致重复采样或资源泄漏。当前唯一已知调用方 main_thread.cpp 每次进程启动仅调一次,实际风险低。JsRuntime 同样无幂等保护(既有模式)。 - **证据**: - ets_runtime.cpp:1032:StartProfilerTask(dOption); — 无条件调用 - StartProfilerTask 内部无 "profiler 已启动" 标志位 - 对比 StopDebugMode(ets_environment.cpp:880)有 debugMode_ 标志保护 - **建议**:确认 ark::ArkDebugNativeAPI::StartProfiler 是否幂等。若不幂等,增加 bool profilerStarted_ 标志位;若幂等,补注释标注此假设。 See merge request: openharmony/ability_ability_runtime!20264 Signed-off-by: MMMMCCCC <937296505@qq.com> | 28 天前 | |
fix_bug/Null Pointer Signed-off-by: Alang <gaoyulang@huawei.com> AI[100%] Human Fixed[0%] Human[0%] AI Adopted[100%] Co-authored-by: opencode (glm-5.2) <ai@local> Change-Id: I60eaedb475fa213270768e30d74a1540ec263a60 | 1 个月前 | |
startchildprocess接口支持拉起静态和动态运行时子进程 Signed-off-by: renjh5496 <renjianhao@h-partners.com> | 6 个月前 | |
AMS指令数降负载 Signed-off-by: SKY2001 <songtianyu10@huawei.com> 🤖 AI[0%] 🔧 Human Fixed[0%] 🧑 Human[100%] 👌 AI Adopted[0%] | 2 个月前 | |
hyper Signed-off-by: xialiangwei <2049500708@qq.com> | 6 个月前 | |
Apply ffrt task id Signed-off-by: wangzhen <wangzhen346@huawei.com> Change-Id: If247bc7127c91c39af73a7707ca8650ccab266a2 | 1 年前 | |
app_input_block freeze interval check Signed-off-by: ouyangli4 <ouyangli4@huawei.com> Co-Authored-By: Agent | 4 个月前 | |
appindex适配 Signed-off-by: yijobs <yisilong@h-partners.com> | 22 天前 | |
回退多用户修改 Signed-off-by: LY <liuyong235@huawei.com> | 9 个月前 | |
IssueNo:modify log Description: Sig: SIG_ApplicationFramework Feature or Bugfix: Binary Source:No Signed-off-by: liqiang <liqiang121@huawei.com> Change-Id: I01871ed4d6c7b0023c1f42308c0c9f8ff89f4e5f | 2 年前 | |
回合1.2kit appspawn Signed-off-by: zhang_hao_zheng <zhanghaozheng2@h-partners.com> Change-Id: I4ae5d4b0481cbe114b844001e014a0dcea6b5664 | 1 年前 | |
增加进程AttachTimeout上报 Signed-off-by: zhangyuhang72 <zhangyuhang72@h-partners.com> | 8 个月前 | |
fix_log Signed-off-by: tantingting <tantingting5@huawei.com> | 2 年前 | |
multi foreground user Signed-off-by: wendel <yuwenze1@huawei.com> Change-Id: I2b1f8a58e66f4eff7c42a30f9ef862215b0768ac | 1 年前 | |
hyper Signed-off-by: xialiangwei <2049500708@qq.com> | 6 个月前 | |
update services/appmgr/src/window_pid_visibility_changed_listener.cpp. Signed-off-by: 孙旭辉 <sunxuhui7@huawei.com> | 1 年前 | |
Add log for task Signed-off-by: wangzhen <wangzhen346@huawei.com> Change-Id: Idda809b8d8ef488e460953bd9e3cb1a091cd4720 | 1 年前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 1 年前 | ||
| 2 年前 | ||
| 26 天前 | ||
| 1 年前 | ||
| 6 个月前 | ||
| 2 年前 | ||
| 8 个月前 | ||
| 2 个月前 | ||
| 8 个月前 | ||
| 1 个月前 | ||
| 1 年前 | ||
| 20 天前 | ||
| 1 个月前 | ||
| 25 天前 | ||
| 2 个月前 | ||
| 6 个月前 | ||
| 26 天前 | ||
| 20 天前 | ||
| 2 年前 | ||
| 20 天前 | ||
| 2 年前 | ||
| 28 天前 | ||
| 1 个月前 | ||
| 6 个月前 | ||
| 2 个月前 | ||
| 6 个月前 | ||
| 1 年前 | ||
| 4 个月前 | ||
| 22 天前 | ||
| 9 个月前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 8 个月前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 6 个月前 | ||
| 1 年前 | ||
| 1 年前 |