Дорогие друзья, обращаюсь к вам с просьбой о помощи.
Мною был написан сервер, принимающий и передающий информацию напрямую через сокеты.
Для совместимости с Linux я добавил в код несколько переопределений.
Все они касались WSAStartup() и WSACleanup(), которые у меня определяются только при сборке приложения под Windows.
Плюс closesocket() для сборки в Windows и close() для Linux.
Других очевидных различий я не нашёл: имена функций, параметры и их типы для Windows и Linux одинаковы.
При тестировании в Windows проблем не возникает.
А под Linux дело доходит до первого вызова функции recv(remotesock, (char *) &data, sizeof (data), 0), после чего приложение вываливается по сигфолту.