1. 首页
  2. 课程学习
  3. 嵌入式
  4. TCP IP 源代码

TCP IP 源代码

上传者: 2022-08-22 06:03:02上传 RAR文件 637.07 KB 热度 7次

uint8 * res_arp(

                 struct iface *iface,  /* Pointer to interface block */

                 enum   arp_hwtype hardware, /* Hardware type */

                 int32  target,   /* Target IP address */

                 struct mbuf **bpp)  /* IP datagram to be queued if unresolved */               

{

    register struct arp_tab *arp;

    struct ip ip;

   

    if((arp = arp_lookup(hardware,target)) != NULL && arp->state == ARP_VALID)

     return arp->hw_addr;

    if(arp != NULL){

     /* Earlier packets are already pending, kick this one back

      * as a source quench

      */

     ntohip(&ip,bpp);

     icmp_output(&ip,*bpp,ICMP_QUENCH,0,NULL);

     free_p(bpp);

    } else {

     /* Create an entry and put the datagram on the

      * queue pending an answer

      */

     arp = arp_add(target,hardware,NULL,0);

     enqueue(&arp->pending,bpp);

     arp_output(iface,hardware,target);

    }

    return NULL;

}

下载地址
用户评论