~kris/9p

9hist

982f7b6fbf2a4c6390133d5ae50e97f4af6d7cb4 — David du Colombier 29 years ago b7eb61c
Plan 9 from Bell Labs 1997-07-25
1 files changed, 10 insertions(+), 5 deletions(-)

M ip/udp.c
M ip/udp.c => ip/udp.c +10 -5
@@ 226,6 226,8 @@ udpiput(Media *m, Block *bp)

	raddr = nhgetl(uh->udpsrc);
	laddr = nhgetl(uh->udpdst);
	lport = nhgets(uh->udpdport);
	rport = nhgets(uh->udpsport);

	if(udpsum && nhgets(uh->udpcksum)) {
		if(ptclcsum(bp, UDP_IPHDR, len+UDP_PHDRSIZE)) {


@@ 236,9 238,6 @@ udpiput(Media *m, Block *bp)
		}
	}

	lport = nhgets(uh->udpdport);
	rport = nhgets(uh->udpsport);

	/* Look for a conversation structure for this port */
	c = nil;
	for(p = udp.conv; *p; p++) {


@@ 250,6 249,8 @@ udpiput(Media *m, Block *bp)
	}

	if(*p == nil) {
		netlog(Logudp, "udp: no conv %I.%d -> %I.%d\n", uh->udpsrc, rport,
			uh->udpdst, lport);
		freeblist(bp);
		return;
	}


@@ 260,6 261,8 @@ udpiput(Media *m, Block *bp)
	len -= (UDP_HDRSIZE-UDP_PHDRSIZE);
	bp = trimblock(bp, UDP_IPHDR+UDP_HDRSIZE, len);
	if(bp == nil){
		netlog(Logudp, "udp: len err %I.%d -> %I.%d\n", uh->udpsrc, rport,
			uh->udpdst, lport);
		udp.lenerr++;
		return;
	}


@@ 293,9 296,11 @@ udpiput(Media *m, Block *bp)
	if(bp->next)
		bp = concatblock(bp);

	if(qfull(c->rq))
	if(qfull(c->rq)){
		netlog(Logudp, "udp: qfull %I.%d -> %I.%d\n", uh->udpsrc, rport,
			uh->udpdst, lport);
		freeblist(bp);
	else
	}else
		qpass(c->rq, bp);
}