| tag | line | file | source code |
| skb | 63 | drivers/net/3c501.c | static int el_start_xmit(struct sk_buff *skb, struct device *dev); |
| skb | 270 | drivers/net/3c501.c | el_start_xmit(struct sk_buff *skb, struct device *dev) |
| skb | 293 | drivers/net/3c501.c | if (skb == NULL) { |
| skb | 302 | drivers/net/3c501.c | int gp_start = 0x800 - (ETH_ZLEN < skb->len ? skb->len : ETH_ZLEN); |
| skb | 303 | drivers/net/3c501.c | unsigned char *buf = skb->data; |
| skb | 313 | drivers/net/3c501.c | outsb(DATAPORT,buf,skb->len); |
| skb | 321 | drivers/net/3c501.c | dev_kfree_skb (skb, FREE_WRITE); |
| skb | 429 | drivers/net/3c501.c | struct sk_buff *skb; |
| skb | 444 | drivers/net/3c501.c | skb = alloc_skb(pkt_len, GFP_ATOMIC); |
| skb | 446 | drivers/net/3c501.c | if (skb == NULL) { |
| skb | 451 | drivers/net/3c501.c | skb->len = pkt_len; |
| skb | 452 | drivers/net/3c501.c | skb->dev = dev; |
| skb | 454 | drivers/net/3c501.c | insb(DATAPORT, skb->data, pkt_len); |
| skb | 456 | drivers/net/3c501.c | netif_rx(skb); |
| skb | 130 | drivers/net/3c505.c | extern void skb_check(struct sk_buff *skb,int, char *); |
| skb | 132 | drivers/net/3c505.c | #define IS_SKB(skb) skb_check((skb),__LINE__,filename) |
| skb | 136 | drivers/net/3c505.c | #define IS_SKB(skb) skb_check((skb),0,__LINE__,filename) |
| skb | 161 | drivers/net/3c505.c | #define SKB_DATA (skb+1) |
| skb | 163 | drivers/net/3c505.c | #define SKB_DATA (skb->data) |
| skb | 553 | drivers/net/3c505.c | struct sk_buff *skb; |
| skb | 573 | drivers/net/3c505.c | skb = alloc_skb(sksize, GFP_ATOMIC); |
| skb | 575 | drivers/net/3c505.c | skb = alloc_skb(rlen, GFP_ATOMIC); |
| skb | 586 | drivers/net/3c505.c | if (skb == NULL) { |
| skb | 600 | drivers/net/3c505.c | skb->lock = 0; |
| skb | 601 | drivers/net/3c505.c | skb->len = rlen; |
| skb | 602 | drivers/net/3c505.c | skb->dev = dev; |
| skb | 608 | drivers/net/3c505.c | skb->mem_len = sksize; |
| skb | 609 | drivers/net/3c505.c | skb->mem_addr = skb; |
| skb | 626 | drivers/net/3c505.c | kfree_s(skb, sksize); |
| skb | 628 | drivers/net/3c505.c | kfree_s(skb, rlen); |
| skb | 643 | drivers/net/3c505.c | IS_SKB(skb); |
| skb | 650 | drivers/net/3c505.c | if (dev_rint((unsigned char *)skb, rlen, IN_SKBUFF, dev) != 0) { |
| skb | 652 | drivers/net/3c505.c | kfree_s(skb, sksize); |
| skb | 655 | drivers/net/3c505.c | netif_rx(skb); |
| skb | 1032 | drivers/net/3c505.c | static int elp_start_xmit(struct sk_buff *skb, struct device *dev) |
| skb | 1042 | drivers/net/3c505.c | if (skb == NULL) { |
| skb | 1052 | drivers/net/3c505.c | IS_SKB(skb); |
| skb | 1053 | drivers/net/3c505.c | if (!skb->arp && dev->rebuild_header(SKB_DATA, dev)) { |
| skb | 1054 | drivers/net/3c505.c | skb->dev = dev; |
| skb | 1055 | drivers/net/3c505.c | IS_SKB(skb); |
| skb | 1056 | drivers/net/3c505.c | arp_queue (skb); |
| skb | 1064 | drivers/net/3c505.c | if (skb->len <= 0) |
| skb | 1068 | drivers/net/3c505.c | printk("%s: request to send packet of length %d\n", dev->name, (int)skb->len); |
| skb | 1088 | drivers/net/3c505.c | if (!send_packet(adapter, (unsigned char *)SKB_DATA, skb->len)) { |
| skb | 1094 | drivers/net/3c505.c | printk("%s: packet of length %d sent\n", dev->name, (int)skb->len); |
| skb | 1111 | drivers/net/3c505.c | if (skb->free) |
| skb | 1113 | drivers/net/3c505.c | IS_SKB(skb); |
| skb | 1114 | drivers/net/3c505.c | kfree_skb(skb, FREE_WRITE); |
| skb | 1117 | drivers/net/3c505.c | dev_kfree_skb(skb, FREE_WRITE); |
| skb | 284 | drivers/net/3c507.c | static int el16_send_packet(struct sk_buff *skb, struct device *dev); |
| skb | 447 | drivers/net/3c507.c | el16_send_packet(struct sk_buff *skb, struct device *dev) |
| skb | 482 | drivers/net/3c507.c | if (skb == NULL) { |
| skb | 491 | drivers/net/3c507.c | short length = ETH_ZLEN < skb->len ? skb->len : ETH_ZLEN; |
| skb | 492 | drivers/net/3c507.c | unsigned char *buf = skb->data; |
| skb | 502 | drivers/net/3c507.c | dev_kfree_skb (skb, FREE_WRITE); |
| skb | 836 | drivers/net/3c507.c | struct sk_buff *skb; |
| skb | 839 | drivers/net/3c507.c | skb = alloc_skb(pkt_len, GFP_ATOMIC); |
| skb | 840 | drivers/net/3c507.c | if (skb == NULL) { |
| skb | 845 | drivers/net/3c507.c | skb->len = pkt_len; |
| skb | 846 | drivers/net/3c507.c | skb->dev = dev; |
| skb | 849 | drivers/net/3c507.c | memcpy(skb->data, data_frame + 5, pkt_len); |
| skb | 851 | drivers/net/3c507.c | netif_rx(skb); |
| skb | 104 | drivers/net/3c509.c | static int el3_start_xmit(struct sk_buff *skb, struct device *dev); |
| skb | 378 | drivers/net/3c509.c | el3_start_xmit(struct sk_buff *skb, struct device *dev) |
| skb | 397 | drivers/net/3c509.c | if (skb == NULL) { |
| skb | 402 | drivers/net/3c509.c | if (skb->len <= 0) |
| skb | 407 | drivers/net/3c509.c | dev->name, skb->len, inw(ioaddr + EL3_STATUS)); |
| skb | 431 | drivers/net/3c509.c | outw(skb->len, ioaddr + TX_FIFO); |
| skb | 434 | drivers/net/3c509.c | outsl(ioaddr + TX_FIFO, skb->data, (skb->len + 3) >> 2); |
| skb | 444 | drivers/net/3c509.c | dev_kfree_skb (skb, FREE_WRITE); |
| skb | 593 | drivers/net/3c509.c | struct sk_buff *skb; |
| skb | 595 | drivers/net/3c509.c | skb = alloc_skb(pkt_len+3, GFP_ATOMIC); |
| skb | 599 | drivers/net/3c509.c | if (skb != NULL) { |
| skb | 600 | drivers/net/3c509.c | skb->len = pkt_len; |
| skb | 601 | drivers/net/3c509.c | skb->dev = dev; |
| skb | 604 | drivers/net/3c509.c | insl(ioaddr+RX_FIFO, skb->data, |
| skb | 607 | drivers/net/3c509.c | netif_rx(skb); |
| skb | 124 | drivers/net/8390.c | static int ei_start_xmit(struct sk_buff *skb, struct device *dev) |
| skb | 162 | drivers/net/8390.c | if (skb == NULL) { |
| skb | 167 | drivers/net/8390.c | length = skb->len; |
| skb | 168 | drivers/net/8390.c | if (skb->len <= 0) |
| skb | 208 | drivers/net/8390.c | ei_block_output(dev, length, skb->data, output_page); |
| skb | 222 | drivers/net/8390.c | ei_block_output(dev, length, skb->data, ei_local->tx_start_page); |
| skb | 232 | drivers/net/8390.c | dev_kfree_skb (skb, FREE_WRITE); |
| skb | 441 | drivers/net/8390.c | struct sk_buff *skb; |
| skb | 443 | drivers/net/8390.c | skb = alloc_skb(pkt_len, GFP_ATOMIC); |
| skb | 444 | drivers/net/8390.c | if (skb == NULL) { |
| skb | 451 | drivers/net/8390.c | skb->len = pkt_len; |
| skb | 452 | drivers/net/8390.c | skb->dev = dev; |
| skb | 454 | drivers/net/8390.c | ei_block_input(dev, pkt_len, (char *) skb->data, |
| skb | 456 | drivers/net/8390.c | netif_rx(skb); |
| skb | 186 | drivers/net/apricot.c | static int i596_start_xmit(struct sk_buff *skb, struct device *dev); |
| skb | 324 | drivers/net/apricot.c | struct sk_buff *skb = alloc_skb(pkt_len, GFP_ATOMIC); |
| skb | 328 | drivers/net/apricot.c | if (skb == NULL) |
| skb | 335 | drivers/net/apricot.c | skb->len = pkt_len; |
| skb | 336 | drivers/net/apricot.c | skb->dev=dev; |
| skb | 337 | drivers/net/apricot.c | memcpy(skb->data, lp->scb.rfd->data, pkt_len); |
| skb | 339 | drivers/net/apricot.c | netif_rx(skb); |
| skb | 342 | drivers/net/apricot.c | if (i596_debug > 4) print_eth(skb->data); |
| skb | 390 | drivers/net/apricot.c | struct sk_buff *skb = ((struct sk_buff *)(tx_cmd->tbd->data)) -1; |
| skb | 392 | drivers/net/apricot.c | dev_kfree_skb(skb, FREE_WRITE); |
| skb | 540 | drivers/net/apricot.c | i596_start_xmit(struct sk_buff *skb, struct device *dev) |
| skb | 578 | drivers/net/apricot.c | if (skb == NULL) { |
| skb | 584 | drivers/net/apricot.c | if (skb->len <= 0) return 0; |
| skb | 594 | drivers/net/apricot.c | short length = ETH_ZLEN < skb->len ? skb->len : ETH_ZLEN; |
| skb | 603 | drivers/net/apricot.c | dev_kfree_skb(skb, FREE_WRITE); |
| skb | 617 | drivers/net/apricot.c | tx_cmd->tbd->data = skb->data; |
| skb | 619 | drivers/net/apricot.c | if (i596_debug > 3) print_eth(skb->data); |
| skb | 772 | drivers/net/apricot.c | struct sk_buff *skb = ((struct sk_buff *)(tx_cmd->tbd->data)) -1; |
| skb | 774 | drivers/net/apricot.c | dev_kfree_skb(skb, FREE_WRITE); |
| skb | 778 | drivers/net/apricot.c | if (i596_debug >2) print_eth(skb->data); |
| skb | 122 | drivers/net/at1700.c | static int net_send_packet(struct sk_buff *skb, struct device *dev); |
| skb | 362 | drivers/net/at1700.c | net_send_packet(struct sk_buff *skb, struct device *dev) |
| skb | 393 | drivers/net/at1700.c | if (skb == NULL) { |
| skb | 403 | drivers/net/at1700.c | short length = ETH_ZLEN < skb->len ? skb->len : ETH_ZLEN; |
| skb | 404 | drivers/net/at1700.c | unsigned char *buf = skb->data; |
| skb | 430 | drivers/net/at1700.c | dev_kfree_skb (skb, FREE_WRITE); |
| skb | 516 | drivers/net/at1700.c | struct sk_buff *skb; |
| skb | 525 | drivers/net/at1700.c | skb = alloc_skb(pkt_len+1, GFP_ATOMIC); |
| skb | 526 | drivers/net/at1700.c | if (skb == NULL) { |
| skb | 533 | drivers/net/at1700.c | skb->len = pkt_len; |
| skb | 534 | drivers/net/at1700.c | skb->dev = dev; |
| skb | 536 | drivers/net/at1700.c | insw(ioaddr + DATAPORT, skb->data, (pkt_len + 1) >> 1); |
| skb | 542 | drivers/net/at1700.c | printk(" %02x", skb->data[i]); |
| skb | 546 | drivers/net/at1700.c | netif_rx(skb); |
| skb | 140 | drivers/net/atp.c | static int net_send_packet(struct sk_buff *skb, struct device *dev); |
| skb | 411 | drivers/net/atp.c | net_send_packet(struct sk_buff *skb, struct device *dev) |
| skb | 435 | drivers/net/atp.c | if (skb == NULL) { |
| skb | 445 | drivers/net/atp.c | short length = ETH_ZLEN < skb->len ? skb->len : ETH_ZLEN; |
| skb | 446 | drivers/net/atp.c | unsigned char *buf = skb->data; |
| skb | 474 | drivers/net/atp.c | dev_kfree_skb (skb, FREE_WRITE); |
| skb | 629 | drivers/net/atp.c | struct sk_buff *skb; |
| skb | 631 | drivers/net/atp.c | skb = alloc_skb(pkt_len, GFP_ATOMIC); |
| skb | 632 | drivers/net/atp.c | if (skb == NULL) { |
| skb | 637 | drivers/net/atp.c | skb->len = pkt_len; |
| skb | 638 | drivers/net/atp.c | skb->dev = dev; |
| skb | 640 | drivers/net/atp.c | read_block(ioaddr, pkt_len, skb->data, dev->if_port); |
| skb | 643 | drivers/net/atp.c | unsigned char *data = skb->data; |
| skb | 651 | drivers/net/atp.c | netif_rx(skb); |
| skb | 250 | drivers/net/de600.c | static int de600_start_xmit(struct sk_buff *skb, struct device *dev); |
| skb | 405 | drivers/net/de600.c | de600_start_xmit(struct sk_buff *skb, struct device *dev) |
| skb | 410 | drivers/net/de600.c | byte *buffer = skb->data; |
| skb | 418 | drivers/net/de600.c | if (skb == NULL) { |
| skb | 442 | drivers/net/de600.c | PRINTK(("de600_start_xmit:len=%d, page %d/%d\n", skb->len, tx_fifo_in, free_tx_pages)); |
| skb | 444 | drivers/net/de600.c | if ((len = skb->len) < RUNT) |
| skb | 484 | drivers/net/de600.c | if (skb->sk && (skb->sk->protocol == IPPROTO_TCP) && |
| skb | 485 | drivers/net/de600.c | (skb->sk->prot->rspace != &de600_rspace)) |
| skb | 486 | drivers/net/de600.c | skb->sk->prot->rspace = de600_rspace; /* Ugh! */ |
| skb | 489 | drivers/net/de600.c | dev_kfree_skb (skb, FREE_WRITE); |
| skb | 589 | drivers/net/de600.c | struct sk_buff *skb; |
| skb | 614 | drivers/net/de600.c | skb = alloc_skb(size, GFP_ATOMIC); |
| skb | 616 | drivers/net/de600.c | if (skb == NULL) { |
| skb | 623 | drivers/net/de600.c | skb->lock = 0; |
| skb | 625 | drivers/net/de600.c | buffer = skb->data; |
| skb | 634 | drivers/net/de600.c | if (dev_rint((unsigned char *)skb, size, IN_SKBUFF, dev)) |
| skb | 479 | drivers/net/de620.c | de620_start_xmit(struct sk_buff *skb, struct device *dev) |
| skb | 484 | drivers/net/de620.c | byte *buffer = skb->data; |
| skb | 493 | drivers/net/de620.c | if (skb == NULL) { |
| skb | 518 | drivers/net/de620.c | if ((len = skb->len) < RUNT) |
| skb | 528 | drivers/net/de620.c | (int)skb->len, using_txbuf)); |
| skb | 558 | drivers/net/de620.c | dev_kfree_skb (skb, FREE_WRITE); |
| skb | 621 | drivers/net/de620.c | struct sk_buff *skb; |
| skb | 676 | drivers/net/de620.c | skb = alloc_skb(size, GFP_ATOMIC); |
| skb | 677 | drivers/net/de620.c | if (skb == NULL) { /* Yeah, but no place to put it... */ |
| skb | 683 | drivers/net/de620.c | skb->len = size; skb->dev = dev; skb->free = 1; |
| skb | 685 | drivers/net/de620.c | buffer = skb->data; |
| skb | 689 | drivers/net/de620.c | netif_rx(skb); /* deliver it "upstairs" */ |
| skb | 314 | drivers/net/depca.c | static int depca_start_xmit(struct sk_buff *skb, struct device *dev); |
| skb | 799 | drivers/net/depca.c | depca_start_xmit(struct sk_buff *skb, struct device *dev) |
| skb | 824 | drivers/net/depca.c | if (skb == NULL) { |
| skb | 829 | drivers/net/depca.c | if (skb->len <= 0) { |
| skb | 853 | drivers/net/depca.c | long skbL = skb->len; |
| skb | 854 | drivers/net/depca.c | char *p = (char *) skb->data; |
| skb | 876 | drivers/net/depca.c | memcpy((unsigned char *)(buf), skb->data, len); |
| skb | 901 | drivers/net/depca.c | memcpy((unsigned char *)buf, skb->data, PKT_HDR_LEN); |
| skb | 939 | drivers/net/depca.c | dev_kfree_skb (skb, FREE_WRITE); |
| skb | 1048 | drivers/net/depca.c | struct sk_buff *skb; |
| skb | 1050 | drivers/net/depca.c | skb = alloc_skb(pkt_len, GFP_ATOMIC); |
| skb | 1051 | drivers/net/depca.c | if (skb == NULL) { |
| skb | 1056 | drivers/net/depca.c | skb->len = pkt_len; |
| skb | 1057 | drivers/net/depca.c | skb->dev = dev; |
| skb | 1058 | drivers/net/depca.c | memcpy(skb->data, |
| skb | 1066 | drivers/net/depca.c | netif_rx(skb); |
| skb | 55 | drivers/net/dummy.c | static int dummy_xmit(struct sk_buff *skb, struct device *dev); |
| skb | 83 | drivers/net/dummy.c | dummy_xmit(struct sk_buff *skb, struct device *dev) |
| skb | 89 | drivers/net/dummy.c | if (skb == NULL || dev == NULL) |
| skb | 92 | drivers/net/dummy.c | dev_kfree_skb(skb, FREE_WRITE); |
| skb | 285 | drivers/net/eexpress.c | static int eexp_send_packet(struct sk_buff *skb, struct device *dev); |
| skb | 442 | drivers/net/eexpress.c | eexp_send_packet(struct sk_buff *skb, struct device *dev) |
| skb | 477 | drivers/net/eexpress.c | if (skb == NULL) { |
| skb | 486 | drivers/net/eexpress.c | short length = ETH_ZLEN < skb->len ? skb->len : ETH_ZLEN; |
| skb | 487 | drivers/net/eexpress.c | unsigned char *buf = skb->data; |
| skb | 497 | drivers/net/eexpress.c | dev_kfree_skb (skb, FREE_WRITE); |
| skb | 923 | drivers/net/eexpress.c | struct sk_buff *skb; |
| skb | 926 | drivers/net/eexpress.c | skb = alloc_skb(pkt_len, GFP_ATOMIC); |
| skb | 927 | drivers/net/eexpress.c | if (skb == NULL) { |
| skb | 932 | drivers/net/eexpress.c | skb->len = pkt_len; |
| skb | 933 | drivers/net/eexpress.c | skb->dev = dev; |
| skb | 937 | drivers/net/eexpress.c | insw(ioaddr, skb->data, (pkt_len + 1) >> 1); |
| skb | 939 | drivers/net/eexpress.c | netif_rx(skb); |
| skb | 289 | drivers/net/ewrk3.c | static int ewrk3_queue_pkt(struct sk_buff *skb, struct device *dev); |
| skb | 745 | drivers/net/ewrk3.c | ewrk3_queue_pkt(struct sk_buff *skb, struct device *dev) |
| skb | 781 | drivers/net/ewrk3.c | } else if (skb == NULL) { |
| skb | 783 | drivers/net/ewrk3.c | } else if (skb->len > 0) { |
| skb | 833 | drivers/net/ewrk3.c | unsigned char *p = skb->data; |
| skb | 836 | drivers/net/ewrk3.c | outb((char)(skb->len & 0xff), EWRK3_DATA); |
| skb | 837 | drivers/net/ewrk3.c | outb((char)((skb->len >> 8) & 0xff), EWRK3_DATA); |
| skb | 839 | drivers/net/ewrk3.c | for (i=0; i<skb->len; i++) { |
| skb | 845 | drivers/net/ewrk3.c | *buf++ = (char)(skb->len & 0xff); /* length (16 bit xfer)*/ |
| skb | 847 | drivers/net/ewrk3.c | *buf++ = (char)(((skb->len >> 8) & 0xff) | XCT); |
| skb | 849 | drivers/net/ewrk3.c | *(buf + skb->len) = 0x00; /* Write the XCT flag */ |
| skb | 850 | drivers/net/ewrk3.c | memcpy(buf, skb->data, PRELOAD); /* Write PRELOAD bytes */ |
| skb | 852 | drivers/net/ewrk3.c | memcpy(buf + PRELOAD, skb->data + PRELOAD, skb->len - PRELOAD); |
| skb | 853 | drivers/net/ewrk3.c | *(buf + skb->len) = 0xff; /* Write the XCT flag */ |
| skb | 855 | drivers/net/ewrk3.c | *buf++ = (char)((skb->len >> 8) & 0xff); |
| skb | 857 | drivers/net/ewrk3.c | memcpy(buf, skb->data, skb->len); /* Write data bytes */ |
| skb | 864 | drivers/net/ewrk3.c | dev_kfree_skb (skb, FREE_WRITE); |
| skb | 1022 | drivers/net/ewrk3.c | struct sk_buff *skb; |
| skb | 1024 | drivers/net/ewrk3.c | if ((skb = alloc_skb(pkt_len, GFP_ATOMIC)) != NULL) { |
| skb | 1025 | drivers/net/ewrk3.c | skb->len = pkt_len; |
| skb | 1026 | drivers/net/ewrk3.c | skb->dev = dev; |
| skb | 1029 | drivers/net/ewrk3.c | unsigned char *p = skb->data; |
| skb | 1032 | drivers/net/ewrk3.c | for (i=0; i<skb->len; i++) { |
| skb | 1036 | drivers/net/ewrk3.c | memcpy(skb->data, buf, pkt_len); |
| skb | 1043 | drivers/net/ewrk3.c | netif_rx(skb); |
| skb | 1055 | drivers/net/ewrk3.c | buf = skb->data; /* Look at the dest addr */ |
| skb | 229 | drivers/net/lance.c | static int lance_start_xmit(struct sk_buff *skb, struct device *dev); |
| skb | 590 | drivers/net/lance.c | lance_start_xmit(struct sk_buff *skb, struct device *dev) |
| skb | 632 | drivers/net/lance.c | if (skb == NULL) { |
| skb | 637 | drivers/net/lance.c | if (skb->len <= 0) |
| skb | 672 | drivers/net/lance.c | -(ETH_ZLEN < skb->len ? skb->len : ETH_ZLEN); |
| skb | 674 | drivers/net/lance.c | lp->tx_ring[entry].length = -skb->len; |
| skb | 680 | drivers/net/lance.c | if ((int)(skb->data) + skb->len > 0x01000000) { |
| skb | 683 | drivers/net/lance.c | dev->name, (int)(skb->data)); |
| skb | 684 | drivers/net/lance.c | memcpy(&lp->tx_bounce_buffs[entry], skb->data, skb->len); |
| skb | 687 | drivers/net/lance.c | dev_kfree_skb (skb, FREE_WRITE); |
| skb | 689 | drivers/net/lance.c | lp->tx_skbuff[entry] = skb; |
| skb | 690 | drivers/net/lance.c | lp->tx_ring[entry].base = (int)(skb->data) | 0x83000000; |
| skb | 857 | drivers/net/lance.c | struct sk_buff *skb; |
| skb | 859 | drivers/net/lance.c | skb = alloc_skb(pkt_len, GFP_ATOMIC); |
| skb | 860 | drivers/net/lance.c | if (skb == NULL) { |
| skb | 873 | drivers/net/lance.c | skb->len = pkt_len; |
| skb | 874 | drivers/net/lance.c | skb->dev = dev; |
| skb | 875 | drivers/net/lance.c | memcpy(skb->data, |
| skb | 878 | drivers/net/lance.c | netif_rx(skb); |
| skb | 44 | drivers/net/loopback.c | loopback_xmit(struct sk_buff *skb, struct device *dev) |
| skb | 49 | drivers/net/loopback.c | if (skb == NULL || dev == NULL) return(0); |
| skb | 63 | drivers/net/loopback.c | done = dev_rint(skb->data, skb->len, 0, dev); |
| skb | 64 | drivers/net/loopback.c | dev_kfree_skb(skb, FREE_WRITE); |
| skb | 810 | drivers/net/ni52.c | struct sk_buff *skb; |
| skb | 867 | drivers/net/ni52.c | skb = (struct sk_buff *) alloc_skb(totlen, GFP_ATOMIC); |
| skb | 869 | drivers/net/ni52.c | if (skb != NULL) /* copy header */ |
| skb | 871 | drivers/net/ni52.c | skb->len = totlen; |
| skb | 872 | drivers/net/ni52.c | skb->dev = dev; |
| skb | 877 | drivers/net/ni52.c | memcpy( (char *) skb->data,p->max_cbuff32-pnt,pnt); |
| skb | 878 | drivers/net/ni52.c | memcpy( (char *) skb->data+pnt,p->min_cbuff32,totlen-pnt); |
| skb | 881 | drivers/net/ni52.c | memcpy( (char *) skb->data,(char *) p->base+(unsigned long) rbd_first->buffer, totlen); |
| skb | 887 | drivers/net/ni52.c | netif_rx(skb); |
| skb | 999 | drivers/net/ni52.c | static int ni52_send_packet(struct sk_buff *skb, struct device *dev) |
| skb | 1024 | drivers/net/ni52.c | if(skb == NULL) |
| skb | 1030 | drivers/net/ni52.c | if (skb->len <= 0) |
| skb | 1037 | drivers/net/ni52.c | memcpy((char *)p->xmit_cbuffs[p->xmit_count],(char *)(skb->data),skb->len); |
| skb | 1038 | drivers/net/ni52.c | len = (ETH_ZLEN < skb->len) ? skb->len : ETH_ZLEN; |
| skb | 1089 | drivers/net/ni52.c | dev_kfree_skb(skb,FREE_WRITE); |
| skb | 121 | drivers/net/ni65.c | static int ni65_send_packet(struct sk_buff *skb, struct device *dev); |
| skb | 454 | drivers/net/ni65.c | struct sk_buff *skb; |
| skb | 464 | drivers/net/ni65.c | skb = (struct sk_buff *) p->tmdbufs[p->tmdlast]; |
| skb | 465 | drivers/net/ni65.c | dev_kfree_skb(skb,FREE_WRITE); |
| skb | 502 | drivers/net/ni65.c | struct sk_buff *skb,*skb1; |
| skb | 531 | drivers/net/ni65.c | skb = alloc_skb(R_BUF_SIZE,GFP_ATOMIC); |
| skb | 532 | drivers/net/ni65.c | if(skb != NULL) |
| skb | 534 | drivers/net/ni65.c | if( (unsigned long) (skb->data + R_BUF_SIZE) & 0xff000000) { |
| skb | 535 | drivers/net/ni65.c | memcpy(skb->data,p->recv_skb[p->rmdnum]->data,len); |
| skb | 536 | drivers/net/ni65.c | skb1 = skb; |
| skb | 540 | drivers/net/ni65.c | p->recv_skb[p->rmdnum] = skb; |
| skb | 541 | drivers/net/ni65.c | rmdp->u.buffer = (unsigned long) (skb->data); |
| skb | 566 | drivers/net/ni65.c | static int ni65_send_packet(struct sk_buff *skb, struct device *dev) |
| skb | 583 | drivers/net/ni65.c | if(skb == NULL) |
| skb | 589 | drivers/net/ni65.c | if (skb->len <= 0) |
| skb | 604 | drivers/net/ni65.c | short len = ETH_ZLEN < skb->len ? skb->len : ETH_ZLEN; |
| skb | 609 | drivers/net/ni65.c | tmdp->u.buffer = (unsigned long) (skb->data); |
| skb | 610 | drivers/net/ni65.c | p->tmdbufs[p->tmdnum] = skb; |
| skb | 612 | drivers/net/ni65.c | memcpy((char *) (tmdp->u.buffer & 0x00ffffff),(char *)skb->data,skb->len); |
| skb | 613 | drivers/net/ni65.c | dev_kfree_skb (skb, FREE_WRITE); |
| skb | 121 | drivers/net/plip.c | static int plip_tx_packet(struct sk_buff *skb, struct device *dev); |
| skb | 126 | drivers/net/plip.c | void *source, unsigned len, struct sk_buff *skb); |
| skb | 129 | drivers/net/plip.c | unsigned long raddr, struct sk_buff *skb); |
| skb | 166 | drivers/net/plip.c | struct sk_buff *skb; |
| skb | 278 | drivers/net/plip.c | plip_tx_packet (struct sk_buff *skb, struct device *dev) |
| skb | 297 | drivers/net/plip.c | if (skb == NULL) { |
| skb | 319 | drivers/net/plip.c | if (skb->len > dev->mtu) { |
| skb | 320 | drivers/net/plip.c | printk("%s: packet too big, %d.\n", dev->name, (int)skb->len); |
| skb | 324 | drivers/net/plip.c | snd->skb = skb; |
| skb | 325 | drivers/net/plip.c | snd->length = skb->len; |
| skb | 356 | drivers/net/plip.c | rcv->skb = alloc_skb(dev->mtu, GFP_KERNEL); |
| skb | 357 | drivers/net/plip.c | if (rcv->skb == NULL) { |
| skb | 361 | drivers/net/plip.c | rcv->skb->len = dev->mtu; |
| skb | 362 | drivers/net/plip.c | rcv->skb->dev = dev; |
| skb | 408 | drivers/net/plip.c | void *saddr, unsigned len, struct sk_buff *skb) |
| skb | 418 | drivers/net/plip.c | return eth_header(buff, dev, type, daddr, saddr, len, skb); |
| skb | 431 | drivers/net/plip.c | struct sk_buff *skb) |
| skb | 478 | drivers/net/plip.c | if (rcv->skb == NULL) { |
| skb | 479 | drivers/net/plip.c | rcv->skb = alloc_skb(dev->mtu, GFP_ATOMIC); |
| skb | 480 | drivers/net/plip.c | if (rcv->skb == NULL) { |
| skb | 484 | drivers/net/plip.c | rcv->skb->len = dev->mtu; |
| skb | 485 | drivers/net/plip.c | rcv->skb->dev = dev; |
| skb | 565 | drivers/net/plip.c | unsigned char *lbuf = rcv->skb->data; |
| skb | 593 | drivers/net/plip.c | if (rcv->length > rcv->skb->len || rcv->length < 8) { |
| skb | 598 | drivers/net/plip.c | rcv->skb->len = rcv->length; |
| skb | 628 | drivers/net/plip.c | netif_rx(rcv->skb); |
| skb | 631 | drivers/net/plip.c | rcv->skb = alloc_skb(dev->mtu, GFP_ATOMIC); |
| skb | 632 | drivers/net/plip.c | if (rcv->skb == NULL) { |
| skb | 637 | drivers/net/plip.c | rcv->skb->len = dev->mtu; |
| skb | 638 | drivers/net/plip.c | rcv->skb->dev = dev; |
| skb | 809 | drivers/net/plip.c | unsigned char *lbuf = snd->skb->data; |
| skb | 890 | drivers/net/plip.c | dev_kfree_skb(snd->skb, FREE_WRITE); |
| skb | 911 | drivers/net/plip.c | dev_kfree_skb(snd->skb,FREE_WRITE); |
| skb | 120 | drivers/net/ppp.c | static void ppp_add_arp(unsigned long addr, struct sk_buff *skb, |
| skb | 1677 | drivers/net/ppp.c | ppp_xmit(struct sk_buff *skb, struct device *dev) |
| skb | 1686 | drivers/net/ppp.c | if (skb == NULL) { |
| skb | 1694 | drivers/net/ppp.c | p = (unsigned char *) (skb + 1); |
| skb | 1695 | drivers/net/ppp.c | len = skb->len; |
| skb | 1699 | drivers/net/ppp.c | (unsigned long int) skb, ppp->sending)); |
| skb | 1720 | drivers/net/ppp.c | len = ntohs( ((struct iphdr *)(skb->data)) -> tot_len ); |
| skb | 1761 | drivers/net/ppp.c | struct iphdr *iph = (struct iphdr *) (skb + 1); |
| skb | 1808 | drivers/net/ppp.c | dev_kfree_skb(skb, FREE_WRITE); |
| skb | 1813 | drivers/net/ppp.c | ppp_type_trans (struct sk_buff *skb, struct device *dev) |
| skb | 1833 | drivers/net/ppp.c | ppp_add_arp(unsigned long addr, struct sk_buff *skb, struct device *dev) |
| skb | 1841 | drivers/net/ppp.c | void *daddr, void *saddr, unsigned len, struct sk_buff *skb) |
| skb | 1848 | drivers/net/ppp.c | struct sk_buff *skb) |
| skb | 490 | drivers/net/sk_g16.c | static int SK_send_packet(struct sk_buff *skb, struct device *dev); |
| skb | 1194 | drivers/net/sk_g16.c | static int SK_send_packet(struct sk_buff *skb, struct device *dev) |
| skb | 1225 | drivers/net/sk_g16.c | if (skb == NULL) |
| skb | 1251 | drivers/net/sk_g16.c | short len = ETH_ZLEN < skb->len ? skb->len : ETH_ZLEN; |
| skb | 1259 | drivers/net/sk_g16.c | memcpy((char *) (tmdp->u.buffer & 0x00ffffff), (char *)skb->data, |
| skb | 1260 | drivers/net/sk_g16.c | skb->len); |
| skb | 1291 | drivers/net/sk_g16.c | dev_kfree_skb(skb, FREE_WRITE); |
| skb | 1573 | drivers/net/sk_g16.c | struct sk_buff *skb; |
| skb | 1575 | drivers/net/sk_g16.c | skb = alloc_skb(len, GFP_ATOMIC); /* allocate socket buffer */ |
| skb | 1577 | drivers/net/sk_g16.c | if (skb == NULL) /* Could not get mem ? */ |
| skb | 1595 | drivers/net/sk_g16.c | skb->len = len; |
| skb | 1596 | drivers/net/sk_g16.c | skb->dev = dev; |
| skb | 1605 | drivers/net/sk_g16.c | memcpy(skb->data, (unsigned char *) (rmdp->u.buffer & 0x00ffffff), |
| skb | 1616 | drivers/net/sk_g16.c | netif_rx(skb); /* queue packet and mark it for processing */ |
| skb | 99 | drivers/net/skeleton.c | static int net_send_packet(struct sk_buff *skb, struct device *dev); |
| skb | 308 | drivers/net/skeleton.c | net_send_packet(struct sk_buff *skb, struct device *dev) |
| skb | 330 | drivers/net/skeleton.c | if (skb == NULL) { |
| skb | 340 | drivers/net/skeleton.c | short length = ETH_ZLEN < skb->len ? skb->len : ETH_ZLEN; |
| skb | 341 | drivers/net/skeleton.c | unsigned char *buf = skb->data; |
| skb | 346 | drivers/net/skeleton.c | dev_kfree_skb (skb, FREE_WRITE); |
| skb | 418 | drivers/net/skeleton.c | struct sk_buff *skb; |
| skb | 420 | drivers/net/skeleton.c | skb = alloc_skb(pkt_len, GFP_ATOMIC); |
| skb | 421 | drivers/net/skeleton.c | if (skb == NULL) { |
| skb | 426 | drivers/net/skeleton.c | skb->len = pkt_len; |
| skb | 427 | drivers/net/skeleton.c | skb->dev = dev; |
| skb | 430 | drivers/net/skeleton.c | memcpy(skb->data, (void*)dev->rmem_start, |
| skb | 433 | drivers/net/skeleton.c | insw(ioaddr, skb->data, (pkt_len + 1) >> 1); |
| skb | 435 | drivers/net/skeleton.c | netif_rx(skb); |
| skb | 459 | drivers/net/slip.c | sl_xmit(struct sk_buff *skb, struct device *dev) |
| skb | 480 | drivers/net/slip.c | if (skb != NULL) { |
| skb | 483 | drivers/net/slip.c | size=skb->len; |
| skb | 484 | drivers/net/slip.c | sl_encaps(sl, skb->data, size); |
| skb | 485 | drivers/net/slip.c | dev_kfree_skb(skb, FREE_WRITE); |
| skb | 493 | drivers/net/slip.c | sl_type_trans (struct sk_buff *skb, struct device *dev) |
| skb | 507 | drivers/net/slip.c | void *daddr, void *saddr, unsigned len, struct sk_buff *skb) |
| skb | 513 | drivers/net/slip.c | return ax25_encapsulate(buff,dev,type,daddr,saddr,len,skb); |
| skb | 524 | drivers/net/slip.c | struct sk_buff *skb) |
| skb | 531 | drivers/net/slip.c | return ax25_rebuild_header(buff,dev,raddr, skb); |
| skb | 185 | drivers/net/znet.c | static int znet_send_packet(struct sk_buff *skb, struct device *dev); |
| skb | 318 | drivers/net/znet.c | static int znet_send_packet(struct sk_buff *skb, struct device *dev) |
| skb | 344 | drivers/net/znet.c | if (skb == NULL) { |
| skb | 361 | drivers/net/znet.c | short length = ETH_ZLEN < skb->len ? skb->len : ETH_ZLEN; |
| skb | 362 | drivers/net/znet.c | unsigned char *buf = (void *)(skb+1); |
| skb | 387 | drivers/net/znet.c | memcpy(zn.tx_cur, buf, skb->len); |
| skb | 401 | drivers/net/znet.c | dev_kfree_skb(skb, FREE_WRITE); |
| skb | 552 | drivers/net/znet.c | struct sk_buff *skb; |
| skb | 554 | drivers/net/znet.c | skb = alloc_skb(sksize, GFP_ATOMIC); |
| skb | 555 | drivers/net/znet.c | if (skb == NULL) { |
| skb | 561 | drivers/net/znet.c | skb->mem_len = sksize; |
| skb | 562 | drivers/net/znet.c | skb->mem_addr = skb; |
| skb | 563 | drivers/net/znet.c | skb->len = pkt_len; |
| skb | 564 | drivers/net/znet.c | skb->dev = dev; |
| skb | 568 | drivers/net/znet.c | memcpy((unsigned char *) (skb + 1), zn.rx_cur, semi_cnt); |
| skb | 569 | drivers/net/znet.c | memcpy((unsigned char *) (skb + 1) + semi_cnt, zn.rx_start, |
| skb | 572 | drivers/net/znet.c | memcpy((unsigned char *) (skb + 1), zn.rx_cur, pkt_len); |
| skb | 574 | drivers/net/znet.c | unsigned int *packet = (unsigned int *) (skb + 1); |
| skb | 581 | drivers/net/znet.c | netif_rx(skb); |
| skb | 583 | drivers/net/znet.c | skb->lock = 0; |
| skb | 584 | drivers/net/znet.c | if (dev_rint((unsigned char*)skb, pkt_len, IN_SKBUFF, dev) != 0) { |
| skb | 585 | drivers/net/znet.c | kfree_s(skb, sksize); |
| skb | 34 | include/linux/etherdevice.h | struct sk_buff *skb); |
| skb | 36 | include/linux/etherdevice.h | unsigned long raddr, struct sk_buff *skb); |
| skb | 37 | include/linux/etherdevice.h | extern unsigned short eth_type_trans(struct sk_buff *skb, struct device *dev); |
| skb | 123 | include/linux/netdevice.h | int (*hard_start_xmit) (struct sk_buff *skb, |
| skb | 131 | include/linux/netdevice.h | struct sk_buff *skb); |
| skb | 133 | include/linux/netdevice.h | unsigned long raddr, struct sk_buff *skb); |
| skb | 134 | include/linux/netdevice.h | unsigned short (*type_trans) (struct sk_buff *skb, |
| skb | 181 | include/linux/netdevice.h | extern void dev_queue_xmit(struct sk_buff *skb, struct device *dev, |
| skb | 184 | include/linux/netdevice.h | extern void netif_rx(struct sk_buff *skb); |
| skb | 101 | include/linux/skbuff.h | extern void kfree_skb(struct sk_buff *skb, int rw); |
| skb | 111 | include/linux/skbuff.h | extern void kfree_skbmem(struct sk_buff *skb, unsigned size); |
| skb | 112 | include/linux/skbuff.h | extern struct sk_buff * skb_clone(struct sk_buff *skb, int priority); |
| skb | 113 | include/linux/skbuff.h | extern void skb_device_lock(struct sk_buff *skb); |
| skb | 114 | include/linux/skbuff.h | extern void skb_device_unlock(struct sk_buff *skb); |
| skb | 115 | include/linux/skbuff.h | extern void dev_kfree_skb(struct sk_buff *skb, int mode); |
| skb | 116 | include/linux/skbuff.h | extern int skb_device_locked(struct sk_buff *skb); |
| skb | 130 | include/linux/skbuff.h | extern int skb_check(struct sk_buff *skb,int,int, char *); |
| skb | 131 | include/linux/skbuff.h | #define IS_SKB(skb) skb_check((skb), 0, __LINE__,__FILE__) |
| skb | 132 | include/linux/skbuff.h | #define IS_SKB_HEAD(skb) skb_check((skb), 1, __LINE__,__FILE__) |
| skb | 134 | include/linux/skbuff.h | #define IS_SKB(skb) 0 |
| skb | 135 | include/linux/skbuff.h | #define IS_SKB_HEAD(skb) 0 |
| skb | 141 | include/linux/skbuff.h | extern void skb_free_datagram(struct sk_buff *skb); |
| skb | 246 | net/inet/af_inet.c | struct sk_buff *skb; |
| skb | 259 | net/inet/af_inet.c | while ((skb = tcp_dequeue_partial(sk)) != NULL) { |
| skb | 260 | net/inet/af_inet.c | IS_SKB(skb); |
| skb | 261 | net/inet/af_inet.c | kfree_skb(skb, FREE_WRITE); |
| skb | 265 | net/inet/af_inet.c | while((skb = skb_dequeue(&sk->write_queue)) != NULL) { |
| skb | 266 | net/inet/af_inet.c | IS_SKB(skb); |
| skb | 267 | net/inet/af_inet.c | kfree_skb(skb, FREE_WRITE); |
| skb | 277 | net/inet/af_inet.c | while((skb=skb_dequeue(&sk->receive_queue))!=NULL) |
| skb | 283 | net/inet/af_inet.c | if (skb->sk != NULL && skb->sk != sk) |
| skb | 285 | net/inet/af_inet.c | IS_SKB(skb); |
| skb | 286 | net/inet/af_inet.c | skb->sk->dead = 1; |
| skb | 287 | net/inet/af_inet.c | skb->sk->prot->close(skb->sk, 0); |
| skb | 289 | net/inet/af_inet.c | IS_SKB(skb); |
| skb | 290 | net/inet/af_inet.c | kfree_skb(skb, FREE_READ); |
| skb | 296 | net/inet/af_inet.c | for(skb = sk->send_head; skb != NULL; ) |
| skb | 304 | net/inet/af_inet.c | if (skb->next && skb->prev) { |
| skb | 306 | net/inet/af_inet.c | IS_SKB(skb); |
| skb | 307 | net/inet/af_inet.c | skb_unlink(skb); |
| skb | 309 | net/inet/af_inet.c | skb->dev = NULL; |
| skb | 310 | net/inet/af_inet.c | skb2 = skb->link3; |
| skb | 311 | net/inet/af_inet.c | kfree_skb(skb, FREE_WRITE); |
| skb | 312 | net/inet/af_inet.c | skb = skb2; |
| skb | 318 | net/inet/af_inet.c | while((skb=skb_dequeue(&sk->back_log))!=NULL) |
| skb | 322 | net/inet/af_inet.c | kfree_skb(skb, FREE_READ); |
| skb | 93 | net/inet/arp.c | struct sk_buff_head skb; /* list of queued packets */ |
| skb | 228 | net/inet/arp.c | struct sk_buff *skb; |
| skb | 234 | net/inet/arp.c | while ((skb = skb_dequeue(&entry->skb)) != NULL) |
| skb | 236 | net/inet/arp.c | skb_device_lock(skb); |
| skb | 238 | net/inet/arp.c | dev_kfree_skb(skb, FREE_WRITE); |
| skb | 290 | net/inet/arp.c | struct sk_buff *skb; |
| skb | 305 | net/inet/arp.c | skb = alloc_skb(sizeof(struct arphdr)+ 2*(dev->addr_len+4) |
| skb | 307 | net/inet/arp.c | if (skb == NULL) |
| skb | 312 | net/inet/arp.c | skb->len = sizeof(struct arphdr) + dev->hard_header_len + 2*(dev->addr_len+4); |
| skb | 313 | net/inet/arp.c | skb->arp = 1; |
| skb | 314 | net/inet/arp.c | skb->dev = dev; |
| skb | 315 | net/inet/arp.c | skb->free = 1; |
| skb | 321 | net/inet/arp.c | dev->hard_header(skb->data,dev,ptype,dest_hw?dest_hw:dev->broadcast,src_hw?src_hw:NULL,skb->len,skb); |
| skb | 324 | net/inet/arp.c | arp = (struct arphdr *) (skb->data + dev->hard_header_len); |
| skb | 348 | net/inet/arp.c | dev_queue_xmit(skb, dev, 0); |
| skb | 436 | net/inet/arp.c | struct sk_buff *skb; |
| skb | 454 | net/inet/arp.c | while((skb = skb_dequeue(&entry->skb)) != NULL) |
| skb | 456 | net/inet/arp.c | IS_SKB(skb); |
| skb | 457 | net/inet/arp.c | skb_device_lock(skb); |
| skb | 459 | net/inet/arp.c | if(!skb->dev->rebuild_header(skb->data,skb->dev,skb->raddr,skb)) |
| skb | 461 | net/inet/arp.c | skb->arp = 1; |
| skb | 462 | net/inet/arp.c | if(skb->sk==NULL) |
| skb | 463 | net/inet/arp.c | dev_queue_xmit(skb, skb->dev, 0); |
| skb | 465 | net/inet/arp.c | dev_queue_xmit(skb,skb->dev,skb->sk->priority); |
| skb | 473 | net/inet/arp.c | printk("arp_send_q: failed to find %s\n",in_ntoa(skb->raddr)); |
| skb | 526 | net/inet/arp.c | int arp_rcv(struct sk_buff *skb, struct device *dev, struct packet_type *pt) |
| skb | 532 | net/inet/arp.c | struct arphdr *arp = (struct arphdr *)skb->h.raw; |
| skb | 554 | net/inet/arp.c | kfree_skb(skb, FREE_READ); |
| skb | 570 | net/inet/arp.c | kfree_skb(skb, FREE_READ); |
| skb | 579 | net/inet/arp.c | kfree_skb(skb, FREE_READ); |
| skb | 586 | net/inet/arp.c | kfree_skb(skb, FREE_READ); |
| skb | 610 | net/inet/arp.c | kfree_skb(skb, FREE_READ); |
| skb | 640 | net/inet/arp.c | kfree_skb(skb, FREE_READ); |
| skb | 682 | net/inet/arp.c | kfree_skb(skb, FREE_READ); |
| skb | 688 | net/inet/arp.c | kfree_skb(skb, FREE_READ); |
| skb | 754 | net/inet/arp.c | kfree_skb(skb, FREE_READ); |
| skb | 766 | net/inet/arp.c | entry->dev = skb->dev; |
| skb | 767 | net/inet/arp.c | skb_queue_head_init(&entry->skb); |
| skb | 776 | net/inet/arp.c | kfree_skb(skb, FREE_READ); |
| skb | 786 | net/inet/arp.c | unsigned long saddr, struct sk_buff *skb) |
| skb | 795 | net/inet/arp.c | skb->arp = 1; |
| skb | 799 | net/inet/arp.c | skb->arp = 1; |
| skb | 820 | net/inet/arp.c | if (skb != NULL) |
| skb | 822 | net/inet/arp.c | skb_queue_tail(&entry->skb, skb); |
| skb | 823 | net/inet/arp.c | skb_device_unlock(skb); |
| skb | 835 | net/inet/arp.c | if (skb) |
| skb | 836 | net/inet/arp.c | skb->arp = 1; |
| skb | 865 | net/inet/arp.c | skb_queue_head_init(&entry->skb); |
| skb | 866 | net/inet/arp.c | if (skb != NULL) |
| skb | 868 | net/inet/arp.c | skb_queue_tail(&entry->skb, skb); |
| skb | 869 | net/inet/arp.c | skb_device_unlock(skb); |
| skb | 874 | net/inet/arp.c | if (skb != NULL && skb->free) |
| skb | 875 | net/inet/arp.c | kfree_skb(skb, FREE_WRITE); |
| skb | 1089 | net/inet/arp.c | skb_queue_head_init(&entry->skb); |
| skb | 8 | net/inet/arp.h | extern int arp_rcv(struct sk_buff *skb, struct device *dev, |
| skb | 11 | net/inet/arp.h | struct device *dev, unsigned long saddr, struct sk_buff *skb); |
| skb | 55 | net/inet/datagram.c | struct sk_buff *skb; |
| skb | 125 | net/inet/datagram.c | skb=skb_dequeue(&sk->receive_queue); |
| skb | 126 | net/inet/datagram.c | if(skb!=NULL) |
| skb | 127 | net/inet/datagram.c | skb->users++; |
| skb | 134 | net/inet/datagram.c | skb=skb_peek(&sk->receive_queue); |
| skb | 135 | net/inet/datagram.c | if(skb!=NULL) |
| skb | 136 | net/inet/datagram.c | skb->users++; |
| skb | 138 | net/inet/datagram.c | if(skb==NULL) /* shouldn't happen but .. */ |
| skb | 141 | net/inet/datagram.c | return skb; |
| skb | 144 | net/inet/datagram.c | void skb_free_datagram(struct sk_buff *skb) |
| skb | 150 | net/inet/datagram.c | skb->users--; |
| skb | 151 | net/inet/datagram.c | if(skb->users>0) |
| skb | 157 | net/inet/datagram.c | if(!skb->next && !skb->prev) /* Been dequeued by someone - ie its read */ |
| skb | 158 | net/inet/datagram.c | kfree_skb(skb,FREE_READ); |
| skb | 162 | net/inet/datagram.c | void skb_copy_datagram(struct sk_buff *skb, int offset, char *to, int size) |
| skb | 166 | net/inet/datagram.c | memcpy_tofs(to,skb->h.raw+offset,size); |
| skb | 319 | net/inet/dev.c | struct sk_buff *skb; |
| skb | 320 | net/inet/dev.c | while((skb=skb_dequeue(&dev->buffs[ct]))!=NULL) |
| skb | 321 | net/inet/dev.c | if(skb->free) |
| skb | 322 | net/inet/dev.c | kfree_skb(skb,FREE_WRITE); |
| skb | 338 | net/inet/dev.c | void dev_queue_xmit(struct sk_buff *skb, struct device *dev, int pri) |
| skb | 353 | net/inet/dev.c | if(pri>=0 && !skb_device_locked(skb)) |
| skb | 354 | net/inet/dev.c | skb_device_lock(skb); /* Shove a lock on the frame */ |
| skb | 364 | net/inet/dev.c | IS_SKB(skb); |
| skb | 366 | net/inet/dev.c | skb->dev = dev; |
| skb | 372 | net/inet/dev.c | if (skb->next != NULL) |
| skb | 405 | net/inet/dev.c | if (!skb->arp && dev->rebuild_header(skb->data, dev, skb->raddr, skb)) { |
| skb | 413 | net/inet/dev.c | skb->in_dev_queue=1; |
| skb | 415 | net/inet/dev.c | skb_queue_tail(dev->buffs + pri,skb); |
| skb | 416 | net/inet/dev.c | skb_device_unlock(skb); /* Buffer is on the device queue and can be freed safely */ |
| skb | 417 | net/inet/dev.c | skb = skb_dequeue(dev->buffs + pri); |
| skb | 418 | net/inet/dev.c | skb_device_lock(skb); /* New buffer needs locking down */ |
| skb | 420 | net/inet/dev.c | skb->in_dev_queue=0; |
| skb | 432 | net/inet/dev.c | if ((skb2 = skb_clone(skb, GFP_ATOMIC)) == NULL) |
| skb | 434 | net/inet/dev.c | ptype->func(skb2, skb->dev, ptype); |
| skb | 439 | net/inet/dev.c | if (dev->hard_start_xmit(skb, dev) == 0) { |
| skb | 452 | net/inet/dev.c | skb->in_dev_queue=1; |
| skb | 455 | net/inet/dev.c | skb_device_unlock(skb); |
| skb | 456 | net/inet/dev.c | skb_queue_head(dev->buffs + pri,skb); |
| skb | 466 | net/inet/dev.c | void netif_rx(struct sk_buff *skb) |
| skb | 475 | net/inet/dev.c | skb->sk = NULL; |
| skb | 476 | net/inet/dev.c | skb->free = 1; |
| skb | 477 | net/inet/dev.c | if(skb->stamp.tv_sec==0) |
| skb | 478 | net/inet/dev.c | skb->stamp = xtime; |
| skb | 491 | net/inet/dev.c | kfree_skb(skb, FREE_READ); |
| skb | 499 | net/inet/dev.c | IS_SKB(skb); |
| skb | 500 | net/inet/dev.c | skb_queue_tail(&backlog,skb); |
| skb | 530 | net/inet/dev.c | struct sk_buff *skb = NULL; |
| skb | 540 | net/inet/dev.c | skb = (struct sk_buff *) buff; |
| skb | 552 | net/inet/dev.c | skb = alloc_skb(len, GFP_ATOMIC); |
| skb | 553 | net/inet/dev.c | if (skb == NULL) |
| skb | 566 | net/inet/dev.c | to = skb->data; |
| skb | 588 | net/inet/dev.c | skb->len = len; |
| skb | 589 | net/inet/dev.c | skb->dev = dev; |
| skb | 590 | net/inet/dev.c | skb->free = 1; |
| skb | 592 | net/inet/dev.c | netif_rx(skb); |
| skb | 649 | net/inet/dev.c | struct sk_buff *skb; |
| skb | 682 | net/inet/dev.c | while((skb=skb_dequeue(&backlog))!=NULL) |
| skb | 700 | net/inet/dev.c | skb->h.raw = skb->data + skb->dev->hard_header_len; |
| skb | 701 | net/inet/dev.c | skb->len -= skb->dev->hard_header_len; |
| skb | 714 | net/inet/dev.c | type = skb->dev->type_trans(skb, skb->dev); |
| skb | 742 | net/inet/dev.c | skb2 = alloc_skb(skb->len, GFP_ATOMIC); |
| skb | 745 | net/inet/dev.c | memcpy(skb2, skb, skb2->mem_len); |
| skb | 749 | net/inet/dev.c | (unsigned long) skb->h.raw - |
| skb | 750 | net/inet/dev.c | (unsigned long) skb |
| skb | 754 | net/inet/dev.c | skb2=skb_clone(skb, GFP_ATOMIC); |
| skb | 761 | net/inet/dev.c | skb2 = skb; |
| skb | 775 | net/inet/dev.c | ptype->func(skb2, skb->dev, ptype); |
| skb | 785 | net/inet/dev.c | kfree_skb(skb, FREE_WRITE); |
| skb | 819 | net/inet/dev.c | struct sk_buff *skb; |
| skb | 835 | net/inet/dev.c | while((skb=skb_dequeue(&dev->buffs[i]))!=NULL) |
| skb | 840 | net/inet/dev.c | skb_device_lock(skb); |
| skb | 846 | net/inet/dev.c | dev_queue_xmit(skb,dev,-i - 1); |
| skb | 84 | net/inet/eth.c | struct sk_buff *skb) |
| skb | 134 | net/inet/eth.c | struct sk_buff *skb) |
| skb | 153 | net/inet/eth.c | return arp_find(eth->h_dest, dst, dev, dev->pa_addr, skb)? 1 : 0; |
| skb | 166 | net/inet/eth.c | unsigned short eth_type_trans(struct sk_buff *skb, struct device *dev) |
| skb | 168 | net/inet/eth.c | struct ethhdr *eth = (struct ethhdr *) skb->data; |
| skb | 174 | net/inet/eth.c | skb->pkt_type=PACKET_BROADCAST; |
| skb | 176 | net/inet/eth.c | skb->pkt_type=PACKET_MULTICAST; |
| skb | 182 | net/inet/eth.c | skb->pkt_type=PACKET_OTHERHOST; |
| skb | 31 | net/inet/eth.h | extern void eth_add_arp(unsigned long addr, struct sk_buff *skb, |
| skb | 33 | net/inet/eth.h | extern unsigned short eth_type_trans(struct sk_buff *skb, struct device *dev); |
| skb | 98 | net/inet/icmp.c | struct sk_buff *skb; |
| skb | 194 | net/inet/icmp.c | skb = (struct sk_buff *) alloc_skb(len, GFP_ATOMIC); |
| skb | 195 | net/inet/icmp.c | if (skb == NULL) |
| skb | 200 | net/inet/icmp.c | skb->free = 1; |
| skb | 209 | net/inet/icmp.c | offset = ip_build_header(skb, our_addr, iph->saddr, |
| skb | 215 | net/inet/icmp.c | skb->sk = NULL; |
| skb | 216 | net/inet/icmp.c | kfree_skb(skb, FREE_READ); |
| skb | 224 | net/inet/icmp.c | skb->len = offset + sizeof(struct icmphdr) + sizeof(struct iphdr) + 8; |
| skb | 230 | net/inet/icmp.c | icmph = (struct icmphdr *) (skb->data + offset); |
| skb | 243 | net/inet/icmp.c | ip_queue_xmit(NULL, ndev, skb, 1); |
| skb | 251 | net/inet/icmp.c | static void icmp_unreach(struct icmphdr *icmph, struct sk_buff *skb) |
| skb | 312 | net/inet/icmp.c | kfree_skb(skb, FREE_READ); |
| skb | 320 | net/inet/icmp.c | static void icmp_redirect(struct icmphdr *icmph, struct sk_buff *skb, |
| skb | 374 | net/inet/icmp.c | kfree_skb(skb, FREE_READ); |
| skb | 382 | net/inet/icmp.c | static void icmp_echo(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev, |
| skb | 400 | net/inet/icmp.c | kfree_skb(skb, FREE_READ); |
| skb | 407 | net/inet/icmp.c | IPPROTO_ICMP, opt, len, skb->ip_hdr->tos,255); |
| skb | 413 | net/inet/icmp.c | kfree_skb(skb, FREE_READ); |
| skb | 442 | net/inet/icmp.c | kfree_skb(skb, FREE_READ); |
| skb | 449 | net/inet/icmp.c | static void icmp_timestamp(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev, |
| skb | 476 | net/inet/icmp.c | skb->sk = NULL; |
| skb | 477 | net/inet/icmp.c | kfree_skb(skb, FREE_READ); |
| skb | 488 | net/inet/icmp.c | skb->ip_hdr->tos, 255); |
| skb | 493 | net/inet/icmp.c | kfree_skb(skb, FREE_READ); |
| skb | 528 | net/inet/icmp.c | kfree_skb(skb, FREE_READ); |
| skb | 538 | net/inet/icmp.c | static void icmp_info(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev, |
| skb | 543 | net/inet/icmp.c | kfree_skb(skb, FREE_READ); |
| skb | 551 | net/inet/icmp.c | static void icmp_address(struct icmphdr *icmph, struct sk_buff *skb, struct device *dev, |
| skb | 568 | net/inet/icmp.c | kfree_skb(skb, FREE_READ); |
| skb | 578 | net/inet/icmp.c | IPPROTO_ICMP, opt, len, skb->ip_hdr->tos,255); |
| skb | 584 | net/inet/icmp.c | kfree_skb(skb, FREE_READ); |
| skb | 611 | net/inet/icmp.c | skb->sk = NULL; |
| skb | 612 | net/inet/icmp.c | kfree_skb(skb, FREE_READ); |
| skb | 161 | net/inet/ip.c | static int ip_send(struct sk_buff *skb, unsigned long daddr, int len, struct device *dev, unsigned long saddr) |
| skb | 165 | net/inet/ip.c | skb->dev = dev; |
| skb | 166 | net/inet/ip.c | skb->arp = 1; |
| skb | 173 | net/inet/ip.c | mac = dev->hard_header(skb->data, dev, ETH_P_IP, NULL, NULL, len, skb); |
| skb | 177 | net/inet/ip.c | skb->arp = 0; |
| skb | 178 | net/inet/ip.c | skb->raddr = daddr; /* next routing address */ |
| skb | 192 | net/inet/ip.c | int ip_build_header(struct sk_buff *skb, unsigned long saddr, unsigned long daddr, |
| skb | 203 | net/inet/ip.c | buff = skb->data; |
| skb | 211 | net/inet/ip.c | if(skb->localroute) |
| skb | 237 | net/inet/ip.c | if(skb->localroute) |
| skb | 267 | net/inet/ip.c | tmp = ip_send(skb, raddr, len, *dev, saddr); |
| skb | 275 | net/inet/ip.c | skb->dev = *dev; |
| skb | 276 | net/inet/ip.c | skb->saddr = saddr; |
| skb | 277 | net/inet/ip.c | if (skb->sk) |
| skb | 278 | net/inet/ip.c | skb->sk->saddr = saddr; |
| skb | 569 | net/inet/ip.c | static struct ipfrag *ip_frag_create(int offset, int end, struct sk_buff *skb, unsigned char *ptr) |
| skb | 585 | net/inet/ip.c | fp->skb = skb; |
| skb | 657 | net/inet/ip.c | IS_SKB(fp->skb); |
| skb | 658 | net/inet/ip.c | kfree_skb(fp->skb,FREE_READ); |
| skb | 693 | net/inet/ip.c | icmp_send(qp->fragments->skb,ICMP_TIME_EXCEEDED, |
| skb | 710 | net/inet/ip.c | static struct ipq *ip_create(struct sk_buff *skb, struct iphdr *iph, struct device *dev) |
| skb | 721 | net/inet/ip.c | skb->dev = qp->dev; |
| skb | 732 | net/inet/ip.c | maclen = ((unsigned long) iph) - ((unsigned long) skb->data); |
| skb | 756 | net/inet/ip.c | memcpy(qp->mac, skb->data, maclen); |
| skb | 822 | net/inet/ip.c | struct sk_buff *skb; |
| skb | 834 | net/inet/ip.c | if ((skb = alloc_skb(len,GFP_ATOMIC)) == NULL) |
| skb | 843 | net/inet/ip.c | skb->len = (len - qp->maclen); |
| skb | 844 | net/inet/ip.c | skb->h.raw = skb->data; |
| skb | 845 | net/inet/ip.c | skb->free = 1; |
| skb | 848 | net/inet/ip.c | ptr = (unsigned char *) skb->h.raw; |
| skb | 853 | net/inet/ip.c | skb->h.raw += qp->maclen; |
| skb | 861 | net/inet/ip.c | if(count+fp->len>skb->len) |
| skb | 865 | net/inet/ip.c | kfree_skb(skb,FREE_WRITE); |
| skb | 878 | net/inet/ip.c | iph = skb->h.iph; |
| skb | 881 | net/inet/ip.c | skb->ip_hdr = iph; |
| skb | 884 | net/inet/ip.c | return(skb); |
| skb | 892 | net/inet/ip.c | static struct sk_buff *ip_defrag(struct iphdr *iph, struct sk_buff *skb, struct device *dev) |
| skb | 915 | net/inet/ip.c | return(skb); |
| skb | 939 | net/inet/ip.c | if ((qp = ip_create(skb, iph, dev)) == NULL) |
| skb | 941 | net/inet/ip.c | skb->sk = NULL; |
| skb | 942 | net/inet/ip.c | kfree_skb(skb, FREE_READ); |
| skb | 959 | net/inet/ip.c | ptr = skb->data + dev->hard_header_len + ihl; |
| skb | 1024 | net/inet/ip.c | kfree_skb(next->skb,FREE_READ); |
| skb | 1034 | net/inet/ip.c | tfp = ip_frag_create(offset, end, skb, ptr); |
| skb | 1042 | net/inet/ip.c | skb->sk = NULL; |
| skb | 1043 | net/inet/ip.c | kfree_skb(skb, FREE_READ); |
| skb | 1084 | net/inet/ip.c | void ip_fragment(struct sock *sk, struct sk_buff *skb, struct device *dev, int is_frag) |
| skb | 1098 | net/inet/ip.c | raw = skb->data; |
| skb | 1101 | net/inet/ip.c | skb->ip_hdr = iph; |
| skb | 1120 | net/inet/ip.c | icmp_send(skb,ICMP_DEST_UNREACH, ICMP_FRAG_NEEDED, dev); |
| skb | 1133 | net/inet/ip.c | icmp_send(skb,ICMP_DEST_UNREACH,ICMP_FRAG_NEEDED,dev); |
| skb | 1185 | net/inet/ip.c | skb2->arp = skb->arp; |
| skb | 1186 | net/inet/ip.c | if(skb->free==0) |
| skb | 1204 | net/inet/ip.c | skb2->raddr = skb->raddr; /* For rebuild_header - must be here */ |
| skb | 1253 | net/inet/ip.c | static void ip_forward(struct sk_buff *skb, struct device *dev, int is_frag) |
| skb | 1273 | net/inet/ip.c | iph = skb->h.iph; |
| skb | 1278 | net/inet/ip.c | icmp_send(skb, ICMP_TIME_EXCEEDED, ICMP_EXC_TTL, dev); |
| skb | 1302 | net/inet/ip.c | icmp_send(skb, ICMP_DEST_UNREACH, ICMP_NET_UNREACH, dev); |
| skb | 1329 | net/inet/ip.c | icmp_send(skb, ICMP_DEST_UNREACH, ICMP_HOST_UNREACH, dev); |
| skb | 1368 | net/inet/ip.c | skb2 = alloc_skb(dev2->hard_header_len + skb->len, GFP_ATOMIC); |
| skb | 1380 | net/inet/ip.c | skb2->len = skb->len + dev2->hard_header_len; |
| skb | 1386 | net/inet/ip.c | memcpy(ptr + dev2->hard_header_len, skb->h.raw, skb->len); |
| skb | 1389 | net/inet/ip.c | (void) ip_send(skb2, raddr, skb->len, dev2, dev2->pa_addr); |
| skb | 1428 | net/inet/ip.c | int ip_rcv(struct sk_buff *skb, struct device *dev, struct packet_type *pt) |
| skb | 1430 | net/inet/ip.c | struct iphdr *iph = skb->h.iph; |
| skb | 1447 | net/inet/ip.c | skb->ip_hdr = iph; |
| skb | 1458 | net/inet/ip.c | if (skb->len<sizeof(struct iphdr) || iph->ihl<5 || iph->version != 4 || ip_fast_csum((unsigned char *)iph, iph->ihl) !=0) |
| skb | 1461 | net/inet/ip.c | kfree_skb(skb, FREE_WRITE); |
| skb | 1470 | net/inet/ip.c | skb->len=ntohs(iph->tot_len); |
| skb | 1513 | net/inet/ip.c | if ( iph->daddr != skb->dev->pa_addr && (brd = ip_chk_addr(iph->daddr)) == 0) |
| skb | 1519 | net/inet/ip.c | if(skb->pkt_type!=PACKET_HOST || brd==IS_BROADCAST) |
| skb | 1521 | net/inet/ip.c | kfree_skb(skb,FREE_WRITE); |
| skb | 1530 | net/inet/ip.c | ip_forward(skb, dev, is_frag); |
| skb | 1541 | net/inet/ip.c | kfree_skb(skb, FREE_WRITE); |
| skb | 1552 | net/inet/ip.c | skb=ip_defrag(iph,skb,dev); |
| skb | 1553 | net/inet/ip.c | if(skb==NULL) |
| skb | 1555 | net/inet/ip.c | iph=skb->h.iph; |
| skb | 1562 | net/inet/ip.c | skb->ip_hdr = iph; |
| skb | 1563 | net/inet/ip.c | skb->h.raw += iph->ihl*4; |
| skb | 1588 | net/inet/ip.c | skb2 = skb_clone(skb, GFP_ATOMIC); |
| skb | 1594 | net/inet/ip.c | skb2 = skb; |
| skb | 1619 | net/inet/ip.c | icmp_send(skb, ICMP_DEST_UNREACH, ICMP_PROT_UNREACH, dev); |
| skb | 1620 | net/inet/ip.c | kfree_skb(skb, FREE_WRITE); |
| skb | 1637 | net/inet/ip.c | struct sk_buff *skb, int free) |
| skb | 1649 | net/inet/ip.c | IS_SKB(skb); |
| skb | 1656 | net/inet/ip.c | skb->dev = dev; |
| skb | 1657 | net/inet/ip.c | skb->when = jiffies; |
| skb | 1667 | net/inet/ip.c | ptr = skb->data; |
| skb | 1670 | net/inet/ip.c | skb->ip_hdr = iph; |
| skb | 1671 | net/inet/ip.c | iph->tot_len = ntohs(skb->len-dev->hard_header_len); |
| skb | 1686 | net/inet/ip.c | skb->free = free; |
| skb | 1694 | net/inet/ip.c | if(skb->len > dev->mtu + dev->hard_header_len) |
| skb | 1696 | net/inet/ip.c | ip_fragment(sk,skb,dev,0); |
| skb | 1697 | net/inet/ip.c | IS_SKB(skb); |
| skb | 1698 | net/inet/ip.c | kfree_skb(skb,FREE_WRITE); |
| skb | 1716 | net/inet/ip.c | if (skb->next != NULL) |
| skb | 1719 | net/inet/ip.c | skb_unlink(skb); |
| skb | 1740 | net/inet/ip.c | if (skb->link3 != NULL) |
| skb | 1743 | net/inet/ip.c | skb->link3 = NULL; |
| skb | 1747 | net/inet/ip.c | sk->send_tail = skb; |
| skb | 1748 | net/inet/ip.c | sk->send_head = skb; |
| skb | 1752 | net/inet/ip.c | sk->send_tail->link3 = skb; |
| skb | 1753 | net/inet/ip.c | sk->send_tail = skb; |
| skb | 1765 | net/inet/ip.c | skb->sk = sk; |
| skb | 1781 | net/inet/ip.c | dev_queue_xmit(skb, dev, sk->priority); |
| skb | 1785 | net/inet/ip.c | dev_queue_xmit(skb, dev, SOPRI_NORMAL); |
| skb | 1792 | net/inet/ip.c | kfree_skb(skb, FREE_WRITE); |
| skb | 1804 | net/inet/ip.c | struct sk_buff * skb; |
| skb | 1809 | net/inet/ip.c | skb = sk->send_head; |
| skb | 1811 | net/inet/ip.c | while (skb != NULL) |
| skb | 1813 | net/inet/ip.c | dev = skb->dev; |
| skb | 1814 | net/inet/ip.c | IS_SKB(skb); |
| skb | 1815 | net/inet/ip.c | skb->when = jiffies; |
| skb | 1832 | net/inet/ip.c | iph = (struct iphdr *)(skb->data + dev->hard_header_len); |
| skb | 1834 | net/inet/ip.c | size = skb->len - (((unsigned char *) th) - skb->data); |
| skb | 1858 | net/inet/ip.c | if (sk && !skb_device_locked(skb)) |
| skb | 1861 | net/inet/ip.c | skb_unlink(skb); |
| skb | 1864 | net/inet/ip.c | dev_queue_xmit(skb, dev, sk->priority); |
| skb | 1885 | net/inet/ip.c | skb = skb->link3; |
| skb | 45 | net/inet/ip.h | struct sk_buff *skb; /* complete received fragment */ |
| skb | 72 | net/inet/ip.h | extern int ip_build_header(struct sk_buff *skb, |
| skb | 79 | net/inet/ip.h | extern int ip_rcv(struct sk_buff *skb, struct device *dev, |
| skb | 82 | net/inet/ip.h | struct device *dev, struct sk_buff *skb, |
| skb | 135 | net/inet/ipx.c | struct sk_buff *skb; |
| skb | 138 | net/inet/ipx.c | while((skb=skb_dequeue(&sk->receive_queue))!=NULL) |
| skb | 140 | net/inet/ipx.c | kfree_skb(skb,FREE_READ); |
| skb | 807 | net/inet/ipx.c | int ipx_rcv(struct sk_buff *skb, struct device *dev, struct packet_type *pt) |
| skb | 816 | net/inet/ipx.c | ipx=(ipx_packet *)skb->h.raw; |
| skb | 823 | net/inet/ipx.c | kfree_skb(skb,FREE_READ); |
| skb | 830 | net/inet/ipx.c | kfree_skb(skb,FREE_READ); |
| skb | 837 | net/inet/ipx.c | kfree_skb(skb,FREE_READ); |
| skb | 845 | net/inet/ipx.c | kfree_skb(skb,FREE_READ); |
| skb | 870 | net/inet/ipx.c | if((ipx->ipx_tctrl==16) || (skb->pkt_type!=PACKET_HOST)) |
| skb | 872 | net/inet/ipx.c | kfree_skb(skb,FREE_READ); |
| skb | 882 | net/inet/ipx.c | kfree_skb(skb,FREE_READ); |
| skb | 887 | net/inet/ipx.c | incoming_size = skb->len - ntohs(ipx->ipx_pktsize); |
| skb | 897 | net/inet/ipx.c | kfree_skb(skb,FREE_READ); |
| skb | 909 | net/inet/ipx.c | (char *)(skb+1)+incoming_size, |
| skb | 914 | net/inet/ipx.c | skb2=skb; |
| skb | 928 | net/inet/ipx.c | kfree_skb(skb,FREE_READ); |
| skb | 942 | net/inet/ipx.c | kfree_skb(skb,FREE_READ); |
| skb | 951 | net/inet/ipx.c | if(sock_queue_rcv_skb(sock, skb)<0) |
| skb | 953 | net/inet/ipx.c | kfree_skb(skb,FREE_READ); /* Socket is full */ |
| skb | 966 | net/inet/ipx.c | struct sk_buff *skb; |
| skb | 1055 | net/inet/ipx.c | skb=alloc_skb(size,GFP_KERNEL); |
| skb | 1056 | net/inet/ipx.c | if(skb==NULL) |
| skb | 1059 | net/inet/ipx.c | skb->mem_addr=skb; |
| skb | 1060 | net/inet/ipx.c | skb->sk=sk; |
| skb | 1061 | net/inet/ipx.c | skb->free=1; |
| skb | 1062 | net/inet/ipx.c | skb->arp=1; |
| skb | 1063 | net/inet/ipx.c | skb->len=size; |
| skb | 1065 | net/inet/ipx.c | sk->wmem_alloc+=skb->mem_len; |
| skb | 1069 | net/inet/ipx.c | skb->dev=rt->dev; |
| skb | 1072 | net/inet/ipx.c | dl->datalink_header(dl, skb, |
| skb | 1077 | net/inet/ipx.c | memcpy(IPXaddr+(6 - skb->dev->addr_len), skb->dev->dev_addr, |
| skb | 1078 | net/inet/ipx.c | skb->dev->addr_len); |
| skb | 1088 | net/inet/ipx.c | ipx=(ipx_packet *)skb->h.raw; |
| skb | 1109 | net/inet/ipx.c | sk->wmem_alloc-=skb->mem_len; |
| skb | 1110 | net/inet/ipx.c | skb->sk = NULL; |
| skb | 1111 | net/inet/ipx.c | ipx_rcv(skb,dev,&pt); |
| skb | 1120 | net/inet/ipx.c | skb2=alloc_skb(skb->len, GFP_ATOMIC); |
| skb | 1124 | net/inet/ipx.c | skb2->len=skb->len; |
| skb | 1128 | net/inet/ipx.c | memcpy(skb2->data, skb->data, skb->len); |
| skb | 1131 | net/inet/ipx.c | dev_queue_xmit(skb,dev,SOPRI_NORMAL); |
| skb | 1149 | net/inet/ipx.c | struct sk_buff *skb; |
| skb | 1162 | net/inet/ipx.c | skb=skb_recv_datagram(sk,flags,noblock,&er); |
| skb | 1163 | net/inet/ipx.c | if(skb==NULL) |
| skb | 1166 | net/inet/ipx.c | ipx = (ipx_packet *)(skb->h.raw); |
| skb | 1168 | net/inet/ipx.c | skb_copy_datagram(skb,sizeof(struct ipx_packet),ubuf,copied); |
| skb | 1178 | net/inet/ipx.c | skb_free_datagram(skb); |
| skb | 1235 | net/inet/ipx.c | struct sk_buff *skb; |
| skb | 1237 | net/inet/ipx.c | if((skb=skb_peek(&sk->receive_queue))!=NULL) |
| skb | 1238 | net/inet/ipx.c | amount=skb->len; |
| skb | 66 | net/inet/ipx.h | extern int ipx_rcv(struct sk_buff *skb, struct device *dev, struct packet_type *pt); |
| skb | 23 | net/inet/p8022.c | p8022_rcv(struct sk_buff *skb, struct device *dev, struct packet_type *pt) |
| skb | 27 | net/inet/p8022.c | proto = find_8022_client(*(skb->h.raw)); |
| skb | 29 | net/inet/p8022.c | skb->h.raw += 3; |
| skb | 30 | net/inet/p8022.c | return proto->rcvfunc(skb, dev, pt); |
| skb | 33 | net/inet/p8022.c | skb->sk = NULL; |
| skb | 34 | net/inet/p8022.c | kfree_skb(skb, FREE_READ); |
| skb | 40 | net/inet/p8022.c | struct sk_buff *skb, unsigned char *dest_node) |
| skb | 42 | net/inet/p8022.c | struct device *dev = skb->dev; |
| skb | 43 | net/inet/p8022.c | unsigned long len = skb->len; |
| skb | 47 | net/inet/p8022.c | dev->hard_header(skb->data, dev, len - hard_len, |
| skb | 48 | net/inet/p8022.c | dest_node, NULL, len - hard_len, skb); |
| skb | 49 | net/inet/p8022.c | rawp = skb->data + hard_len; |
| skb | 56 | net/inet/p8022.c | skb->h.raw = rawp; |
| skb | 9 | net/inet/p8023.c | struct sk_buff *skb, unsigned char *dest_node) |
| skb | 11 | net/inet/p8023.c | struct device *dev = skb->dev; |
| skb | 12 | net/inet/p8023.c | unsigned long len = skb->len; |
| skb | 15 | net/inet/p8023.c | dev->hard_header(skb->data, dev, len - hard_len, |
| skb | 16 | net/inet/p8023.c | dest_node, NULL, len - hard_len, skb); |
| skb | 17 | net/inet/p8023.c | skb->h.raw = skb->data + hard_len; |
| skb | 67 | net/inet/packet.c | int packet_rcv(struct sk_buff *skb, struct device *dev, struct packet_type *pt) |
| skb | 84 | net/inet/packet.c | skb->dev = dev; |
| skb | 85 | net/inet/packet.c | skb->len += dev->hard_header_len; |
| skb | 87 | net/inet/packet.c | skb->sk = sk; |
| skb | 94 | net/inet/packet.c | if (sk->rmem_alloc + skb->mem_len >= sk->rcvbuf) |
| skb | 96 | net/inet/packet.c | skb->sk = NULL; |
| skb | 97 | net/inet/packet.c | kfree_skb(skb, FREE_READ); |
| skb | 100 | net/inet/packet.c | sk->rmem_alloc += skb->mem_len; |
| skb | 106 | net/inet/packet.c | skb_queue_tail(&sk->receive_queue,skb); |
| skb | 127 | net/inet/packet.c | struct sk_buff *skb; |
| skb | 169 | net/inet/packet.c | skb = sk->prot->wmalloc(sk, len, 0, GFP_KERNEL); |
| skb | 176 | net/inet/packet.c | if (skb == NULL) |
| skb | 185 | net/inet/packet.c | skb->sk = sk; |
| skb | 186 | net/inet/packet.c | skb->free = 1; |
| skb | 187 | net/inet/packet.c | memcpy_fromfs(skb->data, from, len); |
| skb | 188 | net/inet/packet.c | skb->len = len; |
| skb | 189 | net/inet/packet.c | skb->arp = 1; /* No ARP needs doing on this (complete) frame */ |
| skb | 196 | net/inet/packet.c | dev_queue_xmit(skb, dev, sk->priority); |
| skb | 198 | net/inet/packet.c | kfree_skb(skb, FREE_WRITE); |
| skb | 271 | net/inet/packet.c | struct sk_buff *skb; |
| skb | 295 | net/inet/packet.c | skb=skb_recv_datagram(sk,flags,noblock,&err); |
| skb | 303 | net/inet/packet.c | if(skb==NULL) |
| skb | 311 | net/inet/packet.c | truesize = skb->len; |
| skb | 314 | net/inet/packet.c | memcpy_tofs(to, skb->data, copied); /* We can't use skb_copy_datagram here */ |
| skb | 322 | net/inet/packet.c | saddr->sa_family = skb->dev->type; |
| skb | 323 | net/inet/packet.c | memcpy(saddr->sa_data,skb->dev->name, 14); |
| skb | 331 | net/inet/packet.c | skb_free_datagram(skb); |
| skb | 9 | net/inet/pe2.c | struct sk_buff *skb, unsigned char *dest_node) |
| skb | 11 | net/inet/pe2.c | struct device *dev = skb->dev; |
| skb | 12 | net/inet/pe2.c | unsigned long len = skb->len; |
| skb | 15 | net/inet/pe2.c | dev->hard_header(skb->data, dev, ETH_P_IPX, |
| skb | 16 | net/inet/pe2.c | dest_node, NULL, len - hard_len, skb); |
| skb | 17 | net/inet/pe2.c | skb->h.raw = skb->data + hard_len; |
| skb | 31 | net/inet/protocol.h | int (*handler)(struct sk_buff *skb, struct device *dev, |
| skb | 35 | net/inet/protocol.h | int (*frag_handler)(struct sk_buff *skb, struct device *dev, |
| skb | 142 | net/inet/rarp.c | int rarp_rcv(struct sk_buff *skb, struct device *dev, struct packet_type *pt) |
| skb | 147 | net/inet/rarp.c | struct arphdr *rarp = (struct arphdr *)skb->h.raw; |
| skb | 160 | net/inet/rarp.c | kfree_skb(skb, FREE_READ); |
| skb | 169 | net/inet/rarp.c | kfree_skb(skb, FREE_READ); |
| skb | 187 | net/inet/rarp.c | kfree_skb(skb, FREE_READ); |
| skb | 223 | net/inet/rarp.c | kfree_skb(skb, FREE_READ); |
| skb | 6 | net/inet/rarp.h | extern int rarp_rcv(struct sk_buff *skb, |
| skb | 95 | net/inet/raw.c | int raw_rcv(struct sk_buff *skb, struct device *dev, struct options *opt, |
| skb | 101 | net/inet/raw.c | if (skb == NULL) |
| skb | 106 | net/inet/raw.c | kfree_skb(skb, FREE_READ); |
| skb | 113 | net/inet/raw.c | kfree_skb(skb, FREE_READ); |
| skb | 119 | net/inet/raw.c | skb->sk = sk; |
| skb | 120 | net/inet/raw.c | skb->len = len + skb->ip_hdr->ihl*sizeof(long); |
| skb | 121 | net/inet/raw.c | skb->h.raw = (unsigned char *) skb->ip_hdr; |
| skb | 122 | net/inet/raw.c | skb->dev = dev; |
| skb | 123 | net/inet/raw.c | skb->saddr = daddr; |
| skb | 124 | net/inet/raw.c | skb->daddr = saddr; |
| skb | 128 | net/inet/raw.c | if(sock_queue_rcv_skb(sk,skb)<0) |
| skb | 131 | net/inet/raw.c | skb->sk=NULL; |
| skb | 132 | net/inet/raw.c | kfree_skb(skb, FREE_READ); |
| skb | 148 | net/inet/raw.c | struct sk_buff *skb; |
| skb | 189 | net/inet/raw.c | skb=sock_alloc_send_skb(sk, len+sk->prot->max_header, noblock, &err); |
| skb | 190 | net/inet/raw.c | if(skb==NULL) |
| skb | 193 | net/inet/raw.c | skb->sk = sk; |
| skb | 194 | net/inet/raw.c | skb->free = 1; |
| skb | 195 | net/inet/raw.c | skb->localroute = sk->localroute | (flags&MSG_DONTROUTE); |
| skb | 197 | net/inet/raw.c | tmp = sk->prot->build_header(skb, sk->saddr, |
| skb | 199 | net/inet/raw.c | sk->protocol, sk->opt, skb->mem_len, sk->ip_tos,sk->ip_ttl); |
| skb | 202 | net/inet/raw.c | kfree_skb(skb,FREE_WRITE); |
| skb | 207 | net/inet/raw.c | memcpy_fromfs(skb->data + tmp, from, len); |
| skb | 219 | net/inet/raw.c | buff = skb->data; |
| skb | 226 | net/inet/raw.c | skb->len = tmp + len; |
| skb | 228 | net/inet/raw.c | sk->prot->queue_xmit(sk, dev, skb, 1); |
| skb | 286 | net/inet/raw.c | struct sk_buff *skb; |
| skb | 296 | net/inet/raw.c | skb=skb_recv_datagram(sk,flags,noblock,&err); |
| skb | 297 | net/inet/raw.c | if(skb==NULL) |
| skb | 300 | net/inet/raw.c | truesize=skb->len; |
| skb | 303 | net/inet/raw.c | skb_copy_datagram(skb, 0, to, copied); |
| skb | 304 | net/inet/raw.c | sk->stamp=skb->stamp; |
| skb | 310 | net/inet/raw.c | sin->sin_addr.s_addr = skb->daddr; |
| skb | 312 | net/inet/raw.c | skb_free_datagram(skb); |
| skb | 26 | net/inet/raw.h | extern int raw_rcv(struct sk_buff *skb, struct device *dev, |
| skb | 70 | net/inet/skbuff.c | int skb_check(struct sk_buff *skb, int head, int line, char *file) |
| skb | 73 | net/inet/skbuff.c | if (skb->magic_debug_cookie != SK_HEAD_SKB) { |
| skb | 78 | net/inet/skbuff.c | if (!skb->next || !skb->prev) { |
| skb | 82 | net/inet/skbuff.c | if (skb->next->magic_debug_cookie != SK_HEAD_SKB |
| skb | 83 | net/inet/skbuff.c | && skb->next->magic_debug_cookie != SK_GOOD_SKB) { |
| skb | 88 | net/inet/skbuff.c | if (skb->prev->magic_debug_cookie != SK_HEAD_SKB |
| skb | 89 | net/inet/skbuff.c | && skb->prev->magic_debug_cookie != SK_GOOD_SKB) { |
| skb | 96 | net/inet/skbuff.c | struct sk_buff *skb2 = skb->next; |
| skb | 98 | net/inet/skbuff.c | while (skb2 != skb && i < 5) { |
| skb | 110 | net/inet/skbuff.c | if (skb->next != NULL && skb->next->magic_debug_cookie != SK_HEAD_SKB |
| skb | 111 | net/inet/skbuff.c | && skb->next->magic_debug_cookie != SK_GOOD_SKB) { |
| skb | 116 | net/inet/skbuff.c | if (skb->prev != NULL && skb->prev->magic_debug_cookie != SK_HEAD_SKB |
| skb | 117 | net/inet/skbuff.c | && skb->prev->magic_debug_cookie != SK_GOOD_SKB) { |
| skb | 124 | net/inet/skbuff.c | if(skb->magic_debug_cookie==SK_FREED_SKB) |
| skb | 129 | net/inet/skbuff.c | skb,skb->truesize,skb->mem_len,skb->free); |
| skb | 132 | net/inet/skbuff.c | if(skb->magic_debug_cookie!=SK_GOOD_SKB) |
| skb | 136 | net/inet/skbuff.c | skb,skb->truesize,skb->mem_len,skb->free); |
| skb | 139 | net/inet/skbuff.c | if(skb->mem_len!=skb->truesize) |
| skb | 143 | net/inet/skbuff.c | skb,skb->truesize,skb->mem_len); |
| skb | 311 | net/inet/skbuff.c | void skb_unlink(struct sk_buff *skb) |
| skb | 318 | net/inet/skbuff.c | IS_SKB(skb); |
| skb | 320 | net/inet/skbuff.c | if(skb->prev && skb->next) |
| skb | 322 | net/inet/skbuff.c | skb->next->prev = skb->prev; |
| skb | 323 | net/inet/skbuff.c | skb->prev->next = skb->next; |
| skb | 324 | net/inet/skbuff.c | skb->next = NULL; |
| skb | 325 | net/inet/skbuff.c | skb->prev = NULL; |
| skb | 339 | net/inet/skbuff.c | void kfree_skb(struct sk_buff *skb, int rw) |
| skb | 341 | net/inet/skbuff.c | if (skb == NULL) |
| skb | 347 | net/inet/skbuff.c | IS_SKB(skb); |
| skb | 348 | net/inet/skbuff.c | if (skb->lock) |
| skb | 350 | net/inet/skbuff.c | skb->free = 3; /* Free when unlocked */ |
| skb | 354 | net/inet/skbuff.c | if (skb->free == 2) |
| skb | 357 | net/inet/skbuff.c | if (skb->next) |
| skb | 360 | net/inet/skbuff.c | if (skb->sk) |
| skb | 362 | net/inet/skbuff.c | if(skb->sk->prot!=NULL) |
| skb | 365 | net/inet/skbuff.c | skb->sk->prot->rfree(skb->sk, skb, skb->mem_len); |
| skb | 367 | net/inet/skbuff.c | skb->sk->prot->wfree(skb->sk, skb, skb->mem_len); |
| skb | 374 | net/inet/skbuff.c | skb->sk->rmem_alloc-=skb->mem_len; |
| skb | 376 | net/inet/skbuff.c | skb->sk->wmem_alloc-=skb->mem_len; |
| skb | 377 | net/inet/skbuff.c | if(!skb->sk->dead) |
| skb | 378 | net/inet/skbuff.c | skb->sk->write_space(skb->sk); |
| skb | 382 | net/inet/skbuff.c | kfree_skbmem(skb, skb->mem_len); |
| skb | 391 | net/inet/skbuff.c | struct sk_buff *skb; |
| skb | 404 | net/inet/skbuff.c | skb=(struct sk_buff *)kmalloc(size,priority); |
| skb | 405 | net/inet/skbuff.c | if (skb == NULL) |
| skb | 411 | net/inet/skbuff.c | if(skb->magic_debug_cookie == SK_GOOD_SKB) |
| skb | 412 | net/inet/skbuff.c | printk("Kernel kmalloc handed us an existing skb (%p)\n",skb); |
| skb | 417 | net/inet/skbuff.c | skb->free = 2; /* Invalid so we pick up forgetful users */ |
| skb | 418 | net/inet/skbuff.c | skb->lock = 0; |
| skb | 419 | net/inet/skbuff.c | skb->pkt_type = PACKET_HOST; /* Default type */ |
| skb | 420 | net/inet/skbuff.c | skb->truesize = size; |
| skb | 421 | net/inet/skbuff.c | skb->mem_len = size; |
| skb | 422 | net/inet/skbuff.c | skb->mem_addr = skb; |
| skb | 424 | net/inet/skbuff.c | skb->in_dev_queue = 0; |
| skb | 426 | net/inet/skbuff.c | skb->fraglist = NULL; |
| skb | 427 | net/inet/skbuff.c | skb->prev = skb->next = NULL; |
| skb | 428 | net/inet/skbuff.c | skb->link3 = NULL; |
| skb | 429 | net/inet/skbuff.c | skb->sk = NULL; |
| skb | 430 | net/inet/skbuff.c | skb->localroute=0; |
| skb | 431 | net/inet/skbuff.c | skb->stamp.tv_sec=0; /* No idea about time */ |
| skb | 432 | net/inet/skbuff.c | skb->localroute = 0; |
| skb | 439 | net/inet/skbuff.c | skb->magic_debug_cookie = SK_GOOD_SKB; |
| skb | 441 | net/inet/skbuff.c | skb->users = 0; |
| skb | 442 | net/inet/skbuff.c | return skb; |
| skb | 449 | net/inet/skbuff.c | void kfree_skbmem(struct sk_buff *skb,unsigned size) |
| skb | 455 | net/inet/skbuff.c | if(skb->in_dev_queue && skb->dev!=NULL) |
| skb | 456 | net/inet/skbuff.c | skb->dev->pkt_queue--; |
| skb | 459 | net/inet/skbuff.c | IS_SKB(skb); |
| skb | 460 | net/inet/skbuff.c | if(size!=skb->truesize) |
| skb | 463 | net/inet/skbuff.c | if(skb->magic_debug_cookie == SK_GOOD_SKB) |
| skb | 467 | net/inet/skbuff.c | IS_SKB(skb); |
| skb | 468 | net/inet/skbuff.c | skb->magic_debug_cookie = SK_FREED_SKB; |
| skb | 469 | net/inet/skbuff.c | kfree_s((void *)skb,size); |
| skb | 483 | net/inet/skbuff.c | struct sk_buff *skb_clone(struct sk_buff *skb, int priority) |
| skb | 488 | net/inet/skbuff.c | n=alloc_skb(skb->mem_len-sizeof(struct sk_buff),priority); |
| skb | 492 | net/inet/skbuff.c | offset=((char *)n)-((char *)skb); |
| skb | 494 | net/inet/skbuff.c | memcpy(n->data,skb->data,skb->mem_len-sizeof(struct sk_buff)); |
| skb | 495 | net/inet/skbuff.c | n->len=skb->len; |
| skb | 498 | net/inet/skbuff.c | n->when=skb->when; |
| skb | 499 | net/inet/skbuff.c | n->dev=skb->dev; |
| skb | 500 | net/inet/skbuff.c | n->h.raw=skb->h.raw+offset; |
| skb | 501 | net/inet/skbuff.c | n->ip_hdr=(struct iphdr *)(((char *)skb->ip_hdr)+offset); |
| skb | 502 | net/inet/skbuff.c | n->fraglen=skb->fraglen; |
| skb | 503 | net/inet/skbuff.c | n->fraglist=skb->fraglist; |
| skb | 504 | net/inet/skbuff.c | n->saddr=skb->saddr; |
| skb | 505 | net/inet/skbuff.c | n->daddr=skb->daddr; |
| skb | 506 | net/inet/skbuff.c | n->raddr=skb->raddr; |
| skb | 507 | net/inet/skbuff.c | n->acked=skb->acked; |
| skb | 508 | net/inet/skbuff.c | n->used=skb->used; |
| skb | 510 | net/inet/skbuff.c | n->arp=skb->arp; |
| skb | 514 | net/inet/skbuff.c | n->pkt_type=skb->pkt_type; |
| skb | 523 | net/inet/skbuff.c | void skb_device_lock(struct sk_buff *skb) |
| skb | 525 | net/inet/skbuff.c | if(skb->lock) |
| skb | 529 | net/inet/skbuff.c | skb->lock++; |
| skb | 532 | net/inet/skbuff.c | void skb_device_unlock(struct sk_buff *skb) |
| skb | 534 | net/inet/skbuff.c | if(skb->lock==0) |
| skb | 536 | net/inet/skbuff.c | skb->lock--; |
| skb | 537 | net/inet/skbuff.c | if(skb->lock==0) |
| skb | 541 | net/inet/skbuff.c | void dev_kfree_skb(struct sk_buff *skb, int mode) |
| skb | 547 | net/inet/skbuff.c | if(skb->lock==1) |
| skb | 550 | net/inet/skbuff.c | if (!--skb->lock && (skb->free == 1 || skb->free == 3)) |
| skb | 553 | net/inet/skbuff.c | kfree_skb(skb,mode); |
| skb | 559 | net/inet/skbuff.c | int skb_device_locked(struct sk_buff *skb) |
| skb | 561 | net/inet/skbuff.c | return skb->lock? 1 : 0; |
| skb | 384 | net/inet/sock.c | void sock_wfree(struct sock *sk, struct sk_buff *skb, unsigned long size) |
| skb | 386 | net/inet/sock.c | IS_SKB(skb); |
| skb | 387 | net/inet/sock.c | kfree_skbmem(skb, size); |
| skb | 399 | net/inet/sock.c | void sock_rfree(struct sock *sk, struct sk_buff *skb, unsigned long size) |
| skb | 401 | net/inet/sock.c | IS_SKB(skb); |
| skb | 402 | net/inet/sock.c | kfree_skbmem(skb, size); |
| skb | 415 | net/inet/sock.c | struct sk_buff *skb; |
| skb | 438 | net/inet/sock.c | skb = sock_wmalloc(sk, size, 0, GFP_KERNEL); |
| skb | 440 | net/inet/sock.c | if(skb==NULL) |
| skb | 475 | net/inet/sock.c | while(skb==NULL); |
| skb | 477 | net/inet/sock.c | return skb; |
| skb | 485 | net/inet/sock.c | int sock_queue_rcv_skb(struct sock *sk, struct sk_buff *skb) |
| skb | 487 | net/inet/sock.c | if(sk->rmem_alloc + skb->mem_len >= sk->rcvbuf) |
| skb | 489 | net/inet/sock.c | sk->rmem_alloc+=skb->mem_len; |
| skb | 490 | net/inet/sock.c | skb->sk=sk; |
| skb | 491 | net/inet/sock.c | skb_queue_tail(&sk->receive_queue,skb); |
| skb | 493 | net/inet/sock.c | sk->data_ready(sk,skb->len); |
| skb | 499 | net/inet/sock.c | struct sk_buff *skb; |
| skb | 523 | net/inet/sock.c | while((skb = skb_dequeue(&sk->back_log)) != NULL) |
| skb | 527 | net/inet/sock.c | sk->prot->rcv(skb, skb->dev, sk->opt, |
| skb | 528 | net/inet/sock.c | skb->saddr, skb->len, skb->daddr, 1, |
| skb | 184 | net/inet/sock.h | void (*wfree)(struct sock *sk, struct sk_buff *skb, |
| skb | 186 | net/inet/sock.h | void (*rfree)(struct sock *sk, struct sk_buff *skb, |
| skb | 203 | net/inet/sock.h | int (*build_header)(struct sk_buff *skb, |
| skb | 212 | net/inet/sock.h | struct device *dev, struct sk_buff *skb, |
| skb | 266 | net/inet/sock.h | extern void sock_wfree(struct sock *sk, struct sk_buff *skb, |
| skb | 268 | net/inet/sock.h | extern void sock_rfree(struct sock *sk, struct sk_buff *skb, |
| skb | 276 | net/inet/sock.h | extern struct sk_buff *sock_alloc_send_skb(struct sock *skb, unsigned long size, int noblock, int *errcode); |
| skb | 277 | net/inet/sock.h | extern int sock_queue_rcv_skb(struct sock *sk, struct sk_buff *skb); |
| skb | 307 | net/inet/tcp.c | struct sk_buff *skb; |
| skb | 311 | net/inet/tcp.c | skb=tcp_find_established(s); |
| skb | 312 | net/inet/tcp.c | if(skb!=NULL) |
| skb | 313 | net/inet/tcp.c | skb_unlink(skb); /* Take it off the queue */ |
| skb | 315 | net/inet/tcp.c | return skb; |
| skb | 432 | net/inet/tcp.c | struct sk_buff *skb; |
| skb | 441 | net/inet/tcp.c | if (sk == NULL || (skb = skb_peek(&sk->receive_queue)) == NULL) |
| skb | 455 | net/inet/tcp.c | if (before(counted, skb->h.th->seq)) /* Found a hole so stops here */ |
| skb | 457 | net/inet/tcp.c | sum = skb->len -(counted - skb->h.th->seq); /* Length - header but start from where we are up to (avoid overlaps) */ |
| skb | 458 | net/inet/tcp.c | if (skb->h.th->syn) |
| skb | 463 | net/inet/tcp.c | if (skb->h.th->syn) |
| skb | 483 | net/inet/tcp.c | if (skb->h.th->urg) |
| skb | 485 | net/inet/tcp.c | if (amount && skb->h.th->psh) break; |
| skb | 486 | net/inet/tcp.c | skb = skb->next; |
| skb | 488 | net/inet/tcp.c | while(skb != (struct sk_buff *)&sk->receive_queue); |
| skb | 720 | net/inet/tcp.c | static void tcp_send_skb(struct sock *sk, struct sk_buff *skb) |
| skb | 723 | net/inet/tcp.c | struct tcphdr * th = skb->h.th; |
| skb | 726 | net/inet/tcp.c | size = skb->len - ((unsigned char *) th - skb->data); |
| skb | 729 | net/inet/tcp.c | if (size < sizeof(struct tcphdr) || size > skb->len) |
| skb | 732 | net/inet/tcp.c | skb, skb->data, th, skb->len); |
| skb | 733 | net/inet/tcp.c | kfree_skb(skb, FREE_WRITE); |
| skb | 744 | net/inet/tcp.c | kfree_skb(skb,FREE_WRITE); |
| skb | 751 | net/inet/tcp.c | skb->h.seq = ntohl(th->seq) + size - 4*th->doff; |
| skb | 752 | net/inet/tcp.c | if (after(skb->h.seq, sk->window_seq) || |
| skb | 759 | net/inet/tcp.c | if (skb->next != NULL) |
| skb | 762 | net/inet/tcp.c | skb_unlink(skb); |
| skb | 764 | net/inet/tcp.c | skb_queue_tail(&sk->write_queue, skb); |
| skb | 778 | net/inet/tcp.c | sk->prot->queue_xmit(sk, skb->dev, skb, 0); |
| skb | 784 | net/inet/tcp.c | struct sk_buff * skb; |
| skb | 789 | net/inet/tcp.c | skb = sk->partial; |
| skb | 790 | net/inet/tcp.c | if (skb) { |
| skb | 795 | net/inet/tcp.c | return skb; |
| skb | 800 | net/inet/tcp.c | struct sk_buff *skb; |
| skb | 804 | net/inet/tcp.c | while ((skb = tcp_dequeue_partial(sk)) != NULL) |
| skb | 805 | net/inet/tcp.c | tcp_send_skb(sk, skb); |
| skb | 808 | net/inet/tcp.c | void tcp_enqueue_partial(struct sk_buff * skb, struct sock * sk) |
| skb | 818 | net/inet/tcp.c | sk->partial = skb; |
| skb | 959 | net/inet/tcp.c | struct sk_buff *skb; |
| skb | 1073 | net/inet/tcp.c | if ((skb = tcp_dequeue_partial(sk)) != NULL) |
| skb | 1078 | net/inet/tcp.c | hdrlen = ((unsigned long)skb->h.th - (unsigned long)skb->data) |
| skb | 1084 | net/inet/tcp.c | copy = min(sk->mss - (skb->len - hdrlen), len); |
| skb | 1092 | net/inet/tcp.c | memcpy_fromfs(skb->data + skb->len, from, copy); |
| skb | 1093 | net/inet/tcp.c | skb->len += copy; |
| skb | 1099 | net/inet/tcp.c | if ((skb->len - hdrlen) >= sk->mss || |
| skb | 1101 | net/inet/tcp.c | tcp_send_skb(sk, skb); |
| skb | 1103 | net/inet/tcp.c | tcp_enqueue_partial(skb, sk); |
| skb | 1140 | net/inet/tcp.c | skb = prot->wmalloc(sk, sk->mtu + 128 + prot->max_header, 0, GFP_KERNEL); |
| skb | 1142 | net/inet/tcp.c | send_tmp = skb; |
| skb | 1150 | net/inet/tcp.c | skb = prot->wmalloc(sk, copy + prot->max_header , 0, GFP_KERNEL); |
| skb | 1158 | net/inet/tcp.c | if (skb == NULL) |
| skb | 1196 | net/inet/tcp.c | skb->len = 0; |
| skb | 1197 | net/inet/tcp.c | skb->sk = sk; |
| skb | 1198 | net/inet/tcp.c | skb->free = 0; |
| skb | 1199 | net/inet/tcp.c | skb->localroute = sk->localroute|(flags&MSG_DONTROUTE); |
| skb | 1201 | net/inet/tcp.c | buff = skb->data; |
| skb | 1208 | net/inet/tcp.c | tmp = prot->build_header(skb, sk->saddr, sk->daddr, &dev, |
| skb | 1209 | net/inet/tcp.c | IPPROTO_TCP, sk->opt, skb->mem_len,sk->ip_tos,sk->ip_ttl); |
| skb | 1212 | net/inet/tcp.c | prot->wfree(sk, skb->mem_addr, skb->mem_len); |
| skb | 1218 | net/inet/tcp.c | skb->len += tmp; |
| skb | 1219 | net/inet/tcp.c | skb->dev = dev; |
| skb | 1221 | net/inet/tcp.c | skb->h.th =(struct tcphdr *) buff; |
| skb | 1225 | net/inet/tcp.c | prot->wfree(sk, skb->mem_addr, skb->mem_len); |
| skb | 1237 | net/inet/tcp.c | skb->len += tmp; |
| skb | 1243 | net/inet/tcp.c | skb->len += copy; |
| skb | 1244 | net/inet/tcp.c | skb->free = 0; |
| skb | 1252 | net/inet/tcp.c | tcp_send_skb(sk, skb); |
| skb | 1379 | net/inet/tcp.c | struct sk_buff *skb; |
| skb | 1395 | net/inet/tcp.c | while((skb=skb_peek(&sk->receive_queue)) != NULL) |
| skb | 1397 | net/inet/tcp.c | if (!skb->used) |
| skb | 1399 | net/inet/tcp.c | skb_unlink(skb); |
| skb | 1400 | net/inet/tcp.c | skb->sk = sk; |
| skb | 1401 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 1541 | net/inet/tcp.c | struct sk_buff * skb; |
| skb | 1552 | net/inet/tcp.c | skb = skb_peek(&sk->receive_queue); |
| skb | 1555 | net/inet/tcp.c | if (!skb) |
| skb | 1557 | net/inet/tcp.c | if (before(1+*seq, skb->h.th->seq)) |
| skb | 1559 | net/inet/tcp.c | offset = 1 + *seq - skb->h.th->seq; |
| skb | 1560 | net/inet/tcp.c | if (skb->h.th->syn) |
| skb | 1562 | net/inet/tcp.c | if (offset < skb->len) |
| skb | 1565 | net/inet/tcp.c | skb->used = 1; |
| skb | 1566 | net/inet/tcp.c | skb = skb->next; |
| skb | 1568 | net/inet/tcp.c | while (skb != (struct sk_buff *)&sk->receive_queue); |
| skb | 1617 | net/inet/tcp.c | used = skb->len - offset; |
| skb | 1640 | net/inet/tcp.c | memcpy_tofs(to,((unsigned char *)skb->h.th) + |
| skb | 1641 | net/inet/tcp.c | skb->h.th->doff*4 + offset, used); |
| skb | 1648 | net/inet/tcp.c | if (!(flags & MSG_PEEK) && (used + offset >= skb->len)) |
| skb | 1649 | net/inet/tcp.c | skb->used = 1; |
| skb | 2002 | net/inet/tcp.c | static void tcp_conn_request(struct sock *sk, struct sk_buff *skb, |
| skb | 2015 | net/inet/tcp.c | th = skb->h.th; |
| skb | 2028 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 2040 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 2057 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 2090 | net/inet/tcp.c | newsk->acked_seq = skb->h.th->seq+1; |
| skb | 2091 | net/inet/tcp.c | newsk->fin_seq = skb->h.th->seq; |
| skb | 2092 | net/inet/tcp.c | newsk->copied_seq = skb->h.th->seq; |
| skb | 2104 | net/inet/tcp.c | newsk->dummy_th.source = skb->h.th->dest; |
| skb | 2105 | net/inet/tcp.c | newsk->dummy_th.dest = skb->h.th->source; |
| skb | 2124 | net/inet/tcp.c | newsk->acked_seq = skb->h.th->seq + 1; |
| skb | 2125 | net/inet/tcp.c | newsk->copied_seq = skb->h.th->seq; |
| skb | 2133 | net/inet/tcp.c | newsk->ip_tos=skb->ip_hdr->tos; |
| skb | 2176 | net/inet/tcp.c | tcp_options(newsk,skb->h.th); |
| skb | 2184 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 2213 | net/inet/tcp.c | skb->sk = sk; |
| skb | 2214 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 2222 | net/inet/tcp.c | memcpy(t1, skb->h.th, sizeof(*t1)); |
| skb | 2227 | net/inet/tcp.c | t1->dest = skb->h.th->source; |
| skb | 2240 | net/inet/tcp.c | t1->ack_seq = ntohl(skb->h.th->seq+1); |
| skb | 2252 | net/inet/tcp.c | skb->sk = newsk; |
| skb | 2258 | net/inet/tcp.c | sk->rmem_alloc -= skb->mem_len; |
| skb | 2259 | net/inet/tcp.c | newsk->rmem_alloc += skb->mem_len; |
| skb | 2261 | net/inet/tcp.c | skb_queue_tail(&sk->receive_queue,skb); |
| skb | 2297 | net/inet/tcp.c | struct sk_buff *skb; |
| skb | 2300 | net/inet/tcp.c | while((skb=skb_dequeue(&sk->receive_queue))!=NULL) |
| skb | 2301 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 2481 | net/inet/tcp.c | struct sk_buff *skb; |
| skb | 2491 | net/inet/tcp.c | while((skb = skb_peek(&sk->write_queue)) != NULL && |
| skb | 2492 | net/inet/tcp.c | before(skb->h.seq, sk->window_seq + 1) && |
| skb | 2495 | net/inet/tcp.c | before(skb->h.seq, sk->rcv_ack_seq + 1)) |
| skb | 2498 | net/inet/tcp.c | IS_SKB(skb); |
| skb | 2499 | net/inet/tcp.c | skb_unlink(skb); |
| skb | 2501 | net/inet/tcp.c | if (before(skb->h.seq, sk->rcv_ack_seq +1)) |
| skb | 2504 | net/inet/tcp.c | kfree_skb(skb, FREE_WRITE); |
| skb | 2520 | net/inet/tcp.c | iph = (struct iphdr *)(skb->data + |
| skb | 2521 | net/inet/tcp.c | skb->dev->hard_header_len); |
| skb | 2523 | net/inet/tcp.c | size = skb->len - (((unsigned char *) th) - skb->data); |
| skb | 2530 | net/inet/tcp.c | sk->sent_seq = skb->h.seq; |
| skb | 2531 | net/inet/tcp.c | sk->prot->queue_xmit(sk, skb->dev, skb, skb->free); |
| skb | 2605 | net/inet/tcp.c | struct sk_buff *skb; |
| skb | 2619 | net/inet/tcp.c | skb = skb2; |
| skb | 2620 | net/inet/tcp.c | skb2 = skb->link3; |
| skb | 2621 | net/inet/tcp.c | skb->link3 = NULL; |
| skb | 2622 | net/inet/tcp.c | if (after(skb->h.seq, sk->window_seq)) |
| skb | 2627 | net/inet/tcp.c | if (skb->next != NULL) |
| skb | 2629 | net/inet/tcp.c | skb_unlink(skb); |
| skb | 2633 | net/inet/tcp.c | skb_queue_head(&sk->write_queue,skb); |
| skb | 2635 | net/inet/tcp.c | skb_append(wskb,skb); |
| skb | 2636 | net/inet/tcp.c | wskb = skb; |
| skb | 2642 | net/inet/tcp.c | sk->send_head = skb; |
| skb | 2643 | net/inet/tcp.c | sk->send_tail = skb; |
| skb | 2647 | net/inet/tcp.c | sk->send_tail->link3 = skb; |
| skb | 2648 | net/inet/tcp.c | sk->send_tail = skb; |
| skb | 2650 | net/inet/tcp.c | skb->link3 = NULL; |
| skb | 3058 | net/inet/tcp.c | static int tcp_data(struct sk_buff *skb, struct sock *sk, |
| skb | 3068 | net/inet/tcp.c | th = skb->h.th; |
| skb | 3069 | net/inet/tcp.c | skb->len = len -(th->doff*4); |
| skb | 3074 | net/inet/tcp.c | sk->bytes_rcv += skb->len; |
| skb | 3076 | net/inet/tcp.c | if (skb->len == 0 && !th->fin && !th->urg && !th->psh) |
| skb | 3084 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 3094 | net/inet/tcp.c | new_seq= th->seq + skb->len + th->syn; /* Right edge of _data_ part of frame */ |
| skb | 3127 | net/inet/tcp.c | tcp_reset(sk->saddr, sk->daddr, skb->h.th, |
| skb | 3128 | net/inet/tcp.c | sk->prot, NULL, skb->dev, sk->ip_tos, sk->ip_ttl); |
| skb | 3133 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 3153 | net/inet/tcp.c | skb_queue_head(&sk->receive_queue,skb); |
| skb | 3164 | net/inet/tcp.c | printk("skb->h.th->seq = %ld\n",skb->h.th->seq); |
| skb | 3177 | net/inet/tcp.c | if (th->seq==skb1->h.th->seq && skb->len>= skb1->len) |
| skb | 3179 | net/inet/tcp.c | skb_append(skb1,skb); |
| skb | 3193 | net/inet/tcp.c | skb_append(skb1,skb); |
| skb | 3202 | net/inet/tcp.c | skb_queue_head(&sk->receive_queue, skb); |
| skb | 3212 | net/inet/tcp.c | th->ack_seq = th->seq + skb->len; |
| skb | 3242 | net/inet/tcp.c | skb->acked = 1; |
| skb | 3248 | net/inet/tcp.c | if (skb->h.th->fin) |
| skb | 3255 | net/inet/tcp.c | for(skb2 = skb->next; |
| skb | 3318 | net/inet/tcp.c | if (!skb->acked) |
| skb | 3440 | net/inet/tcp.c | static int tcp_fin(struct sk_buff *skb, struct sock *sk, struct tcphdr *th, |
| skb | 3443 | net/inet/tcp.c | sk->fin_seq = th->seq + skb->len + th->syn + th->fin; |
| skb | 3522 | net/inet/tcp.c | struct sk_buff *skb; |
| skb | 3539 | net/inet/tcp.c | while((skb = tcp_dequeue_established(sk)) == NULL) |
| skb | 3565 | net/inet/tcp.c | newsk = skb->sk; |
| skb | 3567 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 3795 | net/inet/tcp.c | struct sk_buff *skb=skb_peek(&sk->receive_queue); |
| skb | 3796 | net/inet/tcp.c | if(skb==NULL || sk->receive_queue.prev->acked) |
| skb | 3803 | net/inet/tcp.c | tcp_rcv(struct sk_buff *skb, struct device *dev, struct options *opt, |
| skb | 3810 | net/inet/tcp.c | if (!skb) |
| skb | 3822 | net/inet/tcp.c | if(skb->pkt_type!=PACKET_HOST) |
| skb | 3824 | net/inet/tcp.c | kfree_skb(skb,FREE_READ); |
| skb | 3828 | net/inet/tcp.c | th = skb->h.th; |
| skb | 3848 | net/inet/tcp.c | skb->sk = NULL; |
| skb | 3849 | net/inet/tcp.c | kfree_skb(skb,FREE_READ); |
| skb | 3862 | net/inet/tcp.c | tcp_reset(daddr, saddr, th, &tcp_prot, opt,dev,skb->ip_hdr->tos,255); |
| skb | 3863 | net/inet/tcp.c | skb->sk = NULL; |
| skb | 3864 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 3868 | net/inet/tcp.c | skb->len = len; |
| skb | 3869 | net/inet/tcp.c | skb->sk = sk; |
| skb | 3870 | net/inet/tcp.c | skb->acked = 0; |
| skb | 3871 | net/inet/tcp.c | skb->used = 0; |
| skb | 3872 | net/inet/tcp.c | skb->free = 0; |
| skb | 3873 | net/inet/tcp.c | skb->saddr = daddr; |
| skb | 3874 | net/inet/tcp.c | skb->daddr = saddr; |
| skb | 3880 | net/inet/tcp.c | skb_queue_tail(&sk->back_log, skb); |
| skb | 3906 | net/inet/tcp.c | if (sk->rmem_alloc + skb->mem_len >= sk->rcvbuf) |
| skb | 3908 | net/inet/tcp.c | skb->sk = NULL; |
| skb | 3909 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 3914 | net/inet/tcp.c | sk->rmem_alloc += skb->mem_len; |
| skb | 3939 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 3946 | net/inet/tcp.c | skb->len -= (th->doff *4); |
| skb | 3947 | net/inet/tcp.c | sk->bytes_rcv += skb->len; |
| skb | 3949 | net/inet/tcp.c | if(skb->len) |
| skb | 3951 | net/inet/tcp.c | skb_queue_tail(&sk->receive_queue,skb); /* We already know where to put it */ |
| skb | 3952 | net/inet/tcp.c | if(sk->window >= skb->len) |
| skb | 3953 | net/inet/tcp.c | sk->window-=skb->len; /* We know its effect on the window */ |
| skb | 3956 | net/inet/tcp.c | sk->acked_seq = th->seq+skb->len; /* Easy */ |
| skb | 3957 | net/inet/tcp.c | skb->acked=1; /* Guaranteed true */ |
| skb | 3980 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 3986 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 3990 | net/inet/tcp.c | if(tcp_data(skb, sk, saddr, len)) |
| skb | 3991 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4020 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4038 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4064 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4102 | net/inet/tcp.c | tcp_conn_request(sk, skb, daddr, saddr,opt, dev,seq+128000); |
| skb | 4112 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4119 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4125 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4131 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4137 | net/inet/tcp.c | if (tcp_data(skb, sk, saddr, len)) { |
| skb | 4138 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4143 | net/inet/tcp.c | if (th->fin && tcp_fin(skb, sk, th, saddr, dev)) { |
| skb | 4144 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4155 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4166 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4172 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4179 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4192 | net/inet/tcp.c | tcp_conn_request(sk, skb, daddr, saddr, opt, dev, tcp_init_seq()); |
| skb | 4197 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4204 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4213 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4230 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4253 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4259 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4272 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4283 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4300 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4344 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4349 | net/inet/tcp.c | if (tcp_data(skb, sk, saddr, len)) |
| skb | 4350 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4353 | net/inet/tcp.c | tcp_fin(skb, sk, th, saddr, dev); |
| skb | 4362 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4367 | net/inet/tcp.c | if (tcp_data(skb, sk, saddr, len)) |
| skb | 4369 | net/inet/tcp.c | kfree_skb(skb, FREE_READ); |
| skb | 4379 | net/inet/tcp.c | tcp_fin(skb, sk, th, saddr, dev); |
| skb | 119 | net/inet/tcp.h | extern int tcp_rcv(struct sk_buff *skb, struct device *dev, |
| skb | 166 | net/inet/timer.c | struct sk_buff *skb; |
| skb | 171 | net/inet/timer.c | skb = sk->send_head; |
| skb | 172 | net/inet/timer.c | if (!skb) |
| skb | 178 | net/inet/timer.c | if (jiffies < skb->when + sk->rto) |
| skb | 180 | net/inet/timer.c | reset_timer (sk, TIME_WRITE, skb->when + sk->rto - jiffies); |
| skb | 252 | net/inet/udp.c | struct sk_buff *skb; |
| skb | 264 | net/inet/udp.c | skb = sock_alloc_send_skb(sk, size, 0, &tmp); |
| skb | 267 | net/inet/udp.c | if (skb == NULL) |
| skb | 270 | net/inet/udp.c | skb->sk = NULL; /* to avoid changing sk->saddr */ |
| skb | 271 | net/inet/udp.c | skb->free = 1; |
| skb | 272 | net/inet/udp.c | skb->localroute = sk->localroute|(rt&MSG_DONTROUTE); |
| skb | 278 | net/inet/udp.c | buff = skb->data; |
| skb | 281 | net/inet/udp.c | tmp = sk->prot->build_header(skb, saddr, sin->sin_addr.s_addr, |
| skb | 282 | net/inet/udp.c | &dev, IPPROTO_UDP, sk->opt, skb->mem_len,sk->ip_tos,sk->ip_ttl); |
| skb | 283 | net/inet/udp.c | skb->sk=sk; /* So memory is freed correctly */ |
| skb | 291 | net/inet/udp.c | sk->prot->wfree(sk, skb->mem_addr, skb->mem_len); |
| skb | 296 | net/inet/udp.c | saddr = skb->saddr; /*dev->pa_addr;*/ |
| skb | 297 | net/inet/udp.c | skb->len = tmp + sizeof(struct udphdr) + len; /* len + UDP + IP + MAC */ |
| skb | 298 | net/inet/udp.c | skb->dev = dev; |
| skb | 320 | net/inet/udp.c | udp_send_check(uh, saddr, sin->sin_addr.s_addr, skb->len - tmp, sk); |
| skb | 328 | net/inet/udp.c | sk->prot->queue_xmit(sk, dev, skb, 1); |
| skb | 424 | net/inet/udp.c | struct sk_buff *skb; |
| skb | 429 | net/inet/udp.c | skb = skb_peek(&sk->receive_queue); |
| skb | 430 | net/inet/udp.c | if (skb != NULL) { |
| skb | 436 | net/inet/udp.c | amount = skb->len; |
| skb | 464 | net/inet/udp.c | struct sk_buff *skb; |
| skb | 479 | net/inet/udp.c | skb=skb_recv_datagram(sk,flags,noblock,&er); |
| skb | 480 | net/inet/udp.c | if(skb==NULL) |
| skb | 483 | net/inet/udp.c | truesize = skb->len; |
| skb | 490 | net/inet/udp.c | skb_copy_datagram(skb,sizeof(struct udphdr),to,copied); |
| skb | 491 | net/inet/udp.c | sk->stamp=skb->stamp; |
| skb | 497 | net/inet/udp.c | sin->sin_port = skb->h.uh->source; |
| skb | 498 | net/inet/udp.c | sin->sin_addr.s_addr = skb->daddr; |
| skb | 501 | net/inet/udp.c | skb_free_datagram(skb); |
| skb | 552 | net/inet/udp.c | int udp_rcv(struct sk_buff *skb, struct device *dev, struct options *opt, |
| skb | 563 | net/inet/udp.c | uh = (struct udphdr *) skb->h.uh; |
| skb | 577 | net/inet/udp.c | kfree_skb(skb, FREE_WRITE); |
| skb | 588 | net/inet/udp.c | icmp_send(skb, ICMP_DEST_UNREACH, ICMP_PORT_UNREACH, dev); |
| skb | 594 | net/inet/udp.c | skb->sk = NULL; |
| skb | 595 | net/inet/udp.c | kfree_skb(skb, FREE_WRITE); |
| skb | 603 | net/inet/udp.c | kfree_skb(skb, FREE_WRITE); |
| skb | 607 | net/inet/udp.c | skb->sk = sk; |
| skb | 608 | net/inet/udp.c | skb->dev = dev; |
| skb | 609 | net/inet/udp.c | skb->len = len; |
| skb | 615 | net/inet/udp.c | skb->daddr = saddr; |
| skb | 616 | net/inet/udp.c | skb->saddr = daddr; |
| skb | 623 | net/inet/udp.c | skb->len = len - sizeof(*uh); |
| skb | 625 | net/inet/udp.c | if (sock_queue_rcv_skb(sk,skb)<0) |
| skb | 630 | net/inet/udp.c | skb->sk = NULL; |
| skb | 631 | net/inet/udp.c | kfree_skb(skb, FREE_WRITE); |
| skb | 43 | net/inet/udp.h | extern int udp_rcv(struct sk_buff *skb, struct device *dev, |