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

الاسم

pacutils-mtree - قراءة بيانات mtree للحزم المثبتة

موجز

#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);
/* deprecated */
alpm_list_t *pu_mtree_load_pkg_mtree(alpm_handle_t *handle, alpm_pkg_t *pkg);

الوصف

دوال قراءة mtree للحزمة مُوفرة لسد الفجوات في قارئ mtree الخاص بـ libarchive، ولا سيما "md5digest" و "sha256digest" اللذان لا يُقرآن حاليًا بواسطة libarchive. الدعم غير كامل ويجب استخدامه فقط لتكملة قارئ mtree الأصلي لـ libalpm.

فتح دفق ملف للتحليل.
فتح ملف mtree لحزمة منصبة للتحليل. النتائج غير محددة إذا لم يكن "p" حزمة منصبة محليًا.
قراءة وإرجاع المدخل التالي في ملف mtree. إذا كان "dest" هو "NULL"، فسيُخصص كائن "pu_mtree_t" جديد يجب تحريره بواسطة المستدعي. وإلا، فسيُملأ بالبيانات المحللة. الذاكرة المخصصة داخليًا تُحرر آليًا حسب الحاجة.
تحرير هيكل "pu_mtree_t".
تحرير كائن "pu_mtree_reader_t".
إرجاع قائمة بمدخلات mtree لـ "pkg". مهمل: استخدم "pu_mtree_reader_open_package" بدلاً من ذلك.

أمثلة

طباعة مجاميع md5 للملفات لحزمة:
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

ترجمة

تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.

4 ديسمبر 2025 pacutils