taglinefilesource code
icmph152net/ipv4/icmp.cvoid (*handler)(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev, __u32 saddr, __u32 daddr, int len);
icmph166net/ipv4/icmp.cstruct icmphdr icmph;
icmph204net/ipv4/icmp.cstruct icmphdr *icmph;
icmph218net/ipv4/icmp.ccsum = csum_partial_copy((void *)&icmp_param->icmph,
icmph224net/ipv4/icmp.cicmph=(struct icmphdr *)to;
icmph225net/ipv4/icmp.cicmph->checksum = csum_fold(csum);
icmph235net/ipv4/icmp.cicmp_param->icmph.checksum=0;
icmph237net/ipv4/icmp.cicmp_out_count(icmp_param->icmph.type);
icmph257net/ipv4/icmp.cstruct icmphdr *icmph;
icmph303net/ipv4/icmp.cicmph = (struct icmphdr *)((char *)iph + (iph->ihl<<2));
icmph308net/ipv4/icmp.cif(icmph->type>18 || icmp_pointers[icmph->type].error)
icmph321net/ipv4/icmp.cicmp_param.icmph.type=type;
icmph322net/ipv4/icmp.cicmp_param.icmph.code=code;
icmph323net/ipv4/icmp.cicmp_param.icmph.un.gateway = info;
icmph340net/ipv4/icmp.cstatic void icmp_unreach(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev, __u32 saddr, __u32 daddr, int len)
icmph347net/ipv4/icmp.ciph = (struct iphdr *) (icmph + 1);
icmph351net/ipv4/icmp.cif(icmph->type==ICMP_DEST_UNREACH)
icmph353net/ipv4/icmp.cswitch(icmph->code & 15)
icmph373net/ipv4/icmp.cunsigned short new_mtu = ntohs(icmph->un.echo.sequence);
icmph428net/ipv4/icmp.cif(icmph->code>12)  /* Invalid type */
icmph468net/ipv4/icmp.cipprot->err_handler(icmph->type, icmph->code, dp,
icmph482net/ipv4/icmp.cstatic void icmp_redirect(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev, __u32 source, __u32 daddr, int len)
icmph491net/ipv4/icmp.ciph = (struct iphdr *) (icmph + 1);
icmph500net/ipv4/icmp.cswitch(icmph->code & 7) 
icmph510net/ipv4/icmp.cip, 0, icmph->un.gateway, dev,0, 0, 0);
icmph527net/ipv4/icmp.cip_rt_redirect(source, ip, icmph->un.gateway, dev);
icmph552net/ipv4/icmp.cstatic void icmp_echo(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev, __u32 saddr, __u32 daddr, int len)
icmph555net/ipv4/icmp.cicmp_param.icmph=*icmph;
icmph556net/ipv4/icmp.cicmp_param.icmph.type=ICMP_ECHOREPLY;
icmph557net/ipv4/icmp.cicmp_param.data_ptr=(icmph+1);
icmph572net/ipv4/icmp.cstatic void icmp_timestamp(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev, __u32 saddr, __u32 daddr, int len)
icmph598net/ipv4/icmp.cmemcpy((void *)&times[0], icmph+1, 4);    /* Incoming stamp */
icmph599net/ipv4/icmp.cicmp_param.icmph=*icmph;
icmph600net/ipv4/icmp.cicmp_param.icmph.type=ICMP_TIMESTAMPREPLY;
icmph601net/ipv4/icmp.cicmp_param.icmph.code=0;
icmph622net/ipv4/icmp.cstatic void icmp_address(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev, __u32 saddr, __u32 daddr, int len)
icmph627net/ipv4/icmp.cicmp_param.icmph.type=ICMP_ADDRESSREPLY;
icmph628net/ipv4/icmp.cicmp_param.icmph.code=0;
icmph629net/ipv4/icmp.cicmp_param.icmph.un.echo.id = icmph->un.echo.id;
icmph630net/ipv4/icmp.cicmp_param.icmph.un.echo.sequence = icmph->un.echo.sequence;
icmph639net/ipv4/icmp.cstatic void icmp_discard(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev, __u32 saddr, __u32 daddr, int len)
icmph652net/ipv4/icmp.cstruct icmphdr *icmph=(void *)skb->h.raw;
icmph659net/ipv4/icmp.cif (ip_compute_csum((unsigned char *) icmph, len)) 
icmph674net/ipv4/icmp.cif(icmph->type > 18)
icmph692net/ipv4/icmp.cif (icmph->type != ICMP_ECHO) 
icmph707net/ipv4/icmp.c(*icmp_pointers[icmph->type].input)++;
icmph708net/ipv4/icmp.c(icmp_pointers[icmph->type].handler)(icmph,skb,skb->dev,saddr,daddr,len);