Errno.h é um arquivo de cabeçalho (.h de cabeçalho) da biblioteca de linguagem C padrão em que as macros são definidas para exibir erros. Quem conhece C saberá disso e saberá como é útil exibir na tela os códigos de erro produzidos pelo sistema, junto com uma descrição associada ao erro.
A variável errno nos diz se alguma chamada do sistema falhou (chamada do sistema) Por exemplo:
#include <stdio.h&>
#include <fcntl.h&>
#include <stdlib.h>
#include <string.h>
#include <errno.h> //Cabeceras de bibliotecas includes en el programa
const char *NOM_FICHERO= “/tmp/ejemplo.txt”; //Supuesto fichero que no existe
int main (int argc, char **argv)
{
int fd = 0;
printf(“Abriendo %s…\n”, NOM_FICHERO);
fd = open(NOM_FICHERO, O_RDONLY, 0644);
if (fd<0) {
perror(“Error abriendo fichero”); //Nos muestra los mensajes de error
printf(“Error abriendo fichero: %s\n”, strerror(errno));
}
return EXIT_SUCCESS;
}
A verdade é que errno.h é apenas uma desculpa para introduzir os seguintes parágrafos que escrevo agora. E é que muitos vão se lembrar das guerras de SCO vs. Linux, desde a empresa SCO, devido às lutas do Licenças Unix, abriu uma cruzada contra a IBM, Novell, etc., acusando-os de terem transferido o código Unix para o kernel Linux.
A SCO em 19 de dezembro de 2003 publicou avisos para certas empresas alegando que o arquivo errno.h foi copiado literalmente do Unix para uso no Linux sem a devida autorização. O mesmo Linus Torvalds Ele negou e indicou que ele mesmo reescreveu o código para a versão Linux do errno.h.
Quer seja verdade ou não, a SCO perdeu as ações judiciais impostas no tribunal um por um e os casos abertos foram encerrados em favor das empresas pró-Linux. As empresas envolvidas eram, segundo a SCO, pecadoras por terem transferido partes do código Unix (especificamente do AT&T Unix System V) para o Linux.
Curioso e também desconfiado desses ataques, especialmente considerando que Microsoft foi dona de 25% da SCO por alguns anos, já que a Microsoft cedeu seu sistema operacional Xenix (versão do Unix licenciada pela Microsoft) para a SCO e entre os acordos estava a compra de ações. Na verdade, existem emails que foram interceptados entre as duas empresas alertando a Microsoft sobre o grande potencial do Linux e a ameaça que ele representava.