Commit Graph

50 Commits

Author SHA1 Message Date
yangpengya a8d5a645f2
[components][at] 优化AT组件,并解决内存泄露
1.优化at server endmark判断,支持自动识别'\r''\n'"\r\n"。
2.优化at_recvfrom,修复大数据量时sem多次释放造成的接收错误。
3.修复at组件中可能存在的内存泄露。
4.优化部分代码逻辑,减少冗余代码。
2024-02-18 11:07:05 -05:00
HUST_lxq 69e5b10e31
[at_socket.c] Fix null pointer vulnerability caused by the variable at_sock (#7166) 2023-04-03 23:06:42 +08:00
liuxianliang cca2f40ae0 [add] implement about "AT server". 2022-07-04 11:03:01 +08:00
xiangxistu 4961ed59ba
[bug] use pointer that memory had freed. (#5971) 2022-05-23 01:46:22 +08:00
Meco Man f89a162ea3 [core] 使用rt_memcpy rt_memset代替memcpy memset 2022-01-09 00:23:18 +08:00
Bernard Xiong 1cea0c8c79
Merge pull request #5279 from OpenNuvoton/nuvoton
[Nuvoton] Update drivers.
2021-11-25 20:03:58 +08:00
Meco Man df9a23c534 [mutex] use RT_IPC_FLAG_PRIO to replace RT_IPC_FLAG_FIFO 2021-11-17 15:57:15 -05:00
Wayne Lin 9b44e57a60 Merge branch 'master' of https://github.com/RT-Thread/rt-thread into nuvoton 2021-11-10 16:01:38 +08:00
Meco Man c360688714 使用poll.h代替dfs_poll.h 2021-09-11 11:56:54 -04:00
guo 73bd7a7d66
Merge pull request #4868 from wenbodong2015/at_memleak
解决at_socket内存泄漏问题
2021-07-19 13:46:15 +08:00
wenbodong2015 0f6586c660 优化at_socket内存泄露的修改 2021-07-16 00:25:53 +08:00
Wayne Lin a4818ad3dd Fix error code and return value. 2021-07-12 18:21:04 +08:00
wenbodong2015 b9d24aff61 解决at_socket在极限情况下内存泄漏问题
AT模块在执行AT+CLOSE并返回OK后,在实际关闭前(上报URC前)仍然有
可能接收到数据。所以接收数据时需要判断状态是否为AT_SOCKET_CONNECT。

另,at_recv_notice_cb在拒绝数据包时,没有释放数据包内存,从而导致
内在泄漏。
2021-07-10 23:14:14 +08:00
wenbodong2015 e38a8e9378 解决at_socket编译失败的问题
失败现象为“找不到EAGAIN”,此问题由libc改动引发。
2021-07-10 23:10:11 +08:00
qiyongzhong0 9dea54ae8b Modify line 818 of the at_socket.c file from LOG_E to LOG_D 2021-06-28 14:28:31 +08:00
Meco Man 3c05a4e719 [compoenets] auto & manual formatted 2021-03-08 18:19:04 +08:00
longtengmcu aac5e9da4c 1、web socket请求数据从服务器回来时,服务器会关闭连接,此时AT socket在读取返回的数据时不应该判断socket为连接的状态
2、sal socket在支持多网卡时,sal_getaddrinfo从A网卡获取的地址信息,在sal_freeaddrinfo释放时必须由A网卡进行释放
2020-11-22 12:36:07 +08:00
luhuadong 067106f164 [at_socket] support alloc socket dynamically with at device 2020-07-21 00:29:12 +08:00
luhuadong ce35dfbc40 [AT] Adjust where the AT socket callback function 2020-05-20 01:11:46 +08:00
luhuadong 88a02d7bd8 fixed some typos 2020-05-09 10:33:36 +08:00
malongwei b0ccfa31ab fix at_socket.c 2019-09-07 11:47:15 +08:00
senduo 350947b190
修改at_socket.c文件中的sendto函数,len局部变量没有给初始值
len值如果不给初始值0,到最后__exit的时候,result = len会导致result的值变成一个不可预估的值,进而导致mbedtls库的while循环无法正常结束,其中mebedtls中发生异常的地方在ssl_tls.c文件中的mbedtls_ssl_flush_output函数while( ssl->out_left > 0 ),因为out_left 是一个无符号整型,退出的条件只能是 out_left = 0,又因为这里面的len没有给初始值0,返回出来的值是一个很大的整型数字,导致了mbedtls中的死循环
2019-07-26 18:33:33 +08:00
chenyong 7d2ffe63e9 [net][sal][netdev] Add IPv6 option configuration and feature support in SAL and netdev
Signed-off-by: chenyong <1521761801@qq.com>
2019-06-24 17:46:18 +08:00
chenyong 1f9a668607 [net][at] Fix socket create failed issue when default netdev mismatch.
Signed-off-by: chenyong <1521761801@qq.com>
2019-05-28 16:25:42 +08:00
chenyong b5ad12573f [net][at] update AT component V1.3.0, change as follows:
- AT Socket feature supports multi-client connections;
- Fix `send data error, current socket (0) state (0) is error` issue when the socket is closed;
- Improve dirty data processing when AT device hard reset;
- Improve `at_obj_set_urc_table()` fucntion, Support for setting multiple URC tables;
- Improve RAW data print format;
2019-05-27 12:03:04 +08:00
chenyong 946484760e [net][at][lwip] Modify AT component and lwIP components for netdev 2019-04-16 20:21:33 +08:00
HubretXie 5066ba6a0e
Update at_socket.c
修复sock未初始化使用的问题
2019-04-02 16:10:54 +08:00
thomasonegd 71c3c35c3c fix socket nullptr bug 2018-12-24 08:31:54 +08:00
HubretXie 3a8c6f32c0
Update at_socket.c
修改socket读取遗留数据逻辑
2018-12-12 11:29:14 +08:00
HubretXie 7ac5bd992f
Update at_socket.c 2018-12-07 19:05:24 +08:00
chenyong 37a3a03e33 [net][at] Fix at_recvfrom() select event issue
Signed-off-by: chenyong <1521761801@qq.com>
2018-11-29 18:55:14 +08:00
HubretXie 61bb8a05d2
Update at_socket.c
at socket 接收数据正常时清除错误标识
2018-11-01 18:43:04 +08:00
HubretXie b9d6336526
Update at_socket.c
at接收超时 添加   EAGAIN  类型返回
2018-11-01 14:23:30 +08:00
armink e2b5fcd074 [component][at] Add some #ifdef on source code. 2018-10-16 10:31:21 +08:00
eddylin83 65340e46e3 fix at socket issue,online AT package might be fixed too(at_socket_device_register spell mistake) 2018-10-15 13:02:33 +08:00
Bernard Xiong aa4d0903c5
Merge pull request #1884 from linuxhan/master
sal框架,使用at设备,UDP通讯数据无法获得
2018-10-13 13:42:47 +08:00
armink 4e578b0042 [component][at] Change the license to Apache-2.0. 2018-10-12 16:02:20 +08:00
armink 405fce917a [component][at] Move at log from at.h to at_log.h . 2018-10-12 15:54:09 +08:00
linuxhan b6968d2999
Update at_socket.c 2018-10-11 22:41:13 +08:00
linuxhan f93fb14a12 修复SAL框架下AT设备UDP通讯无法接收到数据问题 2018-10-11 22:31:30 +08:00
chenyong e2706c14b1 [net][at] Fix AT Socket select send data issue. 2018-09-17 18:07:26 +08:00
chenyong 8f95b78da2 [net][at] fix at select receive event change issue. 2018-09-14 19:25:45 +08:00
HubretXie e045c656f0
Update at_socket.c
修复LOG_X修改引起的编译错误
2018-09-12 10:22:00 +08:00
chenyong 33a5cf15ee [net][at] Modify AT socket object release judgment 2018-08-31 14:45:40 +08:00
chenyong a8c9b2fee3 [net][at] Modify 'AT+CLOSE' processing method 2018-08-31 14:08:04 +08:00
chenyong 2d894b4102 [net][at] Modify AT Socket object callback name 2018-08-27 19:44:04 +08:00
chenyong 0d737de882 [net][at] Modify AT Socket log information, fix at_freeaddrinfo() implement 2018-08-24 20:32:14 +08:00
chenyong c2e6f20caf [net][at] Modify the AT client initialization process, delete AT socket automatic initialization. 2018-08-21 12:05:09 +08:00
chenyong c2add5cb4e [net][at] Add AT Socket select LIBC configure. 2018-08-02 17:55:01 +08:00
chenyong 8b887e76e9 [net][at] Add AT commands component 2018-07-25 17:35:20 +08:00