I'll change the API to fix this.

I'll change `recvfrom()` to use IpAddr too, I forgot to change this when I was refactoring.