summaryrefslogtreecommitdiff
path: root/sys/src/9/ip/udp.c
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@felloff.net>2018-04-22 18:48:08 +0200
committercinap_lenrek <cinap_lenrek@felloff.net>2018-04-22 18:48:08 +0200
commitc5c613357e45af55b9cca2ae90cfc89895a2bd48 (patch)
tree09386cec0105050b354eab14b9cdf1858cc252a7 /sys/src/9/ip/udp.c
parent26aca332bb74cf8ee6f27ee7f826413a19182ca9 (diff)
devip: cleanup udp.c
Diffstat (limited to 'sys/src/9/ip/udp.c')
-rw-r--r--sys/src/9/ip/udp.c25
1 files changed, 7 insertions, 18 deletions
diff --git a/sys/src/9/ip/udp.c b/sys/src/9/ip/udp.c
index cfa002116..53e2af3cc 100644
--- a/sys/src/9/ip/udp.c
+++ b/sys/src/9/ip/udp.c
@@ -474,13 +474,11 @@ udpiput(Proto *udp, Ipifc *ifc, Block *bp)
}
if(qfull(c->rq)){
- netlog(f, Logudp, "udp: qfull %I.%d -> %I.%d\n", raddr, rport,
- laddr, lport);
+ netlog(f, Logudp, "udp: qfull %I.%d -> %I.%d\n",
+ raddr, rport, laddr, lport);
freeblist(bp);
} else {
- if(bp->next)
- bp = concatblock(bp);
- qpass(c->rq, bp);
+ qpass(c->rq, concatblock(bp));
}
qunlock(c);
@@ -514,34 +512,25 @@ udpadvise(Proto *udp, Block *bp, char *msg)
uchar source[IPaddrlen], dest[IPaddrlen];
ushort psource, pdest;
Conv *s, **p;
- int version;
h4 = (Udp4hdr*)(bp->rp);
- version = ((h4->vihl&0xF0)==IP_VER6) ? V6 : V4;
+ h6 = (Udp6hdr*)(bp->rp);
- switch(version) {
- case V4:
+ if((h4->vihl&0xF0)==IP_VER4) {
v4tov6(dest, h4->udpdst);
v4tov6(source, h4->udpsrc);
psource = nhgets(h4->udpsport);
pdest = nhgets(h4->udpdport);
- break;
- case V6:
- h6 = (Udp6hdr*)(bp->rp);
+ } else {
ipmove(dest, h6->udpdst);
ipmove(source, h6->udpsrc);
psource = nhgets(h6->udpsport);
pdest = nhgets(h6->udpdport);
- break;
- default:
- panic("udpadvise: version %d", version);
- return; /* to avoid a warning */
}
/* Look for a connection */
qlock(udp);
- for(p = udp->conv; *p; p++) {
- s = *p;
+ for(p = udp->conv; (s = *p) != nil; p++) {
if(s->rport == pdest)
if(s->lport == psource)
if(ipcmp(s->raddr, dest) == 0)