Verifique o privilégio de desligamento

0

Estou tentando fazer um programa em C ++ no Ubuntu que verifique se um usuário pode desligar o PC e, em caso afirmativo, desligá-lo para ele.

Então, estou pensando em obter o ID do usuário e, em seguida, verificar se ele possui ou não o direito de desligar o computador.

No entanto, eu realmente não sei o que é o critera no Ubuntu que diz que se um usuário tem esse direito ... você sabe o que é isso?

Obrigado!

    
por Xaltar 03.04.2013 / 16:30

1 resposta

0

Acho que encontrei a solução para o meu problema, então agora estou postando.

Testar os privilégios de administrador pode ser feito da seguinte forma:

uid_t uid = getuid(), euid = geteuid();
if(uid < 0 || uid != euid) {
    // Can stop or reboot system
} else {
    // Cannot stop nor reboot system
}
    
por Xaltar 02.05.2013 / 10:25