当前位置: 首页 > news >正文

【三方库】ohos_mqtt v2.0.29 鸿蒙平台稳定性与质量提升

📢 【三方库】ohos_mqtt v2.0.29 鸿蒙平台稳定性与质量提升

ohos_mqtt v2.0.29 已发布。本次升级聚焦该库稳定性与质量提升,修复已知 UAF 与回调稳定性问题,兼容升级,开发者无需修改现有代码即可享受本次改进。推荐所有该库用户升级至本版本。

版本概览

类型内容
稳定性修复重复调用 reconnect 重复触发 onConnectFail 导致的 UAF 问题 #170、优化回调接口稳定性 #170
质量提升修复通过 “content” 参数传递的证书无法正确获取的问题

稳定性提升

修复重复调用 reconnect 重复触发 onConnectFail 导致的 UAF 问题 [#170]

问题:重复调用reconnect()时,onConnectFail回调被重复触发,回调内部访问的资源可能已被释放,导致 use-after-free(UAF)问题。同时,回调接口(BaseContextSetMessage/GetMessage等)缺乏线程安全保护,多线程并发访问时存在数据竞争风险。

修复

  • 重构mqtt_client.cpp(452 行改动),修复 reconnect 重复触发onConnectFail的逻辑,确保回调只触发一次,消除 UAF 根因。
  • BaseContext::SetMessage/BaseContext::GetMessage新增std::lock_guard<std::mutex>互斥锁,保证回调接口的线程安全。

优化回调接口稳定性 [#170]

mqtt_impl.cpp(161 行改动)与callback_info.h(29 行改动)进行回调机制重构,增强回调生命周期的管理,降低异常场景下的不稳定风险。

质量提升

修复通过 “content” 参数传递的证书无法正确获取的问题

修复通过 MQTT 连接选项的 “content” 参数传递 SSL 证书时,证书内容未完整发送到服务器的问题,确保基于 content 的证书认证正常工作。

兼容性说明

  • 无 Breaking Changes,API 接口保持不变。
  • 本次变更以缺陷修复与稳定性优化为主,现有代码无需修改。
  • 从 v2.0.28 起升级至 v2.0.29 均为兼容性升级。

升级方式

  • 鸿蒙原生:oh-package.json5"@ohos/mqtt": "^2.0.29",执行ohpm install

相关链接

  • 文档:https://gitcode.com/CPF-ApplicationTPC/ohos_mqtt/blob/master/README.md
  • CHANGELOG:https://gitcode.com/CPF-ApplicationTPC/ohos_mqtt/blob/master/CHANGELOG.md
  • 反馈:https://gitcode.com/CPF-ApplicationTPC/ohos_mqtt/issues
http://www.jsqmd.com/news/1140604/

相关文章:

  • IIM-20670运动传感器与PIC18微控制器的集成应用
  • msvcr120.dll 缺失排查记录:从运行库到原软件逐项修复
  • 第二章Netty,EventLoop任务队列的详细代码实现
  • IIM-20670与PIC18F86J15的高精度运动感知系统设计
  • 100万+随机个性签名免费API接口教程
  • SVD 与 PCA 实战对比:3 种降维场景下的 Python 代码与效果差异
  • TradingView筛选器有哪些?一文看懂多资产筛选工具
  • 2000亿设备更新资金全部下达!大规模量产项目的设备选型逻辑正在被重构
  • 土木工程论文降AI工具免费推荐:2026年土木工程毕业论文降AI99.26%达标知网4.8元指南
  • AI 辅助 DeFi 策略生成:从自然语言描述到可安全部署合约的完整链路
  • 如何快速掌握Blender 3MF插件:免费实现3D打印一体化工作流
  • 如何将网页视频保存到本地:免费开源插件的完整使用指南
  • Navicat重置脚本终极指南:3种方法轻松解除Mac版14天试用限制
  • 收藏!小白程序员必看:大模型如何学会“学习”不再是死记硬背
  • 如何永久保存微信聊天记录:WeChatMsg完全指南实现数据自主管理
  • 2026年万方AIGC检测超标怎么办:万方检测4.8元一次过完整应对方案
  • 鞍山老人怎么吃得省心又方便?靠谱餐食配送源头厂家推荐指南
  • eNSP避坑指南(一)-Router路由器
  • 2026年文档共享管理工具有哪些?8款高效协作利器大盘点
  • Windows右键菜单太乱了?3步教你用ContextMenuManager轻松管理
  • 3分钟掌握AKShare:从连接中断到稳定获取金融数据的完整指南
  • Windows系统文件ChxAPDS.dll丢失找不到问题解决
  • 3款主流节假日 API 对比评测:ThinkAPI vs 极速数据 vs GitHub 开源方案
  • 投了简历没回应?用这个AI做简历优化,HR眼前一亮
  • Switch上的B站全新方案:wiliwili深度体验指南
  • 3分钟搞定:让经典游戏在现代Windows重获新生的终极方案
  • 如何快速搭建社交媒体数据采集系统:面向初学者的完整指南
  • 如何在Windows 11上玩经典游戏:IPXWrapper终极兼容方案指南
  • BMI160传感器与PIC18F4682的低功耗运动监测方案
  • Windows下ClamAV本地部署:TCP Socket外部访问实战指南