Did you check the values? they are i
nterchangeable and implementation detail. You can replace those routines and their structures and it will still work.
Just a matter of how the programmer felt that day.
You can also hardcast them both ways and it will still work. That's called POSIX compliant. And the UC Berkeley sockets implementation is part of POSIX since the 80's.
You should really brush up your theory: Just because something looks different, it doesn't mean it is different... <grumpy: This is really silly.
>
The only thing of influence that CAN be different is the calling convention, but, again, that is implementation detail.