include/compat/sys/socket.h


Log

Author Commit Date CI Message
Sebastian Blunt fe903fb7 2022-04-15T23:48:50 Fix unreachable nc portability shim This fixes nc failing to run on darwin due to it incorrectly setting the linux-specific SOCK_NONBLOCK flag on connect. nc already had a portability shim in apps/nc/compat/sys/socket.h, which kicks in if SOCK_NONBLOCK is undefined. But that header includes include/compat/sys/socket.h, which also has a portability shim that defines a default value for SOCK_NONBLOCK if it's undefined. Thus the first portability shim was unreachable. Fixes this by moving the NEED_SOCKET_FLAGS flag into the outer shim, and having the inner shim activate if NEED_SOCKET_FLAGS is defined. This closes https://github.com/libressl-portable/portable/issues/631
Brent Cook dfb6b11e 2017-01-15T04:30:41 include pipe2/socketpair compat for macOS
Brent Cook 696ba18c 2015-09-13T18:57:29 fixup windows and older linux builds
Brent Cook 8c90be2a 2015-09-13T11:56:41 allow nc to build on linux and os x
Brent Cook 5d8a1cf7 2014-07-10T22:06:10 add initial CMake and Visual Studio build support This moves the compatibility include files from include to include/compat so we can use the awful MS C compiler <../include/> trick to emulate the GNU #include_next extension. This also removes a few old compat files we do not need anymore.