tcprcvwin()

tcprcvwin()

概要

引数

実装

  561: void
  562: tcprcvwin(Conv *s)                              /* Call with tcb locked */
  563: {
  564:         int w;
  565:         Tcpctl *tcb;
  566: 
  567:         tcb = (Tcpctl*)s->ptcl;
  568:         w = tcb->window - qlen(s->rq);
  • TCPコントロールブロック(Tcpctl)を参照して,受信ウィンドウサイズを計算する.
  • 詳細はqlen()を参照
  569:         if(w < 0)
  570:                 w = 0;
  571:         tcb->rcv.wnd = w;
  572:         if(w == 0)
  573:                 tcb->rcv.blocked = 1;
  • 受信ウィンドウが0になった場合は,rcv.blockedフラグを立てる.
  574: }