Looks good. It's unfortunate that any of those declarations appear in more than one include/ header file. Maybe we can just make sure that any users of __have_sock_cloexec include <sys/socket.h>? It would be worthwhile for someone to check include/*.h for any other duplicate declarations. Thanks, Roland