LWIP_UNUSED_ARG(inp); PERF_START; TCP_STATS_INC(tcp.recv); MIB2_STATS_INC(mib2.tcpinsegs); tcphdr = (struct tcp_hdr *)p->payload; /* 检查报文段是否有有效数据 */ if (p->len < TCP_HLEN) { /* 如果没有就丢掉报文段 */ TCP_STATS_INC(tcp.lenerr); goto dropped; } /* 不处...
2、err_t udp_send(struct udp_pcb *pcb, struct pbuf *p) 说明:发送udp包。这个函数直接调用udp_sendto()函数。 参数:pcb协议控制块;p数据包发送缓存区。 返回:ERR_OK发送成功;ERR_MEM发送溢出;ERR_RTE不能发送到指定ip;其它表示发送失败。 3、err_t udp_sendto(struct udp_pcb *pcb, struct pbuf *p...
shortage.* - ERR_RTE No route to destination (no gateway to external networks).* - ERR_ARG ...
{ /* 查看网卡是否有默认网关 */ if (!ip4_addr_isany_val(*netif_ip4_gw(netif))) { /* 获取网卡默认网关 */ dst_addr = netif_ip4_gw(netif); } else { /* 没找到有效网关 */ /* 没有路由到目的地错误(缺省网关丢失) */ return ERR_RTE; } } } } #if LWIP_NETIF_HWADDRHINT if (...
2、err_tudp_send(struct udp_pcb *pcb, struct pbuf *p) 说明:发送udp包。这个函数直接调用udp_sendto()函数。 参数:pcb协议控制块;p数据包发送缓存区。 返回:ERR_OK发送成功;ERR_MEM发送溢出;ERR_RTE不能发送到指定ip;其它表示发送失败。 3、err_tudp_sendto(struct udp_pcb *pcb, struct pbuf *p,...
return ERR_RTE; 00674 } 00675 /* Use the netif's IP address as local address. */ 00676 ip_addr_copy(pcb->local_ip, netif->ip_addr); 00677 } 00678 00679 old_local_port = pcb->local_port; 00680 if (pcb->local_port == 0) { ...
ERR_RTE; } return ip4_output_if(p, src, dest, ttl, tos, proto, netif); //新增了一个netif参数 (8) } err_t ip4_output_if(struct pbuf *p, const ip4_addr_t *src, const ip4_addr_t *dest, u8_t ttl, u8_t tos, u8_t proto...
err_tsys_mbox_trypost(sys_mbox_t mbox, void *msg)函数 u32_tsys_arch_mbox_fetch(sys_mbox_tmbox,void **msg, u32_ttimeout) u32_tsys_arch_mbox_tryfetch(sys_mbox_t mbox, void **msg)函数 这个函数是1.3后新有的, 第二章 网卡驱动层 ...
return ERR_RTE; } } } } /* 现在dst_addr已经确认,要不是网关地址,要不是局域网别人的IP. */ if ((arp_table[etharp_cached_entry].state >= ETHARP_STATE_STABLE) && /* 查找上一次找过的索引,看看这个索引还能不能用. */ (ip4_addr_cmp(dst_addr, &arp_table[etharp_cached_entry].ipaddr...
return ERR_RTE; } return ip_output_if(p, src, dest, ttl, tos, proto, netif); } 可以看到该函数的实现就像注释所说的一样,直接调用了ip_route和ip_outputif两个函数。根据以往的经验,先看下netif这个结构的实现情况: * Generic data structure used for all lwIP network interfaces. ...