taglinefilesource code
icmph151net/ipv4/icmp.cvoid (*handler)(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev, __u32 saddr, __u32 daddr, int len);
icmph165net/ipv4/icmp.cstruct icmphdr icmph;
icmph203net/ipv4/icmp.cstruct icmphdr *icmph;
icmph217net/ipv4/icmp.ccsum = csum_partial_copy((void *)&icmp_param->icmph,
icmph223net/ipv4/icmp.cicmph=(struct icmphdr *)to;
icmph224net/ipv4/icmp.cicmph->checksum = csum_fold(csum);
icmph234net/ipv4/icmp.cicmp_param->icmph.checksum=0;
icmph236net/ipv4/icmp.cicmp_out_count(icmp_param->icmph.type);
icmph256net/ipv4/icmp.cstruct icmphdr *icmph;
icmph302net/ipv4/icmp.cicmph = (struct icmphdr *)((char *)iph + (iph->ihl<<2));
icmph307net/ipv4/icmp.cif(icmph->type>18 || icmp_pointers[icmph->type].error)
icmph320net/ipv4/icmp.cicmp_param.icmph.type=type;
icmph321net/ipv4/icmp.cicmp_param.icmph.code=code;
icmph322net/ipv4/icmp.cicmp_param.icmph.un.gateway = info;
icmph339net/ipv4/icmp.cstatic void icmp_unreach(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev, __u32 saddr, __u32 daddr, int len)
icmph346net/ipv4/icmp.ciph = (struct iphdr *) (icmph + 1);
icmph350net/ipv4/icmp.cif(icmph->type==ICMP_DEST_UNREACH)
icmph352net/ipv4/icmp.cswitch(icmph->code & 15)
icmph372net/ipv4/icmp.cunsigned short new_mtu = ntohs(icmph->un.echo.sequence);
icmph416net/ipv4/icmp.cif(icmph->code>12)  /* Invalid type */
icmph456net/ipv4/icmp.cipprot->err_handler(icmph->type, icmph->code, dp,
icmph470net/ipv4/icmp.cstatic void icmp_redirect(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev, __u32 source, __u32 daddr, int len)
icmph479net/ipv4/icmp.ciph = (struct iphdr *) (icmph + 1);
icmph488net/ipv4/icmp.cswitch(icmph->code & 7) 
icmph498net/ipv4/icmp.cip, 0, icmph->un.gateway, dev,0, 0, 0);
icmph515net/ipv4/icmp.cip_rt_redirect(source, ip, icmph->un.gateway, dev);
icmph540net/ipv4/icmp.cstatic void icmp_echo(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev, __u32 saddr, __u32 daddr, int len)
icmph543net/ipv4/icmp.cicmp_param.icmph=*icmph;
icmph544net/ipv4/icmp.cicmp_param.icmph.type=ICMP_ECHOREPLY;
icmph545net/ipv4/icmp.cicmp_param.data_ptr=(icmph+1);
icmph560net/ipv4/icmp.cstatic void icmp_timestamp(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev, __u32 saddr, __u32 daddr, int len)
icmph586net/ipv4/icmp.cmemcpy((void *)&times[0], icmph+1, 4);    /* Incoming stamp */
icmph587net/ipv4/icmp.cicmp_param.icmph=*icmph;
icmph588net/ipv4/icmp.cicmp_param.icmph.type=ICMP_TIMESTAMPREPLY;
icmph589net/ipv4/icmp.cicmp_param.icmph.code=0;
icmph610net/ipv4/icmp.cstatic void icmp_address(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev, __u32 saddr, __u32 daddr, int len)
icmph615net/ipv4/icmp.cicmp_param.icmph.type=ICMP_ADDRESSREPLY;
icmph616net/ipv4/icmp.cicmp_param.icmph.code=0;
icmph617net/ipv4/icmp.cicmp_param.icmph.un.echo.id = icmph->un.echo.id;
icmph618net/ipv4/icmp.cicmp_param.icmph.un.echo.sequence = icmph->un.echo.sequence;
icmph627net/ipv4/icmp.cstatic void icmp_discard(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev, __u32 saddr, __u32 daddr, int len)
icmph640net/ipv4/icmp.cstruct icmphdr *icmph=(void *)skb->h.raw;
icmph647net/ipv4/icmp.cif (ip_compute_csum((unsigned char *) icmph, len)) 
icmph662net/ipv4/icmp.cif(icmph->type > 18)
icmph680net/ipv4/icmp.cif (icmph->type != ICMP_ECHO) 
icmph695net/ipv4/icmp.c(*icmp_pointers[icmph->type].input)++;
icmph696net/ipv4/icmp.c(icmp_pointers[icmph->type].handler)(icmph,skb,skb->dev,saddr,daddr,len);