if windows.h is included before winsock2.h, winsock.h is included instead of winsock2.h.
causes a compilation error as it's incompatible withwinsock.h