Pull Request已成功合入, 合并人@openharmony_ci
(感谢 wangrui7 的贡献)感谢提交 Pull Requests!如果您提交的PR已经开发完毕,请评论 "start build" 触发门禁,更多交互操作,请访问OpenHarmony社区支持命令清单。如果需要调整订阅PR、Issue的变更状态,请访问订阅链接。
Thanks for submitting the pull request. If your Pull Request has already been developed, you can leave a "start build" comment to trigger the gated system. For more commands, please visit OpenHarmony Command List. If you need to change the subscription of a Pull Request or Issue, please visit the link.


这里是校验token != NULL ?通常都是校验==NULL


在转换蓝牙MAC地址到二进制时,未正确处理转换后的值,可能导致数据溢出。
检查strtoul函数的返回值,确保转换后的值不会超过uint8_t类型的最大值。


在转换蓝牙MAC地址到二进制时,未正确处理最后一个token,可能导致内存泄漏。
在循环结束后检查token是否为NULL,如果不是,则释放tmpMac指针。


缺少对 MAC 地址段数不足的检查。如果输入的 MAC 地址段数少于预期(例如 "11:22:33"),循环内 token 将变为 NULL,传递给 strtoul 会导致空指针解引用崩溃;或者如果循环提前退出,会导致 binMac 缓冲区未完全初始化。代码只增加了对段数过多(token != NULL)的检查,遗漏了段数不足的情况。
在循环内增加对 token == NULL 的检查,如果段数不足,应释放内存并返回错误;或者在循环结束后检查已解析的段数是否等于预期长度。


相关的Issue
https://gitcode.com/openharmony/communication_dsoftbus/issues/9791
原因(目的、解决的问题等)
fix ConvertBtMacToBinary
描述(做了什么,变更了什么)
fix ConvertBtMacToBinary
验证结果(新增、改动、可能影响的功能)
fix ConvertBtMacToBinary
日志规范自检:
安全编码自检:
是否已执行L0用例