I don't see a getsockaddr, Do you mean
getsockname? I can't think of a reason for that to block (should just be a call to get some local state from the kernel).
But it's not unusual for code to do a gethostbyaddr after calling getsockname, which would do a name resolution (DNS, but perhaps also WINS etc on Windows). This could block for a while (but not indefinitely i think).
Could it be that? Could you check your name resolution on the box you're on and in particular, can you reverse lookup all your local IPs?
Can you run a network sniffer and see if your box is generating any lookup traffic (DNS, port 53 - not sure about WINS etc).