struct hostent *gethostbyname(const char *name)
Обратите внимание, что список hostent.h _addr _— это поле переменной длины.
Каким образом функция
gethostbyname
имеет реализацию, которая возвращает указатель на структуру, но не требует от вызывающего объекта освобождения ресурса?Все примеры, использованные в известной книге Р. Стивенса «Сетевое программирование в Unix, том 1», не содержат кода для высвобождения возвращаемых указателей, и я предполагаю, что это не невежество. Также один пример из MSDN делает то же самое пример использования