ref: c02a95c0a7c9923503a4694bbe8a974d353fa66c
parent: 48124144e1a209082347ec9e82b371bcb30e6d4a
	author: cinap_lenrek <cinap_lenrek@felloff.net>
	date: Wed Nov 28 07:41:18 EST 2018
	
devip: fix arpread, dont return partial entries
--- a/sys/src/9/ip/arp.c
+++ b/sys/src/9/ip/arp.c
@@ -460,16 +460,17 @@
qunlock(arp);
runlock(ifc);
- n = snprint(p, len, "%-6.6s %-4.4s %-40.40I %-16.16s %I\n",
+ n = snprint(up->genbuf, sizeof up->genbuf,
+ "%-6.6s %-4.4s %-40.40I %-16.16s %I\n",
mname, state, ip, mac, ia);
-		if(o < 0) {- if(n > -o)
- memmove(p, p-o, n+o);
- o += n;
-		} else {- len -= n;
- p += n;
- }
+ o += n;
+ if(o <= 0)
+ continue;
+ if(n > len)
+ break;
+ memmove(p, up->genbuf, n);
+ len -= n;
+ p += n;
}
return p - s;
--
⑨