[C] Récuper l'utilisateur à partir de l'uid

Récuper l'utilisateur à partir de l'uid [C] - C - Programmation

Marsh Posté le 02-11-2010 à 14:34:20    

Bonjour,
 
Je souhaiterais récupérer le nom de l'utilisateur d'un fichier à partir de son UID.
Je pose cette question car grâce à la bibliothèque stat.h, on peut récupérer l'UID de l'owner d'un fichier, mais il me faudrait le nom d'utilisateur, et je ne vois rien dans la bibliothèque qui me fournirait une telle information. Existe-t-il un moyen simple pour récupérer cette information ?
 
Merci d'avance.


---------------
:o
Reply

Marsh Posté le 02-11-2010 à 14:34:20   

Reply

Marsh Posté le 02-11-2010 à 14:41:58    

Il suffit d'adapter à ses besoins une partie de ce code bien connu:

Code :
  1. /* whoami.c */
  2. #define _PROGRAM_NAME "whoami"
  3. #include <stdlib.h>
  4. #include <pwd.h>
  5. #include <stdio.h>
  6.  
  7. int main(int argc, char *argv[])
  8. {
  9.  register struct passwd *pw;
  10.  register uid_t uid;
  11.  int c;
  12.  
  13.  uid = geteuid ();
  14.  pw = getpwuid (uid);
  15.  if (pw)
  16.    {
  17.      puts (pw->pw_name);
  18.      exit (EXIT_SUCCESS);
  19.    }
  20.  fprintf (stderr,"%s: cannot find username for UID %u\n",
  21.        _PROGRAM_NAME, (unsigned) uid);
  22.  exit (EXIT_FAILURE);
  23.  
  24. }


A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 02-11-2010 à 14:47:23    

Ah yep, je suis tombé là dessus en continuant mes recherches, merci ça marche impek ;)


---------------
:o
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed