bonjour à tous,

voila j'ai un soucis avec la commande chown.
je l'utilise dans un programme en C sous cette forme

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
   struct passwd *pwd = NULL;
   struct group *grp = NULL;
 
   pwd = getpwnam(USER);
 
    grp = getgrnam(USER);
 
    if (pwd != NULL && grp != NULL)
    {
      if (chown(newName.c_str(), pwd->pw_uid, grp->gr_gid) == -1)
      {
        fprintf(stderr,"chown : not enough memory\n");
      }
    }
tout marche bien sauf si jamais le USER n'est pas correct dans ce cas, j'ai le droit à un segmentation faults.
j'ai essayé de passer directement par une commande linux et j'ai le même soucis

Est ce que quelqu'un voit comment regler le pb?
Est ce qu'il y a moyen par exemple de vérifier la validité du USER avant d'envoyer la commande? ou autre chose peut être...

merci.