这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 | ||
icore4t_45 [2020/09/26 19:59] zgf [三、 实验原理] |
icore4t_45 [2022/04/01 10:54] (当前版本) sean |
||
---|---|---|---|
行 2: | 行 2: | ||
|技术支持电话|**0379-69926675-801**||| | |技术支持电话|**0379-69926675-801**||| | ||
|技术支持邮件|Gingko@vip.163.com||| | |技术支持邮件|Gingko@vip.163.com||| | ||
- | |技术论坛|http://www.eeschool.org||| | ||
^ 版本 ^ 日期 ^ 作者 ^ 修改内容 ^ | ^ 版本 ^ 日期 ^ 作者 ^ 修改内容 ^ | ||
| V1.0 | 2020-9-26 | zgf | 初次建立 | | | V1.0 | 2020-9-26 | zgf | 初次建立 | | ||
行 174: | 行 173: | ||
memcpy(eth_tcps.send_buffer,data,len); | memcpy(eth_tcps.send_buffer,data,len); | ||
es = tpcb->callback_arg; | es = tpcb->callback_arg; | ||
- | if(es != NULL){ //连接处于空闲可以发送数据 | + | if(es != NULL){ //连接处于空闲可以发送数据 |
es->p = pbuf_alloc(PBUF_TRANSPORT,len,PBUF_POOL);//申请内存 | es->p = pbuf_alloc(PBUF_TRANSPORT,len,PBUF_POOL);//申请内存 | ||
- | //将eth_tcps.send_buffer[]中的数据拷贝到es->p_tx中 | + | pbuf_take(es->p,(char*)eth_tcps.send_buffer,len);//将eth_tcps.send_buffer[]中的数据拷贝到es->p_tx中 |
- | pbuf_take(es->p,(char*)eth_tcps.send_buffer,len); | + | tcp_server_senddata(tpcb,es); //将eth_tcps.send_buffer[]里面复制给pbuf的数据发送出去 |
- | tcp_server_senddata(tpcb,es); //将eth_tcps.send_buffer[]里面复制给pbuf的数据发送出去 | + | if(es->p)pbuf_free(es->p); //释放内存 |
- | if(es->p)pbuf_free(es->p); //释放内存 | + | |
ret_err=ERR_OK; | ret_err=ERR_OK; | ||
}else{ | }else{ | ||
- | tcp_abort(tpcb); //终止连接,删除pcb控制块 | + | tcp_abort(tpcb); //终止连接,删除pcb控制块 |
ret_err=ERR_ABRT; | ret_err=ERR_ABRT; | ||
} | } |