This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC3220SF:可以使用不同版本的 mbedtls 栈

Guru**** 2484615 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1262361/cc3220sf-possibility-to-use-a-different-version-of-mbedtls-stack

器件型号:CC3220SF

您好!

目前、Simplelink SDK 7.10好像是使用位于 SDK_ROOT/source/third_party/mbedtls 下的 mbedTLS 源代码构建的。

该版本的 mbedtls 栈相当过时。 是否可以在不重新编译 SDK 的情况下指向 mbedtls 堆栈的另一版本?

编辑:不使用 mbedtls.a 文件,可以直接使用源代码吗?

提前感谢您、

Br、

斯内哈

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    基本上可以构建 ti/文件夹(文件夹包含 makefile 和 HAL 移植)、但您可能需要使用该文件夹来构建它。

    如果新版本中没有任何重大更改、ti/makefile 应直接用于 编译(请参阅自述文件)。

    如果您正在使用自己的 makefile -请使用 ti/port/中的 entropy_alt.c、threading_alt.c。

    此外、如果你使用7.10中使用的 mbedtls_config.h (在 include/mbedtls/下)、它应该会更容易。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    感谢您的确认。 我也计划了同样的计划。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    首先、我尝试在 TI SDK 中更新 mbedtls 的源、并尝试使用

    CD /home/ti/simplelink_cc32xx_sdk_7_10_00_13/source/third_party/mbedtls/ti  

    然后发出以下命令

    /home/ti/ccs1200/xdctools_3_62_01_16_core/gmake SDK_INSTALL_DIR=/home/ti/simplelink_cc32xx_sdk_7_10_00_13 ticlang/m4/mbedtls.a

    我收到以下错误 gmake:***没有将目标设置为'ticlang/m4/mbedtls.a'的规则。  停止

    2.我使用定制 make 项目来编译 mbedtls、threading_alt.c 以及 entropy_alt.c 文件的源代码,使用 TI SDK 中的 mbedtls_config.h,我得到了对 mbedtls_hardware_poll 的未定义引用。 我在 SDK 中查看过、但没有找到参考实现。 在哪里可以找到它? 我将 MBEDTLS_entropy_hardware_ALT 注释掉、编译成功。 是不是故意的?

    3、函数 mbedtls_platform_entropy_poll ()在 entropy_alt.c 中是如何调用的? 该函数在熵 poll . c 中有一个定义。 使用 mbedtls_config.h 文件中的配置、即使没有熵_alt.c 文件、编译也会成功。 要使用自定义  mbedtls_platform_entropy_poll 实现,必须启用/禁用哪个宏?

    谢谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你是对的。 对我来说、代码毫无意义。   应定义 MBEDTLS_entropy_hardware_ALT、似乎应将 entropy_alt 函数调用 mbedtls_hardware_poll (而不是 mbedtls_platform_entropy_poll)。

    我需要检查一下、并咨询模块所有者。

    我认为所有者修补了这些源来调用 mbedtls_platform_entropy_poll 的 entropy_alt 实现、无论 mbedtls_config.h 是什么、但我还找不到它。

     

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我们正在定义 MBEDTLS_NO_DEFAULT_ENTROPY_SOURCES,它们禁用 mbedtls 对 mbedtls_entropy_add_source() 的内部调用。

    相反,我们  在我们的适应层中调用 mbedtls_entropy_add_source (),而我们使用 mbedtls_platform_entropy_poll ()-我们移植的 实现 会覆盖 栈内的弱定义。