| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
fix clouddisk recycle bin Signed-off-by: reminder2352 <mabiao21@huawei.com> Co-Authored-By: Agent | 2 个月前 | |
新增ConvertPlaceholderToFile接口 新增功能: - OH_CloudDisk_ConvertPlaceholderToFile NDK接口,将占位符文件转换为0字节普通文件 - ConvertPlaceholderToFile Inner API接口定义和实现 - ConvertPlaceholderToFileInner 服务层实现,包含完整的权限校验流程 - ConvertPlaceholderToEmptyFile 工具函数,通过xattr属性判断和转换占位符 - 新增CLOUD_DISK_PLACEHOLDER_XATTR扩展属性常量 - 新增E_NOT_A_PLACEHOLDER错误码 技术实现: - 使用xattr属性判断文件是否为占位符 - 通过ftruncate将文件截断为0字节 - 清除占位符标记属性 - 实现bundleName权限验证、路径范围检查等安全机制 - 新增辅助函数:CheckSyncFolderBundleName、CheckPathInSyncFolder、CheckSyncFolderAccess、GetHmdfsPath 测试覆盖: - NDK接口参数校验和错误处理测试 - Inner API调用流程测试 - 服务层权限校验和路径验证测试 - 工具函数边界值和异常场景测试 - Mock对象和接口定义 Signed-off-by: bmi <lijiewei7@h-partners.com> Co-Authored-By: Agent Change-Id: I50c21bc102ec7f0d9c933d4162abcce2583cb4d0 | 2 天前 | |
修复 dlclose 导致的进程 crash 问题 - 新增 CloudSyncLibraryManager 单例类管理动态库加载 - 使用 RTLD_NODELETE 标志确保库永不卸载 - 删除 CheckBundleSupported 和 GetSystemFeature 中的 dlclose 调用 - 防止 proxy 对象虚表失效导致的 crash 问题原因: dlclose 后 ServiceProxy::serviceProxy_ 缓存的 proxy 对象仍在, 但虚表已被卸载,后续访问导致 crash。 解决方案: 使用 RTLD_NODELETE 确保库在进程生命周期内保持加载, 虚表永远有效,符合 OpenHarmony 系统服务最佳实践。 Signed-off-by: dengwanxiong <dengwanxiong@h-partners.com> Co-Authored-By: Agent 🤖 AI[0%] 🔧 Human Fixed[0%] 🧑 Human[100%] 👌 AI Adopted[0%] Change-Id: Id8987eadf6828f89960f31e7add9bc76f38cadf3 | 11 天前 | |
let sync stop when inode is limited Signed-off-by: wangyanyue <wangyanyue1@huawei.com> | 5 个月前 | |
优化distributed_inner_kit动态库依赖关系 Signed-off-by: zhonglufu <zhonglufu@h-partners.com> | 6 个月前 | |
Fix fuzz crash Signed-off-by: fengjq <fengjunqing1@h-partners.com> | 7 个月前 | |
fix clouddisk recycle bin Signed-off-by: reminder2352 <mabiao21@huawei.com> Co-Authored-By: Agent | 2 个月前 | |
!4170 merge codex/create-placeholder-metadata into master feat: add placeholder create API chain Created-by: tlbl Commit-by: tlbl Merged-by: openharmony_ci Description: **Description:** PASS **Issue number:** **Test & Result:** **CodeCheck:** <table> <tr> <th>类型</th><th>自检项</th><th>自检结果</th> </tr> <tr> <td rowspan="2">多线程相关</td><td>在类的成员变量中定义了vector/map/list等容器类型,且在多个成员函数中有操作时,需要加锁保护</td><td>自检结果:NA</td> </tr> <tr> <td>定义全局变量,在多个函数中都有操作时,需要加锁保护</td><td>自检结果:NA</td> </tr> <tr> <td rowspan="4">内存相关</td><td>调用外部接口时,确认是否对返回值做了判断,尤其外部接口返回了nullptr的情况,避免进程崩溃</td><td>自检结果:NA</td> </tr> <tr> <td>调用安全函数时,如memcpy_s等,是否检查其返回值</td><td>自检结果:NA</td> </tr> <tr> <td>检查函数中是否涉及了内存或资源申请(如文件句柄),注意每个异常退出流程,是否都已经将资源释放(推荐使用RAII)</td><td>自检结果:PASS</td> </tr> </tr> <tr> <td>隐式内存分配场景:realpath、ReadParcelable序列化、cJSON相关函数时等,需主动释放或使用智能指针</td><td>自检结果:PASS</td> </tr> <tr> <td rowspan="4">校验外部输入</td><td>使用nlohmann:json解析外部输入时,需判断参数类型是否符合预期</td><td>自检结果:NA</td> </tr> <tr> <td>所有外部输入均不可信,需判断外部输入是否直接作为内存分配的大小,数组下标、循环条件、SQL查询等</td><td>自检结果:PASS</td> </tr> <tr> <td>外部输入的路径不可信,需使用realpath做标准化处理,并判断路径的合法性</td><td>自检结果:PASS</td> </tr> <tr> <td>外部输入包括对外提供的接口,IPC的proxy/stub接口,序列化/反序列化接口等</td><td>自检结果:PASS</td> </tr> </tr> <tr> <td rowspan="2">数学运算</td><td>代码中是否混合了加减乘除等运算,需检查是否可能导致整数溢出或符号翻转</td><td>自检结果:PASS</td> </tr> <tr> <td>需检查代码是否有高精度数字转换为低精度的操作,如果必须,建议使用C++安全类型转换接口</td><td>自检结果:NA</td> </tr> </tr> <tr> <td rowspan="1">秘钥相关</td><td>如变量临时保存了口令、秘钥等,需要在使用完成后及时清空(内存memset掉)</td><td>自检结果:NA</td> </tr> <tr> <td rowspan="2">权限相关</td><td>作为系统服务对外提供了接口,是否做了权限保护和校验(如需要),只允许申请了权限的应用访问</td><td>自检结果:NA</td> </tr> <tr> <td>内核对外提供了设备节点,是否做了权限保护,只允许特定的系统服务访问</td><td>自检结果:NA</td> </tr> </tr> <tr> <td rowspan="3">内核操作</td><td>如有mmap操作,并使用remap_pfn_range进行地址映射时,校验起始地址是否是用户态输入且没有做合法性校验</td><td>自检结果:NA</td> </tr> <tr> <td>是否有copy_from_user,并对外部输入的数据做了长度校验,以防止缓冲区溢出</td><td>自检结果:NA</td> </tr> <tr> <td>是否有使用copy_to_user,并在返回到用户态时,对数据做了完整初始化,或使用memset清空后再赋值</td><td>自检结果:NA</td> </tr> </tr> </table> See merge request: openharmony/filemanagement_dfs_service!4170 | 4 天前 | |
通过feature(dfs_service_feature_enable_cloud_adapter)控制cloudfileservice进程业务代码不参与部署 Signed-off-by: lijiewei <lijiewei7@h-partners.com> | 3 个月前 | |
!4154 merge master into master startTransfer接口返回非预期错误码问题修复 Created-by: gcw_Fk8kSOFv Commit-by: taocccong Merged-by: openharmony_ci Description: **Description:** startTransfer有些异常分支会返回未在接口声明中列出的错误码,需要避免 **Issue number:** https://gitcode.com/openharmony/filemanagement_dfs_service/issues/3071 **Test & Result:** pass **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_dfs_service!4154 | 18 天前 | |
; Signed-off-by: guomeicen <guomeicen@huawei.com> | 1 年前 | |
Add DFS space report task Change-Id: I8492d995a48c6323ae8e7e6acc860dc8f3ce141e Signed-off-by: wang luyao <wangluyao35@huawei.com> Co-Authored-By: Agent | 17 天前 | |
new feature, add taskName of async work callback. Signed-off-by: reminder2352 <mabiao21@huawei.com> | 8 个月前 | |
AGENTS.md version 1.1 Signed-off-by: unknown <liutenglong2@huawei.com> | 1 个月前 | |
!4170 merge codex/create-placeholder-metadata into master feat: add placeholder create API chain Created-by: tlbl Commit-by: tlbl Merged-by: openharmony_ci Description: **Description:** PASS **Issue number:** **Test & Result:** **CodeCheck:** <table> <tr> <th>类型</th><th>自检项</th><th>自检结果</th> </tr> <tr> <td rowspan="2">多线程相关</td><td>在类的成员变量中定义了vector/map/list等容器类型,且在多个成员函数中有操作时,需要加锁保护</td><td>自检结果:NA</td> </tr> <tr> <td>定义全局变量,在多个函数中都有操作时,需要加锁保护</td><td>自检结果:NA</td> </tr> <tr> <td rowspan="4">内存相关</td><td>调用外部接口时,确认是否对返回值做了判断,尤其外部接口返回了nullptr的情况,避免进程崩溃</td><td>自检结果:NA</td> </tr> <tr> <td>调用安全函数时,如memcpy_s等,是否检查其返回值</td><td>自检结果:NA</td> </tr> <tr> <td>检查函数中是否涉及了内存或资源申请(如文件句柄),注意每个异常退出流程,是否都已经将资源释放(推荐使用RAII)</td><td>自检结果:PASS</td> </tr> </tr> <tr> <td>隐式内存分配场景:realpath、ReadParcelable序列化、cJSON相关函数时等,需主动释放或使用智能指针</td><td>自检结果:PASS</td> </tr> <tr> <td rowspan="4">校验外部输入</td><td>使用nlohmann:json解析外部输入时,需判断参数类型是否符合预期</td><td>自检结果:NA</td> </tr> <tr> <td>所有外部输入均不可信,需判断外部输入是否直接作为内存分配的大小,数组下标、循环条件、SQL查询等</td><td>自检结果:PASS</td> </tr> <tr> <td>外部输入的路径不可信,需使用realpath做标准化处理,并判断路径的合法性</td><td>自检结果:PASS</td> </tr> <tr> <td>外部输入包括对外提供的接口,IPC的proxy/stub接口,序列化/反序列化接口等</td><td>自检结果:PASS</td> </tr> </tr> <tr> <td rowspan="2">数学运算</td><td>代码中是否混合了加减乘除等运算,需检查是否可能导致整数溢出或符号翻转</td><td>自检结果:PASS</td> </tr> <tr> <td>需检查代码是否有高精度数字转换为低精度的操作,如果必须,建议使用C++安全类型转换接口</td><td>自检结果:NA</td> </tr> </tr> <tr> <td rowspan="1">秘钥相关</td><td>如变量临时保存了口令、秘钥等,需要在使用完成后及时清空(内存memset掉)</td><td>自检结果:NA</td> </tr> <tr> <td rowspan="2">权限相关</td><td>作为系统服务对外提供了接口,是否做了权限保护和校验(如需要),只允许申请了权限的应用访问</td><td>自检结果:NA</td> </tr> <tr> <td>内核对外提供了设备节点,是否做了权限保护,只允许特定的系统服务访问</td><td>自检结果:NA</td> </tr> </tr> <tr> <td rowspan="3">内核操作</td><td>如有mmap操作,并使用remap_pfn_range进行地址映射时,校验起始地址是否是用户态输入且没有做合法性校验</td><td>自检结果:NA</td> </tr> <tr> <td>是否有copy_from_user,并对外部输入的数据做了长度校验,以防止缓冲区溢出</td><td>自检结果:NA</td> </tr> <tr> <td>是否有使用copy_to_user,并在返回到用户态时,对数据做了完整初始化,或使用memset清空后再赋值</td><td>自检结果:NA</td> </tr> </tr> </table> See merge request: openharmony/filemanagement_dfs_service!4170 | 4 天前 | |
optimize rom with version script Co-Authored-By: Agent Signed-off-by: markcarter <liuhaotian15@h-partners.com> Change-Id: Ic76aa323a78abede27f24b9b639a821bc23f2f2b | 23 天前 | |
optimize rom with version script Co-Authored-By: Agent Signed-off-by: markcarter <liuhaotian15@h-partners.com> Change-Id: Ic76aa323a78abede27f24b9b639a821bc23f2f2b | 23 天前 | |
optimize rom with version script Co-Authored-By: Agent Signed-off-by: markcarter <liuhaotian15@h-partners.com> Change-Id: Ic76aa323a78abede27f24b9b639a821bc23f2f2b | 23 天前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 2 个月前 | ||
| 2 天前 | ||
| 11 天前 | ||
| 5 个月前 | ||
| 6 个月前 | ||
| 7 个月前 | ||
| 2 个月前 | ||
| 4 天前 | ||
| 3 个月前 | ||
| 18 天前 | ||
| 1 年前 | ||
| 17 天前 | ||
| 8 个月前 | ||
| 1 个月前 | ||
| 4 天前 | ||
| 23 天前 | ||
| 23 天前 | ||
| 23 天前 |