taglinefilesource code
skb361net/drv/slip/slip.csl_start_xmit(void /*struct sk_buff*/ *skb, void /*struct device*/ *dev)
skb387net/drv/slip/slip.cif (skb != NULL) {
skb390net/drv/slip/slip.csl_send(sl, (unsigned char *) (skb + 1), skb->len);
skb406net/drv/slip/slip.csl_type_trans (void /*struct sk_buff*/ *skb, void /*struct device*/ *dev)
skb143net/drv/we8003/handler.cwd8003_start_xmit(struct sk_buff *skb, struct device *dev)
skb161net/drv/we8003/handler.cif (skb == NULL)
skb169net/drv/we8003/handler.cif (skb->dev != dev)
skb176net/drv/we8003/handler.cif (!skb->arp)
skb178net/drv/we8003/handler.cif ( dev->rebuild_header (skb+1, dev)) 
skb181net/drv/we8003/handler.cif (skb->dev == dev)
skb183net/drv/we8003/handler.carp_queue (skb);
skb192net/drv/we8003/handler.cmemcpy ((unsigned char *)dev->mem_start, skb+1, skb->len);
skb194net/drv/we8003/handler.clen = skb->len;
skb216net/drv/we8003/handler.cif (skb->free)
skb218net/drv/we8003/handler.ckfree_skb (skb, FREE_WRITE);
skb93net/inet/3c509.cstatic int el3_start_xmit(struct sk_buff *skb, struct device *dev);
skb301net/inet/3c509.cel3_start_xmit(struct sk_buff *skb, struct device *dev)
skb320net/inet/3c509.cif (skb == NULL) {
skb326net/inet/3c509.cif (!skb->arp  &&  dev->rebuild_header(skb+1, dev)) {
skb327net/inet/3c509.cskb->dev = dev;
skb328net/inet/3c509.carp_queue (skb);
skb332net/inet/3c509.cif (skb->len <= 0)
skb337net/inet/3c509.cdev->name, skb->len, inw(ioaddr + EL3_STATUS));
skb353net/inet/3c509.coutw(skb->len, ioaddr + TX_FIFO);
skb356net/inet/3c509.cport_write_l(ioaddr + TX_FIFO, (void *)(skb+1), (skb->len + 3) >> 2);
skb359net/inet/3c509.cif (skb->free)
skb360net/inet/3c509.ckfree_skb (skb, FREE_WRITE);
skb517net/inet/3c509.cstruct sk_buff *skb;
skb518net/inet/3c509.cskb = (struct sk_buff *) kmalloc(sksize, GFP_ATOMIC);
skb523net/inet/3c509.cif (skb != NULL) {
skb524net/inet/3c509.cskb->mem_len = sksize;
skb525net/inet/3c509.cskb->mem_addr = skb;
skb526net/inet/3c509.cskb->len = pkt_len;
skb527net/inet/3c509.cskb->dev = dev;
skb530net/inet/3c509.cport_read_l(ioaddr+RX_FIFO, (void *)(skb+1),
skb534net/inet/3c509.cnetif_rx(skb);
skb538net/inet/3c509.cskb->lock = 0;
skb539net/inet/3c509.cif (dev_rint((unsigned char *)skb, pkt_len,
skb554net/inet/3c509.ckfree_s(skb, sksize);
skb120net/inet/8390.cei_start_xmit(struct sk_buff *skb, struct device *dev)
skb152net/inet/8390.cif (skb == NULL) {
skb157net/inet/8390.cif (!skb->arp  &&  dev->rebuild_header(skb+1, dev)) {
skb158net/inet/8390.cskb->dev = dev;
skb159net/inet/8390.carp_queue (skb);
skb163net/inet/8390.cif (skb->len <= 0)
skb165net/inet/8390.clength = skb->len;
skb212net/inet/8390.cei_block_output(dev, length, (unsigned char *)(skb+1), output_page);
skb226net/inet/8390.cei_block_output(dev, length, (unsigned char *)(skb+1),
skb232net/inet/8390.cif (skb->free)
skb233net/inet/8390.ckfree_skb (skb, FREE_WRITE);
skb476net/inet/8390.cstruct sk_buff *skb;
skb477net/inet/8390.cskb = (struct sk_buff *) kmalloc(sksize, GFP_ATOMIC);
skb478net/inet/8390.cif (skb != NULL) {
skb479net/inet/8390.cskb->lock = 0;
skb480net/inet/8390.cskb->mem_len = sksize;
skb481net/inet/8390.cskb->mem_addr = skb;
skb483net/inet/8390.cei_block_input(dev, size, (char *)(skb+1),
skb485net/inet/8390.cif (dev_rint((unsigned char *)skb, size, IN_SKBUFF, dev)) {
skb487net/inet/8390.ckfree_s(skb, sksize);
skb168net/inet/arp.cstruct sk_buff *skb;
skb175net/inet/arp.cwhile ((skb = next) != NULL) {
skb176net/inet/arp.cif (skb->magic != ARP_QUEUE_MAGIC) {
skb178net/inet/arp.cskb->magic);
skb183net/inet/arp.cif (skb->next == NULL
skb185net/inet/arp.c|| ((unsigned long)(skb->next) > 16*1024*1024)
skb193net/inet/arp.cnext = skb->next;
skb194net/inet/arp.cif (next != skb) {
skb195net/inet/arp.cskb->prev->next = next;
skb196net/inet/arp.cnext->prev = skb->prev;
skb201net/inet/arp.cskb->magic = 0;
skb202net/inet/arp.cskb->next = NULL;
skb203net/inet/arp.cskb->prev = NULL;
skb207net/inet/arp.cskb->tries--;
skb208net/inet/arp.cif (skb->tries == 0) {
skb218net/inet/arp.cskb->sk = NULL;
skb219net/inet/arp.ckfree_skb(skb, FREE_WRITE);
skb227net/inet/arp.cif (!skb->dev->rebuild_header(skb+1, skb->dev)) {
skb229net/inet/arp.cskb->next = NULL;
skb230net/inet/arp.cskb->prev = NULL;
skb231net/inet/arp.cskb->arp  = 1;
skb232net/inet/arp.cskb->dev->queue_xmit(skb, skb->dev, 0);
skb236net/inet/arp.cskb->magic = ARP_QUEUE_MAGIC;      
skb238net/inet/arp.cskb->next = skb;
skb239net/inet/arp.cskb->prev = skb;
skb240net/inet/arp.carp_q = skb;
skb242net/inet/arp.cskb->next = arp_q;
skb243net/inet/arp.cskb->prev = arp_q->prev;  
skb244net/inet/arp.carp_q->prev->next = skb;
skb245net/inet/arp.carp_q->prev = skb;
skb258net/inet/arp.cstruct sk_buff *skb;
skb264net/inet/arp.cskb = (struct sk_buff *) kmalloc(sizeof(struct sk_buff) +
skb268net/inet/arp.cif (skb == NULL) {
skb278net/inet/arp.cskb->lock     = 0;
skb279net/inet/arp.cskb->mem_addr = skb;
skb280net/inet/arp.cskb->len      = sizeof(struct arphdr) + (2 * arp1->ar_hln) + 
skb282net/inet/arp.cskb->mem_len  = sizeof(struct sk_buff) + skb->len;
skb283net/inet/arp.chlen = dev->hard_header((unsigned char *)(skb+1), dev,
skb284net/inet/arp.cETH_P_ARP, src, dst, skb->len);
skb295net/inet/arp.carp2 = (struct arphdr *) ((unsigned char *) (skb+1) + hlen);
skb310net/inet/arp.cskb->free = 1;
skb311net/inet/arp.cskb->arp = 1;
skb312net/inet/arp.cskb->sk = NULL;
skb313net/inet/arp.cskb->next = NULL;
skb319net/inet/arp.cdev->queue_xmit(skb, dev, 0);
skb431net/inet/arp.carp_rcv(struct sk_buff *skb, struct device *dev, struct packet_type *pt)
skb440net/inet/arp.carp = skb->h.arp;
skb446net/inet/arp.ckfree_skb(skb, FREE_READ);
skb454net/inet/arp.ckfree_skb(skb, FREE_READ);
skb475net/inet/arp.ckfree_skb(skb, FREE_READ);
skb480net/inet/arp.ckfree_skb(skb, FREE_READ);
skb498net/inet/arp.ckfree_skb(skb, FREE_READ);
skb504net/inet/arp.ckfree_skb(skb, FREE_READ);
skb513net/inet/arp.ckfree_skb(skb, FREE_READ);
skb522net/inet/arp.cstruct sk_buff *skb;
skb531net/inet/arp.cskb = (struct sk_buff *) kmalloc(sizeof(struct sk_buff) +
skb535net/inet/arp.cif (skb == NULL) {
skb541net/inet/arp.cskb->lock = 0;
skb542net/inet/arp.cskb->sk = NULL;
skb543net/inet/arp.cskb->mem_addr = skb;
skb544net/inet/arp.cskb->len = sizeof(struct arphdr) +
skb546net/inet/arp.cskb->mem_len = sizeof(struct sk_buff) + skb->len;
skb547net/inet/arp.cskb->arp = 1;
skb548net/inet/arp.cskb->dev = dev;
skb549net/inet/arp.cskb->next = NULL;
skb550net/inet/arp.ctmp = dev->hard_header((unsigned char *)(skb+1), dev,
skb551net/inet/arp.cETH_P_ARP, 0, saddr, skb->len);
skb553net/inet/arp.ckfree_s(skb->mem_addr, skb->mem_len);
skb556net/inet/arp.carp = (struct arphdr *) ((unsigned char *) (skb+1) + tmp);
skb574net/inet/arp.cdev->queue_xmit(skb, dev, 0);
skb674net/inet/arp.carp_queue(struct sk_buff *skb)
skb677net/inet/arp.cskb->tries = ARP_MAX_TRIES;
skb679net/inet/arp.cif (skb->next != NULL) {
skb681net/inet/arp.cprintk("ARP: arp_queue skb already on queue magic=%X.\n", skb->magic);
skb685net/inet/arp.carp_q = skb;
skb686net/inet/arp.cskb->next = skb;
skb687net/inet/arp.cskb->prev = skb;
skb689net/inet/arp.cskb->next = arp_q;
skb690net/inet/arp.cskb->prev = arp_q->prev;
skb691net/inet/arp.cskb->next->prev = skb;
skb692net/inet/arp.cskb->prev->next = skb;
skb694net/inet/arp.cskb->magic = ARP_QUEUE_MAGIC;
skb52net/inet/arp.hextern int  arp_rcv(struct sk_buff *skb, struct device *dev,
skb59net/inet/arp.hextern void  arp_queue(struct sk_buff *skb);
skb234net/inet/d_link.cstatic int  d_link_start_xmit(struct sk_buff *skb, struct device *dev);
skb376net/inet/d_link.cd_link_start_xmit(struct sk_buff *skb, struct device *dev)
skb382net/inet/d_link.cunsigned char  *buffer = (unsigned char *)(skb + 1);
skb390net/inet/d_link.cif (skb == NULL) {
skb396net/inet/d_link.cif (!skb->arp  &&  dev->rebuild_header(skb + 1, dev)) {
skb397net/inet/d_link.cskb->dev = dev;
skb398net/inet/d_link.carp_queue (skb);
skb426net/inet/d_link.cPRINTK(("d_link_start_xmit:len=%d\n", skb->len));
skb442net/inet/d_link.cif ((len = skb->len) < RUNT) /*&& Hmm...? */
skb472net/inet/d_link.cif (skb->free) {
skb473net/inet/d_link.ckfree_skb (skb, FREE_WRITE);
skb593net/inet/d_link.cstruct sk_buff  *skb;
skb615net/inet/d_link.cif ((skb = (struct sk_buff *) kmalloc(sksize, GFP_ATOMIC)) == NULL) {
skb624net/inet/d_link.cskb->lock = 0;
skb625net/inet/d_link.cskb->mem_len = sksize;
skb626net/inet/d_link.cskb->mem_addr = skb;
skb628net/inet/d_link.cbuffer = (unsigned char *)(skb + 1);
skb646net/inet/d_link.cif(dev_rint((unsigned char *)skb, size, IN_SKBUFF, dev)) {
skb308net/inet/dev.cdev_queue_xmit(struct sk_buff *skb, struct device *dev, int pri)
skb316net/inet/dev.cskb, dev, pri));
skb323net/inet/dev.cskb->dev = dev;
skb324net/inet/dev.cif (skb->next != NULL) {
skb340net/inet/dev.cif (dev->hard_start_xmit(skb, dev) == 0) {
skb351net/inet/dev.cdev->buffs[pri] = skb;
skb352net/inet/dev.cskb->next = skb;
skb353net/inet/dev.cskb->prev = skb;
skb356net/inet/dev.cskb->next = (struct sk_buff *) dev->buffs[pri];
skb357net/inet/dev.cskb->prev = (struct sk_buff *) dev->buffs[pri]->prev;
skb358net/inet/dev.cskb->prev->next = skb;
skb359net/inet/dev.cskb->next->prev = skb;
skb360net/inet/dev.cdev->buffs[pri] = skb;
skb363net/inet/dev.cskb->next = skb2;
skb364net/inet/dev.cskb->prev = skb2->prev;
skb365net/inet/dev.cskb->next->prev = skb;
skb366net/inet/dev.cskb->prev->next = skb;
skb369net/inet/dev.cskb->magic = DEV_QUEUE_MAGIC;
skb378net/inet/dev.cnetif_rx(struct sk_buff *skb)
skb381net/inet/dev.cskb->lock = 0;
skb382net/inet/dev.cskb->sk = NULL;
skb387net/inet/dev.cskb->prev = skb;
skb388net/inet/dev.cskb->next = skb;
skb389net/inet/dev.cbacklog = skb;
skb391net/inet/dev.cskb->prev = (struct sk_buff *) backlog->prev;
skb392net/inet/dev.cskb->next = (struct sk_buff *) backlog;
skb393net/inet/dev.cskb->next->prev = skb;
skb394net/inet/dev.cskb->prev->next = skb;
skb419net/inet/dev.cstruct sk_buff *skb = NULL;
skb426net/inet/dev.cskb = (struct sk_buff *) buff;
skb435net/inet/dev.cskb = (struct sk_buff *) kmalloc(sizeof(*skb) + len, GFP_ATOMIC);
skb436net/inet/dev.cif (skb == NULL) {
skb442net/inet/dev.cskb->lock = 0;
skb443net/inet/dev.cskb->mem_len = sizeof(*skb) + len;
skb444net/inet/dev.cskb->mem_addr = (struct sk_buff *) skb;
skb447net/inet/dev.cto = (unsigned char *) (skb + 1);
skb462net/inet/dev.cskb->len = len;
skb463net/inet/dev.cskb->dev = dev;
skb465net/inet/dev.cnetif_rx(skb);
skb492net/inet/dev.cstruct sk_buff *skb;
skb508net/inet/dev.cskb = (struct sk_buff *) backlog;
skb509net/inet/dev.cif (skb->next == skb) {
skb512net/inet/dev.cbacklog = skb->next;
skb513net/inet/dev.cskb->next->prev = skb->prev;
skb514net/inet/dev.cskb->prev->next = skb->next;
skb524net/inet/dev.cskb->h.raw = (unsigned char *) (skb + 1) + skb->dev->hard_header_len;
skb525net/inet/dev.cskb->len -= skb->dev->hard_header_len;
skb536net/inet/dev.ctype = skb->dev->type_trans(skb, skb->dev);
skb549net/inet/dev.cskb2 = (struct sk_buff *) kmalloc(skb->mem_len, GFP_ATOMIC);
skb551net/inet/dev.cmemcpy(skb2, (const void *) skb, skb->mem_len);
skb556net/inet/dev.c(unsigned long) skb->h.raw -
skb557net/inet/dev.c(unsigned long) skb
skb560net/inet/dev.cskb2 = skb;
skb570net/inet/dev.cptype->func(skb2, skb->dev, ptype);
skb581net/inet/dev.cskb->sk = NULL;
skb582net/inet/dev.ckfree_skb(skb, FREE_WRITE);
skb602net/inet/dev.cstruct sk_buff *skb;
skb607net/inet/dev.cskb = (struct sk_buff *) dev->buffs[i];
skb608net/inet/dev.cif (skb->magic != DEV_QUEUE_MAGIC) {
skb609net/inet/dev.cprintk("INET: dev: skb with bad magic-%X:", skb->magic);
skb615net/inet/dev.cskb->magic = 0;
skb617net/inet/dev.cif (skb->next == skb) {
skb621net/inet/dev.cif (skb->next == NULL
skb623net/inet/dev.c|| (unsigned long)(skb->next) > 16*1024*1024
skb630net/inet/dev.cdev->buffs[i]= skb->next;
skb631net/inet/dev.cskb->prev->next = skb->next;
skb632net/inet/dev.cskb->next->prev = skb->prev;
skb636net/inet/dev.cskb->next = NULL;
skb637net/inet/dev.cskb->prev = NULL;
skb641net/inet/dev.cdev->queue_xmit(skb, dev, -i - 1);
skb119net/inet/dev.hint        (*hard_start_xmit) (struct sk_buff *skb,
skb128net/inet/dev.hstruct sk_buff *skb,
skb130net/inet/dev.hvoid        (*queue_xmit)(struct sk_buff *skb,
skb133net/inet/dev.hunsigned short    (*type_trans) (struct sk_buff *skb,
skb170net/inet/dev.hextern void    dev_queue_xmit(struct sk_buff *skb, struct device *dev,
skb173net/inet/dev.hextern void    netif_rx(struct sk_buff *skb);
skb154net/inet/eth.ceth_add_arp(unsigned long addr, struct sk_buff *skb, struct device *dev)
skb158net/inet/eth.ceth = (struct ethhdr *) (skb + 1);
skb165net/inet/eth.ceth_type_trans(struct sk_buff *skb, struct device *dev)
skb169net/inet/eth.ceth = (struct ethhdr *) (skb + 1);
skb31net/inet/eth.hextern void    eth_add_arp(unsigned long addr, struct sk_buff *skb,
skb33net/inet/eth.hextern unsigned short  eth_type_trans(struct sk_buff *skb, struct device *dev);
skb77net/inet/icmp.cstruct sk_buff *skb;
skb91net/inet/icmp.cskb = (struct sk_buff *) kmalloc(len, GFP_ATOMIC);
skb92net/inet/icmp.cif (skb == NULL) return;
skb94net/inet/icmp.cskb->lock = 0;
skb95net/inet/icmp.cskb->sk = NULL;
skb96net/inet/icmp.cskb->mem_addr = skb;
skb97net/inet/icmp.cskb->mem_len = len;
skb105net/inet/icmp.coffset = ip_build_header(skb, iph->daddr, iph->saddr,
skb108net/inet/icmp.cskb->sk = NULL;
skb109net/inet/icmp.ckfree_skb(skb, FREE_READ);
skb114net/inet/icmp.cskb->len = offset + sizeof(struct icmphdr) + sizeof(struct iphdr) + 8;
skb115net/inet/icmp.cicmph = (struct icmphdr *) ((unsigned char *) (skb + 1) + offset);
skb129net/inet/icmp.cip_queue_xmit(NULL, dev, skb, 1);
skb135net/inet/icmp.cicmp_unreach(struct icmphdr *icmph, struct sk_buff *skb)
skb192net/inet/icmp.cskb->sk = NULL;
skb193net/inet/icmp.ckfree_skb(skb, FREE_READ);
skb199net/inet/icmp.cicmp_redirect(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev)
skb224net/inet/icmp.cskb->sk = NULL;
skb225net/inet/icmp.ckfree_skb(skb, FREE_READ);
skb231net/inet/icmp.cicmp_echo(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev,
skb242net/inet/icmp.cskb->sk = NULL;
skb243net/inet/icmp.ckfree_skb(skb, FREE_READ);
skb257net/inet/icmp.cskb->sk = NULL;
skb258net/inet/icmp.ckfree_skb(skb, FREE_READ);
skb279net/inet/icmp.cskb->sk = NULL;
skb280net/inet/icmp.ckfree_skb(skb, FREE_READ);
skb286net/inet/icmp.cicmp_info(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev,
skb291net/inet/icmp.cskb->sk = NULL;
skb292net/inet/icmp.ckfree_skb(skb, FREE_READ);
skb298net/inet/icmp.cicmp_address(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev,
skb309net/inet/icmp.cskb->sk = NULL;
skb310net/inet/icmp.ckfree_skb(skb, FREE_READ);
skb324net/inet/icmp.cskb->sk = NULL;
skb325net/inet/icmp.ckfree_skb(skb, FREE_READ);
skb348net/inet/icmp.cskb->sk = NULL;
skb349net/inet/icmp.ckfree_skb(skb, FREE_READ);
skb146net/inet/ip.cip_send(struct sk_buff *skb, unsigned long daddr, int len, struct device *dev,
skb152net/inet/ip.cptr = (unsigned char *)(skb + 1);
skb154net/inet/ip.cskb->arp = 1;
skb160net/inet/ip.cskb->arp = 0;
skb162net/inet/ip.cskb->dev = dev;
skb174net/inet/ip.cip_build_header(struct sk_buff *skb, unsigned long saddr, unsigned long daddr,
skb188net/inet/ip.cskb, saddr, daddr, *dev, type, opt, len));
skb189net/inet/ip.cbuff = (unsigned char *)(skb + 1);
skb210net/inet/ip.ctmp = ip_send(skb, raddr, len, *dev, saddr);
skb214net/inet/ip.cskb->dev = *dev;
skb215net/inet/ip.cskb->saddr = saddr;
skb216net/inet/ip.cif (skb->sk) skb->sk->saddr = saddr;
skb474net/inet/ip.cip_forward(struct sk_buff *skb, struct device *dev)
skb488net/inet/ip.ciph = skb->h.iph;
skb496net/inet/ip.cicmp_send(skb, ICMP_TIME_EXCEEDED, ICMP_EXC_TTL, dev);
skb512net/inet/ip.cicmp_send(skb, ICMP_DEST_UNREACH, ICMP_NET_UNREACH, dev);
skb530net/inet/ip.cicmp_send(skb, ICMP_DEST_UNREACH, ICMP_HOST_UNREACH, dev);
skb543net/inet/ip.cin_ntoa(raddr), dev2->name, skb->len));
skb547net/inet/ip.cdev2->hard_header_len + skb->len, GFP_ATOMIC);
skb555net/inet/ip.cskb2->len = skb->len + dev2->hard_header_len;
skb563net/inet/ip.cmemcpy(ptr + dev2->hard_header_len, skb->h.raw, skb->len);
skb566net/inet/ip.c(void) ip_send(skb2, raddr, skb->len, dev2, dev2->pa_addr);
skb575net/inet/ip.cip_rcv(struct sk_buff *skb, struct device *dev, struct packet_type *pt)
skb577net/inet/ip.cstruct iphdr *iph = skb->h.iph;
skb594net/inet/ip.cskb->sk = NULL;
skb595net/inet/ip.ckfree_skb(skb, FREE_WRITE);
skb610net/inet/ip.cip_forward(skb, dev);
skb612net/inet/ip.cskb->sk = NULL;
skb613net/inet/ip.ckfree_skb(skb, FREE_WRITE);
skb622net/inet/ip.cip_defrag(skb);
skb627net/inet/ip.cicmp_send(skb, ICMP_DEST_UNREACH, ICMP_PROT_UNREACH, dev);
skb628net/inet/ip.cskb->sk = NULL;
skb629net/inet/ip.ckfree_skb(skb, FREE_WRITE);
skb635net/inet/ip.cskb->h.raw += iph->ihl*4;
skb653net/inet/ip.cskb2 = (struct sk_buff *) kmalloc (skb->mem_len, GFP_ATOMIC);
skb655net/inet/ip.cmemcpy(skb2, skb, skb->mem_len);
skb660net/inet/ip.c(unsigned long) skb->h.raw -
skb661net/inet/ip.c(unsigned long)skb);
skb663net/inet/ip.cskb2 = skb;
skb686net/inet/ip.cicmp_send(skb, ICMP_DEST_UNREACH, ICMP_PROT_UNREACH, dev);
skb687net/inet/ip.cskb->sk = NULL;
skb688net/inet/ip.ckfree_skb(skb, FREE_WRITE);
skb704net/inet/ip.cstruct sk_buff *skb, int free)
skb714net/inet/ip.cskb->free = free;
skb715net/inet/ip.cskb->dev = dev;
skb716net/inet/ip.cskb->when = jiffies;
skb719net/inet/ip.cptr = (unsigned char *)(skb + 1);
skb722net/inet/ip.ciph->tot_len = ntohs(skb->len - dev->hard_header_len);
skb725net/inet/ip.cskb->next = NULL;
skb728net/inet/ip.cskb->magic = 1;
skb730net/inet/ip.cskb->link3 = NULL;
skb734net/inet/ip.csk->send_tail = skb;
skb735net/inet/ip.csk->send_head = skb;
skb742net/inet/ip.csk->send_tail->link3 = skb;
skb743net/inet/ip.csk->send_tail = skb;
skb750net/inet/ip.cskb->sk = sk;
skb756net/inet/ip.cdev->queue_xmit(skb, dev, sk->priority);
skb758net/inet/ip.cdev->queue_xmit(skb, dev, SOPRI_NORMAL);
skb761net/inet/ip.cif (free) kfree_skb(skb, FREE_WRITE);
skb769net/inet/ip.cstruct sk_buff * skb;
skb774net/inet/ip.cskb = sk->send_head;
skb775net/inet/ip.cwhile (skb != NULL) {
skb776net/inet/ip.cdev = skb->dev;
skb789net/inet/ip.cif (!skb->arp) {
skb790net/inet/ip.cif (dev->rebuild_header((struct enet_header *)(skb+1),dev)) {
skb792net/inet/ip.cskb = (struct sk_buff *)skb->link3;
skb796net/inet/ip.cskb->arp = 1;
skb797net/inet/ip.cskb->when = jiffies;
skb801net/inet/ip.cif (sk) dev->queue_xmit(skb, dev, sk->priority);
skb802net/inet/ip.celse dev->queue_xmit(skb, dev, SOPRI_NORMAL );
skb811net/inet/ip.cskb = (struct sk_buff *)skb->link3;
skb32net/inet/ip.hextern int    ip_build_header(struct sk_buff *skb,
skb38net/inet/ip.hextern int    ip_rcv(struct sk_buff *skb, struct device *dev,
skb41net/inet/ip.hstruct device *dev, struct sk_buff *skb,
skb113net/inet/lance.cstatic int lance_start_xmit(struct sk_buff *skb, struct device *dev);
skb387net/inet/lance.clance_start_xmit(struct sk_buff *skb, struct device *dev)
skb410net/inet/lance.cif (skb == NULL) {
skb416net/inet/lance.cif (!skb->arp  &&  dev->rebuild_header(skb+1, dev)) {
skb417net/inet/lance.cskb->dev = dev;
skb418net/inet/lance.carp_queue (skb);
skb422net/inet/lance.cif (skb->len <= 0)
skb447net/inet/lance.clp->tx_ring[entry].length = -skb->len;
skb451net/inet/lance.c-(ETH_ZLEN < skb->len ? skb->len : ETH_ZLEN);
skb454net/inet/lance.clp->tx_ring[entry].base = (int)(skb+1) | 0x83000000;
skb526net/inet/lance.cstruct sk_buff *skb =
skb547net/inet/lance.cif ((skb-1)->free)
skb548net/inet/lance.ckfree_skb (skb-1, FREE_WRITE);
skb587net/inet/lance.cstruct sk_buff *skb;
skb588net/inet/lance.cskb = (struct sk_buff *) kmalloc(sksize, GFP_ATOMIC);
skb589net/inet/lance.cif (skb == NULL) {
skb594net/inet/lance.cskb->mem_len = sksize;
skb595net/inet/lance.cskb->mem_addr = skb;
skb596net/inet/lance.cskb->len = pkt_len;
skb597net/inet/lance.cskb->dev = dev;
skb598net/inet/lance.cmemcpy((unsigned char *) (skb + 1),
skb602net/inet/lance.cnetif_rx(skb);
skb604net/inet/lance.cskb->lock = 0;
skb605net/inet/lance.cif (dev_rint((unsigned char*)skb, pkt_len, IN_SKBUFF, dev) != 0) {
skb606net/inet/lance.ckfree_s(skb, sksize);
skb47net/inet/loopback.cloopback_xmit(struct sk_buff *skb, struct device *dev)
skb52net/inet/loopback.cDPRINTF((DBG_LOOPB, "loopback_xmit(dev=%X, skb=%X)\n", dev, skb));
skb53net/inet/loopback.cif (skb == NULL || dev == NULL) return(0);
skb64net/inet/loopback.cdone = dev_rint((unsigned char *)(skb+1), skb->len, 0, dev);
skb65net/inet/loopback.cif (skb->free) kfree_skb(skb, FREE_WRITE);
skb48net/inet/packet.cpacket_rcv(struct sk_buff *skb, struct device *dev,  struct packet_type *pt)
skb53net/inet/packet.cskb->dev = dev;
skb54net/inet/packet.cskb->len += dev->hard_header_len;
skb65net/inet/packet.cskb->sk = NULL;
skb66net/inet/packet.ckfree_skb(skb, FREE_READ);
skb71net/inet/packet.cskb->sk = sk;
skb74net/inet/packet.cif (sk->rmem_alloc + skb->mem_len >= SK_RMEM_MAX) {
skb75net/inet/packet.cskb->sk = NULL;
skb76net/inet/packet.ckfree_skb(skb, FREE_READ);
skb79net/inet/packet.csk->rmem_alloc += skb->mem_len;
skb83net/inet/packet.csk->rqueue = skb;
skb84net/inet/packet.cskb->next = skb;
skb85net/inet/packet.cskb->prev = skb;
skb87net/inet/packet.cskb->next = sk->rqueue;
skb88net/inet/packet.cskb->prev = sk->rqueue->prev;
skb89net/inet/packet.cskb->prev->next = skb;
skb90net/inet/packet.cskb->next->prev = skb;
skb104net/inet/packet.cstruct sk_buff *skb;
skb120net/inet/packet.cskb = (struct sk_buff *) sk->prot->wmalloc(sk, len+sizeof(*skb), 0, GFP_KERNEL);
skb123net/inet/packet.cif (skb == NULL) {
skb127net/inet/packet.cskb->lock = 0;
skb128net/inet/packet.cskb->mem_addr = skb;
skb129net/inet/packet.cskb->mem_len = len + sizeof(*skb);
skb130net/inet/packet.cskb->sk = sk;
skb131net/inet/packet.cskb->free = 1;
skb135net/inet/packet.csk->prot->wfree(sk, skb->mem_addr, skb->mem_len);
skb139net/inet/packet.cmemcpy_fromfs (skb+1, from, len);
skb140net/inet/packet.cskb->len = len;
skb141net/inet/packet.cskb->next = NULL;
skb142net/inet/packet.cif (dev->flags & IFF_UP) dev->queue_xmit(skb, dev, sk->priority);
skb143net/inet/packet.celse kfree_skb(skb, FREE_WRITE);
skb198net/inet/packet.cstruct sk_buff *skb;
skb227net/inet/packet.cskb = sk->rqueue;
skb230net/inet/packet.cif (skb->next == skb) {
skb234net/inet/packet.cskb->prev->next = skb->next;
skb235net/inet/packet.cskb->next->prev = skb->prev;
skb238net/inet/packet.ccopied = min(len, skb->len);
skb240net/inet/packet.cmemcpy_tofs(to, skb+1, copied);
skb246net/inet/packet.caddr.sa_family = skb->dev->type;
skb247net/inet/packet.cmemcpy(addr.sa_data,skb->dev->name, 14);
skb253net/inet/packet.ckfree_skb(skb, FREE_READ);
skb125net/inet/plip.cstatic int plip_tx_packet(struct sk_buff *skb, struct device *dev);
skb245net/inet/plip.cplip_tx_packet(struct sk_buff *skb, struct device *dev)
skb262net/inet/plip.cif (skb == NULL) {
skb269net/inet/plip.cif (!skb->arp  &&  dev->rebuild_header(skb+1, dev)) {
skb270net/inet/plip.cskb->dev = dev;
skb271net/inet/plip.carp_queue (skb);
skb276net/inet/plip.cret_val = plip_send_packet(dev, (unsigned char *)(skb+1), skb->len);
skb277net/inet/plip.cif (skb->free)
skb278net/inet/plip.ckfree_skb (skb, FREE_WRITE);
skb404net/inet/plip.cstruct sk_buff *skb;
skb454net/inet/plip.cskb = (struct sk_buff *)kmalloc(sksize, GFP_ATOMIC);
skb455net/inet/plip.cif (skb == NULL) {
skb460net/inet/plip.cskb->lock = 0;
skb461net/inet/plip.cskb->mem_len = sksize;
skb462net/inet/plip.cskb->mem_addr = skb;
skb467net/inet/plip.cunsigned char *buf = (unsigned char *) (skb+1);
skb484net/inet/plip.c} else if(dev_rint((unsigned char *)skb, length, IN_SKBUFF, dev)) {
skb26net/inet/protocol.hint      (*handler)(struct sk_buff *skb, struct device *dev,
skb85net/inet/raw.craw_rcv(struct sk_buff *skb, struct device *dev, struct options *opt,
skb93net/inet/raw.cskb, dev, opt, daddr, len, saddr, redo, protocol));
skb95net/inet/raw.cif (skb == NULL) return(0);
skb97net/inet/raw.ckfree_skb(skb, FREE_READ);
skb102net/inet/raw.ckfree_skb(skb, FREE_READ);
skb107net/inet/raw.cskb->sk = sk;
skb108net/inet/raw.cskb->len = len;
skb109net/inet/raw.cskb->dev = dev;
skb110net/inet/raw.cskb->saddr = daddr;
skb111net/inet/raw.cskb->daddr = saddr;
skb119net/inet/raw.csk->back_log = skb;
skb120net/inet/raw.cskb->next = skb;
skb121net/inet/raw.cskb->prev = skb;
skb123net/inet/raw.cskb->next = sk->back_log;
skb124net/inet/raw.cskb->prev = sk->back_log->prev;
skb125net/inet/raw.cskb->prev->next = skb;
skb126net/inet/raw.cskb->next->prev = skb;
skb136net/inet/raw.cif (sk->rmem_alloc + skb->mem_len >= SK_RMEM_MAX) {
skb137net/inet/raw.cskb->sk = NULL;
skb138net/inet/raw.ckfree_skb(skb, FREE_READ);
skb141net/inet/raw.csk->rmem_alloc += skb->mem_len;
skb145net/inet/raw.csk->rqueue = skb;
skb146net/inet/raw.cskb->next = skb;
skb147net/inet/raw.cskb->prev = skb;
skb149net/inet/raw.cskb->next = sk->rqueue;
skb150net/inet/raw.cskb->prev = sk->rqueue->prev;
skb151net/inet/raw.cskb->prev->next = skb;
skb152net/inet/raw.cskb->next->prev = skb;
skb166net/inet/raw.cstruct sk_buff *skb;
skb194net/inet/raw.cskb = NULL;
skb195net/inet/raw.cwhile (skb == NULL) {
skb196net/inet/raw.cskb = (struct sk_buff *) sk->prot->wmalloc(sk,
skb197net/inet/raw.clen+sizeof(*skb) + sk->prot->max_header,
skb201net/inet/raw.cif (skb == NULL) {
skb220net/inet/raw.cskb->lock = 0;
skb221net/inet/raw.cskb->mem_addr = skb;
skb222net/inet/raw.cskb->mem_len = len + sizeof(*skb) +sk->prot->max_header;
skb223net/inet/raw.cskb->sk = sk;
skb225net/inet/raw.cskb->free = 1; /* these two should be unecessary. */
skb226net/inet/raw.cskb->arp = 0;
skb228net/inet/raw.ctmp = sk->prot->build_header(skb, sk->saddr, 
skb230net/inet/raw.csk->protocol, sk->opt, skb->mem_len);
skb233net/inet/raw.csk->prot->wfree(sk, skb->mem_addr, skb->mem_len);
skb239net/inet/raw.cmemcpy_fromfs ((unsigned char *)(skb+1)+tmp, from, len);
skb248net/inet/raw.cbuff = (unsigned char *)(skb + 1);
skb254net/inet/raw.cskb->len = tmp + len;
skb255net/inet/raw.csk->prot->queue_xmit(sk, dev, skb, 1);
skb319net/inet/raw.cstruct sk_buff *skb;
skb352net/inet/raw.cskb = sk->rqueue;
skb355net/inet/raw.cif (skb->next == skb) {
skb359net/inet/raw.cskb->prev->next = skb->next;
skb360net/inet/raw.cskb->next->prev = skb->prev;
skb363net/inet/raw.ccopied = min(len, skb->len);
skb365net/inet/raw.cmemcpy_tofs(to, skb->h.raw,  copied);
skb372net/inet/raw.caddr.sin_addr.s_addr = skb->daddr;
skb378net/inet/raw.ckfree_skb(skb, FREE_READ);
skb26net/inet/raw.hextern int  raw_rcv(struct sk_buff *skb, struct device *dev,
skb63net/inet/skbuff.hextern void      kfree_skb(struct sk_buff *skb, int rw);
skb64net/inet/skbuff.hextern void      lock_skb(struct sk_buff *skb);
skb65net/inet/skbuff.hextern void      unlock_skb(struct sk_buff *skb, int rw);
skb388net/inet/slip.csl_xmit(struct sk_buff *skb, struct device *dev)
skb397net/inet/slip.cdev->name, skb, sl->sending));
skb411net/inet/slip.cif (skb != NULL) {
skb413net/inet/slip.csl_encaps(sl, (unsigned char *) (skb + 1), skb->len);
skb414net/inet/slip.cif (skb->free) kfree_skb(skb, FREE_WRITE);
skb422net/inet/slip.csl_type_trans (struct sk_buff *skb, struct device *dev)
skb439net/inet/slip.csl_add_arp(unsigned long addr, struct sk_buff *skb, struct device *dev)
skb89net/inet/sock.cprint_skb(struct sk_buff *skb)
skb91net/inet/sock.cif (!skb) {
skb95net/inet/sock.cprintk("  prev = %p, next = %p\n", skb->prev, skb->next);
skb96net/inet/sock.cprintk("  sk = %p link3 = %p\n", skb->sk, skb->link3);
skb97net/inet/sock.cprintk("  mem_addr = %p, mem_len = %d\n", skb->mem_addr, skb->mem_len);
skb98net/inet/sock.cprintk("  used = %d free = %d\n", skb->used,skb->free);
skb103net/inet/sock.clock_skb(struct sk_buff *skb)
skb105net/inet/sock.cif (skb->lock) {
skb108net/inet/sock.cskb->lock = 1;
skb113net/inet/sock.ckfree_skb(struct sk_buff *skb, int rw)
skb115net/inet/sock.cif (skb == NULL) {
skb120net/inet/sock.cif (skb->lock) {
skb121net/inet/sock.cskb->free = 1;
skb124net/inet/sock.cskb->magic = 0;
skb125net/inet/sock.cif (skb->sk) {
skb127net/inet/sock.cskb->sk->prot->rfree(skb->sk, skb->mem_addr, skb->mem_len);
skb129net/inet/sock.cskb->sk->prot->wfree(skb->sk, skb->mem_addr, skb->mem_len);
skb132net/inet/sock.ckfree_s(skb->mem_addr, skb->mem_len);
skb138net/inet/sock.cunlock_skb(struct sk_buff *skb, int rw)
skb140net/inet/sock.cif (skb->lock != 1) {
skb143net/inet/sock.cskb->lock = 0;
skb144net/inet/sock.cif (skb->free) kfree_skb(skb, rw);
skb308net/inet/sock.cstruct sk_buff *skb;
skb324net/inet/sock.cfor(skb = sk->wfront; skb != NULL; ) {
skb327net/inet/sock.cskb2=(struct sk_buff *)skb->next;
skb328net/inet/sock.cif (skb->magic != TCP_WRITE_QUEUE_MAGIC) {
skb330net/inet/sock.cskb->magic);
skb333net/inet/sock.ckfree_skb(skb, FREE_WRITE);
skb334net/inet/sock.cskb = skb2;
skb341net/inet/sock.cskb = sk->rqueue;
skb345net/inet/sock.cskb2 = (struct sk_buff *)skb->next;
skb351net/inet/sock.cif (skb->sk != NULL && skb->sk != sk) {
skb352net/inet/sock.cskb->sk->dead = 1;
skb353net/inet/sock.cskb->sk->prot->close(skb->sk, 0);
skb355net/inet/sock.ckfree_skb(skb, FREE_READ);
skb356net/inet/sock.cskb = skb2;
skb357net/inet/sock.c} while(skb != sk->rqueue);
skb362net/inet/sock.cfor(skb = sk->send_head; skb != NULL; ) {
skb373net/inet/sock.cif (skb->next != NULL) {
skb376net/inet/sock.cif (skb->next != skb) {
skb377net/inet/sock.cskb->next->prev = skb->prev;
skb378net/inet/sock.cskb->prev->next = skb->next;
skb380net/inet/sock.cif (skb == arp_q) {
skb381net/inet/sock.cif (skb->magic != ARP_QUEUE_MAGIC) {
skb384net/inet/sock.c"bas magic(%X)\n", skb->magic);
skb389net/inet/sock.carp_q = skb->next;
skb392net/inet/sock.cif (skb->dev &&
skb393net/inet/sock.cskb->dev->buffs[i] == skb) {
skb394net/inet/sock.cif (skb->magic != DEV_QUEUE_MAGIC) {
skb397net/inet/sock.c"with bad magic(%X)\n", skb->magic);
skb401net/inet/sock.cskb->dev->buffs[i]= skb->next;
skb407net/inet/sock.cif (skb == arp_q) {
skb408net/inet/sock.cif (skb->magic != ARP_QUEUE_MAGIC) {
skb411net/inet/sock.c"bas magic(%X)\n", skb->magic);
skb417net/inet/sock.cif (skb->dev &&
skb418net/inet/sock.cskb->dev->buffs[i] == skb) {
skb419net/inet/sock.cif (skb->magic != DEV_QUEUE_MAGIC) {
skb422net/inet/sock.c"with bad magic(%X)\n", skb->magic);
skb426net/inet/sock.cskb->dev->buffs[i]= NULL;
skb433net/inet/sock.cskb->dev = NULL;
skb435net/inet/sock.cskb2 = (struct sk_buff *)skb->link3;
skb436net/inet/sock.ckfree_skb(skb, FREE_WRITE);
skb437net/inet/sock.cskb = skb2;
skb446net/inet/sock.cskb = (struct sk_buff *)sk->back_log;
skb450net/inet/sock.cskb2 = (struct sk_buff *)skb->next;
skb451net/inet/sock.ckfree_skb(skb, FREE_READ);
skb452net/inet/sock.cskb = skb2;
skb453net/inet/sock.c} while(skb != sk->back_log);
skb1587net/inet/sock.cstruct sk_buff *skb;
skb1590net/inet/sock.cskb =(struct sk_buff *)sk->back_log;
skb1591net/inet/sock.cDPRINTF((DBG_INET, "release_sock: skb = %X:\n", skb));
skb1592net/inet/sock.cif (skb->next != skb) {
skb1593net/inet/sock.csk->back_log = skb->next;
skb1594net/inet/sock.cskb->prev->next = skb->next;
skb1595net/inet/sock.cskb->next->prev = skb->prev;
skb1601net/inet/sock.cif (sk->prot->rcv) sk->prot->rcv(skb, skb->dev, sk->opt,
skb1602net/inet/sock.cskb->saddr, skb->len, skb->daddr, 1,
skb134net/inet/sock.hint      (*build_header)(struct sk_buff *skb,
skb143net/inet/sock.hstruct device *dev, struct sk_buff *skb,
skb82net/inet/tcp.cstruct sk_buff *skb;
skb84net/inet/tcp.cskb = sk->rqueue;
skb85net/inet/tcp.cif (skb == NULL) return(NULL);
skb86net/inet/tcp.csk->rqueue =(struct sk_buff *)skb->next;
skb87net/inet/tcp.cif (sk->rqueue == skb) {
skb90net/inet/tcp.csk->rqueue->prev = skb->prev;
skb93net/inet/tcp.creturn(skb);
skb195net/inet/tcp.cstruct sk_buff *skb;
skb205net/inet/tcp.cskb =(struct sk_buff *)sk->rqueue->next;
skb215net/inet/tcp.cif (before(counted, skb->h.th->seq)) break;
skb216net/inet/tcp.csum = skb->len -(counted - skb->h.th->seq);
skb217net/inet/tcp.cif (skb->h.th->syn) sum++;
skb218net/inet/tcp.cif (skb->h.th->urg) {
skb219net/inet/tcp.csum -= ntohs(skb->h.th->urg_ptr);
skb223net/inet/tcp.cif (skb->h.th->syn) amount--;
skb226net/inet/tcp.cif (amount && skb->h.th->psh) break;
skb227net/inet/tcp.cskb =(struct sk_buff *)skb->next;
skb228net/inet/tcp.c} while(skb != sk->rqueue->next);
skb337net/inet/tcp.cstruct sk_buff *skb;
skb346net/inet/tcp.cskb =(struct sk_buff *)sk->rqueue->next;
skb347net/inet/tcp.cif (sk->copied_seq+1 == skb->h.th->seq &&
skb348net/inet/tcp.cskb->h.th->urg) answ = 1;
skb450net/inet/tcp.cstruct sk_buff *skb;
skb454net/inet/tcp.cskb = sk->send_tmp;
skb457net/inet/tcp.ctcp_send_check(skb->h.th, sk->saddr, sk->daddr,
skb458net/inet/tcp.cskb->len-(unsigned long)skb->h.th +
skb459net/inet/tcp.c(unsigned long)(skb+1), sk);
skb461net/inet/tcp.cskb->h.seq = sk->send_seq;
skb468net/inet/tcp.cskb->next = NULL;
skb469net/inet/tcp.cskb->magic = TCP_WRITE_QUEUE_MAGIC;
skb471net/inet/tcp.csk->wfront=skb;
skb473net/inet/tcp.csk->wback->next = skb;
skb475net/inet/tcp.csk->wback = skb;
skb477net/inet/tcp.csk->prot->queue_xmit(sk, skb->dev, skb,0);
skb595net/inet/tcp.cstruct sk_buff *skb;
skb683net/inet/tcp.cskb = sk->send_tmp;
skb685net/inet/tcp.ccopy = min(sk->mss - skb->len + 128 +
skb694net/inet/tcp.cmemcpy_fromfs((unsigned char *)(skb+1) + skb->len, from, copy);
skb695net/inet/tcp.cskb->len += copy;
skb702net/inet/tcp.cif (skb->len -(unsigned long)skb->h.th +
skb703net/inet/tcp.c(unsigned long)(skb+1) >= sk->mss ||(flags & MSG_OOB)) {
skb723net/inet/tcp.cskb = (struct sk_buff *) prot->wmalloc(sk,
skb725net/inet/tcp.csizeof(*skb), 0, GFP_KERNEL);
skb727net/inet/tcp.csk->send_tmp = skb;
skb728net/inet/tcp.cif (skb != NULL)
skb729net/inet/tcp.cskb->mem_len = sk->mss + 128 + prot->max_header + sizeof(*skb);
skb733net/inet/tcp.cskb = (struct sk_buff *) prot->wmalloc(sk,
skb735net/inet/tcp.csizeof(*skb), 0, GFP_KERNEL);
skb737net/inet/tcp.cif (skb != NULL)
skb738net/inet/tcp.cskb->mem_len = copy+prot->max_header + sizeof(*skb);
skb742net/inet/tcp.cif (skb == NULL) {
skb772net/inet/tcp.cskb->mem_addr = skb;
skb773net/inet/tcp.cskb->len = 0;
skb774net/inet/tcp.cskb->sk = sk;
skb775net/inet/tcp.cskb->lock = 0;
skb776net/inet/tcp.cskb->free = 0;
skb778net/inet/tcp.cbuff =(unsigned char *)(skb+1);
skb784net/inet/tcp.ctmp = prot->build_header(skb, sk->saddr, sk->daddr, &dev,
skb785net/inet/tcp.cIPPROTO_TCP, sk->opt, skb->mem_len);
skb787net/inet/tcp.cprot->wfree(sk, skb->mem_addr, skb->mem_len);
skb793net/inet/tcp.cskb->len += tmp;
skb794net/inet/tcp.cskb->dev = dev;
skb796net/inet/tcp.cskb->h.th =(struct tcphdr *) buff;
skb799net/inet/tcp.cprot->wfree(sk, skb->mem_addr, skb->mem_len);
skb810net/inet/tcp.cskb->len += tmp;
skb816net/inet/tcp.cskb->len += copy;
skb817net/inet/tcp.cskb->free = 0;
skb825net/inet/tcp.cskb->h.seq = sk->send_seq;
skb832net/inet/tcp.cskb->next = NULL;
skb833net/inet/tcp.cskb->magic = TCP_WRITE_QUEUE_MAGIC;
skb835net/inet/tcp.csk->wfront = skb;
skb837net/inet/tcp.csk->wback->next = skb;
skb839net/inet/tcp.csk->wback = skb;
skb841net/inet/tcp.cprot->queue_xmit(sk, dev, skb,0);
skb951net/inet/tcp.cstruct sk_buff *skb;
skb953net/inet/tcp.cskb =(struct sk_buff *)sk->rqueue->next;
skb954net/inet/tcp.cif (!skb->used) break;
skb955net/inet/tcp.cif (sk->rqueue == skb) {
skb958net/inet/tcp.cskb->next->prev = skb->prev;
skb959net/inet/tcp.cskb->prev->next = skb->next;
skb961net/inet/tcp.cskb->sk = sk;
skb962net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb1007net/inet/tcp.cstruct sk_buff *skb;
skb1063net/inet/tcp.cskb =(struct sk_buff *)sk->rqueue->next;
skb1067net/inet/tcp.cif (skb->h.th->urg && !skb->urg_used) {
skb1068net/inet/tcp.cif (skb->h.th->urg_ptr == 0) {
skb1069net/inet/tcp.cskb->h.th->urg_ptr = ntohs(skb->len);
skb1071net/inet/tcp.camt = min(ntohs(skb->h.th->urg_ptr),len);
skb1073net/inet/tcp.cmemcpy_tofs(to,(unsigned char *)(skb->h.th) +
skb1074net/inet/tcp.cskb->h.th->doff*4, amt);
skb1077net/inet/tcp.cskb->urg_used = 1;
skb1084net/inet/tcp.cskb =(struct sk_buff *)skb->next;
skb1085net/inet/tcp.c} while(skb != sk->rqueue->next);
skb1099net/inet/tcp.cstruct sk_buff *skb;
skb1116net/inet/tcp.cif (sk->rqueue != NULL) skb =(struct sk_buff *)sk->rqueue->next;
skb1117net/inet/tcp.celse skb = NULL;
skb1124net/inet/tcp.cwhile(skb == NULL ||
skb1125net/inet/tcp.cbefore(sk->copied_seq+1, skb->h.th->seq) || skb->used) {
skb1126net/inet/tcp.cDPRINTF((DBG_TCP, "skb = %X:\n", skb));
skb1212net/inet/tcp.cif (sk->rqueue == NULL) skb = NULL;
skb1213net/inet/tcp.celse skb =(struct sk_buff *)sk->rqueue->next;
skb1221net/inet/tcp.coffset = sk->copied_seq+1 - skb->h.th->seq;
skb1223net/inet/tcp.cif (skb->h.th->syn) offset--;
skb1224net/inet/tcp.cif (offset < skb->len) {
skb1229net/inet/tcp.cif (skb->h.th->urg) {
skb1230net/inet/tcp.cif (skb->urg_used) {
skb1231net/inet/tcp.csk->copied_seq += ntohs(skb->h.th->urg_ptr);
skb1232net/inet/tcp.coffset += ntohs(skb->h.th->urg_ptr);
skb1233net/inet/tcp.cif (offset >= skb->len) {
skb1234net/inet/tcp.cskb->used = 1;
skb1235net/inet/tcp.cskb =(struct sk_buff *)skb->next;
skb1245net/inet/tcp.cused = min(skb->len - offset, len);
skb1247net/inet/tcp.cmemcpy_tofs(to,((unsigned char *)skb->h.th) +
skb1248net/inet/tcp.cskb->h.th->doff*4 + offset, used);
skb1260net/inet/tcp.c(!skb->h.th->urg || skb->urg_used) &&
skb1261net/inet/tcp.c(used + offset >= skb->len)) skb->used = 1;
skb1267net/inet/tcp.cif (skb->h.th->psh || skb->h.th->urg) {
skb1271net/inet/tcp.cskb->used = 1;
skb1273net/inet/tcp.cskb =(struct sk_buff *)skb->next;
skb1459net/inet/tcp.ctcp_conn_request(struct sock *sk, struct sk_buff *skb,
skb1472net/inet/tcp.csk, skb, daddr, saddr, opt, dev));
skb1474net/inet/tcp.cth = skb->h.th;
skb1482net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb1491net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb1505net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb1534net/inet/tcp.cnewsk->acked_seq = skb->h.th->seq+1;
skb1535net/inet/tcp.cnewsk->fin_seq = skb->h.th->seq;
skb1536net/inet/tcp.cnewsk->copied_seq = skb->h.th->seq;
skb1546net/inet/tcp.cnewsk->dummy_th.source = skb->h.th->dest;
skb1547net/inet/tcp.cnewsk->dummy_th.dest = skb->h.th->source;
skb1563net/inet/tcp.cnewsk->acked_seq = skb->h.th->seq + 1;
skb1564net/inet/tcp.cnewsk->copied_seq = skb->h.th->seq;
skb1566net/inet/tcp.cif (skb->h.th->doff == 5) {
skb1569net/inet/tcp.cptr =(unsigned char *)(skb->h.th + 1);
skb1583net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb1605net/inet/tcp.cskb->sk = sk;
skb1606net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb1613net/inet/tcp.cmemcpy(t1, skb->h.th, sizeof(*t1));
skb1617net/inet/tcp.ct1->dest = skb->h.th->source;
skb1629net/inet/tcp.ct1->ack_seq = ntohl(skb->h.th->seq+1);
skb1642net/inet/tcp.cskb->sk = newsk;
skb1645net/inet/tcp.csk->rmem_alloc -= skb->mem_len;
skb1646net/inet/tcp.cnewsk->rmem_alloc += skb->mem_len;
skb1649net/inet/tcp.cskb->next = skb;
skb1650net/inet/tcp.cskb->prev = skb;
skb1651net/inet/tcp.csk->rqueue = skb;
skb1653net/inet/tcp.cskb->next = sk->rqueue;
skb1654net/inet/tcp.cskb->prev = sk->rqueue->prev;
skb1655net/inet/tcp.csk->rqueue->prev = skb;
skb1656net/inet/tcp.cskb->prev->next = skb;
skb1686net/inet/tcp.cstruct sk_buff *skb;
skb1689net/inet/tcp.cskb = sk->rqueue;
skb1691net/inet/tcp.cskb2 =(struct sk_buff *)skb->next;
skb1693net/inet/tcp.cif (skb->len > 0 &&
skb1694net/inet/tcp.cafter(skb->h.th->seq + skb->len + 1, sk->copied_seq))
skb1696net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb1697net/inet/tcp.cskb = skb2;
skb1698net/inet/tcp.c} while(skb != sk->rqueue);
skb1811net/inet/tcp.cstruct sk_buff *skb;
skb1817net/inet/tcp.cskb = sk->wfront;
skb1818net/inet/tcp.csk->wfront =(struct sk_buff *)skb->next;
skb1820net/inet/tcp.cskb->next = NULL;
skb1821net/inet/tcp.cif (skb->magic != TCP_WRITE_QUEUE_MAGIC) {
skb1823net/inet/tcp.c"queue\n", skb->magic));
skb1828net/inet/tcp.cskb->magic = 0;
skb1832net/inet/tcp.cif (before(skb->h.seq, sk->rcv_ack_seq +1)) {
skb1834net/inet/tcp.ckfree_skb(skb, FREE_WRITE);
skb1837net/inet/tcp.csk->prot->queue_xmit(sk, skb->dev, skb, skb->free);
skb1851net/inet/tcp.cstruct sk_buff *skb,*skb2,*skb3;
skb1853net/inet/tcp.cfor (skb = sk->send_head; skb != NULL; skb = skb2) {
skb1854net/inet/tcp.cskb2 = (struct sk_buff *)skb->link3;
skb1856net/inet/tcp.cskb->link3 = list;
skb1857net/inet/tcp.csk->send_tail = skb;
skb1858net/inet/tcp.clist = skb;
skb1862net/inet/tcp.cbefore(skb->h.seq, skb3->link3->h.seq)) {
skb1863net/inet/tcp.cskb->link3 = skb3->link3;
skb1864net/inet/tcp.cskb3->link3 = skb;
skb1865net/inet/tcp.cif (skb->link3 == NULL) sk->send_tail = skb;
skb1909net/inet/tcp.cstruct sk_buff *skb;
skb1922net/inet/tcp.cskb = skb2;
skb1923net/inet/tcp.cskb2 = (struct sk_buff *)skb->link3;
skb1924net/inet/tcp.cskb->link3 = NULL;
skb1925net/inet/tcp.cif (after(skb->h.seq, sk->window_seq)) {
skb1929net/inet/tcp.cif (skb->next != NULL) {
skb1932net/inet/tcp.cif (skb->next != skb) {
skb1933net/inet/tcp.cskb->next->prev = skb->prev;
skb1934net/inet/tcp.cskb->prev->next = skb->next;
skb1938net/inet/tcp.cif (skb->dev->buffs[i] == skb) {
skb1939net/inet/tcp.cif (skb->next == skb)
skb1940net/inet/tcp.cskb->dev->buffs[i] = NULL;
skb1942net/inet/tcp.cskb->dev->buffs[i] = skb->next;
skb1946net/inet/tcp.cif (arp_q == skb) {
skb1947net/inet/tcp.cif (skb->next == skb) arp_q = NULL;
skb1948net/inet/tcp.celse arp_q = skb->next;
skb1953net/inet/tcp.cskb->magic = TCP_WRITE_QUEUE_MAGIC;
skb1955net/inet/tcp.cskb->next = sk->wfront;
skb1956net/inet/tcp.csk->wfront = skb;
skb1958net/inet/tcp.cskb->next = wskb->next;
skb1959net/inet/tcp.cwskb->next = skb;
skb1961net/inet/tcp.cif (sk->wback == wskb) sk->wback = skb;
skb1962net/inet/tcp.cwskb = skb;
skb1965net/inet/tcp.csk->send_head = skb;
skb1966net/inet/tcp.csk->send_tail = skb;
skb1968net/inet/tcp.csk->send_tail->link3 = skb;
skb1969net/inet/tcp.csk->send_tail = skb;
skb1971net/inet/tcp.cskb->link3 = NULL;
skb2155net/inet/tcp.ctcp_data(struct sk_buff *skb, struct sock *sk, 
skb2161net/inet/tcp.cth = skb->h.th;
skb2163net/inet/tcp.cskb->len = len -(th->doff*4);
skb2165net/inet/tcp.cDPRINTF((DBG_TCP, "tcp_data len = %d sk = %X:\n", skb->len, sk));
skb2167net/inet/tcp.csk->bytes_rcv += skb->len;
skb2168net/inet/tcp.cif (skb->len == 0 && !th->fin && !th->urg && !th->psh) {
skb2171net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2176net/inet/tcp.csk->acked_seq = th->seq + skb->len + th->syn + th->fin;
skb2177net/inet/tcp.ctcp_reset(sk->saddr, sk->daddr, skb->h.th,
skb2178net/inet/tcp.csk->prot, NULL, skb->dev);
skb2183net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2198net/inet/tcp.cDPRINTF((DBG_TCP, "tcp_data: skb = %X:\n", skb));
skb2200net/inet/tcp.csk->rqueue = skb;
skb2201net/inet/tcp.cskb->next = skb;
skb2202net/inet/tcp.cskb->prev = skb;
skb2211net/inet/tcp.cskb->prev = skb1;
skb2212net/inet/tcp.cskb->next = skb1->next;
skb2213net/inet/tcp.cskb->next->prev = skb;
skb2214net/inet/tcp.cskb1->next = skb;
skb2215net/inet/tcp.cif (skb1 == sk->rqueue) sk->rqueue = skb;
skb2219net/inet/tcp.cskb->next= skb1;
skb2220net/inet/tcp.cskb->prev = skb1->prev;
skb2221net/inet/tcp.cskb->prev->next = skb;
skb2222net/inet/tcp.cskb1->prev = skb;
skb2228net/inet/tcp.cDPRINTF((DBG_TCP, "skb = %X:\n", skb));
skb2231net/inet/tcp.cth->ack_seq = th->seq + skb->len;
skb2245net/inet/tcp.cskb->acked = 1;
skb2248net/inet/tcp.cif (skb->h.th->fin) {
skb2253net/inet/tcp.cfor(skb2 = (struct sk_buff *)skb->next;
skb2296net/inet/tcp.cif (!skb->acked) {
skb2431net/inet/tcp.cstruct sk_buff *skb;
skb2448net/inet/tcp.cwhile((skb = get_firstr(sk)) == NULL) {
skb2468net/inet/tcp.cnewsk = skb->sk;
skb2470net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2633net/inet/tcp.ctcp_rcv(struct sk_buff *skb, struct device *dev, struct options *opt,
skb2640net/inet/tcp.cif (!skb) {
skb2658net/inet/tcp.cth = skb->h.th;
skb2663net/inet/tcp.cDPRINTF((DBG_TCP, "len = %d, redo = %d, skb=%X\n", len, redo, skb));
skb2671net/inet/tcp.cskb->sk = NULL;
skb2674net/inet/tcp.ckfree_skb(skb, 0);
skb2685net/inet/tcp.cskb->sk = NULL;
skb2686net/inet/tcp.ckfree_skb(skb, 0);
skb2690net/inet/tcp.cskb->len = len;
skb2691net/inet/tcp.cskb->sk = sk;
skb2692net/inet/tcp.cskb->acked = 0;
skb2693net/inet/tcp.cskb->used = 0;
skb2694net/inet/tcp.cskb->free = 0;
skb2695net/inet/tcp.cskb->urg_used = 0;
skb2696net/inet/tcp.cskb->saddr = daddr;
skb2697net/inet/tcp.cskb->daddr = saddr;
skb2705net/inet/tcp.csk->back_log = skb;
skb2706net/inet/tcp.cskb->next = skb;
skb2707net/inet/tcp.cskb->prev = skb;
skb2709net/inet/tcp.cskb->next = sk->back_log;
skb2710net/inet/tcp.cskb->prev = sk->back_log->prev;
skb2711net/inet/tcp.cskb->prev->next = skb;
skb2712net/inet/tcp.cskb->next->prev = skb;
skb2732net/inet/tcp.cif (sk->rmem_alloc + skb->mem_len >= SK_RMEM_MAX) {
skb2733net/inet/tcp.cskb->sk = NULL;
skb2735net/inet/tcp.ckfree_skb(skb, 0);
skb2739net/inet/tcp.csk->rmem_alloc += skb->mem_len;
skb2757net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2771net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2795net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2810net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2817net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2824net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2831net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2836net/inet/tcp.cif (tcp_data(skb, sk, saddr, len)) {
skb2837net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2848net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2858net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2864net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2870net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2890net/inet/tcp.ctcp_conn_request(sk, skb, daddr, saddr, opt, dev);
skb2895net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2901net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2914net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2927net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2937net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2947net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2957net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2972net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb2996net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb3001net/inet/tcp.cif (tcp_data(skb, sk, saddr, len))
skb3002net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb3011net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb3017net/inet/tcp.cif (tcp_data(skb, sk, saddr, len)) {
skb3018net/inet/tcp.ckfree_skb(skb, FREE_READ);
skb132net/inet/tcp.hextern int  tcp_rcv(struct sk_buff *skb, struct device *dev,
skb199net/inet/udp.cstruct sk_buff *skb;
skb213net/inet/udp.cskb = (struct sk_buff *) sk->prot->wmalloc(sk, size, 0, GFP_KERNEL);
skb214net/inet/udp.cif (skb == NULL) return(-ENOMEM);
skb216net/inet/udp.cskb->lock     = 0;
skb217net/inet/udp.cskb->mem_addr = skb;
skb218net/inet/udp.cskb->mem_len  = size;
skb219net/inet/udp.cskb->sk       = NULL;
skb220net/inet/udp.cskb->free     = 1;
skb221net/inet/udp.cskb->arp      = 0;
skb224net/inet/udp.cbuff = (unsigned char *) (skb+1);
skb228net/inet/udp.csaddr, sin->sin_addr.s_addr, dev, IPPROTO_UDP, skb->mem_len));
skb229net/inet/udp.ctmp = sk->prot->build_header(skb, saddr, sin->sin_addr.s_addr,
skb230net/inet/udp.c&dev, IPPROTO_UDP, sk->opt, skb->mem_len);
skb232net/inet/udp.csk->prot->wfree(sk, skb->mem_addr, skb->mem_len);
skb239net/inet/udp.cskb->len = tmp + sizeof(struct udphdr) + len;  /* len + UDP + IP + MAC */
skb240net/inet/udp.cskb->dev = dev;
skb249net/inet/udp.csk->prot->wfree(sk, skb->mem_addr, skb->mem_len);
skb267net/inet/udp.cudp_send_check(uh, saddr, sin->sin_addr.s_addr, skb->len - tmp, sk);
skb270net/inet/udp.csk->prot->queue_xmit(sk, dev, skb, 1);
skb370net/inet/udp.cstruct sk_buff *skb;
skb375net/inet/udp.cskb = sk->rqueue;
skb376net/inet/udp.cif (skb != NULL) {
skb382net/inet/udp.camount = skb->len;
skb409net/inet/udp.cstruct sk_buff *skb;
skb462net/inet/udp.cskb = sk->rqueue;
skb465net/inet/udp.cif (skb->next == skb) {
skb469net/inet/udp.cskb->prev->next = skb->next;
skb470net/inet/udp.cskb->next->prev = skb->prev;
skb473net/inet/udp.ccopied = min(len, skb->len);
skb477net/inet/udp.cmemcpy_tofs(to, skb->h.raw + sizeof(struct udphdr), copied);
skb484net/inet/udp.caddr.sin_port = skb->h.uh->source;
skb485net/inet/udp.caddr.sin_addr.s_addr = skb->daddr;
skb494net/inet/udp.ckfree_skb(skb, FREE_READ);
skb542net/inet/udp.cudp_rcv(struct sk_buff *skb, struct device *dev, struct options *opt,
skb549net/inet/udp.cuh = (struct udphdr *) skb->h.uh;
skb553net/inet/udp.cicmp_send(skb, ICMP_DEST_UNREACH, ICMP_PORT_UNREACH, dev);
skb560net/inet/udp.cskb->sk = NULL;
skb561net/inet/udp.ckfree_skb(skb, FREE_WRITE);
skb568net/inet/udp.cskb->sk = NULL;
skb569net/inet/udp.ckfree_skb(skb, FREE_WRITE);
skb573net/inet/udp.cskb->sk = sk;
skb574net/inet/udp.cskb->dev = dev;
skb575net/inet/udp.cskb->len = len;
skb578net/inet/udp.cskb->daddr = saddr;
skb579net/inet/udp.cskb->saddr = daddr;
skb585net/inet/udp.csk->back_log = skb;
skb586net/inet/udp.cskb->next = skb;
skb587net/inet/udp.cskb->prev = skb;
skb589net/inet/udp.cskb->next = sk->back_log;
skb590net/inet/udp.cskb->prev = sk->back_log->prev;
skb591net/inet/udp.cskb->prev->next = skb;
skb592net/inet/udp.cskb->next->prev = skb;
skb602net/inet/udp.cif (sk->rmem_alloc + skb->mem_len >= SK_RMEM_MAX) {
skb603net/inet/udp.cskb->sk = NULL;
skb604net/inet/udp.ckfree_skb(skb, FREE_WRITE);
skb608net/inet/udp.csk->rmem_alloc += skb->mem_len;
skb616net/inet/udp.csk->rqueue = skb;
skb617net/inet/udp.cskb->next = skb;
skb618net/inet/udp.cskb->prev = skb;
skb620net/inet/udp.cskb->next = sk->rqueue;
skb621net/inet/udp.cskb->prev = sk->rqueue->prev;
skb622net/inet/udp.cskb->prev->next = skb;
skb623net/inet/udp.cskb->next->prev = skb;
skb625net/inet/udp.cskb->len = len - sizeof(*uh);
skb40net/inet/udp.hextern int  udp_rcv(struct sk_buff *skb, struct device *dev,