Provided by: manpages-pt-dev_20040726-1_all bug

NOME

       gethostname, sethostname - obtém/seleciona o nome da máquina

SINOPSE

       #include <unistd.h>

       int gethostname(char *name, size_t len);
       int sethostname(const char *name, size_t len);

DESCRIÇÃO

       Estas  funções  são usadas para acessar ou alterar o nome da máquina do
       processador atual.

VALORES RETORNADOS

       Em caso de successo, zero é retornado. Caso contrário, -1 é  retornado,
       e errno é selecionado adequadamente.

ERROS

       EINVAL len  é  negativo ou, para sethostname, len é maior que o tamanho
              permitido, ou, para gethostname em Linux/i386, len é menor que o
              tamanho  atual.  (Neste último caso glibc 2.1 usa ENAMETOOLONG.)

       EPERM  Para sethostname, o solicitante não é o superusuário.

       EFAULT name é um endereço inválido.

DE ACORDO COM

       SVr4, 4.4BSD  (esta função apareceu primeiramente no BSD 4.2).  POSIX.1
       não  define  estas  funções,  mas  ISO/IEC 9945-1:1990 menciona elas no
       B.4.4.1.

PROBLEMAS

       De acordo com o SUSv2, gethostname devem  retornar  os  bytes  len  (um
       hostname cortado, terminação nula ou não) quando o hostname é comprido.
       Linux/Alpha (os quais tem uma chamada de  sistema  gethostname)  cumpre
       com  este  requerimento,  mas  a  libc  e  glibc  no Linux/i386 somente
       retornan um erro neste caso.

NOTAS

       As definições  de  sucesso  variam.  SUSv2  define  gethostname()  como
       ‘retorno  hostname  possivelmente  cortado’, e tendo um pequeno len não
       causa retorno de erro. Certamente deve ser possível estar certo que  um
       tenha  obtido  o hostname completo, e para isto terminar SUSv2 guarante
       que ‘Host names são limitados para 255 bytes’.

VEJA TAMBÉM

       getdomainname(2), setdomainname(2), uname(2)