打印
[应用相关]

lwIP(V1.3.0) RAW API函数源码分析4----tcp_accept()函数

[复制链接]
780|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
木木guainv|  楼主 | 2018-9-15 22:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
原文网址:https://blog.csdn.net/zhzht19861011/article/details/6191486

位于: 位于:lwip-x.x.x/src/core/tcp.c

原型: void tcp_accept(struct tcp_pcb *pcb,

                  err_t (* accept)(void *arg, struct tcp_pcb *newpcb, err_t err))

功能: 指定处于监听状态的连接接通后将要调用的回调函数

函数源码:

[c-sharp] view plain copy



  • /**
  • * Used for specifying the function that should be called when a
  • * LISTENing connection has been connected to another host.
  • *处于监听状态的连接接通后,指定的函数被调用.
  • * @param pcb tcp_pcb to set the accept callback
  • * @param accept callback function to call for this pcb when LISTENing
  • *        connection has been connected to another host
  • */  
  • void  
  • tcp_accept(struct tcp_pcb *pcb,  
  •      err_t (* accept)(void *arg, struct tcp_pcb *newpcb, err_t err))  
  • {  
  •   ((struct tcp_pcb_listen *)pcb)->accept = accept;  
  • }  


分析:将用户编写的一个函数的指针赋给处于监听状态tcp_pcb结构体中的一个参数,当处于监听状态的连接接通后,这个函数会被调用.虽然lwIP为应用嵌入式系统做了大量的精简工作,但结构体tcp_pcb还是一个庞大而复杂的数据结构,为了便于理解lwIP,对这个结构体下一番功夫还是很有必要的.


沙发
mmuuss586| | 2018-12-23 19:50 | 只看该作者
感谢分享;

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

146

主题

4098

帖子

5

粉丝