Remember kids: If you want to set a pointer which is an argument of your
function, make your function take a pointer-pointer.
Also, started IPv6 support (but I doubt something is broken with that
right now...)