taglinefilesource code
newsk99include/linux/skbuff.hextern void       skb_insert(struct sk_buff *old,struct sk_buff *newsk);
newsk100include/linux/skbuff.hextern void      skb_append(struct sk_buff *old,struct sk_buff *newsk);
newsk144net/inet/skbuff.cvoid skb_queue_head(struct sk_buff_head *list_,struct sk_buff *newsk)
newsk153net/inet/skbuff.cIS_SKB(newsk);
newsk155net/inet/skbuff.cif (newsk->next || newsk->prev)
newsk159net/inet/skbuff.cnewsk->next = list->next;
newsk160net/inet/skbuff.cnewsk->prev = list;
newsk162net/inet/skbuff.cnewsk->next->prev = newsk;
newsk163net/inet/skbuff.cnewsk->prev->next = newsk;
newsk172net/inet/skbuff.cvoid skb_queue_tail(struct sk_buff_head *list_, struct sk_buff *newsk)
newsk181net/inet/skbuff.cif (newsk->next || newsk->prev)
newsk183net/inet/skbuff.cIS_SKB(newsk);
newsk187net/inet/skbuff.cnewsk->next = list;
newsk188net/inet/skbuff.cnewsk->prev = list->prev;
newsk190net/inet/skbuff.cnewsk->next->prev = newsk;
newsk191net/inet/skbuff.cnewsk->prev->next = newsk;
newsk233net/inet/skbuff.cvoid skb_insert(struct sk_buff *old, struct sk_buff *newsk)
newsk239net/inet/skbuff.cIS_SKB(newsk);
newsk243net/inet/skbuff.cif(newsk->next || newsk->prev)
newsk249net/inet/skbuff.cnewsk->next = old;
newsk250net/inet/skbuff.cnewsk->prev = old->prev;
newsk251net/inet/skbuff.cold->prev = newsk;
newsk252net/inet/skbuff.cnewsk->prev->next = newsk;
newsk261net/inet/skbuff.cvoid skb_append(struct sk_buff *old, struct sk_buff *newsk)
newsk267net/inet/skbuff.cIS_SKB(newsk);
newsk271net/inet/skbuff.cif(newsk->next || newsk->prev)
newsk278net/inet/skbuff.cnewsk->prev = old;
newsk279net/inet/skbuff.cnewsk->next = old->next;
newsk280net/inet/skbuff.cnewsk->next->prev = newsk;
newsk281net/inet/skbuff.cold->next = newsk;
newsk327net/inet/skbuff.cstruct sk_buff *orig,*newsk;
newsk346net/inet/skbuff.cnewsk = alloc_skb(len,GFP_KERNEL);  /* May sleep */
newsk348net/inet/skbuff.cif (newsk == NULL)    /* Oh dear... not to worry */
newsk356net/inet/skbuff.cnewsk->sk = NULL;
newsk357net/inet/skbuff.cnewsk->free = 1;
newsk358net/inet/skbuff.cnewsk->mem_addr = newsk;
newsk359net/inet/skbuff.cnewsk->mem_len = len;
newsk360net/inet/skbuff.ckfree_skb(newsk, FREE_WRITE);
newsk365net/inet/skbuff.cIS_SKB(newsk);
newsk366net/inet/skbuff.cmemcpy(newsk,orig,len);
newsk367net/inet/skbuff.cnewsk->next = NULL;
newsk368net/inet/skbuff.cnewsk->prev = NULL;
newsk369net/inet/skbuff.cnewsk->mem_addr = newsk;
newsk370net/inet/skbuff.cnewsk->h.raw += ((char *)newsk - (char *)orig);
newsk371net/inet/skbuff.cnewsk->link3 = NULL;
newsk372net/inet/skbuff.cnewsk->sk = NULL;
newsk373net/inet/skbuff.cnewsk->free = 1;
newsk378net/inet/skbuff.creturn newsk;
newsk1818net/inet/tcp.cstruct sock *newsk;
newsk1857net/inet/tcp.cnewsk = (struct sock *) kmalloc(sizeof(struct sock), GFP_ATOMIC);
newsk1858net/inet/tcp.cif (newsk == NULL) {
newsk1865net/inet/tcp.cDPRINTF((DBG_TCP, "newsk = %X\n", newsk));
newsk1866net/inet/tcp.cmemcpy(newsk, sk, sizeof(*newsk));
newsk1867net/inet/tcp.cskb_queue_head_init(&newsk->write_queue);
newsk1868net/inet/tcp.cskb_queue_head_init(&newsk->receive_queue);
newsk1869net/inet/tcp.cnewsk->send_head = NULL;
newsk1870net/inet/tcp.cnewsk->send_tail = NULL;
newsk1871net/inet/tcp.cskb_queue_head_init(&newsk->back_log);
newsk1872net/inet/tcp.cnewsk->rtt = TCP_CONNECT_TIME << 3;
newsk1873net/inet/tcp.cnewsk->rto = TCP_CONNECT_TIME;
newsk1874net/inet/tcp.cnewsk->mdev = 0;
newsk1875net/inet/tcp.cnewsk->max_window = 0;
newsk1876net/inet/tcp.cnewsk->cong_window = 1;
newsk1877net/inet/tcp.cnewsk->cong_count = 0;
newsk1878net/inet/tcp.cnewsk->ssthresh = 0;
newsk1879net/inet/tcp.cnewsk->backoff = 0;
newsk1880net/inet/tcp.cnewsk->blog = 0;
newsk1881net/inet/tcp.cnewsk->intr = 0;
newsk1882net/inet/tcp.cnewsk->proc = 0;
newsk1883net/inet/tcp.cnewsk->done = 0;
newsk1884net/inet/tcp.cnewsk->partial = NULL;
newsk1885net/inet/tcp.cnewsk->pair = NULL;
newsk1886net/inet/tcp.cnewsk->wmem_alloc = 0;
newsk1887net/inet/tcp.cnewsk->rmem_alloc = 0;
newsk1888net/inet/tcp.cnewsk->localroute = sk->localroute;
newsk1890net/inet/tcp.cnewsk->max_unacked = MAX_WINDOW - TCP_WINDOW_DIFF;
newsk1892net/inet/tcp.cnewsk->err = 0;
newsk1893net/inet/tcp.cnewsk->shutdown = 0;
newsk1894net/inet/tcp.cnewsk->ack_backlog = 0;
newsk1895net/inet/tcp.cnewsk->acked_seq = skb->h.th->seq+1;
newsk1896net/inet/tcp.cnewsk->fin_seq = skb->h.th->seq;
newsk1897net/inet/tcp.cnewsk->copied_seq = skb->h.th->seq;
newsk1898net/inet/tcp.cnewsk->state = TCP_SYN_RECV;
newsk1899net/inet/tcp.cnewsk->timeout = 0;
newsk1900net/inet/tcp.cnewsk->write_seq = jiffies * SEQ_TICK - seq_offset;
newsk1901net/inet/tcp.cnewsk->window_seq = newsk->write_seq;
newsk1902net/inet/tcp.cnewsk->rcv_ack_seq = newsk->write_seq;
newsk1903net/inet/tcp.cnewsk->urg_data = 0;
newsk1904net/inet/tcp.cnewsk->retransmits = 0;
newsk1905net/inet/tcp.cnewsk->destroy = 0;
newsk1906net/inet/tcp.cnewsk->timer.data = (unsigned long)newsk;
newsk1907net/inet/tcp.cnewsk->timer.function = &net_timer;
newsk1908net/inet/tcp.cnewsk->dummy_th.source = skb->h.th->dest;
newsk1909net/inet/tcp.cnewsk->dummy_th.dest = skb->h.th->source;
newsk1912net/inet/tcp.cnewsk->daddr = saddr;
newsk1913net/inet/tcp.cnewsk->saddr = daddr;
newsk1915net/inet/tcp.cput_sock(newsk->num,newsk);
newsk1916net/inet/tcp.cnewsk->dummy_th.res1 = 0;
newsk1917net/inet/tcp.cnewsk->dummy_th.doff = 6;
newsk1918net/inet/tcp.cnewsk->dummy_th.fin = 0;
newsk1919net/inet/tcp.cnewsk->dummy_th.syn = 0;
newsk1920net/inet/tcp.cnewsk->dummy_th.rst = 0;
newsk1921net/inet/tcp.cnewsk->dummy_th.psh = 0;
newsk1922net/inet/tcp.cnewsk->dummy_th.ack = 0;
newsk1923net/inet/tcp.cnewsk->dummy_th.urg = 0;
newsk1924net/inet/tcp.cnewsk->dummy_th.res2 = 0;
newsk1925net/inet/tcp.cnewsk->acked_seq = skb->h.th->seq + 1;
newsk1926net/inet/tcp.cnewsk->copied_seq = skb->h.th->seq;
newsk1929net/inet/tcp.cnewsk->ip_ttl=sk->ip_ttl;
newsk1930net/inet/tcp.cnewsk->ip_tos=skb->ip_hdr->tos;
newsk1935net/inet/tcp.cnewsk->mtu = sk->user_mss;
newsk1942net/inet/tcp.cnewsk->mtu = 576 - HEADER_SIZE;
newsk1944net/inet/tcp.cnewsk->mtu = MAX_WINDOW;
newsk1947net/inet/tcp.cnewsk->mtu = min(newsk->mtu, dev->mtu - HEADER_SIZE);
newsk1950net/inet/tcp.ctcp_options(newsk,skb->h.th);
newsk1952net/inet/tcp.cbuff = newsk->prot->wmalloc(newsk, MAX_SYN_SIZE, 1, GFP_ATOMIC);
newsk1955net/inet/tcp.cnewsk->dead = 1;
newsk1956net/inet/tcp.crelease_sock(newsk);
newsk1963net/inet/tcp.cbuff->sk = newsk;
newsk1964net/inet/tcp.cbuff->localroute = newsk->localroute;
newsk1969net/inet/tcp.ctmp = sk->prot->build_header(buff, newsk->saddr, newsk->daddr, &ndev,
newsk1977net/inet/tcp.cnewsk->dead = 1;
newsk1978net/inet/tcp.crelease_sock(newsk);
newsk1989net/inet/tcp.cbuff->h.seq = newsk->write_seq;
newsk1993net/inet/tcp.ct1->source = newsk->dummy_th.source;
newsk1994net/inet/tcp.ct1->seq = ntohl(newsk->write_seq++);
newsk1996net/inet/tcp.cnewsk->window = tcp_select_window(newsk);/*newsk->prot->rspace(newsk);*/
newsk1997net/inet/tcp.cnewsk->sent_seq = newsk->write_seq;
newsk1998net/inet/tcp.ct1->window = ntohs(newsk->window);
newsk2011net/inet/tcp.cptr[2] = ((newsk->mtu) >> 8) & 0xff;
newsk2012net/inet/tcp.cptr[3] =(newsk->mtu) & 0xff;
newsk2014net/inet/tcp.ctcp_send_check(t1, daddr, saddr, sizeof(*t1)+4, newsk);
newsk2015net/inet/tcp.cnewsk->prot->queue_xmit(newsk, dev, buff, 0);
newsk2017net/inet/tcp.creset_timer(newsk, TIME_WRITE /* -1 ? FIXME ??? */, TCP_CONNECT_TIME);
newsk2018net/inet/tcp.cskb->sk = newsk;
newsk2022net/inet/tcp.cnewsk->rmem_alloc += skb->mem_len;
newsk2026net/inet/tcp.crelease_sock(newsk);
newsk2979net/inet/tcp.cstruct sock *newsk;
newsk3017net/inet/tcp.cnewsk = skb->sk;
newsk3022net/inet/tcp.creturn(newsk);