Provided by: manpages-pt-br-dev_4.21.0-2_all bug

NOME

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

BIBLIOTECA

       Biblioteca C Padrão (libc, -lc)

SINOPSE

       #include <unistd.h>

       int gethostname(char *nome, size_t comp);
       int sethostname(const char *nome, size_t comp);

   Requisitos de macro de teste de recursos para o glibc (consulte feature_test_macros(7)):

       gethostname():
           _XOPEN_SOURCE >= 500 || _POSIX_C_SOURCE >= 200112L
               || /* glibc 2.19 and earlier */ _BSD_SOURCE

       sethostname():
           Desde o glibc 2.21:
               _DEFAULT_SOURCE
           No glibc 2.19 e 2.20:
               _DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
           Até e incluindo o glibc 2.19:
               _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)

DESCRIÇÃO

       Estas  chamadas  de  sistema  são  usadas  para  acessar  ou  alterar o nome da máquina do
       processador atual. Mais precisamente, elas operam no  nome  de  máquina  associado  com  o
       espaço de nomes de UTS do processo chamador.

       sethostname() define o nome de máquina com o valor fornecido na matriz de caracteres name.
       O argumento len especifica o número de bytes em name. (Portanto, name não requer  um  byte
       nulo final.)

       gethostname() retorna o nome da máquina terminado em nulo no vetor de caracteres name, que
       possui um comprimento de len bytes. Se o nome da  máquina  terminado  em  nulo  for  muito
       grande  para  caber,  o  nome  será truncado e nenhum erro será retornado (mas consulte as
       NOTAS abaixo). O POSIX.1 diz que, se esse truncamento ocorrer, não será especificado se  o
       buffer retornado inclui um byte nulo final.

VALOR DE RETORNO

       Em  caso de sucesso, zero é retornado. Em caso de erro, -1 é retornado, e errno é definido
       para indicar o erro.

ERROS

       EFAULT name é um endereço inválido.

       EINVAL len é negativo ou, para sethostname(), len é maior que o tamanho permitido.

       ENAMETOOLONG
              (glibc gethostname())  len is smaller than the actual  size.   (Before  glibc  2.1,
              glibc uses EINVAL for this case.)

       EPERM  Para  sethostname(),  o  chamador não tinha a capacidade CAP_SYS_ADMIN no espaço de
              nomes de usuário associado ao seu espaço de nomes UTS (consulte namespaces(7)).

PADRÕES

       SVr4, 4.4BSD (esta função apareceu primeiramente no 4.2BSD). POSIX.1-2001  e  POSIX.1-2008
       especifica gethostname(), mas não sethostname().

NOTAS

       O  SUSv2  garante que "Os nomes de máquina estão limitados a 255 bytes". O POSIX.1 garante
       que "Os nomes de máquina (não incluindo o byte nulo final) são limitados  a  HOST_NAME_MAX
       bytes".  No  Linux, HOST_NAME_MAX é definido com o valor 64, que tem sido o limite desde o
       Linux 1.0 (os kernels anteriores impuseram um limite de 8 bytes).

   Diferenças entre kernel/biblioteca C
       A biblioteca GNU C  não  emprega  a  chamada  de  sistema  gethostname();  em  vez  disso,
       implementa  gethostname() como uma função de biblioteca que chama uname(2) e copia até len
       bytes do campo nodename retornado em name. Depois de executar a cópia, a  função  verifica
       se o comprimento de nodename foi maior ou igual a len e, se for, então a função retorna -1
       com errno definido como ENAMETOOLONG ; nesse caso, um byte nulo final não  é  incluído  no
       name retornado.

       Versions  of  glibc  before glibc 2.2 handle the case where the length of the nodename was
       greater than or equal to len differently: nothing is copied into  name  and  the  function
       returns -1 with errno set to ENAMETOOLONG.

VEJA TAMBÉM

       hostname(1), getdomainname(2), setdomainname(2), uname(2), uts_namespaces(7)

TRADUÇÃO

       A  tradução  para  português brasileiro desta página man foi criada por André Luiz Fassone
       <lonely_wolf@ig.com.br>, Ricardo  C.O.Freitas  <english.quest@best-service.com>  e  Rafael
       Fontenelle <rafaelff@gnome.org>.

       Esta  tradução  é  uma  documentação  livre;  leia  a  Licença  Pública Geral GNU Versão 3
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ ou posterior para  as  condições  de  direitos
       autorais.  Nenhuma responsabilidade é aceita.

       Se  você  encontrar  algum erro na tradução desta página de manual, envie um e-mail para a
       lista de discussão de tradutores ⟨debian-l10n-portuguese@lists.debian.org⟩.