Resolvido ... problema foi entrada incorreta em / etc / sysconfig / network para HOSTNAME. Isso foi definido para o nome abreviado em vez do FQDN. Corrigida a entrada nesse arquivo e reiniciado o serviço de rede.
Conseguiu verificar que gethostname () recupera o nome completo do host através do seguinte programa de teste:
#include <stdio.h>
#include <unistd.h>
#include <limits.h>
int main(int argc, char *argv[])
{
char hostname[HOST_NAME_MAX];
if (gethostname(hostname, sizeof hostname) == 0)
puts(hostname);
else
perror("gethostname");
return 0;
}