Ошибка в сокетах?

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Ответить
Аватара пользователя
alexs
долгожитель
Сообщения: 4069
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Ошибка в сокетах?

Сообщение alexs »

Кто либо работает с сокетами напрямую? в частности TInetSocket из комплекта FPC?
мне кажется там баг преобразорвания адреса в момент открытия клиентского сокета.
там стоит лишниее преобразование последовательности байтов - меняется местами старший и младший байт адреса.
проблемная функция: StrToHostAddr из модуля Sockets.
Последняя строка этой функции:
strtohostaddr.s_addr:=ntohl(Temp.s_addr);
если не делать вызов ntohl - то всё работает нормально.
Проверял и в винде и в линуксе.
Аватара пользователя
Максим
энтузиаст
Сообщения: 599
Зарегистрирован: 27.07.2007 01:51:43
Откуда: Москва

Сообщение Максим »

Вот багрепорт, похоже, на ту же тему:
http://bugs.freepascal.org/view.php?id=12858
Ответить