As above, the `ty` parameter probably shouldn't exist, I believe it's always going to be `libc::SOCK_DGRAM`