QCA4010_MP1 开发板出现 DNS解析成功,但socket connect mqtt server失败。

sinat_15616543 2016-09-28 03:59:30
我移植MQTT协议到QCA4010上面,和MQTT做连接的时候出现socket connect失败,但是DNS解析是OK的,并且ping MQTT server IP是OK的。

log如下:返回的socket fd = 4350332 怎么会那么大?大家遇到过这样的问题吗?有进一步的debug方法吗?

ipaddress = 8ccdf8fb// 这是IP地址
s_addr = 8ccdf8fb
sin_port = 20480
SOCK_OPEN: index 0 handle 4350332

family = 2, socktype = 1, protocal = 0 fd = 4350332
_tcp_sock_connect 1420

SOCK_CONNECT: index 0 handle 4350332 res -1
socket connect error,fd = 4350332, errno = 0
_ip_sock_close sock:4350332
SOCK_CLOSE: index 0 handle 4350332 res 0

代码:

if (qcom_dnsc_get_host_by_name((INT8 *)host, &ipAddress) != 0)
-->这一步是OK的,DNS可以解析出IP地址。

qcom_socket( AF_INET, SOCK_STREAM, 0);

address.sin_addr.s_addr = ipAddress;
address.sin_port = htons(atoi(service));
address.sin_family = AF_INET;


qcom_connect( fd, (struct sockaddr *) &address, sizeof (struct sockaddr_in));
--》 这一步失败 。

我手动ping 要连接的IP地址是OK的。

有进一步的debug方法吗?



...全文
1735 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
sinat_15616543 2016-09-28
  • 打赏
  • 举报
回复
问题解决了: address.sin_addr.s_addr = htonl(ipAddress); IP地址需要做转换。

2,851

社区成员

发帖
与我相关
我的任务
社区描述
本论坛以AI、WoS 、XR、IoT、Auto、生成式AI等核心板块组成,为开发者提供便捷及高效的学习和交流平台。 高通开发者专区主页:https://qualcomm.csdn.net/
人工智能物联网机器学习 技术论坛(原bbs) 北京·东城区
社区管理员
  • csdnsqst0050
  • chipseeker
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧