cygwin defines socklen_t as int, unlike everywhere else where it is uint32_t (afaics), so signed vs unsigned.
The recently added -Werror=pointer-sign in 43538130 makes the build fail under cygwin now with something like:
error: pointer targets in passing argument 5 of ‘getsockopt’ differ in signedness [-Werror=pointer-sign]
This changes guint to socklen_t where needed for getsockname, getpeername and getsockopt.
The second commit fixes two small related warnings.