Corrigindo bug de data no comando radwho (FreeRADIUS)

Publicado por Wilker Azevedo em 17/04/2008

[ Hits: 7.557 ]

 


Corrigindo bug de data no comando radwho (FreeRADIUS)



Para quem usa FreeRADIUS e usa o comando radwho, o qual mostra os usuários conectados, certamente já percebeu que a hora de login do usuário está faltando o último número, exemplo: 20:3 (o certo seria: 20:35).

Durante as três ultimas versões tenho acompanhado isso e sempre na esperança da correção. No entanto o bug ainda permanece, mesmo no CVS.

Eu já não agüentava mais isso, então resolvi ir direto no código fonte e arrumar, é muito simples e você mesmo pode fazer:

Abra o arquivo radwho.c que fica no diretório src/main, vá até a linha 225 onde encontrará isso:

strlcpy(s + 4, s + 11, 5);

Basta trocar o 5 por 6 assim:

strlcpy(s + 4, s + 11, 6);

Agora altere também logo abaixo na linha 228:

strlcpy(s + 4, s + 8, 8);

Trocar o último 8 por 9 assim:

strlcpy(s + 4, s + 8, 9);

Pronto! Pode compilar o FreeRADIUS, mas se você já tem o FreeRADIUS instalado basta compilar o diretório main:

De dentro do diretório main execute o comando make:

.../src/main# make

Agora, copie seu radwho corrigido para o onde deve ficar, se não sabe o local certo então localize o radwho bugado:

# whereis radwho
(isso mostra o caminho completo onde está o comando)

Agora copie o novo radwho para o local mostrado pelo whereis:

# cp radwho <caminho>

Ou se não estiver a fim de copiar então pode instalar:

# make install
(isso instala todos os outros comandos que estão dentro do diretório main)

Tentei mandar o bug no site do FreeRADIUS mas me apresentaram um formulário tão complexo que acabei desistindo. Certamente colocar a correção aqui vai surtir mais efeito.

De quebra fiz este script que ao executar radwho além de mostrar a lista de usuários, no final mostra o total da lista, para você não ficar contando linha por linha para saber quantos apareceram:
Obrigado por ler esta dica! Valeu galera.

Outras dicas deste autor

Multi boot com ELILO (Linux + Windows 8)

slackpkg dando erro: /usr/libexec/slackpkg/core-functions.sh: line 10: tput: command not found

Emulador x86 em Javascript rodando GNU/Linux. Falta o que agora?

Upgrade no KDE: "Call to lnusertemp failed (temporary directories full?). Check your installation"

VirtualBox: VERR_SUPLIB_OWNER_NOT_ROOT VMMR0.r0

Leitura recomendada

Gnome Shell no Ubuntu - Instalação e personalização

Forçando cache do Windows Update com Squid (Atualizado)

Análise do Debian-BR-CDD 1.0 pre4

Unite + Google Chrome - Corrigindo duplicidade dos botões de janela [Resolvido]

Relógio do painel Gnome personalizado

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts