.\" -*- coding: UTF-8 -*- .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man v6.0.2 (Pod::Simple 3.45) .\" .\" Standard preamble: .\" ======================================================================== .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .de IX .. .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .if n .ds AD l .\" .\" Required to disable full justification in groff 1.23.0. .\" ======================================================================== .\" .IX Title "pacutils\-mtree 3" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH pacutils\-mtree 3 "4 ديسمبر 2025" pacutils pacutils\-mtree .if n .ad l .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .nh .SH الاسم pacutils\-mtree \- قراءة بيانات mtree للحزم المثبتة .SH موجز .IX Header موجز .Vb 1 \& #include \& \& 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); .Ve .SH الوصف .IX Header الوصف دوال قراءة mtree للحزمة مُوفرة لسد الفجوات في قارئ mtree الخاص بـ libarchive، ولا سيما \f(CW\*(C`md5digest\*(C'\fP و \f(CW\*(C`sha256digest\*(C'\fP اللذان لا يُقرآن حاليًا بواسطة libarchive. الدعم غير كامل ويجب استخدامه فقط لتكملة قارئ mtree الأصلي لـ libalpm. .IP "pu_mtree_reader_t *pu_mtree_reader_open_stream(FILE *stream);" 4 .IX Item "pu_mtree_reader_t *pu_mtree_reader_open_stream(FILE *stream);" فتح دفق ملف للتحليل. .IP "pu_mtree_reader_t *pu_mtree_reader_open_package(alpm_handle_t *h, alpm_pkg_t *p);" 4 .IX Item "pu_mtree_reader_t *pu_mtree_reader_open_package(alpm_handle_t *h, alpm_pkg_t *p);" فتح ملف mtree لحزمة منصبة للتحليل. النتائج غير محددة إذا لم يكن \&\f(CW\*(C`p\*(C'\fP حزمة منصبة محليًا. .IP "pu_mtree_t *pu_mtree_reader_next(pu_mtree_reader_t *reader, pu_mtree_t *dest);" 4 .IX Item "pu_mtree_t *pu_mtree_reader_next(pu_mtree_reader_t *reader, pu_mtree_t *dest);" قراءة وإرجاع المدخل التالي في ملف mtree. إذا كان \f(CW\*(C`dest\*(C'\fP هو \f(CW\*(C`NULL\*(C'\fP، فسيُخصص كائن \&\f(CW\*(C`pu_mtree_t\*(C'\fP جديد يجب تحريره بواسطة المستدعي. وإلا، فسيُملأ بالبيانات المحللة. الذاكرة المخصصة داخليًا تُحرر آليًا حسب الحاجة. .IP "void pu_mtree_free(pu_mtree_t *mtree);" 4 .IX Item "void pu_mtree_free(pu_mtree_t *mtree);" تحرير هيكل \f(CW\*(C`pu_mtree_t\*(C'\fP. .IP "void pu_mtree_reader_free(pu_mtree_reader_t *reader);" 4 .IX Item "void pu_mtree_reader_free(pu_mtree_reader_t *reader);" تحرير كائن \f(CW\*(C`pu_mtree_reader_t\*(C'\fP. .IP "alpm_list_t *pu_mtree_load_pkg_mtree(alpm_handle_t *handle, alpm_pkg_t *pkg);" 4 .IX Item "alpm_list_t *pu_mtree_load_pkg_mtree(alpm_handle_t *handle, alpm_pkg_t *pkg);" إرجاع قائمة بمدخلات mtree لـ \f(CW\*(C`pkg\*(C'\fP. \fBمهمل\fP: استخدم \&\f(CW\*(C`pu_mtree_reader_open_package\*(C'\fP بدلاً من ذلك. .SH أمثلة .IX Header أمثلة .IP "طباعة مجاميع md5 للملفات لحزمة:" 4 .IX Item "طباعة مجاميع md5 للملفات لحزمة:" .Vb 2 \& 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 \*(Aq%s\*(Aq\en", \& alpm_pkg_get_name(pkg)); \& return; \& } \& \& while((m = pu_mtree_reader_next(r, NULL))) { \& const char *md5 = m\->md5digest; \& printf("%s: %s\en", m\->path, \& md5 && md5[0] != \*(Aq\e0\*(Aq ? md5 : "(no md5sum provided)"); \& pu_mtree_free(m); \& } \& if(!reader\->eof) { \& fprintf(stderr, "error: unable to read mtree data for \*(Aq%s\*(Aq\en", \& alpm_pkg_get_name(pkg)); \& } \& \& pu_mtree_reader_free(r); .Ve .SH "انظر أيضًا" .IX Header "انظر أيضًا" .IP "\fBalpm_pkg_mtree_open\fP\|(3), \fBalpm_pkg_mtree_next\fP\|(3), \fBalpm_pkg_mtree_close\fP\|(3)" 4 .IX Item "alpm_pkg_mtree_open, alpm_pkg_mtree_next, alpm_pkg_mtree_close" .PD 0 .ie n .IP "\fBmtree\fR\|(5) \- description of ""pu_mtree_t"" members" 4 .el .IP "\fBmtree\fR\|(5) \- description of \f(CWpu_mtree_t\fR members" 4 .IX Item "mtree \- وصف أعضاء pu_mtree_t" .PD .PP .SH ترجمة تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي . .PP هذه الترجمة هي وثيقة مجانية؛ راجع .UR https://www.gnu.org/licenses/gpl-3.0.html رخصة جنو العامة الإصدار 3 .UE أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات. .PP إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: .MT kde-l10n-ar@kde.org .ME .