Bonjour,

J'ai un programme p qui peut uniquement s'éxécuter avec les droits root.

J'utilise donc la commande setuid pour l'exécuter avec les bons droits. J'obtiens un fichier p_modif.c dont voici le contenu:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
setuid(0);
char* cmd = "p";
system(cmd);

Lors que j'excute p_modif, la commande p est bien lancée.

Par contre, quand je le tues (ctr C, kill -9, kill -6) p_modif se termine mais mon programme p continue de tourner. Je dois me connecter en tant que root pour le tuer.

Comment forwarder le message kill proprement et avec les bons droits?

Merci de votre aide.