taglinefilesource code
sk280net/tcp/arp.cskb->sk = NULL;
sk439net/tcp/arp.cskb->sk = NULL;
sk298net/tcp/dev.cskb->sk = NULL;
sk156net/tcp/icmp.cskb->sk = NULL;
sk191net/tcp/icmp.cskb1->sk = NULL;
sk207net/tcp/icmp.cskb1->sk = NULL;
sk248net/tcp/icmp.cskb1->sk = NULL;
sk271net/tcp/icmp.cskb1->sk = NULL;
sk284net/tcp/icmp.cskb1->sk = NULL;
sk288net/tcp/icmp.cskb->sk = NULL;
sk300net/tcp/icmp.cskb1->sk = NULL;
sk323net/tcp/icmp.cskb1->sk = NULL;
sk329net/tcp/icmp.cskb1->sk = NULL;
sk335net/tcp/icmp.cskb1->sk = NULL;
sk828net/tcp/ip.cskb->sk = NULL;
sk841net/tcp/ip.cskb->sk = NULL;
sk853net/tcp/ip.cskb->sk = NULL;
sk899net/tcp/ip.cskb->sk = NULL;
sk914net/tcp/ip.cip_queue_xmit (volatile struct sock *sk, struct device *dev, 
sk919net/tcp/ip.cif (sk == NULL) free = 1;
sk946net/tcp/ip.csk->packets_out++;
sk948net/tcp/ip.cif (sk->send_tail == NULL)
sk950net/tcp/ip.csk->send_tail = skb;
sk951net/tcp/ip.csk->send_head = skb;
sk955net/tcp/ip.csk->send_tail->link3 = skb;
sk956net/tcp/ip.csk->send_tail = skb;
sk959net/tcp/ip.csk->time_wait.len = sk->rtt*2;
sk960net/tcp/ip.csk->timeout=TIME_WRITE;
sk961net/tcp/ip.creset_timer ((struct timer *)&sk->time_wait);
sk965net/tcp/ip.cskb->sk = sk;
sk969net/tcp/ip.cif (sk != NULL)
sk971net/tcp/ip.cdev->queue_xmit(skb, dev, sk->priority);
sk986net/tcp/ip.cip_retransmit (volatile struct sock *sk, int all)
sk992net/tcp/ip.cprot = sk->prot;
sk993net/tcp/ip.cskb = sk->send_head;
sk1012net/tcp/ip.cif (sk)
sk1013net/tcp/ip.cdev->queue_xmit(skb, dev, sk->priority);
sk1017net/tcp/ip.csk->retransmits++;
sk1018net/tcp/ip.csk->prot->retransmits ++;
sk1023net/tcp/ip.cif (sk->retransmits > sk->cong_window) break;
sk1032net/tcp/ip.csk->rtt *= 2;
sk1033net/tcp/ip.csk->time_wait.len = sk->rtt;
sk1034net/tcp/ip.csk->timeout = TIME_WRITE;
sk1035net/tcp/ip.creset_timer ((struct timer *)&sk->time_wait);
sk178net/tcp/ip.hvoid ip_queue_xmit (volatile struct sock *sk, struct device *dev, 
sk180net/tcp/ip.hvoid ip_retransmit(volatile struct sock *sk, int all);
sk184net/tcp/ip.hint ip_handoff (volatile struct sock *sk);
sk78net/tcp/packet.cvolatile struct sock *sk;
sk80net/tcp/packet.csk = pt->data;
sk86net/tcp/packet.cif (sk->inuse)
sk92net/tcp/packet.cskb->sk = NULL;
sk97net/tcp/packet.csk->inuse = 1;
sk100net/tcp/packet.cskb->sk = sk;
sk103net/tcp/packet.cif (sk->rmem_alloc + skb->mem_len >= SK_RMEM_MAX)
sk105net/tcp/packet.cskb->sk = NULL;
sk110net/tcp/packet.csk->rmem_alloc += skb->mem_len;
sk113net/tcp/packet.cif (sk->rqueue == NULL)
sk115net/tcp/packet.csk->rqueue = skb;
sk121net/tcp/packet.cskb->next = sk->rqueue;
sk122net/tcp/packet.cskb->prev = sk->rqueue->prev;
sk126net/tcp/packet.cwake_up (sk->sleep);
sk127net/tcp/packet.crelease_sock (sk);
sk133net/tcp/packet.cpacket_sendto (volatile struct sock *sk, unsigned char *from, int len,
sk156net/tcp/packet.cskb = sk->prot->wmalloc (sk, len+sizeof (*skb), 0, GFP_KERNEL);
sk167net/tcp/packet.cskb->sk = sk;
sk173net/tcp/packet.csk->prot->wfree (sk, skb->mem_addr, skb->mem_len);
sk181net/tcp/packet.cdev->queue_xmit (skb, dev, sk->priority);
sk188net/tcp/packet.cpacket_write (volatile struct sock *sk, unsigned char *buff, 
sk191net/tcp/packet.creturn (packet_sendto (sk, buff, len, noblock, flags, NULL, 0));
sk195net/tcp/packet.cpacket_close (volatile struct sock *sk, int timeout)
sk197net/tcp/packet.csk->inuse = 1;
sk198net/tcp/packet.csk->state = TCP_CLOSE;
sk199net/tcp/packet.cdev_remove_pack ((struct packet_type *)sk->pair);
sk200net/tcp/packet.ckfree_s ((void *)sk->pair, sizeof (struct packet_type));
sk201net/tcp/packet.csk->pair = NULL;
sk202net/tcp/packet.crelease_sock (sk);
sk206net/tcp/packet.cpacket_init (volatile struct sock *sk)
sk213net/tcp/packet.cp->type = sk->num;
sk214net/tcp/packet.cp->data = (void *)sk;
sk218net/tcp/packet.csk->pair = (volatile struct sock *)p;
sk225net/tcp/packet.cpacket_recvfrom (volatile struct sock *sk, unsigned char *to, int len,
sk239net/tcp/packet.cif (sk->shutdown & RCV_SHUTDOWN) return (0);
sk247net/tcp/packet.csk->inuse = 1;
sk248net/tcp/packet.cwhile (sk->rqueue == NULL)
sk252net/tcp/packet.crelease_sock (sk);
sk255net/tcp/packet.crelease_sock (sk);
sk257net/tcp/packet.cif (sk->rqueue == NULL)
sk259net/tcp/packet.cinterruptible_sleep_on (sk->sleep);
sk265net/tcp/packet.csk->inuse = 1;
sk268net/tcp/packet.cskb = sk->rqueue;
sk274net/tcp/packet.csk->rqueue = NULL;
sk278net/tcp/packet.csk->rqueue = (struct sk_buff *)sk->rqueue ->next;
sk301net/tcp/packet.crelease_sock (sk);
sk307net/tcp/packet.cpacket_read (volatile struct sock *sk, unsigned char *buff,
sk310net/tcp/packet.creturn (packet_recvfrom (sk, buff, len, noblock, flags, NULL, NULL));
sk314net/tcp/packet.cint udp_connect (volatile struct sock *sk, struct sockaddr_in *usin,
sk317net/tcp/packet.cint udp_select (volatile struct sock *sk, int sel_type, select_table *wait);
sk105net/tcp/raw.cvolatile struct sock *sk;
sk111net/tcp/raw.csk = protocol->data;
sk113net/tcp/raw.cif (sk == NULL) return;
sk118net/tcp/raw.cif (sk->cong_window > 1)
sk119net/tcp/raw.csk->cong_window = sk->cong_window/2;
sk123net/tcp/raw.csk->err = icmp_err_convert[err & 0xff].errno;
sk142net/tcp/raw.cvolatile struct sock *sk;
sk154net/tcp/raw.csk = protocol->data;
sk155net/tcp/raw.cif (sk == NULL)
sk162net/tcp/raw.cskb->sk = sk;
sk172net/tcp/raw.cif (sk->inuse)
sk175net/tcp/raw.cif (sk->back_log == NULL)
sk177net/tcp/raw.csk->back_log = skb;
sk183net/tcp/raw.cskb->next = sk->back_log;
sk184net/tcp/raw.cskb->prev = sk->back_log->prev;
sk191net/tcp/raw.csk->inuse = 1;
sk196net/tcp/raw.cif (sk->rmem_alloc + skb->mem_len >= SK_RMEM_MAX)
sk198net/tcp/raw.cskb->sk = NULL;
sk203net/tcp/raw.csk->rmem_alloc += skb->mem_len;
sk206net/tcp/raw.cif (sk->rqueue == NULL)
sk208net/tcp/raw.csk->rqueue = skb;
sk214net/tcp/raw.cskb->next = sk->rqueue;
sk215net/tcp/raw.cskb->prev = sk->rqueue->prev;
sk219net/tcp/raw.cwake_up (sk->sleep);
sk220net/tcp/raw.crelease_sock (sk);
sk226net/tcp/raw.craw_sendto (volatile struct sock *sk, unsigned char *from, int len,
sk236net/tcp/raw.c"            usin=%X, addr_len = %d)\n", sk, from, len, noblock,
sk256net/tcp/raw.cif (sk->state != TCP_ESTABLISHED)
sk259net/tcp/raw.csin.sin_port = sk->protocol;
sk260net/tcp/raw.csin.sin_addr.s_addr = sk->daddr;
sk262net/tcp/raw.cif (sin.sin_port == 0) sin.sin_port = sk->protocol;
sk264net/tcp/raw.csk->inuse = 1;
sk268net/tcp/raw.cskb = sk->prot->wmalloc (sk, len+sizeof (*skb) + sk->prot->max_header,
sk277net/tcp/raw.ctmp = sk->wmem_alloc;
sk278net/tcp/raw.crelease_sock (sk);
sk280net/tcp/raw.cif (tmp <= sk->wmem_alloc)
sk282net/tcp/raw.cinterruptible_sleep_on (sk->sleep);
sk289net/tcp/raw.csk->inuse = 1;
sk295net/tcp/raw.cskb->mem_len = len + sizeof (*skb) +sk->prot->max_header;
sk296net/tcp/raw.cskb->sk = sk;
sk301net/tcp/raw.ctmp = sk->prot->build_header (skb, sk->saddr, 
sk303net/tcp/raw.csk->protocol, sk->opt, skb->mem_len);
sk307net/tcp/raw.csk->prot->wfree (sk, skb->mem_addr, skb->mem_len);
sk308net/tcp/raw.crelease_sock (sk);
sk315net/tcp/raw.csk->prot->queue_xmit (sk, dev, skb, 1);
sk316net/tcp/raw.crelease_sock (sk);
sk321net/tcp/raw.craw_write (volatile struct sock *sk, unsigned char *buff, int len, int noblock,
sk324net/tcp/raw.creturn (raw_sendto (sk, buff, len, noblock, flags, NULL, 0));
sk328net/tcp/raw.craw_close (volatile struct sock *sk, int timeout)
sk330net/tcp/raw.csk->inuse = 1;
sk331net/tcp/raw.csk->state = TCP_CLOSE;
sk333net/tcp/raw.c((struct ip_protocol *)sk->pair)->protocol));
sk334net/tcp/raw.cif (delete_ip_protocol ((struct ip_protocol *)sk->pair) < 0)
sk336net/tcp/raw.ckfree_s ((void *)sk->pair, sizeof (struct ip_protocol));
sk337net/tcp/raw.csk->pair = NULL;
sk338net/tcp/raw.crelease_sock (sk);
sk342net/tcp/raw.craw_init (volatile struct sock *sk)
sk349net/tcp/raw.cp->protocol = sk->protocol;
sk350net/tcp/raw.cp->data = (void *)sk;
sk355net/tcp/raw.csk->pair = (volatile struct sock *)p;
sk357net/tcp/raw.cPRINTK (("raw init added protocol %d\n", sk->protocol));
sk364net/tcp/raw.craw_recvfrom (volatile struct sock *sk, unsigned char *to, int len,
sk374net/tcp/raw.c"              sin=%X, addr_len=%X)\n", sk, to, len, noblock,
sk380net/tcp/raw.cif (sk->shutdown & RCV_SHUTDOWN) return (0);
sk386net/tcp/raw.csk->inuse = 1;
sk387net/tcp/raw.cwhile (sk->rqueue == NULL)
sk391net/tcp/raw.crelease_sock (sk);
sk395net/tcp/raw.crelease_sock (sk);
sk397net/tcp/raw.cif (sk->rqueue == NULL)
sk399net/tcp/raw.cinterruptible_sleep_on (sk->sleep);
sk406net/tcp/raw.csk->inuse = 1;
sk409net/tcp/raw.cskb = sk->rqueue;
sk415net/tcp/raw.csk->rqueue = NULL;
sk419net/tcp/raw.csk->rqueue = (struct sk_buff *)sk->rqueue ->next;
sk441net/tcp/raw.crelease_sock (sk);
sk447net/tcp/raw.craw_read (volatile struct sock *sk, unsigned char *buff, int len, int noblock,
sk450net/tcp/raw.creturn (raw_recvfrom (sk, buff, len, noblock, flags, NULL, NULL));
sk454net/tcp/raw.cint udp_connect (volatile struct sock *sk, struct sockaddr_in *usin,
sk457net/tcp/raw.cint udp_select (volatile struct sock *sk, int sel_type, select_table *wait);
sk195net/tcp/sock.cprint_sk (volatile struct sock *sk)
sk197net/tcp/sock.cif (!sk) {
sk201net/tcp/sock.cprintk ("  wmem_alloc = %d\n", sk->wmem_alloc);
sk202net/tcp/sock.cprintk ("  rmem_alloc = %d\n", sk->rmem_alloc);
sk203net/tcp/sock.cprintk ("  send_head = %X\n", sk->send_head);
sk204net/tcp/sock.cprintk ("  state = %d\n",sk->state);
sk205net/tcp/sock.cprintk ("  wback = %X, rqueue = %X\n", sk->wback, sk->rqueue);
sk206net/tcp/sock.cprintk ("  wfront = %X\n", sk->wfront);
sk207net/tcp/sock.cprintk ("  daddr = %X, saddr = %X\n", sk->daddr,sk->saddr);
sk208net/tcp/sock.cprintk ("  num = %d", sk->num);
sk209net/tcp/sock.cprintk (" next = %X\n", sk->next);
sk211net/tcp/sock.csk->send_seq, sk->acked_seq, sk->copied_seq);
sk213net/tcp/sock.csk->rcv_ack_seq, sk->window_seq, sk->fin_seq);
sk214net/tcp/sock.cprintk ("  prot = %X\n", sk->prot);
sk215net/tcp/sock.cprintk ("  pair = %X, back_log = %X\n", sk->pair,sk->back_log);
sk216net/tcp/sock.cprintk ("  inuse = %d , blog = %d\n", sk->inuse, sk->blog);
sk217net/tcp/sock.cprintk ("  dead = %d delay_acks=%d\n", sk->dead, sk->delay_acks);
sk218net/tcp/sock.cprintk ("  retransmits = %d, timeout = %d\n", sk->retransmits, sk->timeout);
sk219net/tcp/sock.cprintk ("  cong_window = %d, packets_out = %d\n", sk->cong_window,
sk220net/tcp/sock.csk->packets_out);
sk221net/tcp/sock.cprintk ("  urg = %d shutdown=%d\n", sk->urg, sk->shutdown);
sk232net/tcp/sock.cprintk ("  sk = %X link3 = %X\n", skb->sk, skb->link3);
sk270net/tcp/sock.cif (skb->sk)
sk274net/tcp/sock.cskb->sk->prot->rfree (skb->sk, skb->mem_addr, skb->mem_len);
sk278net/tcp/sock.cskb->sk->prot->wfree (skb->sk, skb->mem_addr, skb->mem_len);
sk302net/tcp/sock.cvolatile struct sock *sk;
sk303net/tcp/sock.cfor (sk = prot->sock_array[num & (SOCK_ARRAY_SIZE -1 )];
sk304net/tcp/sock.csk != NULL; sk=sk->next)
sk306net/tcp/sock.cif (sk->num == num) return (1);
sk321net/tcp/sock.cvolatile struct sock *sk;
sk334net/tcp/sock.csk = prot->sock_array[(i+base+1) & (SOCK_ARRAY_SIZE -1)];
sk335net/tcp/sock.cwhile (sk != NULL)
sk337net/tcp/sock.csk = sk->next;
sk364net/tcp/sock.cput_sock(unsigned short num, volatile struct sock *sk)
sk370net/tcp/sock.cPRINTK (("put_sock (num = %d, sk = %X\n", num, sk));
sk371net/tcp/sock.csk->num = num;
sk372net/tcp/sock.csk->next = NULL;
sk377net/tcp/sock.cif (sk->prot->sock_array[num] == NULL)
sk379net/tcp/sock.csk->prot->sock_array[num] = sk;
sk386net/tcp/sock.cif (mask & sk->saddr)
sk396net/tcp/sock.csk1 = sk->prot->sock_array[num];
sk403net/tcp/sock.csk->next = sk->prot->sock_array[num];
sk404net/tcp/sock.csk->prot->sock_array[num] = sk;
sk408net/tcp/sock.csk->next = sk2;
sk409net/tcp/sock.csk1->next= sk;
sk416net/tcp/sock.csk->next = NULL;
sk417net/tcp/sock.csk1->next = sk;
sk466net/tcp/sock.cdestroy_sock(volatile struct sock *sk)
sk470net/tcp/sock.cPRINTK (("destroying socket %X\n",sk));
sk472net/tcp/sock.csk->inuse = 1;
sk475net/tcp/sock.cif (!sk->dead) wake_up (sk->sleep);
sk477net/tcp/sock.cremove_sock (sk);
sk480net/tcp/sock.cdelete_timer((struct timer *)&sk->time_wait);
sk482net/tcp/sock.cif (sk->send_tmp != NULL) kfree_skb (sk->send_tmp, FREE_WRITE);
sk485net/tcp/sock.cfor (skb = sk->wfront; skb != NULL; )
sk499net/tcp/sock.csk->wfront = NULL;
sk500net/tcp/sock.csk->wback = NULL;
sk502net/tcp/sock.cif (sk->rqueue != NULL)
sk504net/tcp/sock.cskb = sk->rqueue;
sk512net/tcp/sock.cif (skb->sk != NULL && skb->sk != sk)
sk514net/tcp/sock.cskb->sk->dead = 1;
sk515net/tcp/sock.cskb->sk->prot->close (skb->sk, 0);
sk519net/tcp/sock.c} while (skb != sk->rqueue);
sk522net/tcp/sock.csk->rqueue = NULL;
sk525net/tcp/sock.cfor (skb = sk->send_head; skb != NULL; )
sk618net/tcp/sock.csk->send_head = NULL;
sk622net/tcp/sock.cif (sk->back_log != NULL)
sk627net/tcp/sock.cskb = (struct sk_buff *)sk->back_log;
sk633net/tcp/sock.c} while (skb != sk->back_log);
sk637net/tcp/sock.csk->back_log = NULL;
sk640net/tcp/sock.cif (sk->pair)
sk642net/tcp/sock.csk->pair->dead = 1;
sk643net/tcp/sock.csk->pair->prot->close (sk->pair, 0);
sk644net/tcp/sock.csk->pair = NULL;
sk649net/tcp/sock.cif (sk->rmem_alloc == 0 && sk->wmem_alloc == 0)
sk651net/tcp/sock.ckfree_s ((void *)sk,sizeof (*sk));
sk657net/tcp/sock.cPRINTK (("possible memory leak in socket = %X\n", sk));
sk658net/tcp/sock.csk->destroy = 1;
sk659net/tcp/sock.csk->ack_backlog = 0;
sk660net/tcp/sock.csk->inuse = 0;
sk661net/tcp/sock.csk->time_wait.len = SOCK_DESTROY_TIME;
sk662net/tcp/sock.csk->timeout = TIME_DESTROY;
sk663net/tcp/sock.creset_timer ((struct timer *)&sk->time_wait);
sk672net/tcp/sock.cvolatile struct sock *sk;
sk674net/tcp/sock.csk=sock->data;
sk675net/tcp/sock.cif (sk == NULL)
sk690net/tcp/sock.csk->proc = arg;
sk695net/tcp/sock.csk->proc = arg;
sk699net/tcp/sock.creturn (sk->proc);
sk710net/tcp/sock.cvolatile struct sock *sk;
sk714net/tcp/sock.csk = sock->data;
sk715net/tcp/sock.cif (sk == NULL)
sk740net/tcp/sock.csk->reuse = 1;
sk742net/tcp/sock.csk->reuse = 0;
sk747net/tcp/sock.csk->keepopen = 1;
sk749net/tcp/sock.csk->keepopen = 0;
sk754net/tcp/sock.csk->urginline = 1;
sk756net/tcp/sock.csk->urginline = 0;
sk761net/tcp/sock.csk->no_check = 1;
sk763net/tcp/sock.csk->no_check = 0;
sk769net/tcp/sock.csk->priority = val;
sk784net/tcp/sock.cvolatile struct sock *sk;
sk788net/tcp/sock.csk = sock->data;
sk789net/tcp/sock.cif (sk == NULL)
sk809net/tcp/sock.cval = sk->reuse;
sk813net/tcp/sock.cval = sk->keepopen;
sk817net/tcp/sock.cif (sk->prot == &tcp_prot)
sk824net/tcp/sock.cval = sk->err;
sk825net/tcp/sock.csk->err = 0;
sk829net/tcp/sock.cval = sk->urginline;
sk833net/tcp/sock.cval = sk->no_check;
sk837net/tcp/sock.cval = sk->priority;
sk851net/tcp/sock.cvolatile struct sock *sk;
sk852net/tcp/sock.csk = sock->data;
sk853net/tcp/sock.cif (sk == NULL)
sk860net/tcp/sock.cif (sk->num == 0)
sk862net/tcp/sock.csk->num = get_new_socknum (sk->prot, 0);
sk863net/tcp/sock.cif (sk->num == 0) return (-EAGAIN);
sk864net/tcp/sock.cput_sock (sk->num, sk);
sk865net/tcp/sock.csk->dummy_th.source = net16(sk->num);
sk869net/tcp/sock.csk->max_ack_backlog = backlog;
sk870net/tcp/sock.csk->ack_backlog = 0;
sk871net/tcp/sock.csk->state = TCP_LISTEN;
sk927net/tcp/sock.cvolatile struct sock *sk;
sk931net/tcp/sock.csk = kmalloc (sizeof (*sk), GFP_KERNEL);
sk932net/tcp/sock.cif (sk == NULL)
sk934net/tcp/sock.csk->num = 0;
sk943net/tcp/sock.ckfree_s ((void *)sk, sizeof (*sk));
sk946net/tcp/sock.csk->no_check = TCP_NO_CHECK;
sk953net/tcp/sock.ckfree_s ((void *)sk, sizeof (*sk));
sk956net/tcp/sock.csk->no_check = UDP_NO_CHECK;
sk963net/tcp/sock.ckfree_s ((void *)sk, sizeof (*sk));
sk969net/tcp/sock.ckfree_s ((void *)sk, sizeof (*sk));
sk973net/tcp/sock.csk->reuse = 1;
sk974net/tcp/sock.csk->no_check = 0; /* doesn't matter no checksum is preformed
sk976net/tcp/sock.csk->num = protocol;
sk982net/tcp/sock.ckfree_s ((void *)sk, sizeof (*sk));
sk988net/tcp/sock.ckfree_s ((void *)sk, sizeof (*sk));
sk992net/tcp/sock.csk->reuse = 1;
sk993net/tcp/sock.csk->no_check = 0; /* doesn't matter no checksum is preformed
sk995net/tcp/sock.csk->num = protocol;
sk1000net/tcp/sock.ckfree_s ((void *)sk, sizeof (*sk));
sk1004net/tcp/sock.csk->protocol = protocol;
sk1005net/tcp/sock.csk->wmem_alloc = 0;
sk1006net/tcp/sock.csk->rmem_alloc = 0;
sk1007net/tcp/sock.csk->pair = NULL;
sk1008net/tcp/sock.csk->opt = NULL;
sk1009net/tcp/sock.csk->send_seq = 0;
sk1010net/tcp/sock.csk->acked_seq = 0;
sk1011net/tcp/sock.csk->copied_seq = 0;
sk1012net/tcp/sock.csk->fin_seq = 0;
sk1013net/tcp/sock.csk->proc = 0;
sk1014net/tcp/sock.csk->rtt = TCP_WRITE_TIME;
sk1015net/tcp/sock.csk->packets_out = 0;
sk1016net/tcp/sock.csk->cong_window = 1; /* start with only sending one packet at a time. */
sk1017net/tcp/sock.csk->exp_growth = 1;  /* if set cong_window grow exponentially every time
sk1019net/tcp/sock.csk->urginline = 0;
sk1020net/tcp/sock.csk->intr = 0;
sk1021net/tcp/sock.csk->linger = 0;
sk1022net/tcp/sock.csk->destroy = 0;
sk1023net/tcp/sock.csk->reuse = 0;
sk1024net/tcp/sock.csk->priority = 1;
sk1025net/tcp/sock.csk->shutdown = 0;
sk1026net/tcp/sock.csk->urg = 0;
sk1027net/tcp/sock.csk->keepopen = 0;
sk1028net/tcp/sock.csk->done = 0;
sk1029net/tcp/sock.csk->ack_backlog = 0;
sk1030net/tcp/sock.csk->window = 0;
sk1031net/tcp/sock.csk->bytes_rcv = 0;
sk1032net/tcp/sock.csk->state = TCP_CLOSE;
sk1033net/tcp/sock.csk->dead = 0;
sk1034net/tcp/sock.csk->ack_timed = 0;
sk1035net/tcp/sock.csk->send_tmp = NULL;
sk1036net/tcp/sock.csk->mss = 0; /* we will try not to send any packets smaller
sk1042net/tcp/sock.csk->max_unacked = 2048; /* needs to be at most 2 full packets. */
sk1047net/tcp/sock.csk->max_ack_backlog = 0;
sk1048net/tcp/sock.csk->inuse = 0;
sk1049net/tcp/sock.csk->delay_acks = 0;
sk1050net/tcp/sock.csk->wback = NULL;
sk1051net/tcp/sock.csk->wfront = NULL;
sk1052net/tcp/sock.csk->rqueue = NULL;
sk1053net/tcp/sock.csk->mtu = 576;
sk1054net/tcp/sock.csk->prot = prot;
sk1055net/tcp/sock.csk->sleep = sock->wait;
sk1056net/tcp/sock.csk->daddr = 0;
sk1057net/tcp/sock.csk->saddr = MY_IP_ADDR;
sk1058net/tcp/sock.csk->err = 0;
sk1059net/tcp/sock.csk->next = NULL;
sk1060net/tcp/sock.csk->pair = NULL;
sk1061net/tcp/sock.csk->send_tail = NULL;
sk1062net/tcp/sock.csk->send_head = NULL;
sk1063net/tcp/sock.csk->time_wait.len = TCP_CONNECT_TIME;
sk1064net/tcp/sock.csk->time_wait.when = 0;
sk1065net/tcp/sock.csk->time_wait.sk = sk;
sk1066net/tcp/sock.csk->time_wait.next = NULL;
sk1067net/tcp/sock.csk->timeout = 0;
sk1068net/tcp/sock.csk->back_log = NULL;
sk1069net/tcp/sock.csk->blog = 0;
sk1070net/tcp/sock.csock->data =(void *) sk;
sk1071net/tcp/sock.csk->dummy_th.doff = sizeof (sk->dummy_th)/4;
sk1072net/tcp/sock.csk->dummy_th.res1=0;
sk1073net/tcp/sock.csk->dummy_th.res2=0;
sk1074net/tcp/sock.csk->dummy_th.urg_ptr = 0;
sk1075net/tcp/sock.csk->dummy_th.fin = 0;
sk1076net/tcp/sock.csk->dummy_th.syn = 0;
sk1077net/tcp/sock.csk->dummy_th.rst = 0;
sk1078net/tcp/sock.csk->dummy_th.psh = 0;
sk1079net/tcp/sock.csk->dummy_th.ack = 0;
sk1080net/tcp/sock.csk->dummy_th.urg = 0;
sk1081net/tcp/sock.csk->dummy_th.dest = 0;
sk1083net/tcp/sock.cif (sk->num)
sk1089net/tcp/sock.cput_sock (sk->num, sk);
sk1090net/tcp/sock.csk->dummy_th.source = net16(sk->num);
sk1093net/tcp/sock.cif (sk->prot->init)
sk1095net/tcp/sock.cerr = sk->prot->init(sk);
sk1098net/tcp/sock.cdestroy_sock (sk);
sk1116net/tcp/sock.cvolatile struct sock *sk;
sk1117net/tcp/sock.csk = sock->data;
sk1118net/tcp/sock.cif (sk == NULL) return (0);
sk1120net/tcp/sock.cwake_up (sk->sleep);
sk1125net/tcp/sock.cif (sk->linger == 0)
sk1127net/tcp/sock.csk->prot->close(sk,0);
sk1128net/tcp/sock.csk->dead = 1;
sk1133net/tcp/sock.csk->prot->close(sk, 0);
sk1135net/tcp/sock.cwhile (sk->state != TCP_CLOSE)
sk1137net/tcp/sock.cinterruptible_sleep_on (sk->sleep);
sk1145net/tcp/sock.csk->dead = 1;
sk1148net/tcp/sock.csk->inuse = 1;
sk1150net/tcp/sock.crelease_sock (sk);
sk1166net/tcp/sock.cvolatile struct sock *sk, *sk2;
sk1169net/tcp/sock.csk = sock->data;
sk1170net/tcp/sock.cif (sk == NULL)
sk1176net/tcp/sock.cif (sk->state != TCP_CLOSE) return (-EIO);
sk1177net/tcp/sock.cif (sk->num != 0) return (-EINVAL);
sk1192net/tcp/sock.cPRINTK (("bind sk =%X to port = %d\n", sk, snum));
sk1193net/tcp/sock.csk = sock->data;
sk1201net/tcp/sock.cif ( sk->num > PROT_SOCK) return (0);
sk1202net/tcp/sock.csnum = get_new_socknum (sk->prot, 0);
sk1209net/tcp/sock.csk->saddr = addr.sin_addr.s_addr;
sk1212net/tcp/sock.csk->prot->sock_array[snum & (SOCK_ARRAY_SIZE -1)]));
sk1215net/tcp/sock.cfor (sk2 = sk->prot->sock_array[snum & (SOCK_ARRAY_SIZE -1)];
sk1220net/tcp/sock.cif (sk2->saddr != sk->saddr) continue;
sk1221net/tcp/sock.cif (!sk->reuse) return (-EADDRINUSE);
sk1224net/tcp/sock.cremove_sock (sk);
sk1225net/tcp/sock.cput_sock(snum, sk);
sk1226net/tcp/sock.csk->dummy_th.source = net16(sk->num);
sk1227net/tcp/sock.csk->daddr = 0;
sk1228net/tcp/sock.csk->dummy_th.dest = 0;
sk1236net/tcp/sock.cvolatile struct sock *sk;
sk1239net/tcp/sock.csk = sock->data;
sk1240net/tcp/sock.cif (sk == NULL)
sk1246net/tcp/sock.cif (sk->state == TCP_ESTABLISHED)
sk1254net/tcp/sock.cif (sk->state == TCP_SYN_SENT || sk->state == TCP_SYN_RECV)
sk1257net/tcp/sock.cif (sk->err) return (-sk->err);
sk1264net/tcp/sock.cif (sk->num == 0)
sk1266net/tcp/sock.csk->num = get_new_socknum (sk->prot, 0);
sk1267net/tcp/sock.cif (sk->num == 0) return (-EAGAIN);
sk1268net/tcp/sock.cput_sock (sk->num, sk);
sk1269net/tcp/sock.csk->dummy_th.source = net16(sk->num);
sk1272net/tcp/sock.cif (sk->prot->connect == NULL)
sk1275net/tcp/sock.cerr = sk->prot->connect (sk, (struct sockaddr_in *)uaddr, addr_len);
sk1279net/tcp/sock.cif (sk->state != TCP_ESTABLISHED && (flags & O_NONBLOCK))
sk1284net/tcp/sock.cwhile (sk->state == TCP_SYN_SENT || sk->state == TCP_SYN_RECV)
sk1286net/tcp/sock.cinterruptible_sleep_on (sk->sleep);
sk1296net/tcp/sock.cif (sk->state != TCP_ESTABLISHED && sk->err)
sk1299net/tcp/sock.creturn (-sk->err);
sk1387net/tcp/sock.cvolatile struct sock *sk;
sk1393net/tcp/sock.csk = sock->data;
sk1394net/tcp/sock.cif (sk == NULL)
sk1401net/tcp/sock.cif (!tcp_connected(sk->state))
sk1403net/tcp/sock.csin.sin_port = sk->dummy_th.dest;
sk1404net/tcp/sock.csin.sin_addr.s_addr = sk->daddr;
sk1408net/tcp/sock.csin.sin_port = sk->dummy_th.source;
sk1409net/tcp/sock.cif (sk->saddr == 0)
sk1412net/tcp/sock.csin.sin_addr.s_addr = sk->saddr;
sk1425net/tcp/sock.cvolatile struct sock *sk;
sk1426net/tcp/sock.csk = sock->data;
sk1427net/tcp/sock.cif (sk == NULL)
sk1434net/tcp/sock.cif (sk->num == 0)
sk1436net/tcp/sock.csk->num = get_new_socknum (sk->prot, 0);
sk1437net/tcp/sock.cif (sk->num == 0) return (-EAGAIN);
sk1438net/tcp/sock.cput_sock (sk->num, sk);
sk1439net/tcp/sock.csk->dummy_th.source = net16(sk->num);
sk1442net/tcp/sock.creturn (sk->prot->read (sk, ubuf, size, noblock,0));
sk1449net/tcp/sock.cvolatile struct sock *sk;
sk1450net/tcp/sock.csk = sock->data;
sk1451net/tcp/sock.cif (sk == NULL)
sk1458net/tcp/sock.cif (sk->num == 0)
sk1460net/tcp/sock.csk->num = get_new_socknum (sk->prot, 0);
sk1461net/tcp/sock.cif (sk->num == 0) return (-EAGAIN);
sk1462net/tcp/sock.cput_sock (sk->num, sk);
sk1463net/tcp/sock.csk->dummy_th.source = net16(sk->num);
sk1466net/tcp/sock.creturn (sk->prot->read (sk, ubuf, size, noblock, flags));
sk1472net/tcp/sock.cvolatile struct sock *sk;
sk1473net/tcp/sock.csk = sock->data;
sk1474net/tcp/sock.cif (sk == NULL)
sk1479net/tcp/sock.cif (sk->shutdown & SEND_SHUTDOWN)
sk1486net/tcp/sock.cif (sk->num == 0)
sk1488net/tcp/sock.csk->num = get_new_socknum (sk->prot, 0);
sk1489net/tcp/sock.cif (sk->num == 0) return (-EAGAIN);
sk1490net/tcp/sock.cput_sock (sk->num, sk);
sk1491net/tcp/sock.csk->dummy_th.source = net16(sk->num);
sk1494net/tcp/sock.creturn (sk->prot->write (sk, ubuf, size, noblock, 0));
sk1502net/tcp/sock.cvolatile struct sock *sk;
sk1503net/tcp/sock.csk = sock->data;
sk1504net/tcp/sock.cif (sk == NULL)
sk1509net/tcp/sock.cif (sk->shutdown & SEND_SHUTDOWN)
sk1516net/tcp/sock.cif (sk->num == 0)
sk1518net/tcp/sock.csk->num = get_new_socknum (sk->prot, 0);
sk1519net/tcp/sock.cif (sk->num == 0) return (-EAGAIN);
sk1520net/tcp/sock.cput_sock (sk->num, sk);
sk1521net/tcp/sock.csk->dummy_th.source = net16(sk->num);
sk1524net/tcp/sock.creturn (sk->prot->write (sk, ubuf, size, noblock, flags));
sk1532net/tcp/sock.cvolatile struct sock *sk;
sk1533net/tcp/sock.csk = sock->data;
sk1534net/tcp/sock.cif (sk == NULL)
sk1539net/tcp/sock.cif (sk->shutdown & SEND_SHUTDOWN)
sk1545net/tcp/sock.cif (sk->prot->sendto == NULL) return (-EOPNOTSUPP);
sk1548net/tcp/sock.cif (sk->num == 0)
sk1550net/tcp/sock.csk->num = get_new_socknum (sk->prot, 0);
sk1551net/tcp/sock.cif (sk->num == 0) return (-EAGAIN);
sk1552net/tcp/sock.cput_sock (sk->num, sk);
sk1553net/tcp/sock.csk->dummy_th.source = net16(sk->num);
sk1556net/tcp/sock.creturn (sk->prot->sendto (sk, ubuf, size, noblock, flags, 
sk1564net/tcp/sock.cvolatile struct sock *sk;
sk1565net/tcp/sock.csk = sock->data;
sk1566net/tcp/sock.cif (sk == NULL)
sk1572net/tcp/sock.cif (sk->prot->recvfrom == NULL) return (-EOPNOTSUPP);
sk1575net/tcp/sock.cif (sk->num == 0)
sk1577net/tcp/sock.csk->num = get_new_socknum (sk->prot, 0);
sk1578net/tcp/sock.cif (sk->num == 0) return (-EAGAIN);
sk1579net/tcp/sock.cput_sock (sk->num, sk);
sk1580net/tcp/sock.csk->dummy_th.source = net16(sk->num);
sk1583net/tcp/sock.creturn (sk->prot->recvfrom (sk, ubuf, size, noblock, flags,
sk1590net/tcp/sock.cvolatile struct sock *sk;
sk1597net/tcp/sock.csk = sock->data;
sk1598net/tcp/sock.cif (sk == NULL)
sk1603net/tcp/sock.cif (sock->state == SS_CONNECTING && sk->state == TCP_ESTABLISHED)
sk1606net/tcp/sock.cif (!tcp_connected(sk->state)) return (-ENOTCONN);
sk1607net/tcp/sock.csk->shutdown |= how;
sk1608net/tcp/sock.cif (sk->prot->shutdown)
sk1609net/tcp/sock.csk->prot->shutdown (sk, how);
sk1616net/tcp/sock.cvolatile struct sock *sk;
sk1617net/tcp/sock.csk = sock->data;
sk1618net/tcp/sock.cif (sk == NULL)
sk1624net/tcp/sock.cif (sk->prot->select == NULL)
sk1629net/tcp/sock.creturn (sk->prot->select(sk, sel_type, wait));
sk1637net/tcp/sock.cvolatile struct sock *sk;
sk1638net/tcp/sock.csk = sock->data;
sk1639net/tcp/sock.cif (sk == NULL)
sk1672net/tcp/sock.csk->proc = user;
sk1680net/tcp/sock.cput_fs_long (sk->proc, (void *)arg);
sk1685net/tcp/sock.cif (!sk->prot->ioctl)
sk1687net/tcp/sock.creturn (sk->prot->ioctl (sk, cmd, arg));
sk1692net/tcp/sock.csock_wmalloc(volatile struct sock *sk, unsigned long size, int force,
sk1695net/tcp/sock.cif (sk)
sk1697net/tcp/sock.cif (sk->wmem_alloc + size < SK_WMEM_MAX || force)
sk1700net/tcp/sock.csk->wmem_alloc+= size;
sk1705net/tcp/sock.csk, size, force, priority));
sk1712net/tcp/sock.csock_rmalloc(volatile struct sock *sk, unsigned long size, int force,
sk1715net/tcp/sock.cif (sk )
sk1717net/tcp/sock.cif (sk->rmem_alloc + size < SK_RMEM_MAX || force)
sk1720net/tcp/sock.csk->rmem_alloc+= size;
sk1725net/tcp/sock.csk,size,force, priority));
sk1733net/tcp/sock.csock_rspace (volatile struct sock *sk)
sk1736net/tcp/sock.cif (sk != NULL)
sk1738net/tcp/sock.cif (sk->rmem_alloc >= SK_RMEM_MAX-2*MIN_WINDOW) return (0);
sk1739net/tcp/sock.camt = min ((SK_RMEM_MAX-sk->rmem_alloc)/2-MIN_WINDOW, MAX_WINDOW);
sk1747net/tcp/sock.csock_wspace (volatile struct sock *sk)
sk1749net/tcp/sock.cif (sk != NULL)
sk1751net/tcp/sock.cif (sk->shutdown & SEND_SHUTDOWN) return (0);
sk1752net/tcp/sock.cif (sk->wmem_alloc >= SK_WMEM_MAX) return (0);
sk1753net/tcp/sock.creturn (SK_WMEM_MAX-sk->wmem_alloc );
sk1760net/tcp/sock.csock_wfree (volatile struct sock *sk, void *mem, unsigned long size)
sk1762net/tcp/sock.cMPRINTK (("sock_wfree (sk=%X, mem=%X, size=%d)\n",sk, mem, size));
sk1764net/tcp/sock.cif (sk)
sk1766net/tcp/sock.csk->wmem_alloc -= size;
sk1768net/tcp/sock.cif (!sk->dead) wake_up(sk->sleep);
sk1769net/tcp/sock.cif (sk->destroy && sk->wmem_alloc == 0 && sk->rmem_alloc == 0)
sk1771net/tcp/sock.cMPRINTK (("recovered lost memory, destroying sock = %X\n",sk));
sk1772net/tcp/sock.cdelete_timer ((struct timer *)&sk->time_wait);
sk1773net/tcp/sock.ckfree_s ((void *)sk, sizeof (*sk));
sk1780net/tcp/sock.csock_rfree (volatile struct sock *sk, void *mem, unsigned long size)
sk1782net/tcp/sock.cMPRINTK (("sock_rfree (sk=%X, mem=%X, size=%d)\n",sk, mem, size));
sk1784net/tcp/sock.cif (sk)
sk1786net/tcp/sock.csk->rmem_alloc -= size;
sk1787net/tcp/sock.cif (sk->destroy && sk->wmem_alloc == 0 && sk->rmem_alloc == 0)
sk1789net/tcp/sock.cdelete_timer ((struct timer *)&sk->time_wait);
sk1790net/tcp/sock.ckfree_s ((void *)sk, sizeof (*sk));
sk1831net/tcp/sock.cvoid release_sock (volatile struct sock *sk)
sk1833net/tcp/sock.cif (!sk)
sk1839net/tcp/sock.cif (!sk->prot)
sk1845net/tcp/sock.cif (sk->blog) return;
sk1849net/tcp/sock.csk->inuse = 1;
sk1850net/tcp/sock.cwhile (sk->back_log != NULL)
sk1853net/tcp/sock.csk->blog = 1;
sk1854net/tcp/sock.cskb = (struct sk_buff *)sk->back_log;
sk1858net/tcp/sock.csk->back_log = skb->next;
sk1864net/tcp/sock.csk->back_log = NULL;
sk1867net/tcp/sock.cPRINTK (("sk->back_log = %X\n",sk->back_log));
sk1868net/tcp/sock.cif (sk->prot->rcv)
sk1869net/tcp/sock.csk->prot->rcv(skb, skb->dev, sk->opt,
sk1872net/tcp/sock.c(struct ip_protocol *)sk->pair); 
sk1875net/tcp/sock.csk->blog = 0;
sk1876net/tcp/sock.csk->inuse = 0;
sk1878net/tcp/sock.cif (sk->dead && sk->state == TCP_CLOSE)
sk1881net/tcp/sock.csk->time_wait.len = min (sk->rtt * 2, TCP_DONE_TIME);
sk1882net/tcp/sock.csk->timeout = TIME_DONE;
sk1883net/tcp/sock.creset_timer ((struct timer *)&sk->time_wait);
sk110net/tcp/sock.hvoid *(*wmalloc)(volatile struct sock *sk, unsigned long size, int force,
sk112net/tcp/sock.hvoid *(*rmalloc)(volatile struct sock *sk, unsigned long size, int force,
sk114net/tcp/sock.hvoid (*wfree)(volatile struct sock *sk, void *mem, unsigned long size);
sk115net/tcp/sock.hvoid (*rfree)(volatile struct sock *sk, void *mem, unsigned long size);
sk116net/tcp/sock.hunsigned long (*rspace)(volatile struct sock *sk);
sk117net/tcp/sock.hunsigned long (*wspace)(volatile struct sock *sk);
sk118net/tcp/sock.hvoid (*close)(volatile struct sock *sk, int timeout);
sk119net/tcp/sock.hint (*read)(volatile struct sock *sk, unsigned char *to, int len,
sk121net/tcp/sock.hint (*write)(volatile struct sock *sk, unsigned char *to, int len,
sk123net/tcp/sock.hint (*sendto) (volatile struct sock *sk, unsigned char *from, int len,
sk126net/tcp/sock.hint (*recvfrom) (volatile struct sock *sk, unsigned char *from, int len,
sk132net/tcp/sock.hint (*connect) (volatile struct sock *sk, struct sockaddr_in *usin,
sk134net/tcp/sock.hvolatile struct sock *(*accept) (volatile struct sock *sk, int flags);
sk135net/tcp/sock.hvoid  (*queue_xmit) (volatile struct sock *sk, struct device *dev, 
sk137net/tcp/sock.hvoid (*retransmit) (volatile struct sock *sk, int all);
sk138net/tcp/sock.hvoid (*write_wakeup) (volatile struct sock *sk);
sk139net/tcp/sock.hvoid (*read_wakeup) (volatile struct sock *sk);
sk143net/tcp/sock.hint (*select)(volatile struct sock *sk, int which, select_table *wait);
sk144net/tcp/sock.hint (*ioctl) (volatile struct sock *sk, int cmd, unsigned long arg);
sk145net/tcp/sock.hint (*init) (volatile struct sock *sk);
sk146net/tcp/sock.hvoid (*shutdown) (volatile struct sock *sk, int how);
sk169net/tcp/sock.hvolatile struct sock *sk;
sk198net/tcp/sock.hvoid destroy_sock (volatile struct sock *sk);
sk201net/tcp/sock.hvoid release_sock (volatile struct sock *sk);
sk206net/tcp/sock.hvoid *sock_wmalloc(volatile struct sock *sk, unsigned long size, int force,
sk208net/tcp/sock.hvoid *sock_rmalloc(volatile struct sock *sk, unsigned long size, int force,
sk210net/tcp/sock.hvoid sock_wfree(volatile struct sock *sk, void *mem, unsigned long size);
sk211net/tcp/sock.hvoid sock_rfree(volatile struct sock *sk, void *mem, unsigned long size);
sk212net/tcp/sock.hunsigned long sock_rspace(volatile struct sock *sk);
sk213net/tcp/sock.hunsigned long sock_wspace(volatile struct sock *sk);
sk144net/tcp/tcp.cget_firstr(volatile struct sock *sk)
sk147net/tcp/tcp.cskb = sk->rqueue;
sk149net/tcp/tcp.csk->rqueue = (struct sk_buff *)skb->next;
sk150net/tcp/tcp.cif (sk->rqueue == skb)
sk152net/tcp/tcp.csk->rqueue = NULL;
sk156net/tcp/tcp.csk->rqueue->prev=skb->prev;
sk157net/tcp/tcp.csk->rqueue->prev->next = sk->rqueue;
sk174net/tcp/tcp.ctcp_time_wait (volatile struct sock *sk)
sk176net/tcp/tcp.csk->state = TCP_TIME_WAIT;
sk177net/tcp/tcp.csk->shutdown = SHUTDOWN_MASK;
sk178net/tcp/tcp.cif (!sk->dead) wake_up (sk->sleep);
sk179net/tcp/tcp.csk->time_wait.len = TCP_TIMEWAIT_LEN;
sk180net/tcp/tcp.csk->timeout = TIME_CLOSE;
sk181net/tcp/tcp.creset_timer ((struct timer *)&sk->time_wait);
sk185net/tcp/tcp.ctcp_retransmit (volatile struct sock *sk, int all)
sk189net/tcp/tcp.cip_retransmit (sk, all);
sk192net/tcp/tcp.csk->rtt *= 2; /* exponential back off. */
sk193net/tcp/tcp.cif (sk->cong_window > 1)
sk194net/tcp/tcp.csk->cong_window = sk->cong_window / 2;
sk195net/tcp/tcp.csk->exp_growth = 0;
sk198net/tcp/tcp.cip_retransmit (sk, all);
sk214net/tcp/tcp.cvolatile struct sock *sk;
sk220net/tcp/tcp.csk = get_sock (&tcp_prot, net16(th->dest), saddr, th->source, daddr);
sk223net/tcp/tcp.cif (sk == NULL) return;
sk230net/tcp/tcp.cif (sk->cong_window > 1)
sk231net/tcp/tcp.csk->cong_window --;
sk237net/tcp/tcp.csk->err = icmp_err_convert[err & 0xff].errno;
sk242net/tcp/tcp.cif (sk->state == TCP_SYN_SENT)
sk244net/tcp/tcp.csk->state = TCP_CLOSE;
sk245net/tcp/tcp.csk->prot->close(sk, 0);
sk254net/tcp/tcp.ctcp_readable (volatile struct sock *sk)
sk262net/tcp/tcp.cPRINTK (("tcp_readable (sk=%X)\n", sk));
sk264net/tcp/tcp.cif (sk == NULL || sk->rqueue == NULL) return (0);
sk266net/tcp/tcp.ccounted = sk->copied_seq+1;
sk268net/tcp/tcp.cskb = (struct sk_buff *)sk->rqueue->next;
sk294net/tcp/tcp.c} while (skb != sk->rqueue->next);
sk301net/tcp/tcp.ctcp_select (volatile struct sock *sk, int sel_type, select_table *wait)
sk303net/tcp/tcp.csk->inuse = 1;
sk305net/tcp/tcp.csk, sel_type, wait));
sk309net/tcp/tcp.cselect_wait (sk->sleep, wait);
sk310net/tcp/tcp.cif (sk->rqueue != NULL)
sk312net/tcp/tcp.cif (sk->state == TCP_LISTEN || tcp_readable(sk))
sk314net/tcp/tcp.crelease_sock (sk);
sk319net/tcp/tcp.cif (sk->shutdown & RCV_SHUTDOWN)
sk321net/tcp/tcp.crelease_sock (sk);
sk326net/tcp/tcp.crelease_sock (sk);
sk331net/tcp/tcp.cselect_wait (sk->sleep, wait);
sk333net/tcp/tcp.cif (sk->shutdown & SEND_SHUTDOWN)
sk337net/tcp/tcp.crelease_sock (sk);
sk343net/tcp/tcp.cif (sk->prot->wspace(sk) >= sk->mtu)
sk345net/tcp/tcp.crelease_sock (sk);
sk347net/tcp/tcp.cif (sk->state == TCP_SYN_RECV || sk->state == TCP_SYN_SENT)
sk356net/tcp/tcp.csk->wmem_alloc, sk->packets_out,
sk357net/tcp/tcp.csk->wback, sk->wfront,
sk358net/tcp/tcp.csk->send_seq, sk->window_seq));
sk360net/tcp/tcp.crelease_sock (sk);
sk365net/tcp/tcp.cselect_wait(sk->sleep,wait);
sk366net/tcp/tcp.cif (sk->err)
sk368net/tcp/tcp.crelease_sock (sk);
sk371net/tcp/tcp.crelease_sock (sk);
sk375net/tcp/tcp.crelease_sock (sk);
sk380net/tcp/tcp.ctcp_ioctl (volatile struct sock *sk, int cmd, unsigned long arg)
sk382net/tcp/tcp.cPRINTK (("tcp_ioctl (sk=%X, cmd = %d, arg=%X)\n", sk, cmd, arg));
sk393net/tcp/tcp.cif (sk->state == TCP_LISTEN)
sk397net/tcp/tcp.csk->inuse = 1;
sk398net/tcp/tcp.cif (sk->rqueue != NULL)
sk400net/tcp/tcp.camount = tcp_readable(sk);
sk402net/tcp/tcp.crelease_sock (sk);
sk414net/tcp/tcp.csk->inuse = 1;
sk415net/tcp/tcp.cif (sk->rqueue != NULL)
sk417net/tcp/tcp.cskb = (struct sk_buff *)sk->rqueue->next;
sk418net/tcp/tcp.cif (sk->copied_seq+1 == skb->h.th->seq && skb->h.th->urg)
sk421net/tcp/tcp.crelease_sock (sk);
sk430net/tcp/tcp.cif (sk->state == TCP_LISTEN)
sk432net/tcp/tcp.camount = sk->prot->wspace(sk)/2;
sk513net/tcp/tcp.cunsigned long daddr, int len, volatile struct sock *sk)
sk517net/tcp/tcp.cif (sk && sk->no_check) return;
sk523net/tcp/tcp.ctcp_send_partial(volatile struct sock *sk)
sk527net/tcp/tcp.cif (sk == NULL || sk->send_tmp == NULL) return;
sk529net/tcp/tcp.cskb = sk->send_tmp;
sk531net/tcp/tcp.ctcp_send_check (skb->h.th, sk->saddr, sk->daddr,
sk533net/tcp/tcp.c(unsigned long)(skb+1), sk);
sk535net/tcp/tcp.cskb->h.seq = sk->send_seq;
sk536net/tcp/tcp.cif (after (sk->send_seq , sk->window_seq) ||
sk537net/tcp/tcp.csk->packets_out >= sk->cong_window)
sk540net/tcp/tcp.csk->cong_window, sk->packets_out));
sk542net/tcp/tcp.csk->send_seq, sk->window_seq));
sk545net/tcp/tcp.cif (sk->wback == NULL)
sk547net/tcp/tcp.csk->wfront=skb;
sk551net/tcp/tcp.csk->wback->next = skb;
sk553net/tcp/tcp.csk->wback = skb;
sk557net/tcp/tcp.csk->prot->queue_xmit (sk, skb->dev, skb,0);
sk559net/tcp/tcp.csk->send_tmp = NULL;
sk567net/tcp/tcp.cvolatile struct sock *sk,
sk578net/tcp/tcp.cbuff=sk->prot->wmalloc(sk,MAX_ACK_SIZE,1, GFP_ATOMIC);
sk582net/tcp/tcp.csk->ack_backlog++;
sk583net/tcp/tcp.cif (sk->timeout != TIME_WRITE && tcp_connected (sk->state))
sk585net/tcp/tcp.csk->timeout = TIME_WRITE;
sk586net/tcp/tcp.csk->time_wait.len = 10; /* got to do it quickly. */
sk587net/tcp/tcp.creset_timer ((struct timer *)&sk->time_wait);
sk596net/tcp/tcp.cbuff->sk = sk;
sk599net/tcp/tcp.ctmp = sk->prot->build_header (buff, sk->saddr, daddr, &dev,
sk600net/tcp/tcp.cIPPROTO_TCP, sk->opt, MAX_ACK_SIZE);
sk603net/tcp/tcp.csk->prot->wfree(sk, buff->mem_addr, buff->mem_len);
sk616net/tcp/tcp.csk->window = sk->prot->rspace(sk);
sk617net/tcp/tcp.ct1->window = net16(sk->window);
sk625net/tcp/tcp.cif (ack == sk->acked_seq)
sk627net/tcp/tcp.csk->ack_backlog = 0;
sk628net/tcp/tcp.csk->bytes_rcv = 0;
sk629net/tcp/tcp.csk->ack_timed = 0;
sk630net/tcp/tcp.cif (sk->send_head == NULL &&
sk631net/tcp/tcp.csk->wfront == NULL)
sk633net/tcp/tcp.cdelete_timer((struct timer *)&sk->time_wait);
sk634net/tcp/tcp.csk->timeout = 0;
sk640net/tcp/tcp.ctcp_send_check (t1, sk->saddr, daddr, sizeof (*t1), sk);
sk641net/tcp/tcp.csk->prot->queue_xmit(sk, dev, buff, 1);
sk646net/tcp/tcp.ctcp_build_header(struct tcp_header *th, volatile struct sock *sk, int push)
sk650net/tcp/tcp.cmemcpy (th,(void *) &(sk->dummy_th), sizeof (*th));
sk651net/tcp/tcp.cth->seq = net32(sk->send_seq);
sk656net/tcp/tcp.csk->ack_backlog = 0;
sk657net/tcp/tcp.csk->bytes_rcv = 0;
sk658net/tcp/tcp.csk->ack_timed = 0;
sk659net/tcp/tcp.cth->ack_seq = net32(sk->acked_seq);
sk660net/tcp/tcp.csk->window = sk->prot->rspace(sk);
sk661net/tcp/tcp.cth->window = net16(sk->window);
sk670net/tcp/tcp.ctcp_write (volatile struct sock *sk, unsigned char *from,
sk682net/tcp/tcp.csk, from, len, nonblock, flags));
sk684net/tcp/tcp.cprot = sk->prot;
sk688net/tcp/tcp.cif (sk->err)
sk691net/tcp/tcp.ctmp = -sk->err;
sk692net/tcp/tcp.csk->err = 0;
sk698net/tcp/tcp.csk->inuse = 1; /* no one else will use this socket. */
sk699net/tcp/tcp.cif (sk->shutdown & SEND_SHUTDOWN) 
sk701net/tcp/tcp.crelease_sock (sk);
sk702net/tcp/tcp.csk->err = EPIPE;
sk704net/tcp/tcp.csk->err = 0;
sk708net/tcp/tcp.cwhile (sk->state != TCP_ESTABLISHED && sk->state != TCP_CLOSE_WAIT)
sk711net/tcp/tcp.cif (sk->err)
sk714net/tcp/tcp.ctmp = -sk->err;
sk715net/tcp/tcp.csk->err = 0;
sk719net/tcp/tcp.cif (sk->state != TCP_SYN_SENT &&
sk720net/tcp/tcp.csk->state != TCP_SYN_RECV)
sk722net/tcp/tcp.crelease_sock (sk);
sk726net/tcp/tcp.cif (sk->err)
sk728net/tcp/tcp.ctmp = -sk->err;
sk729net/tcp/tcp.csk->err = 0;
sk733net/tcp/tcp.cif (sk->keepopen)
sk742net/tcp/tcp.crelease_sock (sk);
sk754net/tcp/tcp.crelease_sock (sk);
sk756net/tcp/tcp.cif (sk->state != TCP_ESTABLISHED && sk->state != TCP_CLOSE_WAIT &&
sk757net/tcp/tcp.csk->err == 0)
sk759net/tcp/tcp.cinterruptible_sleep_on (sk->sleep);
sk769net/tcp/tcp.csk->inuse = 1;
sk773net/tcp/tcp.cif (sk->send_tmp != NULL)
sk777net/tcp/tcp.cskb = sk->send_tmp;
sk780net/tcp/tcp.ccopy = min (sk->mss - skb->len + 128 + prot->max_header, len);
sk791net/tcp/tcp.csk->send_seq += copy;
sk795net/tcp/tcp.c(unsigned long)(skb+1) >= sk->mss
sk798net/tcp/tcp.ctcp_send_partial (sk);
sk807net/tcp/tcp.ccopy = min (sk->mtu, diff(sk->window_seq, sk->send_seq));
sk810net/tcp/tcp.cif (copy < 200 || copy > sk->mtu) copy = sk->mtu;
sk814net/tcp/tcp.cif (sk->packets_out && copy < sk->mss && !(flags & MSG_OOB)) 
sk817net/tcp/tcp.crelease_sock (sk);
sk818net/tcp/tcp.cskb=prot->wmalloc (sk,
sk819net/tcp/tcp.csk->mss + 128 + prot->max_header + sizeof (*skb),
sk821net/tcp/tcp.csk->inuse = 1;
sk822net/tcp/tcp.csk->send_tmp = skb;
sk824net/tcp/tcp.cskb->mem_len = sk->mss + 128 + prot->max_header+sizeof (*skb);
sk829net/tcp/tcp.crelease_sock (sk);
sk830net/tcp/tcp.cskb=prot->wmalloc (sk, copy + prot->max_header+sizeof (*skb),0,
sk832net/tcp/tcp.csk->inuse = 1;
sk842net/tcp/tcp.crelease_sock (sk);
sk849net/tcp/tcp.ctmp = sk->wmem_alloc;
sk850net/tcp/tcp.crelease_sock (sk);
sk854net/tcp/tcp.cif (tmp <= sk->wmem_alloc 
sk855net/tcp/tcp.c&& (sk->state == TCP_ESTABLISHED || sk->state == TCP_CLOSE_WAIT )
sk856net/tcp/tcp.c&& sk->err == 0)
sk858net/tcp/tcp.cinterruptible_sleep_on (sk->sleep);
sk867net/tcp/tcp.csk->inuse = 1;
sk874net/tcp/tcp.cskb->sk = sk;
sk882net/tcp/tcp.ctmp = prot->build_header (skb, sk->saddr, sk->daddr, &dev,
sk883net/tcp/tcp.cIPPROTO_TCP, sk->opt, skb->mem_len);
sk886net/tcp/tcp.cprot->wfree (sk, skb->mem_addr, skb->mem_len);
sk887net/tcp/tcp.crelease_sock (sk);
sk896net/tcp/tcp.ctmp = tcp_build_header((struct tcp_header *)buff, sk, len-copy);
sk900net/tcp/tcp.cprot->wfree (sk, skb->mem_addr, skb->mem_len);
sk901net/tcp/tcp.crelease_sock (sk);
sk920net/tcp/tcp.csk->send_seq += copy;
sk922net/tcp/tcp.cif (sk->send_tmp != NULL)
sk927net/tcp/tcp.ctcp_send_check ((struct tcp_header *)buff, sk->saddr, sk->daddr,
sk928net/tcp/tcp.ccopy +sizeof (struct tcp_header), sk);
sk931net/tcp/tcp.cskb->h.seq = sk->send_seq;
sk932net/tcp/tcp.cif (after (sk->send_seq , sk->window_seq) ||
sk933net/tcp/tcp.csk->packets_out >= sk->cong_window)
sk936net/tcp/tcp.csk->cong_window, sk->packets_out));
sk938net/tcp/tcp.csk->send_seq, sk->window_seq));
sk941net/tcp/tcp.cif (sk->wback == NULL)
sk943net/tcp/tcp.csk->wfront=skb;
sk947net/tcp/tcp.csk->wback->next = skb;
sk949net/tcp/tcp.csk->wback = skb;
sk953net/tcp/tcp.cprot->queue_xmit (sk, dev, skb,0);
sk956net/tcp/tcp.csk->err = 0;
sk957net/tcp/tcp.crelease_sock (sk);
sk963net/tcp/tcp.ctcp_sendto (volatile struct sock *sk, unsigned char *from,
sk973net/tcp/tcp.cif (sin.sin_port != sk->dummy_th.dest)
sk975net/tcp/tcp.cif (sin.sin_addr.s_addr != sk->daddr)
sk977net/tcp/tcp.creturn (tcp_write (sk, from, len, nonblock, flags));
sk981net/tcp/tcp.ctcp_read_wakeup(volatile struct sock *sk)
sk988net/tcp/tcp.cif (!sk->ack_backlog ) return;
sk997net/tcp/tcp.cbuff=sk->prot->wmalloc(sk,MAX_ACK_SIZE,1, GFP_ATOMIC);
sk1001net/tcp/tcp.csk->timeout = TIME_WRITE;
sk1002net/tcp/tcp.csk->time_wait.len = 10;
sk1003net/tcp/tcp.creset_timer((struct timer *) &sk->time_wait);
sk1011net/tcp/tcp.cbuff->sk = sk;
sk1014net/tcp/tcp.ctmp = sk->prot->build_header (buff, sk->saddr, sk->daddr, &dev,
sk1015net/tcp/tcp.cIPPROTO_TCP, sk->opt, MAX_ACK_SIZE);
sk1018net/tcp/tcp.csk->prot->wfree(sk, buff->mem_addr, buff->mem_len);
sk1025net/tcp/tcp.cmemcpy (t1,(void *) &sk->dummy_th, sizeof (*t1));
sk1026net/tcp/tcp.ct1->seq = net32(sk->send_seq);
sk1034net/tcp/tcp.csk->ack_backlog = 0;
sk1035net/tcp/tcp.csk->bytes_rcv = 0;
sk1036net/tcp/tcp.csk->window = sk->prot->rspace(sk);
sk1037net/tcp/tcp.ct1->window = net16(sk->window);
sk1038net/tcp/tcp.ct1->ack_seq = net32(sk->acked_seq);
sk1040net/tcp/tcp.ctcp_send_check (t1, sk->saddr, sk->daddr, sizeof (*t1), sk);
sk1041net/tcp/tcp.csk->prot->queue_xmit(sk, dev, buff, 1);
sk1050net/tcp/tcp.ccleanup_rbuf (volatile struct sock *sk)
sk1052net/tcp/tcp.cPRINTK (("cleaning rbuf for sk=%X\n",sk));
sk1055net/tcp/tcp.cwhile (sk->rqueue != NULL )
sk1058net/tcp/tcp.cskb=(struct sk_buff *)sk->rqueue->next;
sk1060net/tcp/tcp.cif (sk->rqueue == skb)
sk1062net/tcp/tcp.csk->rqueue = NULL;
sk1069net/tcp/tcp.cskb->sk = sk;
sk1077net/tcp/tcp.csk->window - sk->bytes_rcv, sk->prot->rspace(sk)));
sk1087net/tcp/tcp.csk->ack_backlog ++;
sk1088net/tcp/tcp.cif ((sk->prot->rspace(sk) >
sk1089net/tcp/tcp.c(sk->window - sk->bytes_rcv + sk->mtu)))
sk1092net/tcp/tcp.ctcp_read_wakeup (sk);
sk1097net/tcp/tcp.cif ( before (jiffies + TCP_ACK_TIME, sk->time_wait.when))
sk1099net/tcp/tcp.csk->time_wait.len = TCP_ACK_TIME;
sk1100net/tcp/tcp.csk->timeout = TIME_WRITE;
sk1101net/tcp/tcp.creset_timer ((struct timer *)&sk->time_wait);
sk1108net/tcp/tcp.ctcp_read_urg(volatile struct sock * sk, int nonblock,
sk1115net/tcp/tcp.csk, to, len, flags));
sk1119net/tcp/tcp.csk->inuse = 1;
sk1120net/tcp/tcp.cwhile (sk->urg==0 || sk->rqueue == NULL)
sk1122net/tcp/tcp.cif (sk->err)
sk1125net/tcp/tcp.crelease_sock (sk);
sk1127net/tcp/tcp.ctmp = -sk->err;
sk1128net/tcp/tcp.csk->err = 0;
sk1132net/tcp/tcp.cif (sk->state == TCP_CLOSE || sk->done) 
sk1134net/tcp/tcp.crelease_sock (sk);
sk1136net/tcp/tcp.cif (!sk->done)
sk1138net/tcp/tcp.csk->done = 1;
sk1144net/tcp/tcp.cif (sk->shutdown & RCV_SHUTDOWN)
sk1146net/tcp/tcp.crelease_sock(sk);
sk1148net/tcp/tcp.csk->done = 1;
sk1154net/tcp/tcp.crelease_sock (sk);
sk1160net/tcp/tcp.crelease_sock (sk);
sk1162net/tcp/tcp.cif ((sk->urg == 0 || sk->rqueue == NULL) && sk->err == 0 
sk1163net/tcp/tcp.c&& !(sk->shutdown & RCV_SHUTDOWN) )
sk1165net/tcp/tcp.cinterruptible_sleep_on (sk->sleep);
sk1174net/tcp/tcp.csk->inuse = 1;
sk1177net/tcp/tcp.cskb = (struct sk_buff *)sk->rqueue->next;
sk1194net/tcp/tcp.csk->urg --;
sk1196net/tcp/tcp.crelease_sock (sk);
sk1201net/tcp/tcp.c} while (skb != sk->rqueue->next);
sk1203net/tcp/tcp.csk->urg = 0;
sk1204net/tcp/tcp.crelease_sock(sk);
sk1210net/tcp/tcp.ctcp_read (volatile struct sock *sk, unsigned char *to,
sk1225net/tcp/tcp.cif (sk->state == TCP_LISTEN) return (-ENOTCONN);
sk1229net/tcp/tcp.creturn (tcp_read_urg (sk, nonblock, to, len, flags));
sk1232net/tcp/tcp.csk->inuse = 1;
sk1233net/tcp/tcp.cif (sk->rqueue != NULL)
sk1234net/tcp/tcp.cskb=(struct sk_buff *)sk->rqueue->next;
sk1239net/tcp/tcp.csk, to, len, nonblock, flags));
sk1243net/tcp/tcp.cwhile ( skb == NULL || before (sk->copied_seq+1, skb->h.th->seq) ||
sk1250net/tcp/tcp.ccleanup_rbuf(sk);
sk1252net/tcp/tcp.cif (sk->err)
sk1255net/tcp/tcp.crelease_sock (sk);
sk1261net/tcp/tcp.ctmp = -sk->err;
sk1262net/tcp/tcp.csk->err = 0;
sk1266net/tcp/tcp.cif (sk->state == TCP_CLOSE)
sk1268net/tcp/tcp.crelease_sock (sk);
sk1274net/tcp/tcp.cif (!sk->done)
sk1276net/tcp/tcp.csk->done = 1;
sk1282net/tcp/tcp.cif (sk->shutdown & RCV_SHUTDOWN)
sk1284net/tcp/tcp.crelease_sock (sk);
sk1285net/tcp/tcp.cif (copied == 0) sk->done = 1;
sk1292net/tcp/tcp.crelease_sock (sk);
sk1303net/tcp/tcp.crelease_sock (sk);
sk1308net/tcp/tcp.cPRINTK (("tcp_read about to sleep. state = %d\n",sk->state));
sk1310net/tcp/tcp.crelease_sock (sk); /* now we may have some data waiting. */
sk1313net/tcp/tcp.cif ( sk->shutdown & RCV_SHUTDOWN || sk->err != 0)
sk1315net/tcp/tcp.csk->inuse = 1;
sk1320net/tcp/tcp.cif ( sk->rqueue == NULL ||
sk1321net/tcp/tcp.cbefore (sk->copied_seq+1, sk->rqueue->next->h.th->seq) )
sk1323net/tcp/tcp.cinterruptible_sleep_on (sk->sleep);
sk1339net/tcp/tcp.csk->inuse = 1;
sk1341net/tcp/tcp.cif (sk->rqueue != NULL)
sk1342net/tcp/tcp.cskb=(struct sk_buff *)sk->rqueue->next;
sk1351net/tcp/tcp.coffset = sk->copied_seq+1 - skb->h.th->seq;
sk1362net/tcp/tcp.csk->copied_seq += net16(skb->h.th->urg_ptr);
sk1373net/tcp/tcp.crelease_sock (sk);
sk1389net/tcp/tcp.csk->copied_seq += used;
sk1412net/tcp/tcp.ccleanup_rbuf (sk);
sk1413net/tcp/tcp.crelease_sock (sk);
sk1424net/tcp/tcp.ctcp_shutdown (volatile struct sock *sk, int how)
sk1439net/tcp/tcp.cif (sk->state == TCP_FIN_WAIT1 ||
sk1440net/tcp/tcp.csk->state == TCP_FIN_WAIT2)
sk1444net/tcp/tcp.csk->inuse = 1;
sk1447net/tcp/tcp.cif (sk->send_tmp)
sk1448net/tcp/tcp.ctcp_send_partial(sk);
sk1450net/tcp/tcp.cprot = (struct proto *)sk->prot;
sk1451net/tcp/tcp.cth=(struct tcp_header *)&sk->dummy_th;
sk1452net/tcp/tcp.crelease_sock (sk); /* incase the malloc sleeps. */
sk1453net/tcp/tcp.cbuff=prot->wmalloc(sk, MAX_RESET_SIZE,1 , GFP_KERNEL);
sk1458net/tcp/tcp.csk->inuse = 1;
sk1465net/tcp/tcp.cbuff->sk = sk;
sk1470net/tcp/tcp.ctmp = prot->build_header (buff,sk->saddr, sk->daddr, &dev,
sk1471net/tcp/tcp.cIPPROTO_TCP, sk->opt,
sk1475net/tcp/tcp.cprot->wfree (sk,buff->mem_addr, buff->mem_len);
sk1476net/tcp/tcp.crelease_sock(sk);
sk1487net/tcp/tcp.ct1->seq = net32(sk->send_seq);
sk1489net/tcp/tcp.csk->send_seq++;
sk1490net/tcp/tcp.cbuff->h.seq = sk->send_seq;
sk1493net/tcp/tcp.ct1->ack_seq = net32(sk->acked_seq);
sk1494net/tcp/tcp.ct1->window = net16(sk->prot->rspace(sk));
sk1499net/tcp/tcp.ctcp_send_check (t1, sk->saddr, sk->daddr, sizeof (*t1), sk);
sk1503net/tcp/tcp.cif (sk->wback != NULL)
sk1506net/tcp/tcp.csk->wback->next = buff;
sk1507net/tcp/tcp.csk->wback = buff;
sk1512net/tcp/tcp.csk->prot->queue_xmit (sk, dev, buff,0);
sk1515net/tcp/tcp.cif (sk->state == TCP_ESTABLISHED)
sk1517net/tcp/tcp.csk->state = TCP_FIN_WAIT1;
sk1521net/tcp/tcp.csk->state = TCP_FIN_WAIT2;
sk1523net/tcp/tcp.crelease_sock(sk);
sk1528net/tcp/tcp.ctcp_recvfrom (volatile struct sock *sk, unsigned char *to,
sk1532net/tcp/tcp.cint result = tcp_read(sk, to, to_len, nonblock, flags);
sk1541net/tcp/tcp.csin.sin_port = sk->dummy_th.dest;
sk1542net/tcp/tcp.csin.sin_addr.s_addr = sk->daddr;
sk1568net/tcp/tcp.cbuff->sk = NULL;
sk1607net/tcp/tcp.ctcp_conn_request(volatile struct sock *sk, struct sk_buff *skb,
sk1621net/tcp/tcp.csk, skb, daddr, saddr, opt, dev));
sk1624net/tcp/tcp.cif (!sk->dead)
sk1626net/tcp/tcp.cwake_up(sk->sleep);
sk1631net/tcp/tcp.ctcp_reset (daddr, saddr, th, sk->prot, opt, dev);
sk1638net/tcp/tcp.cif (sk->ack_backlog >= sk->max_ack_backlog)
sk1660net/tcp/tcp.cmemcpy ((void *)newsk, (void *)sk, sizeof (*newsk));
sk1692net/tcp/tcp.cnewsk->time_wait.sk = newsk;
sk1734net/tcp/tcp.csk->err = -ENOMEM;
sk1745net/tcp/tcp.cbuff->sk = newsk;
sk1750net/tcp/tcp.ctmp = sk->prot->build_header (buff, newsk->saddr, newsk->daddr, &dev,
sk1756net/tcp/tcp.csk->err = tmp;
sk1757net/tcp/tcp.csk->prot->wfree(newsk, buff->mem_addr, buff->mem_len);
sk1760net/tcp/tcp.cskb->sk = sk;
sk1796net/tcp/tcp.cPRINTK (("newsk->time_wait.sk = %X\n", newsk->time_wait.sk));
sk1798net/tcp/tcp.cskb->sk = newsk;
sk1800net/tcp/tcp.csk->rmem_alloc -= skb->mem_len;
sk1803net/tcp/tcp.cif (sk->rqueue == NULL)
sk1807net/tcp/tcp.csk->rqueue = skb;
sk1811net/tcp/tcp.cskb->next = sk->rqueue;
sk1812net/tcp/tcp.cskb->prev = sk->rqueue->prev;
sk1813net/tcp/tcp.csk->rqueue->prev = skb;
sk1816net/tcp/tcp.csk->ack_backlog++;
sk1821net/tcp/tcp.ctcp_close (volatile struct sock *sk, int timeout)
sk1831net/tcp/tcp.cPRINTK (("tcp_close ((struct sock *)%X, %d)\n",sk, timeout));
sk1832net/tcp/tcp.csk->inuse = 1;
sk1833net/tcp/tcp.csk->keepopen = 1;
sk1834net/tcp/tcp.csk->shutdown = SHUTDOWN_MASK;
sk1836net/tcp/tcp.cif (!sk->dead)
sk1837net/tcp/tcp.cwake_up (sk->sleep);
sk1841net/tcp/tcp.cif (sk->rqueue != NULL)
sk1845net/tcp/tcp.cskb = sk->rqueue;
sk1850net/tcp/tcp.cafter (skb->h.th->seq + skb->len + 1, sk->copied_seq))
sk1854net/tcp/tcp.c} while (skb != sk->rqueue);
sk1856net/tcp/tcp.csk->rqueue = NULL;
sk1859net/tcp/tcp.cif (sk->send_tmp)
sk1861net/tcp/tcp.ctcp_send_partial (sk);
sk1864net/tcp/tcp.cswitch (sk->state)
sk1871net/tcp/tcp.csk->time_wait.len = 4*sk->rtt;;
sk1872net/tcp/tcp.csk->timeout = TIME_CLOSE;
sk1873net/tcp/tcp.creset_timer ((struct timer *)&sk->time_wait);
sk1875net/tcp/tcp.ctcp_time_wait(sk);
sk1876net/tcp/tcp.crelease_sock (sk);
sk1881net/tcp/tcp.csk->state = TCP_CLOSE;
sk1882net/tcp/tcp.crelease_sock (sk);
sk1886net/tcp/tcp.csk->state = TCP_CLOSE;
sk1887net/tcp/tcp.crelease_sock(sk);
sk1892net/tcp/tcp.crelease_sock(sk);
sk1901net/tcp/tcp.cprot = (struct proto *)sk->prot;
sk1902net/tcp/tcp.cth=(struct tcp_header *)&sk->dummy_th;
sk1904net/tcp/tcp.cbuff=prot->wmalloc(sk, MAX_FIN_SIZE,1, GFP_ATOMIC);
sk1908net/tcp/tcp.cif (sk->state != TCP_CLOSE_WAIT)
sk1909net/tcp/tcp.csk->state = TCP_ESTABLISHED;
sk1910net/tcp/tcp.csk->timeout = TIME_CLOSE;
sk1911net/tcp/tcp.csk->time_wait.len = 100; /* wait a second. */
sk1912net/tcp/tcp.creset_timer ((struct timer *)&sk->time_wait);
sk1919net/tcp/tcp.cbuff->sk = sk;
sk1923net/tcp/tcp.ctmp = prot->build_header (buff,sk->saddr, sk->daddr, &dev,
sk1924net/tcp/tcp.cIPPROTO_TCP, sk->opt,
sk1928net/tcp/tcp.cprot->wfree (sk,buff->mem_addr, buff->mem_len);
sk1930net/tcp/tcp.crelease_sock(sk);
sk1938net/tcp/tcp.ct1->seq = net32(sk->send_seq);
sk1939net/tcp/tcp.csk->send_seq++;
sk1940net/tcp/tcp.cbuff->h.seq = sk->send_seq;
sk1944net/tcp/tcp.csk->delay_acks = 0;
sk1945net/tcp/tcp.ct1->ack_seq = net32(sk->acked_seq);
sk1946net/tcp/tcp.ct1->window = net16(sk->prot->rspace(sk));
sk1950net/tcp/tcp.ctcp_send_check (t1, sk->saddr, sk->daddr, sizeof (*t1), sk);
sk1952net/tcp/tcp.cif (sk->wfront == NULL)
sk1954net/tcp/tcp.cprot->queue_xmit(sk, dev, buff, 0);
sk1958net/tcp/tcp.csk->time_wait.len = sk->rtt;
sk1959net/tcp/tcp.csk->timeout = TIME_WRITE;
sk1960net/tcp/tcp.creset_timer ((struct timer *)&sk->time_wait);
sk1962net/tcp/tcp.cif (sk->wback == NULL)
sk1964net/tcp/tcp.csk->wfront=buff;
sk1968net/tcp/tcp.csk->wback->next = buff;
sk1970net/tcp/tcp.csk->wback = buff;
sk1975net/tcp/tcp.cif (sk->state == TCP_CLOSE_WAIT)
sk1977net/tcp/tcp.csk->state = TCP_FIN_WAIT2;
sk1981net/tcp/tcp.csk->state = TCP_FIN_WAIT1;
sk1984net/tcp/tcp.crelease_sock (sk);
sk1991net/tcp/tcp.ctcp_write_xmit (volatile struct sock *sk)
sk1994net/tcp/tcp.cPRINTK (("tcp_write_xmit (sk=%X)\n",sk));
sk1995net/tcp/tcp.cwhile (sk->wfront != NULL && before (sk->wfront->h.seq, sk->window_seq) &&
sk1996net/tcp/tcp.csk->packets_out < sk->cong_window)
sk1998net/tcp/tcp.cskb = sk->wfront;
sk1999net/tcp/tcp.csk->wfront = (struct sk_buff *)skb->next;
sk2000net/tcp/tcp.cif (sk->wfront == NULL)
sk2001net/tcp/tcp.csk->wback = NULL;
sk2007net/tcp/tcp.csk->wfront = NULL;
sk2008net/tcp/tcp.csk->wback = NULL;
sk2013net/tcp/tcp.csk->prot->queue_xmit (sk, skb->dev, skb, skb->free);
sk2022net/tcp/tcp.ctcp_ack (volatile struct sock *sk, struct tcp_header *th, unsigned long saddr)
sk2029net/tcp/tcp.cack, net16(th->window), sk->rcv_ack_seq, sk->window_seq));
sk2030net/tcp/tcp.cif (after (ack, sk->send_seq+1) || before (ack, sk->rcv_ack_seq-1))
sk2032net/tcp/tcp.cif (after (ack, sk->send_seq) || (sk->state != TCP_ESTABLISHED &&
sk2033net/tcp/tcp.csk->state != TCP_CLOSE_WAIT)) 
sk2037net/tcp/tcp.cif (sk->keepopen)
sk2038net/tcp/tcp.creset_timer ((struct timer *)&sk->time_wait);
sk2039net/tcp/tcp.csk->retransmits = 0;
sk2044net/tcp/tcp.cif (after (sk->window_seq, ack+net16(th->window)))
sk2056net/tcp/tcp.csk->window_seq = ack + net16(th->window);
sk2058net/tcp/tcp.cfor (skb = sk->send_head; skb != NULL; skb= (struct sk_buff *)skb->link3)
sk2060net/tcp/tcp.cif (after( skb->h.seq, sk->window_seq))
sk2066net/tcp/tcp.csk->send_head = (struct sk_buff *)skb->link3;
sk2072net/tcp/tcp.cif (sk->send_tail == skb)
sk2073net/tcp/tcp.csk->send_tail = skb2;
sk2108net/tcp/tcp.cskb->next = sk->wfront;
sk2109net/tcp/tcp.csk->wfront = skb;
sk2126net/tcp/tcp.csk->window_seq = ack + net16(th->window);
sk2129net/tcp/tcp.cif (sk->cong_window < 2048 && ack != sk->rcv_ack_seq)
sk2131net/tcp/tcp.cif (sk->exp_growth)
sk2132net/tcp/tcp.csk->cong_window *= 2;
sk2134net/tcp/tcp.csk->cong_window++;
sk2138net/tcp/tcp.csk->rcv_ack_seq = ack;
sk2141net/tcp/tcp.cwhile (sk->send_head != NULL)
sk2143net/tcp/tcp.cif (before (sk->send_head->h.seq, ack+1))
sk2147net/tcp/tcp.csk->packets_out --;
sk2148net/tcp/tcp.cPRINTK (("skb=%X acked\n", sk->send_head));
sk2151net/tcp/tcp.cif (!sk->dead)
sk2152net/tcp/tcp.cwake_up (sk->sleep);
sk2156net/tcp/tcp.coskb = sk->send_head;
sk2158net/tcp/tcp.csk->rtt += ((jiffies - oskb->when) - sk->rtt)/2;
sk2159net/tcp/tcp.cif (sk->rtt < 30) sk->rtt = 30;
sk2160net/tcp/tcp.csk->send_head = (struct sk_buff *)oskb->link3;
sk2161net/tcp/tcp.cif (sk->send_head == NULL) 
sk2163net/tcp/tcp.csk->send_tail = NULL;
sk2196net/tcp/tcp.cif (!sk->dead)
sk2197net/tcp/tcp.cwake_up(sk->sleep);
sk2212net/tcp/tcp.cif (sk->retransmits && sk->send_head != NULL)
sk2215net/tcp/tcp.csk->prot->retransmit (sk,1);
sk2217net/tcp/tcp.csk->retransmits = 0;
sk2221net/tcp/tcp.cif (sk->wfront != NULL && sk->packets_out < sk->cong_window)
sk2223net/tcp/tcp.cif (after (sk->window_seq, sk->wfront->h.seq))
sk2225net/tcp/tcp.ctcp_write_xmit (sk);
sk2230net/tcp/tcp.cif (sk->send_head == NULL && sk->ack_backlog == 0 &&
sk2231net/tcp/tcp.csk->state != TCP_TIME_WAIT && !sk->keepopen)
sk2234net/tcp/tcp.cif (!sk->dead)
sk2235net/tcp/tcp.cwake_up (sk->sleep);
sk2237net/tcp/tcp.cdelete_timer((struct timer *)&sk->time_wait);
sk2238net/tcp/tcp.csk->timeout = 0;
sk2242net/tcp/tcp.cif (sk->state != sk->keepopen)
sk2244net/tcp/tcp.csk->timeout = TIME_WRITE;
sk2245net/tcp/tcp.csk->time_wait.len = sk->rtt*2;
sk2246net/tcp/tcp.creset_timer ((struct timer *)&sk->time_wait);
sk2248net/tcp/tcp.cif (sk->state == TCP_TIME_WAIT)
sk2250net/tcp/tcp.csk->time_wait.len = TCP_TIMEWAIT_LEN;
sk2251net/tcp/tcp.creset_timer ((struct timer *)&sk->time_wait);
sk2252net/tcp/tcp.csk->timeout = TIME_CLOSE;
sk2258net/tcp/tcp.cif (sk->packets_out == 0 && sk->send_tmp != NULL &&
sk2259net/tcp/tcp.csk->wfront == NULL && sk->send_head == NULL)
sk2261net/tcp/tcp.ctcp_send_partial (sk);
sk2265net/tcp/tcp.cif ( sk->state == TCP_TIME_WAIT)
sk2267net/tcp/tcp.cif (!sk->dead) wake_up (sk->sleep);
sk2268net/tcp/tcp.cif (sk->rcv_ack_seq == sk->send_seq &&    
sk2269net/tcp/tcp.csk->acked_seq == sk->fin_seq)
sk2271net/tcp/tcp.csk->state = TCP_CLOSE;
sk2272net/tcp/tcp.csk->shutdown = SHUTDOWN_MASK;
sk2276net/tcp/tcp.cif (sk->state == TCP_LAST_ACK || sk->state == TCP_FIN_WAIT2)
sk2278net/tcp/tcp.cif (!sk->dead) wake_up (sk->sleep);
sk2279net/tcp/tcp.cif (sk->rcv_ack_seq == sk->send_seq)
sk2281net/tcp/tcp.cif (sk->acked_seq != sk->fin_seq)
sk2283net/tcp/tcp.ctcp_time_wait(sk);
sk2287net/tcp/tcp.cPRINTK (("tcp_ack closing socket - %X\n", sk));
sk2288net/tcp/tcp.ctcp_send_ack (sk->send_seq, sk->acked_seq, sk, th, sk->daddr);
sk2289net/tcp/tcp.csk->shutdown = SHUTDOWN_MASK;
sk2290net/tcp/tcp.csk->state = TCP_CLOSE;
sk2305net/tcp/tcp.ctcp_data (struct sk_buff *skb, volatile struct sock *sk, 
sk2315net/tcp/tcp.cPRINTK(("tcp_data len = %d sk = %X:\n",skb->len, sk));
sk2317net/tcp/tcp.csk->bytes_rcv += skb->len;
sk2323net/tcp/tcp.ctcp_send_ack (sk->send_seq, sk->acked_seq,sk, th, saddr);
sk2328net/tcp/tcp.cif (sk->shutdown & RCV_SHUTDOWN)
sk2330net/tcp/tcp.csk->acked_seq = th->seq + skb->len + th->syn + th->fin;
sk2331net/tcp/tcp.ctcp_reset (sk->saddr, sk->daddr, skb->h.th,
sk2332net/tcp/tcp.csk->prot, NULL, skb->dev);
sk2333net/tcp/tcp.csk->state = TCP_CLOSE;
sk2334net/tcp/tcp.csk->err = EPIPE;
sk2335net/tcp/tcp.csk->shutdown = SHUTDOWN_MASK;
sk2336net/tcp/tcp.cPRINTK (("tcp_data: closing socket - %X\n", sk));
sk2338net/tcp/tcp.cif (!sk->dead) wake_up (sk->sleep);
sk2349net/tcp/tcp.cif (sk->rqueue == NULL)
sk2353net/tcp/tcp.csk->rqueue = skb;
sk2360net/tcp/tcp.cPRINTK (("tcp_data adding to chain sk = %X:\n",sk));
sk2362net/tcp/tcp.cfor (skb1=sk->rqueue; ; skb1=(struct sk_buff *)skb1->prev)
sk2372net/tcp/tcp.cif (skb1 == sk->rqueue)
sk2373net/tcp/tcp.csk->rqueue = skb;
sk2376net/tcp/tcp.cif  ( skb1->prev == sk->rqueue)
sk2395net/tcp/tcp.cif (before (sk->acked_seq, sk->copied_seq))
sk2398net/tcp/tcp.csk->acked_seq = sk->copied_seq;
sk2402net/tcp/tcp.cif (skb1 == NULL || skb1->acked || before (th->seq, sk->acked_seq+1))
sk2404net/tcp/tcp.cif (before (th->seq, sk->acked_seq+1))
sk2406net/tcp/tcp.cif (after (th->ack_seq, sk->acked_seq))
sk2407net/tcp/tcp.csk->acked_seq = th->ack_seq;
sk2413net/tcp/tcp.cif (!sk->dead) wake_up (sk->sleep);
sk2414net/tcp/tcp.csk->shutdown |= RCV_SHUTDOWN;
sk2418net/tcp/tcp.cskb2 !=(struct sk_buff *) sk->rqueue->next;
sk2421net/tcp/tcp.cif (before(skb2->h.th->seq, sk->acked_seq+1))
sk2423net/tcp/tcp.cif (after (skb2->h.th->ack_seq, sk->acked_seq))
sk2424net/tcp/tcp.csk->acked_seq = skb2->h.th->ack_seq;
sk2430net/tcp/tcp.csk->shutdown |= RCV_SHUTDOWN;
sk2431net/tcp/tcp.cif (!sk->dead) wake_up (sk->sleep);
sk2435net/tcp/tcp.csk->ack_backlog = sk->max_ack_backlog;
sk2446net/tcp/tcp.cif (!sk->delay_acks || 
sk2447net/tcp/tcp.csk->ack_backlog >= sk->max_ack_backlog || 
sk2448net/tcp/tcp.csk->bytes_rcv > sk->max_unacked || 
sk2451net/tcp/tcp.ctcp_send_ack (sk->send_seq, sk->acked_seq,sk,th, saddr);
sk2455net/tcp/tcp.csk->ack_backlog++;
sk2456net/tcp/tcp.csk->time_wait.len = TCP_ACK_TIME;
sk2457net/tcp/tcp.csk->timeout = TIME_WRITE;
sk2458net/tcp/tcp.creset_timer ((struct timer *)&sk->time_wait);
sk2459net/tcp/tcp.csk->retransmits = 0;
sk2466net/tcp/tcp.ctcp_send_ack (sk->send_seq, sk->acked_seq, sk, th, saddr);
sk2470net/tcp/tcp.cif (!sk->dead)
sk2472net/tcp/tcp.cwake_up (sk->sleep);
sk2479net/tcp/tcp.cif (sk->state == TCP_FIN_WAIT2 && sk->acked_seq == sk->fin_seq 
sk2480net/tcp/tcp.c&& sk->rcv_ack_seq == sk->send_seq)
sk2482net/tcp/tcp.cPRINTK (("tcp_data: entering last_ack state sk = %X\n", sk));
sk2484net/tcp/tcp.ctcp_send_ack (sk->send_seq, sk->acked_seq, sk, th, saddr);
sk2485net/tcp/tcp.csk->shutdown = SHUTDOWN_MASK;
sk2486net/tcp/tcp.csk->state = TCP_LAST_ACK;
sk2487net/tcp/tcp.cif (!sk->dead) wake_up (sk->sleep);
sk2494net/tcp/tcp.ctcp_urg (volatile struct sock *sk, struct tcp_header *th, unsigned long saddr)
sk2499net/tcp/tcp.cif (!sk->dead)
sk2500net/tcp/tcp.cwake_up(sk->sleep);
sk2502net/tcp/tcp.cif (sk->urginline)
sk2509net/tcp/tcp.cif (!sk->urg)
sk2513net/tcp/tcp.cif (sk->proc != 0)
sk2515net/tcp/tcp.cif (sk->proc > 0)
sk2517net/tcp/tcp.ckill_proc (sk->proc, SIGURG, 1);
sk2521net/tcp/tcp.ckill_pg (-sk->proc, SIGURG, 1);
sk2525net/tcp/tcp.csk->urg++;
sk2531net/tcp/tcp.ctcp_fin (volatile struct sock *sk, struct tcp_header *th, 
sk2535net/tcp/tcp.csk, th, saddr, dev));
sk2537net/tcp/tcp.cif (!sk->dead)
sk2539net/tcp/tcp.cwake_up (sk->sleep);
sk2542net/tcp/tcp.cswitch (sk->state)
sk2547net/tcp/tcp.csk->fin_seq = th->seq+1; /* Contains the one that needs to be acked */
sk2548net/tcp/tcp.csk->state = TCP_CLOSE_WAIT;
sk2549net/tcp/tcp.cif (th->rst) sk->shutdown = SHUTDOWN_MASK;
sk2557net/tcp/tcp.csk->fin_seq = th->seq+1; /* Contains the one that needs to be acked */
sk2558net/tcp/tcp.csk->state = TCP_FIN_WAIT2;
sk2563net/tcp/tcp.csk->state = TCP_LAST_ACK;
sk2565net/tcp/tcp.csk->time_wait.len = TCP_TIMEWAIT_LEN;
sk2566net/tcp/tcp.csk->timeout = TIME_CLOSE;
sk2567net/tcp/tcp.creset_timer ((struct timer *)&sk->time_wait);
sk2573net/tcp/tcp.csk->ack_backlog ++;
sk2577net/tcp/tcp.cbuff=sk->prot->wmalloc(sk,MAX_ACK_SIZE,1, GFP_ATOMIC);
sk2587net/tcp/tcp.cbuff->sk = sk;
sk2591net/tcp/tcp.ctmp = sk->prot->build_header (buff, sk->saddr, sk->daddr, &dev,
sk2592net/tcp/tcp.cIPPROTO_TCP,  sk->opt, MAX_ACK_SIZE);
sk2595net/tcp/tcp.csk->prot->wfree(sk, buff->mem_addr, buff->mem_len);
sk2609net/tcp/tcp.ct1->seq = net32(sk->send_seq);
sk2614net/tcp/tcp.cbuff->h.seq = sk->send_seq;
sk2615net/tcp/tcp.ct1->window = net16(sk->prot->rspace(sk));
sk2625net/tcp/tcp.ct1->ack_seq = net32(sk->acked_seq);
sk2628net/tcp/tcp.ctcp_send_check (t1, sk->saddr, sk->daddr, sizeof (*t1), sk);
sk2632net/tcp/tcp.cif (sk->wback != NULL)
sk2635net/tcp/tcp.csk->wback->next = buff;
sk2636net/tcp/tcp.csk->wback = buff;
sk2641net/tcp/tcp.csk->prot->queue_xmit (sk, dev, buff,0);
sk2651net/tcp/tcp.ctcp_accept (volatile struct sock *sk, int flags)
sk2656net/tcp/tcp.cPRINTK (("tcp_accept(sk=%X, flags=%X)\n", sk, flags));
sk2660net/tcp/tcp.cif (sk->state != TCP_LISTEN)
sk2662net/tcp/tcp.csk->err = EINVAL;
sk2667net/tcp/tcp.csk->inuse = 1;
sk2669net/tcp/tcp.cwhile ( (skb = get_firstr(sk)) == NULL )
sk2674net/tcp/tcp.crelease_sock (sk);
sk2675net/tcp/tcp.csk->err = EAGAIN;
sk2679net/tcp/tcp.crelease_sock (sk);
sk2680net/tcp/tcp.cinterruptible_sleep_on (sk->sleep);
sk2684net/tcp/tcp.csk->err = ERESTARTSYS;
sk2688net/tcp/tcp.csk->inuse = 1;
sk2693net/tcp/tcp.cnewsk = skb->sk;
sk2696net/tcp/tcp.csk->ack_backlog--;
sk2697net/tcp/tcp.crelease_sock (sk);
sk2705net/tcp/tcp.ctcp_connect (volatile struct sock *sk, struct sockaddr_in *usin, int addr_len)
sk2713net/tcp/tcp.cif (sk->state != TCP_CLOSE) return (-EISCONN);
sk2720net/tcp/tcp.csk->inuse = 1;
sk2721net/tcp/tcp.csk->daddr = sin.sin_addr.s_addr;
sk2722net/tcp/tcp.csk->send_seq = timer_seq*SEQ_TICK-seq_offset;
sk2723net/tcp/tcp.csk->rcv_ack_seq = sk->send_seq -1;
sk2724net/tcp/tcp.csk->err = 0;
sk2725net/tcp/tcp.csk->dummy_th.dest = sin.sin_port;
sk2726net/tcp/tcp.crelease_sock (sk);
sk2728net/tcp/tcp.cbuff=sk->prot->wmalloc(sk,MAX_SYN_SIZE,0, GFP_KERNEL);
sk2733net/tcp/tcp.csk->inuse = 1;
sk2738net/tcp/tcp.cbuff->sk = sk;
sk2743net/tcp/tcp.ctmp = sk->prot->build_header (buff, sk->saddr, sk->daddr, &dev,
sk2747net/tcp/tcp.csk->prot->wfree(sk, buff->mem_addr, buff->mem_len);
sk2748net/tcp/tcp.crelease_sock (sk);
sk2754net/tcp/tcp.cmemcpy (t1, (void *)&(sk->dummy_th), sizeof (*t1));
sk2755net/tcp/tcp.ct1->seq = net32(sk->send_seq++);
sk2756net/tcp/tcp.cbuff->h.seq = sk->send_seq;
sk2773net/tcp/tcp.csk->mtu = dev->mtu - HEADER_SIZE;
sk2774net/tcp/tcp.ctcp_send_check (t1, sk->saddr, sk->daddr,
sk2775net/tcp/tcp.csizeof (struct tcp_header) + 4, sk);
sk2778net/tcp/tcp.csk->state = TCP_SYN_SENT;
sk2780net/tcp/tcp.csk->prot->queue_xmit(sk, dev, buff, 0);
sk2782net/tcp/tcp.csk->time_wait.len = TCP_CONNECT_TIME;
sk2783net/tcp/tcp.csk->rtt = TCP_CONNECT_TIME;
sk2784net/tcp/tcp.creset_timer ((struct timer *)&sk->time_wait);
sk2785net/tcp/tcp.csk->retransmits = TCP_RETR2 - TCP_SYN_RETRIES;
sk2786net/tcp/tcp.crelease_sock (sk);
sk2795net/tcp/tcp.ctcp_sequence (volatile struct sock *sk, struct tcp_header *th, short len,
sk2804net/tcp/tcp.csk, th, len, opt, saddr));
sk2806net/tcp/tcp.cif (between(th->seq, sk->acked_seq, sk->acked_seq + sk->window)||
sk2807net/tcp/tcp.cbetween(th->seq + len-(th->doff * 4), sk->acked_seq + 1, 
sk2808net/tcp/tcp.csk->acked_seq + sk->window) ||
sk2809net/tcp/tcp.c(before (th->seq, sk->acked_seq) &&
sk2810net/tcp/tcp.cafter (th->seq + len - (th->doff * 4), sk->acked_seq + sk->window)))
sk2819net/tcp/tcp.cif (after (th->seq, sk->acked_seq + sk->window))
sk2821net/tcp/tcp.ctcp_send_ack (sk->send_seq, sk->acked_seq, sk, th, saddr);
sk2826net/tcp/tcp.cif (th->ack && len == (th->doff * 4) && after (th->seq, sk->acked_seq - 32767) &&
sk2832net/tcp/tcp.ctcp_send_ack (net32(th->ack_seq), sk->acked_seq, sk, th, saddr);
sk2841net/tcp/tcp.ctcp_options (volatile struct sock *sk, struct tcp_header *th)
sk2847net/tcp/tcp.csk->mtu = min (sk->mtu, 576-HEADER_SIZE);
sk2850net/tcp/tcp.csk->mtu = min (sk->mtu, ptr[2]*256 + ptr[3] - HEADER_SIZE);
sk2859net/tcp/tcp.cvolatile struct sock *sk;
sk2887net/tcp/tcp.csk=get_sock(&tcp_prot, net16(th->dest), saddr, th->source, daddr);
sk2891net/tcp/tcp.cif (sk)
sk2893net/tcp/tcp.cPRINTK (("sk = %X:\n",sk));
sk2900net/tcp/tcp.cskb->sk = NULL;
sk2909net/tcp/tcp.cif (sk == NULL)
sk2913net/tcp/tcp.cskb->sk = NULL;
sk2919net/tcp/tcp.cskb->sk = sk;
sk2932net/tcp/tcp.cif (sk->inuse)
sk2934net/tcp/tcp.cif (sk->back_log == NULL)
sk2936net/tcp/tcp.csk->back_log = skb;
sk2942net/tcp/tcp.cskb->next = sk->back_log;
sk2943net/tcp/tcp.cskb->prev = sk->back_log->prev;
sk2950net/tcp/tcp.csk->inuse = 1;
sk2955net/tcp/tcp.cif (!sk)
sk2962net/tcp/tcp.cif (!sk->prot)
sk2969net/tcp/tcp.cif (sk->rmem_alloc + skb->mem_len >= SK_RMEM_MAX)
sk2971net/tcp/tcp.cskb->sk = NULL;
sk2974net/tcp/tcp.crelease_sock (sk);
sk2978net/tcp/tcp.csk->rmem_alloc += skb->mem_len;
sk2984net/tcp/tcp.cswitch (sk->state)
sk2991net/tcp/tcp.csk->err = ECONNRESET;
sk2992net/tcp/tcp.csk->state = TCP_CLOSE;
sk2993net/tcp/tcp.csk->shutdown = SHUTDOWN_MASK;
sk2994net/tcp/tcp.cif (!sk->dead)
sk2996net/tcp/tcp.cwake_up (sk->sleep);
sk2999net/tcp/tcp.crelease_sock(sk);
sk3009net/tcp/tcp.cif (!tcp_sequence (sk, th, len, opt, saddr))
sk3012net/tcp/tcp.crelease_sock(sk);
sk3019net/tcp/tcp.csk->err = ECONNRESET;
sk3021net/tcp/tcp.cif (sk->state == TCP_CLOSE_WAIT)
sk3023net/tcp/tcp.csk->err = EPIPE;
sk3030net/tcp/tcp.csk->state = TCP_CLOSE;
sk3031net/tcp/tcp.csk->shutdown = SHUTDOWN_MASK;
sk3032net/tcp/tcp.cif (!sk->dead)
sk3034net/tcp/tcp.cwake_up (sk->sleep);
sk3037net/tcp/tcp.crelease_sock(sk);
sk3044net/tcp/tcp.csk->err = ECONNRESET;
sk3045net/tcp/tcp.csk->state = TCP_CLOSE;
sk3046net/tcp/tcp.csk->shutdown = SHUTDOWN_MASK;
sk3047net/tcp/tcp.ctcp_reset (daddr, saddr,  th, sk->prot, opt,dev);
sk3048net/tcp/tcp.cif (!sk->dead)
sk3050net/tcp/tcp.cwake_up (sk->sleep);
sk3053net/tcp/tcp.crelease_sock(sk);
sk3059net/tcp/tcp.cif(!tcp_ack (sk, th, saddr))
sk3062net/tcp/tcp.crelease_sock(sk);
sk3068net/tcp/tcp.cif (tcp_urg (sk, th, saddr))
sk3071net/tcp/tcp.crelease_sock(sk);
sk3076net/tcp/tcp.cif (th->fin && tcp_fin (sk, th, saddr, dev))
sk3079net/tcp/tcp.crelease_sock(sk);
sk3083net/tcp/tcp.cif ( tcp_data (skb, sk, saddr, len))
sk3086net/tcp/tcp.crelease_sock(sk);
sk3090net/tcp/tcp.crelease_sock(sk);
sk3095net/tcp/tcp.cif (sk->dead || sk->daddr)
sk3099net/tcp/tcp.crelease_sock (sk);
sk3107net/tcp/tcp.ctcp_reset (daddr, saddr, th, sk->prot, opt,dev);
sk3110net/tcp/tcp.crelease_sock(sk);
sk3117net/tcp/tcp.crelease_sock(sk);
sk3122net/tcp/tcp.ctcp_reset (daddr, saddr, th, sk->prot, opt,dev );
sk3124net/tcp/tcp.crelease_sock(sk);
sk3142net/tcp/tcp.ctcp_conn_request (sk, skb, daddr, saddr, opt, dev);
sk3144net/tcp/tcp.crelease_sock(sk);
sk3149net/tcp/tcp.crelease_sock(sk);
sk3153net/tcp/tcp.cif (!tcp_sequence (sk, th, len, opt, saddr)) 
sk3156net/tcp/tcp.crelease_sock(sk);
sk3163net/tcp/tcp.csk->err = ECONNREFUSED ;
sk3164net/tcp/tcp.csk->state = TCP_CLOSE;
sk3165net/tcp/tcp.csk->shutdown = SHUTDOWN_MASK;
sk3166net/tcp/tcp.cif (!sk->dead)
sk3168net/tcp/tcp.cwake_up (sk->sleep);
sk3171net/tcp/tcp.crelease_sock(sk);
sk3177net/tcp/tcp.csk->err = ECONNRESET;
sk3178net/tcp/tcp.csk->state = TCP_CLOSE;
sk3179net/tcp/tcp.csk->shutdown = SHUTDOWN_MASK;
sk3180net/tcp/tcp.ctcp_reset (daddr, saddr,  th, sk->prot, opt, dev);
sk3181net/tcp/tcp.cif (!sk->dead)
sk3183net/tcp/tcp.cwake_up (sk->sleep);
sk3186net/tcp/tcp.crelease_sock(sk);
sk3194net/tcp/tcp.csk->state = TCP_SYN_RECV;
sk3198net/tcp/tcp.crelease_sock(sk);
sk3202net/tcp/tcp.cswitch (sk->state)
sk3205net/tcp/tcp.cif (!tcp_ack(sk, th, saddr))
sk3207net/tcp/tcp.ctcp_reset(daddr, saddr, th, sk->prot, opt,dev);
sk3209net/tcp/tcp.crelease_sock(sk);
sk3219net/tcp/tcp.crelease_sock (sk);
sk3224net/tcp/tcp.csk->acked_seq = th->seq+1;
sk3225net/tcp/tcp.csk->fin_seq = th->seq;
sk3226net/tcp/tcp.ctcp_send_ack (sk->send_seq, th->seq+1, sk, 
sk3227net/tcp/tcp.cth, sk->daddr);
sk3230net/tcp/tcp.cif (!tcp_ack(sk, th, saddr))
sk3232net/tcp/tcp.ctcp_reset(daddr, saddr, th, sk->prot, opt, dev);
sk3234net/tcp/tcp.crelease_sock(sk);
sk3238net/tcp/tcp.csk->state = TCP_ESTABLISHED;
sk3243net/tcp/tcp.ctcp_options(sk, th);
sk3244net/tcp/tcp.csk->dummy_th.dest = th->source;
sk3245net/tcp/tcp.csk->copied_seq = sk->acked_seq-1;
sk3246net/tcp/tcp.cif (!sk->dead)
sk3248net/tcp/tcp.cwake_up (sk->sleep);
sk3254net/tcp/tcp.cif (tcp_urg (sk, th, saddr))
sk3257net/tcp/tcp.crelease_sock(sk);
sk3260net/tcp/tcp.cif (tcp_data (skb, sk, saddr, len))
sk3264net/tcp/tcp.ctcp_fin(sk, th, saddr, dev);
sk3266net/tcp/tcp.crelease_sock(sk);
sk3272net/tcp/tcp.cif (tcp_urg (sk, th, saddr))
sk3275net/tcp/tcp.crelease_sock (sk);
sk3280net/tcp/tcp.cif (tcp_data (skb, sk, saddr, len))
sk3283net/tcp/tcp.crelease_sock (sk);
sk3289net/tcp/tcp.crelease_sock(sk);
sk3292net/tcp/tcp.ctcp_fin (sk, th, saddr, dev);
sk3293net/tcp/tcp.crelease_sock(sk);
sk3303net/tcp/tcp.ctcp_write_wakeup(volatile struct sock *sk)
sk3309net/tcp/tcp.cif (sk -> state != TCP_ESTABLISHED && sk->state != TCP_CLOSE_WAIT) return;
sk3311net/tcp/tcp.cbuff=sk->prot->wmalloc(sk,MAX_ACK_SIZE,1, GFP_ATOMIC);
sk3320net/tcp/tcp.cbuff->sk = sk;
sk3325net/tcp/tcp.ctmp = sk->prot->build_header (buff, sk->saddr, sk->daddr, &dev,
sk3326net/tcp/tcp.cIPPROTO_TCP, sk->opt, MAX_ACK_SIZE);
sk3329net/tcp/tcp.csk->prot->wfree(sk, buff->mem_addr, buff->mem_len);
sk3336net/tcp/tcp.cmemcpy (t1,(void *) &sk->dummy_th, sizeof (*t1));
sk3340net/tcp/tcp.ct1->seq = net32(sk->send_seq-1);
sk3349net/tcp/tcp.ct1->ack_seq = net32(sk->acked_seq);
sk3350net/tcp/tcp.ct1->window = net16(sk->prot->rspace(sk));
sk3352net/tcp/tcp.ctcp_send_check (t1, sk->saddr, sk->daddr, sizeof (*t1), sk);
sk3355net/tcp/tcp.csk->prot->queue_xmit(sk, dev, buff, 1);
sk168net/tcp/timer.cvolatile struct sock *sk;
sk176net/tcp/timer.csk = timer_base->sk;
sk178net/tcp/timer.cif (sk->inuse)
sk183net/tcp/timer.csk->inuse = 1;
sk185net/tcp/timer.cwhy = sk->timeout;
sk187net/tcp/timer.cPRINTK (("net_timer: found sk=%X why = %d\n",sk, why));
sk189net/tcp/timer.cif (sk->keepopen)
sk191net/tcp/timer.csk->time_wait.len = TCP_TIMEOUT_LEN;
sk192net/tcp/timer.csk->timeout = TIME_KEEPOPEN;
sk197net/tcp/timer.csk->timeout = 0;
sk202net/tcp/timer.cif (sk->ack_backlog)
sk204net/tcp/timer.csk->prot->read_wakeup(sk);
sk205net/tcp/timer.cif (!sk->dead) wake_up (sk->sleep);
sk213net/tcp/timer.cif (!sk->dead || sk->state != TCP_CLOSE)
sk216net/tcp/timer.crelease_sock (sk);
sk219net/tcp/timer.cdestroy_sock (sk);
sk226net/tcp/timer.cPRINTK (("possible memory leak.  sk = %X\n", sk));
sk227net/tcp/timer.creset_timer ((struct timer *)&sk->time_wait);
sk228net/tcp/timer.csk->inuse = 0;
sk234net/tcp/timer.csk->state = TCP_CLOSE;
sk235net/tcp/timer.cdelete_timer ((struct timer *)&sk->time_wait);
sk238net/tcp/timer.carp_destroy (sk->daddr);
sk239net/tcp/timer.cif (!sk->dead)
sk240net/tcp/timer.cwake_up (sk->sleep);
sk241net/tcp/timer.crelease_sock(sk);
sk247net/tcp/timer.cif (sk->send_head != NULL)
sk249net/tcp/timer.cif (before (jiffies, sk->send_head->when + 2*sk->rtt))
sk251net/tcp/timer.csk->time_wait.len = 2*sk->rtt;
sk252net/tcp/timer.csk->timeout = TIME_WRITE;
sk253net/tcp/timer.creset_timer ((struct timer *)&sk->time_wait);
sk254net/tcp/timer.crelease_sock (sk);
sk258net/tcp/timer.csk->prot->retransmit (sk, 0);
sk260net/tcp/timer.cif (sk->retransmits > TCP_RETR1)
sk263net/tcp/timer.carp_destroy (sk->daddr);
sk264net/tcp/timer.cip_route_check (sk->daddr);
sk267net/tcp/timer.cif (sk->retransmits > TCP_RETR2)
sk270net/tcp/timer.csk->err = ETIMEDOUT;
sk271net/tcp/timer.cif (sk->state == TCP_FIN_WAIT1 ||
sk272net/tcp/timer.csk->state == TCP_FIN_WAIT2 ||
sk273net/tcp/timer.csk->state == TCP_LAST_ACK)
sk275net/tcp/timer.csk->state = TCP_TIME_WAIT;
sk276net/tcp/timer.csk->timeout = TIME_CLOSE;
sk277net/tcp/timer.csk->time_wait.len = TCP_TIMEWAIT_LEN;
sk278net/tcp/timer.creset_timer ((struct timer *)&sk->time_wait);
sk279net/tcp/timer.crelease_sock(sk);
sk284net/tcp/timer.csk->prot->close (sk,1);
sk288net/tcp/timer.crelease_sock (sk);
sk291net/tcp/timer.crelease_sock (sk);
sk297net/tcp/timer.cif (sk->prot->write_wakeup != NULL)
sk298net/tcp/timer.csk->prot->write_wakeup(sk);
sk299net/tcp/timer.csk->retransmits ++;
sk300net/tcp/timer.cif (sk->shutdown == SHUTDOWN_MASK)
sk302net/tcp/timer.csk->prot->close (sk,1);
sk303net/tcp/timer.csk->state = TCP_CLOSE;
sk306net/tcp/timer.cif (sk->retransmits > TCP_RETR1)
sk309net/tcp/timer.carp_destroy (sk->daddr);
sk310net/tcp/timer.cip_route_check (sk->daddr);
sk311net/tcp/timer.crelease_sock (sk);
sk314net/tcp/timer.cif (sk->retransmits > TCP_RETR2)
sk317net/tcp/timer.carp_destroy (sk->daddr);
sk318net/tcp/timer.csk->err = ETIMEDOUT;
sk319net/tcp/timer.cif (sk->state == TCP_FIN_WAIT1 ||
sk320net/tcp/timer.csk->state == TCP_FIN_WAIT2)
sk322net/tcp/timer.csk->state = TCP_TIME_WAIT;
sk323net/tcp/timer.cif (!sk->dead)
sk324net/tcp/timer.cwake_up (sk->sleep);
sk325net/tcp/timer.crelease_sock(sk);
sk329net/tcp/timer.csk->prot->close (sk, 1);
sk333net/tcp/timer.crelease_sock (sk);
sk337net/tcp/timer.crelease_sock(sk);
sk46net/tcp/timer.hvolatile struct sock *sk;
sk110net/tcp/udp.cudp_select (volatile struct sock *sk, int sel_type, select_table *wait)
sk112net/tcp/udp.cselect_wait(sk->sleep, wait);
sk116net/tcp/udp.cif (sk->rqueue != NULL) 
sk123net/tcp/udp.cif (sk->prot->wspace(sk) >= MIN_WRITE_SPACE)
sk130net/tcp/udp.cif (sk->err) return (1); /* can this ever happen? */
sk148net/tcp/udp.cvolatile struct sock *sk;
sk153net/tcp/udp.csk = get_sock (&udp_prot, net16(th->dest), saddr, th->source, daddr);
sk155net/tcp/udp.cif (sk == NULL) return;
sk158net/tcp/udp.cif (sk->cong_window > 1)
sk159net/tcp/udp.csk->cong_window = sk->cong_window/2;
sk163net/tcp/udp.csk->err = icmp_err_convert[err & 0xff].errno;
sk165net/tcp/udp.cif (icmp_err_convert[err & 0xff].fatal && sk->state == TCP_ESTABLISHED)
sk167net/tcp/udp.csk->prot->close(sk, 0);
sk245net/tcp/udp.cunsigned long daddr, int len, volatile struct sock *sk)
sk248net/tcp/udp.cif (sk && sk->no_check) return;
sk253net/tcp/udp.cudp_loopback (volatile struct sock *sk, unsigned short port,
sk260net/tcp/udp.csk->inuse = 1;
sk264net/tcp/udp.cpair = get_sock (sk->prot, net16(port), saddr,
sk265net/tcp/udp.csk->dummy_th.source, daddr);
sk286net/tcp/udp.cuh -> source = sk->dummy_th.source;
sk307net/tcp/udp.crelease_sock (sk);
sk313net/tcp/udp.cudp_sendto (volatile struct sock *sk, unsigned char *from, int len,
sk349net/tcp/udp.cif (sk->state != TCP_ESTABLISHED)
sk352net/tcp/udp.csin.sin_port = sk->dummy_th.dest;
sk353net/tcp/udp.csin.sin_addr.s_addr = sk->daddr;
sk357net/tcp/udp.csaddr = sk->saddr;
sk367net/tcp/udp.cerr = udp_loopback (sk, sin.sin_port, from, len,
sk373net/tcp/udp.csk->inuse = 1;
sk378net/tcp/udp.cskb = sk->prot->wmalloc (sk, len + sizeof (*skb)
sk379net/tcp/udp.c+ sk->prot->max_header, 0,
sk385net/tcp/udp.ctmp = sk->wmem_alloc;
sk386net/tcp/udp.crelease_sock (sk);
sk390net/tcp/udp.cif (tmp <= sk->wmem_alloc)
sk392net/tcp/udp.cinterruptible_sleep_on (sk->sleep);
sk400net/tcp/udp.csk->inuse = 1;
sk407net/tcp/udp.cskb->mem_len = len + sizeof (*skb) + sk->prot->max_header;
sk408net/tcp/udp.cskb->sk = sk;
sk414net/tcp/udp.ctmp = sk->prot->build_header (skb, saddr,
sk416net/tcp/udp.cIPPROTO_UDP, sk->opt, skb->mem_len);
sk419net/tcp/udp.csk->prot->wfree (sk, skb->mem_addr, skb->mem_len);
sk420net/tcp/udp.crelease_sock (sk);
sk437net/tcp/udp.cuh->source = sk->dummy_th.source;
sk445net/tcp/udp.crelease_sock (sk);
sk456net/tcp/udp.camt+sizeof (*uh), sk);
sk458net/tcp/udp.csk->prot->queue_xmit (sk, dev, skb, 1);
sk460net/tcp/udp.crelease_sock (sk);
sk465net/tcp/udp.cudp_write (volatile struct sock *sk, unsigned char *buff, int len, int noblock,
sk468net/tcp/udp.creturn (udp_sendto (sk, buff, len, noblock, flags, NULL, 0));
sk473net/tcp/udp.cudp_ioctl (volatile struct sock *sk, int cmd, unsigned long arg)
sk483net/tcp/udp.cif (sk->state == TCP_LISTEN)
sk485net/tcp/udp.camount = sk->prot->wspace(sk)/2;
sk497net/tcp/udp.cif (sk->state == TCP_LISTEN)
sk500net/tcp/udp.cskb = sk->rqueue;
sk516net/tcp/udp.cudp_recvfrom (volatile struct sock *sk, unsigned char *to, int len,
sk530net/tcp/udp.cif (sk->err)
sk533net/tcp/udp.cerr = -sk->err;
sk534net/tcp/udp.csk->err = 0;
sk542net/tcp/udp.csk->inuse = 1;
sk543net/tcp/udp.cwhile (sk->rqueue == NULL)
sk545net/tcp/udp.cif (sk->shutdown & RCV_SHUTDOWN)
sk552net/tcp/udp.crelease_sock (sk);
sk555net/tcp/udp.crelease_sock (sk);
sk557net/tcp/udp.cif (sk->rqueue == NULL)
sk559net/tcp/udp.cinterruptible_sleep_on (sk->sleep);
sk565net/tcp/udp.csk->inuse = 1;
sk568net/tcp/udp.cskb = sk->rqueue;
sk574net/tcp/udp.csk->rqueue = NULL;
sk578net/tcp/udp.csk->rqueue = (struct sk_buff *)sk->rqueue ->next;
sk601net/tcp/udp.crelease_sock (sk);
sk608net/tcp/udp.cudp_read (volatile struct sock *sk, unsigned char *buff, int len, int noblock,
sk611net/tcp/udp.creturn (udp_recvfrom (sk, buff, len, noblock, flags, NULL, NULL));
sk615net/tcp/udp.cudp_connect (volatile struct sock *sk, struct sockaddr_in *usin, int addr_len)
sk623net/tcp/udp.csk->daddr = sin.sin_addr.s_addr;
sk624net/tcp/udp.csk->dummy_th.dest = sin.sin_port;
sk625net/tcp/udp.csk->state = TCP_ESTABLISHED;
sk630net/tcp/udp.cudp_close(volatile struct sock *sk, int timeout)
sk632net/tcp/udp.csk->inuse = 1;
sk633net/tcp/udp.csk->state = TCP_CLOSE;
sk634net/tcp/udp.cif (sk->dead)
sk635net/tcp/udp.cdestroy_sock (sk);
sk637net/tcp/udp.crelease_sock (sk);
sk647net/tcp/udp.cvolatile struct sock *sk;
sk654net/tcp/udp.csk = get_sock (prot, net16(uh->dest), saddr, uh->source, daddr);
sk657net/tcp/udp.cif (sk == NULL)
sk664net/tcp/udp.cskb->sk = NULL;
sk675net/tcp/udp.cskb->sk = NULL;
sk680net/tcp/udp.cskb->sk = sk;
sk690net/tcp/udp.cif (sk->inuse)
sk692net/tcp/udp.cif (sk->back_log == NULL)
sk694net/tcp/udp.csk->back_log = skb;
sk700net/tcp/udp.cskb->next = sk->back_log;
sk701net/tcp/udp.cskb->prev = sk->back_log->prev;
sk708net/tcp/udp.csk->inuse = 1;
sk713net/tcp/udp.cif (sk->rmem_alloc + skb->mem_len >= SK_RMEM_MAX)
sk715net/tcp/udp.cskb->sk = NULL;
sk717net/tcp/udp.crelease_sock (sk);
sk721net/tcp/udp.csk->rmem_alloc += skb->mem_len;
sk727net/tcp/udp.cif (sk->rqueue == NULL)
sk729net/tcp/udp.csk->rqueue = skb;
sk735net/tcp/udp.cskb->next = sk->rqueue;
sk736net/tcp/udp.cskb->prev = sk->rqueue->prev;
sk743net/tcp/udp.cif (!sk->dead)
sk744net/tcp/udp.cwake_up (sk->sleep);
sk746net/tcp/udp.crelease_sock (sk);