Je trouve que ta fonction
par_List fait trop de choses et je n'aime pas beaucoup le retour des valeurs au travers de pointeurs.
Peut-être que tu devrais créer une structure de description des fichiers. La fonction
par_List pourrait ainsi renvoyer un tableau de ces structures :
short par_List(const char *Archive, PAR_FILE *list_files); // PAR_FILE **list_files si c'est la bibliothèque qui fait l'allocation...Qui retourne le nombre de fichiers présents ou -1 en cas d'erreur, ou ce que tu veux
Suivant qui a la charge de l'allocation du tableau, il peut y avoir besoin d'une fonction donnant le nombre de fichiers présents dans l'archive. En fait, ce serait bien de l'ajouter dans tous les cas, ça peut être utile
Ensuite, tu utilises la fonction
par_List pour avoir les informations sur un fichier. Pourquoi ne pas créer une fonction dédiée ?
unsigned short par_Info(const char *Archive, char *Filename, PAR_FILE *file);