pacutils-mtree(3) pacutils-mtree pacutils-mtree(3)

pacutils-mtree - Mtree-Daten installierter Pakete lesen

ÜBERSICHT

 #include <pacutils/mtree.h>   typedef struct pu_mtree_t { 
char *path;  char *type;  uid_t uid;  gid_t gid;  mode_t mode; 
off_t size;  char *md5digest;  char *sha256digest;  } pu_mtree_t; 
 typedef struct {  FILE *stream;  int eof;  pu_mtree_t defaults; 
} pu_mtree_reader_t;   pu_mtree_reader_t
*pu_mtree_reader_open_stream(FILE *stream);  pu_mtree_reader_t
*pu_mtree_reader_open_package(alpm_handle_t *h, alpm_pkg_t *p); 
pu_mtree_t *pu_mtree_reader_next(pu_mtree_reader_t *reader, pu_mtree_t
*dest);  void pu_mtree_reader_free(pu_mtree_reader_t *reader);  void
pu_mtree_free(pu_mtree_t *mtree);   /* veraltet */  alpm_list_t
*pu_mtree_load_pkg_mtree(alpm_handle_t *handle, alpm_pkg_t *pkg);

Die Funktionen zum Lesen der Mtree-Informationen eines Pakets füllen Lücken im Mtree-Leser von Libarchive, insbesondere »md5digest« und »sha256digest«, die gegenwärtig von Libarchive nicht gelesen werden. Die Unterstützung ist unvollständig und sollte nur als Ergänzung zum nativen Mtree-Leser von Libalpm verwendet werden.

Einen Datei-Datenstrom zur Auswertung öffnen.
Eine Mtree-Datei eines installierten Pakets zur Auswertung öffnen. Die Ergebnisse sind nicht definiert, falls »p« kein lokal installiertes Paket ist.
Den nächsten Eintrag in der Mtree-Datei lesen und zurückliefern. Falls »dest« »NULL« ist, wird ein neues »pu_mtree_t«-Objekt zugewiesen, das vom Aufrufenden freigegeben werden sollte. Andernfalls wird es mit den ausgewerteten Daten gefüllt. Intern zugewiesener Speicher wird nach Bedarf automatisch freigegeben.
Eine »pu_mtree_t«-Struktur freigeben.
Ein »pu_mtree_reader_t«-Objekt freigeben.
Gibt eine Liste der Mtree-Einträge für »pkg« zurück. VERALTET: Verwenden Sie stattdessen »pu_mtree_reader_open_package«.

 pu_mtree_t *m;  pu_mtree_reader_t *r;   if((r =
pu_mtree_reader_open_package(handle, pkg)) == NULL) {  fprintf(stderr,
"error: unable to load mtree data for '%s'\n", 
alpm_pkg_get_name(pkg));  return;  }   while((m =
pu_mtree_reader_next(r, NULL))) {  const char *md5 = m->md5digest; 
printf("%s: %s\n", m->path,  md5 && md5[0] != '\0' ? md5 :
"(no md5sum provided)");  pu_mtree_free(m);  }  if(!reader->eof) {
 fprintf(stderr, "error: unable to read mtree data for '%s'\n",
 alpm_pkg_get_name(pkg));  }   pu_mtree_reader_free(r);

alpm_pkg_mtree_open(3), alpm_pkg_mtree_next(3), alpm_pkg_mtree_close(3)
mtree(5) - description of "pu_mtree_t" members

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von Mario Blättermann <mario.blaettermann@gmail.com> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer.

14. August 2021 pacutils