
Hebang
(usa Arch Linux)
Enviado em 15/04/2011 - 15:11h
Olá pessoal!
Fiz um programa em C que executa um plugin via popen. O status de saida do plugin estou pegando como o retorno do pclose.
Porém tem um problema: Tenho 9 plugins, todos em bash. Sete deles executam normalmente, e o valor de retorno do pclose é o valor de saida real do plugin. Porém há dois plugins que sempre que executo, o pclose retorna 256. Imaginei que fosse algum bug no plugin, então fiz o seguinte: todos os dados manipulados no plugin são jogados em um txt no /tmp. Assim, posso verificar até que ponto o plugin vai. Executei ele com popen, o valor de retorno do pclose foi 256 porém, analisando meu txt, o plugin executou normal e o valor retornado por ele está OK. Ou seja, o plugin executa normalmente, porém o pclose retorna 256.
Esse plugin mede o consumo de memória da máquina, logo ele lê o /proc/meminfo. Achei que fosse erro de permissão, porém tenho um plugin de swap que lê o mesmo arquivo e ele executa normalmente. As permissões de todos os plugins estão setadas para 777. Já ativei o SUID e SGID deles, mas não resolveu.
Alguém tem alguma idéia do que possa estar acontecendo?
Desculpe o post extenso, porém tentei dar o máximo de informações possíveis.
Obrigado pela atenção de todos!