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.

[参考译文] RTOS/CC3100:如何设置 HTTPCli 使用的 SSL 密码

Guru**** 2558250 points


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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/674719/rtos-cc3100-how-to-set-ssl-cipher-used-by-httpcli

器件型号:CC3100

工具/软件:TI-RTOS

您好!

我将 HTTPCli_Connect 与 TLS 结合使用、并收到错误-102。

错误-102表示 HTTPCli_ECONNECTFAIL。 使用 HTTPCL_getSocketError(),我找到了一个更好的错误代码-155。

错误-155表示 SL_ESEC_ASH_SIG_CONFIRM_E、尽管我在 Google 上找到了此错误、但在任何官方文档中都没有找到。 我认为这意味着我选择的密码不受支持。

那么、问题是、如何在设置 TLS 连接时设置密码? 我的代码如下所示、提前感谢您的帮助!

bool MoreFlag = false;
int ret = 0;
int len = 0;
int id = 0;
struct sockaddr_in addr;

TLS_PARAMS tlsParams;
TLS_Handle TLS;

HTTPCLI_PARAMS 参数;
HTTPCLI_StructCLI;
HTTPCli_Field field[6]={
{ HTTPStd_field_name_host、HOSTNAME}、
{HTTPStd_field_name_user_agent、user_agent}、
{HTTPStd_field_name_authorization、site_authorization}、
{HTTPStd_field_name_accept、"*/*"}、
{HTTPStd_field_name_content_type、"application/json"}、
{ NULL,NULL }
};

TLS_PARAMS_INIT (&tlsParams);
tlsParams.ca = amazon_ca;
tlsParams.calen = Amazon_calen;

TLS = TLS_create (TLS_METHOD_CLIENT_TLSv1_2、&tlsParams、NULL);
如果(!TLS){
//处理错误

HTTPCLI_construct(&CLI);

HTTPCLI_setRequestFields(&CLI);

RET = HTTPCli_initSockAddr ((struct sockaddr *)&addr、HOSTNAME、0);
如果(ret < 0){
//处理错误

HTTPCLI_PARAMS_INIT (params);
params.TLS = TLS;

// TODO:如何更改密码?!!!

RET = HTTPCLI_CONNECT (&CLI、(struct sockaddr *)&addr、0、&params);
如果(ret < 0){
//处理错误

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

    TLS 结构的成员之一应为 SlSockSecureMask。 您可以使用 socket.h 中定义的受支持密码将 tlsParams.mask 设置为所需的密码 密码定义名为 sl_SEC_MASK_*。

    请告诉我您是否需要澄清、或者您是否有任何其他问题。

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