plan 9 kernel history: overview | file list | diff list

1992/0303/port/tcpif.c (diff list | history)

1992/0223/sys/src/9/port/tcpif.c:15,201992/0303/sys/src/9/port/tcpif.c:15,21 (short | long | prev | next)
1991/0424    
{ 
	Block *bp; 
	int len; 
1992/0303    
	Tcpctl *tcb = &s->tcpctl; 
1991/0424    
 
1992/0111    
	DPRINT("state_upcall: %s -> %s err %s\n",  
1991/0424    
	      tcpstate[oldstate], tcpstate[newstate], s->err); 
1992/0223/sys/src/9/port/tcpif.c:48,551992/0303/sys/src/9/port/tcpif.c:49,64
1992/0223    
		qunlock(s); 
1991/1120    
		break; 
1991/0424    
	} 
1992/0303    
 
	if(oldstate == Syn_sent) 
		wakeup(&tcb->syner); 
1991/0424    
} 
 
1992/0303    
static int 
notsyner(void *ic) 
{ 
	return ((Tcpctl*)ic)->state != Syn_sent; 
} 
1991/0424    
void 
1991/1014    
tcpstart(Ipconv *s, int mode, ushort window, char tos) 
1991/0424    
{ 
1992/0223/sys/src/9/port/tcpif.c:76,811992/0303/sys/src/9/port/tcpif.c:85,93
1991/12171    
		setstate(s, Syn_sent); 
1991/0424    
		tcp_output(s); 
		qunlock(tcb); 
1992/0303    
		sleep(&tcb->syner, notsyner, tcb); 
		if(tcb->state != Established && tcb->state != Syn_received) 
			error(Etimedout); 
1991/0424    
		break; 
	} 
} 


source code copyright © 1990-2005 Lucent Technologies; see license
Plan 9 distribution
comments to russ cox (rsc@swtch.com)