Bonjour,

je suis entrain de développer un programme en C système et réseau (sur GNU/Linux). Celui-ci est un style de teamviewer, ou encore ssh -X. Actuellement j'arrive à demander à l'utilisateur de se connecter grâce à la technologie PAM, et j'arrive à stream le l'écran (grâce xlib). Mon serveur est multiclient.

Mon problème est là, tous les utilisateurs partagent le même écran, la même session. Donc ce que l'utilisateur A fait, l'utilisateur B le voit. Je souhaiterai donc trouver une solution pour faire un système de session / écran différent. Mais je ne vois pas trop comment faire..

Si vous avez des idées, des conseils, exemples, je suis preneur;

En vous remerciant,
Cordialement,
Reverse_

PS : Je ne sais pas si c'est comme ça qu'il faut faire, mais pour l'authentification voici ce que je fais :

Le serveur est lancé avec l'utilisateur root de la machine host.
Lorsqu'un client se connecte, je fork
Dans le fils je récupère le nom de l'utilisateur et son mot de passe, pour les soumettre à PAM.
Si l'authentification réussie, je change l'uid du processus avec l'uid de l'utilisateur. (setuid).