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

定制一款国密浏览器(10):移植SM2算法前,解决错误码的定义问题

上一章中,我给大家介绍了 SM4 在 BoringSSL 上的移植要点,本来计划本章介绍 SM2 算法的移植要点。在移植 SM2 过程中,遇到了一个拦路虎,所以先扫除这个拦路虎,这就是错误码的定义问题。

在铜锁中,引入了几个错误码和错误字符串,在文件 sm2_err.c 中:

static const ERR_STRING_DATA SM2_str_reasons[] = {{ERR_PACK(ERR_LIB_SM2, 0, SM2_R_ASN1_ERROR), "asn1 error"},{ERR_PACK(ERR_LIB_SM2, 0, SM2_R_BAD_SIGNATURE), "bad signature"},{ERR_PACK(ERR_LIB_SM2, 0, SM2_R_BUFFER_TOO_SMALL), "buffer too small"},{ERR_PACK(ERR_LIB_SM2, 0, SM2_R_DIST_ID_TOO_LARGE), "dist id too large"},{ERR_PACK(ERR_LIB_SM2, 0, SM2_R_ID_NOT_SET), "id not set"},{ERR_PAC

相关文章:

  • 【Linux】软件管理机制和软件安装
  • 软件测试--自动化测试1
  • 【操作系统原理02】进程的描述与控制
  • 基于机器学习 LSTM 算法的豆瓣评论情感分析系统
  • matlab论文图一的地形区域图的球形展示Version_1
  • 【Matlab】中国东海阴影立体感地图
  • 梅施CPQ + AI:开启智能AI与报价软件的新潮流
  • 大模型Rag - 文本分块
  • libevent的bufferevent测试用例和使用方法(附带源码)
  • 腾讯wxg企业微信 后端开发一面
  • 基于Ubuntu2504部署OpenStack E版
  • uv:重新定义Python开发效率的下一代工具链
  • GNU,GDB,GCC,G++是什么?与其他编译器又有什么关系?
  • Android TTY设备调用流程和简单分析
  • Vue3 本地打包启动白屏解决思路!! !
  • Springboot+vue3开发项目——热点事件
  • YOLO拓展-NMS算法
  • Dijkstra 算法
  • 用usb网卡 虚拟机无法开到全双工的解决办法
  • 时态--06--现在完成時
  • 五一去哪玩?“时代交响”音乐会解锁艺术假期
  • 当农民跨进流动的世界|劳动者的书信①
  • 两部门预拨4000万元支持山西、广西、陕西做好抗旱救灾工作
  • 4月制造业PMI为49%,比上月下降1.5个百分点
  • 辽宁辽阳火灾事故饭店经营者已被控制,善后处置全面展开
  • 俄罗斯总统普京:5月8日零时至11日零时实施停火