存储管理部件提供外置存储卡挂载管理、文件加解密、磁盘和卷的查询与管理、用户目录管理和空间统计等功能,为系统和应用提供基础的存储查询、管理能力。
文件 最后提交记录 最后更新时间 add Commit Message Signed-off-by: zhangzhiwi <weizhi.zhang@huawei.com>
2 年前 docs: 修复知识库断链并补充错误码范围与阈值源码引用 P0: 去掉 architecture.md 和 implementation-templates.md 中已删除的 code-conventions 断链;P1: 删除 AGENTS.md 底部与错误码章节重复的项目约束;P2: 补充错误码范围表并修正监控阈值表(补 notify_h、纠正清理级别名称、加源码符号引用)。 Fixes #2338 Co-Authored-By: Agent Signed-off-by: Clone_Zhang <zhangjunjie56@huawei.com> 16 天前 del unused img Signed-off-by: xiechang2@huawei.com <root@DESKTOP-QGVT3BA.localdomain>
4 年前 fix napi dependence Signed-off-by: lichenqq <lichen139@huawei.com>
2 天前 !3013 merge master into master forkexec截断问题修复 Created-by: sunxiaoqianghappy Commit-by: sunxiaoqianghappy Merged-by: openharmony_ci Description: **Description:** **Issue number:** https://gitcode.com/openharmony/filemanagement_storage_service/issues/2398 **Test & Result:** **CodeCheck:** <table> <tr> <th>类型</th><th>自检项</th><th>自检结果</th> </tr> <tr> <td rowspan="2">多线程相关</td><td>在类的成员变量中定义了vector/map/list等容器类型,且在多个成员函数中有操作时,需要加锁保护</td><td>自检结果:</td> </tr> <tr> <td>定义全局变量,在多个函数中都有操作时,需要加锁保护</td><td>自检结果:</td> </tr> <tr> <td rowspan="4">内存相关</td><td>调用外部接口时,确认是否对返回值做了判断,尤其外部接口返回了nullptr的情况,避免进程崩溃</td><td>自检结果:</td> </tr> <tr> <td>调用安全函数时,如memcpy_s等,是否检查其返回值</td><td>自检结果:</td> </tr> <tr> <td>检查函数中是否涉及了内存或资源申请(如文件句柄),注意每个异常退出流程,是否都已经将资源释放(推荐使用RAII)</td><td>自检结果:</td> </tr> </tr> <tr> <td>隐式内存分配场景:realpath、ReadParcelable序列化、cJSON相关函数时等,需主动释放或使用智能指针</td><td>自检结果:</td> </tr> <tr> <td rowspan="4">校验外部输入</td><td>使用nlohmann:json解析外部输入时,需判断参数类型是否符合预期</td><td>自检结果:</td> </tr> <tr> <td>所有外部输入均不可信,需判断外部输入是否直接作为内存分配的大小,数组下标、循环条件、SQL查询等</td><td>自检结果:</td> </tr> <tr> <td>外部输入的路径不可信,需使用realpath做标准化处理,并判断路径的合法性</td><td>自检结果:</td> </tr> <tr> <td>外部输入包括对外提供的接口,IPC的proxy/stub接口,序列化/反序列化接口等</td><td>自检结果:</td> </tr> </tr> <tr> <td rowspan="2">数学运算</td><td>代码中是否混合了加减乘除等运算,需检查是否可能导致整数溢出或符号翻转</td><td>自检结果:</td> </tr> <tr> <td>需检查代码是否有高精度数字转换为低精度的操作,如果必须,建议使用C++安全类型转换接口</td><td>自检结果:</td> </tr> </tr> <tr> <td rowspan="1">秘钥相关</td><td>如变量临时保存了口令、秘钥等,需要在使用完成后及时清空(内存memset掉)</td><td>自检结果:</td> </tr> <tr> <td rowspan="2">权限相关</td><td>作为系统服务对外提供了接口,是否做了权限保护和校验(如需要),只允许申请了权限的应用访问</td><td>自检结果:</td> </tr> <tr> <td>内核对外提供了设备节点,是否做了权限保护,只允许特定的系统服务访问</td><td>自检结果:</td> </tr> </tr> <tr> <td rowspan="3">内核操作</td><td>如有mmap操作,并使用remap_pfn_range进行地址映射时,校验起始地址是否是用户态输入且没有做合法性校验</td><td>自检结果:</td> </tr> <tr> <td>是否有copy_from_user,并对外部输入的数据做了长度校验,以防止缓冲区溢出</td><td>自检结果:</td> </tr> <tr> <td>是否有使用copy_to_user,并在返回到用户态时,对数据做了完整初始化,或使用memset清空后再赋值</td><td>自检结果:</td> </tr> </tr> </table> See merge request: openharmony/filemanagement_storage_service !3013 10 小时前 fix(storage_service): disable LTO for storage_daemon fuzz targets Fuzz tests that compile storage_daemon_provider.cpp directly or via static libraries fail to link under thin LTO (undefined .Ltmp symbols). Add a shared no-LTO config and apply it to affected fuzz BUILD.gn files. Signed-off-by: ning-jingyou <ningjingyou@huawei.com> Co-authored-by: Cursor <cursoragent@cursor.com> Change-Id: Ic0c640a4202d167b0d40d0153854a45ee76649e6
7 天前 空间统计claw支持--help命令及模拟器问题 Signed-off-by: daiyunlong <daiyunlong4@huawei.com> Co-Authored-By: Agent
1 个月前 static code check fix Signed-off-by: xianghengliang <xianghengliang1@huawei.com>
4 年前 fix build warning Signed-off-by:gudehe<gudehe@huawei.com>
4 年前 docs: 恢复 AGENTS.md 项目约束章节 恢复 5 条通用硬性约束(用户时序、卷状态、EL2 锁屏、用户隔离、IPC 死锁),去除与错误码章节重复的 2 条。 Fixes #2338 Co-Authored-By: Agent Signed-off-by: Clone_Zhang <zhangjunjie56@huawei.com> 16 天前 注销用户AB类密钥未logout Signed-off-by: dengrenqi <1069093439@qq.com>
1 年前 fix issue Signed-off-by: 张文迪 <zhangwendi3@huawei.com>
4 年前 回退 'Pull Request !496 : 回退 'Pull Request !493 : add sysparam dac'' 3 年前 change readme file name Signed-off-by: jiahaoluo <luojiahao5@huawei.com>
4 年前 Reduce differences Signed-off-by: Clone_Zhang <zhangjunjie56@huawei.com>
11 个月前 fix napi dependence Signed-off-by: lichenqq <lichen139@huawei.com>
2 天前 修改日期 Signed-off-by: liuxiaowei <liuxiaowei45@huawei.com>
2 年前 Storage:修改雷达打点 Signed-off-by: zhaoshuyuan <zhaoshuyuan2@huawei.com>
1 年前 增加克隆事件的侦听条件 Signed-off-by: libo429 <libo429@h-partners.com>
11 天前
存储管理服务
简介
存储管理服务提供外置存储卡挂载管理、文件加解密、磁盘和卷的查询与管理、用户目录管理和空间统计等功能,为系统和应用提供基础的存储查询、管理能力。
图1 存储管理服务子系统架构图
部件描述:
部件名称
简介
storage_api
为应用提供一套查询、管理存储和用户的接口API。
storage_manager
提供卷、磁盘的相关查询能力和管理能力,多用户数据目录管理接口及以应用或用户为维度的存储空间统计查询能力。
storage_daemon
提供分区挂载能力,与内核层的交互能力、设备上下线监听能力及目录加解密能力。
外部依赖描述:
部件名称
简介
多用户管理
负责管理用户,并调用storage_manager提供的能力管理相应用户的数据目录。
包管理
负责提供包的管理功能。为storage_manager提供指定用户、指定包名对应的空间大小。
媒体库服务
负责提供媒体文件信息,为storage_manager提供指定用户的各类媒体文件的空间大小。
公共文件访问框架
负责提供对文件的管理功能。需要storage_manager提供的卷信息。
目录
/foundation/storage/storage_services
│── interface // 接口声明
│ ├── innerkits // 对内接口声明
│ └── kits // 对外接口声明
│── services // 服务实现
│ ├── storage_manager // 非常驻manager服务实现
│ └── storage_daemon // 常驻daemon服务实现
约束
接口支持情况:storage_daemon所有接口仅支持storage_manager服务进行调用。
相关仓
多用户管理
包管理
媒体库服务
公共文件访问框架
文件访问接口
分布式文件服务
应用文件服务
存储管理服务
存储管理部件提供外置存储卡挂载管理、文件加解密、磁盘和卷的查询与管理、用户目录管理和空间统计等功能,为系统和应用提供基础的存储查询、管理能力。
定制我的领域 举报项目