Como obter a sessão do Dbus com privilégios de usuário root

1

Estou usando a biblioteca libdbus e tenho código escrito na linguagem C no qual estou tentando obter o bloqueio de tela e desbloquear eventos usando " com.canonical.Unity.Session "," IsLocked "entrada. A compilação é bem-sucedida, mas quando executo o código no modo de superusuário, recebo o seguinte erro:

Connection Error (Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.)

Quando executo o código no modo de usuário normal (depois de sair do usuário root), ele funciona absolutamente bem.

Existe uma maneira de executar esse código como usuário root? Como todo o meu aplicativo é executado no ambiente do usuário root.

    
por param 18.12.2017 / 09:59

0 respostas