Mais um para a biblioteca de programas C, dessa vez é um servidor ECHO modificado que aceita até 10 conexões, concorrentes, ouve na porta 7777 e se receber a string “STOP SERVER” termina o servidor.
Mais tarde eu comento sobre esse programa, mas ele limpa todos os processos, e possui relativamente uma boa manutenção de memória. Fiz esse programa mais para demonstrar como funciona o fork() e como fazer um filho sair corretamente e o pai pegar essa saida e tratar caso ela seja um erro, nada mais clássico que um servidor.
Porém, como nada é perfeito, a função read() é do tipo locking, ou seja ela trava o programa até conseguir ler alguma coisa do buffer, travando o servidor. Ainda estou trabalhando em como arrumar isso, acredito que com fcntl() consigo resolver isso.
Quem quiser ver essa primeira versão, o svn está http://svn.geekvault.org/c/echo/.
A documentação você encontra aqui.
Tuesday, April 29th, 2008
114
Servidor ECHO
Foi encontrado um bug no Windows XP SP2, causando uma escalação de privilégios (usuários comuns se tornando admin), eu ainda não testei, mas parece que é real. Update necessário ASAP. Esse exploit é local. Veja no milw0rm.
O criador do sistema de arquivos ReiserFS foi considerado culpado por assassinato em 1º grau. Se me lembro corretamente da história, no ano passado sua mulher foi assassinada, tudo indicando para o culpado ser Hans Reiser, porém não haviam provas, evidências, corpo, nada. Finalmente ele foi considerado culpado.
Honestamente, até onde a mente humana pode ser capaz? Obviamente esse não é o único caso do mundo, infelizmente, porém isso me faz pensar, até onde um ser humano pode chegar? Simplesmente muito triste. Veja aqui a notícia.
