.\" -*- 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 "SSL_CTX_LOAD_VERIFY_LOCATIONS 3ssl" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH SSL_CTX_LOAD_VERIFY_LOCATIONS 3ssl "7 أبريل 2026" 3.6.2 OpenSSL .if n .ad l .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .nh .SH الاسم SSL_CTX_load_verify_dir, SSL_CTX_load_verify_file, SSL_CTX_load_verify_store, SSL_CTX_set_default_verify_paths, SSL_CTX_set_default_verify_dir, SSL_CTX_set_default_verify_file, SSL_CTX_set_default_verify_store, SSL_CTX_load_verify_locations \&\- تعيين المواقع المبدئية لشهادات CA الموثوقة .SH موجز .IX Header موجز .Vb 1 \& #include \& \& int SSL_CTX_load_verify_dir(SSL_CTX *ctx, const char *CApath); \& int SSL_CTX_load_verify_file(SSL_CTX *ctx, const char *CAfile); \& int SSL_CTX_load_verify_store(SSL_CTX *ctx, const char *CAstore); \& \& int SSL_CTX_set_default_verify_paths(SSL_CTX *ctx); \& \& int SSL_CTX_set_default_verify_dir(SSL_CTX *ctx); \& int SSL_CTX_set_default_verify_file(SSL_CTX *ctx); \& int SSL_CTX_set_default_verify_store(SSL_CTX *ctx); \& \& int SSL_CTX_load_verify_locations(SSL_CTX *ctx, const char *CAfile, \& const char *CApath); .Ve .SH الوصف .IX Header الوصف \&\fBSSL_CTX_load_verify_locations()\fP، \fBSSL_CTX_load_verify_dir()\fP، \&\fBSSL_CTX_load_verify_file()\fP، \fBSSL_CTX_load_verify_store()\fP تحدد المواقع لـ \fBctx\fP، حيث توجد شهادات CA لأغراض التحقق. الشهادات المتاحة عبر \fBCAfile\fP و \fBCApath\fP و \&\fBCAstore\fP موثوقة. \fBctx\fP \fBيجب ألا\fP يكون NULL .PP تفاصيل عملية التحقق من الشهادة والتحقق من السلسلة موصوفة في "التحقق من مسار التصديق" في \fBopenssl\-verification\-options\fP\|(1). .PP \&\fBSSL_CTX_set_default_verify_paths()\fP تحدد أنه يجب استخدام المواقع المبدئية التي تُحمّل منها شهادات CA. يوجد دليل مبدئي واحد وملف مبدئي واحد ومخزن مبدئي واحد. يُسمى دليل شهادات CA المبدئي \fIcerts\fP في دليل OpenSSL المبدئي، وهذا أيضًا هو المخزن المبدئي. بدلاً من ذلك، يمكن تعريف متغير البيئة \fBSSL_CERT_DIR\fP لتجاوز هذا الموقع. يُسمى ملف شهادات CA المبدئي \fIcert.pem\fP في دليل OpenSSL المبدئي. بدلاً من ذلك، يمكن تعريف متغير البيئة \fBSSL_CERT_FILE\fP لتجاوز هذا الموقع. \&\fBctx\fP \fBيجب ألا\fP يكون NULL. .PP \&\fBSSL_CTX_set_default_verify_dir()\fP مشابه لـ \&\fBSSL_CTX_set_default_verify_paths()\fP باستثناء أنه يُستخدم الدليل المبدئي فقط. .PP \&\fBSSL_CTX_set_default_verify_file()\fP مشابه لـ \&\fBSSL_CTX_set_default_verify_paths()\fP باستثناء أنه يُستخدم الملف المبدئي فقط. .PP \&\fBSSL_CTX_set_default_verify_store()\fP مشابه لـ \&\fBSSL_CTX_set_default_verify_paths()\fP باستثناء أنه يُستخدم المخزن المبدئي فقط. .SH ملاحظات .IX Header ملاحظات إذا لم يكن \fBCAfile\fP NULL، فإنه يشير إلى ملف من شهادات CA بتنسيق PEM. يمكن أن يحتوي الملف على عدة شهادات CA مُعرّفة بواسطة .PP .Vb 3 \& \-\-\-\-\-BEGIN CERTIFICATE\-\-\-\-\- \& ... (CA certificate in base64 encoding) ... \& \-\-\-\-\-END CERTIFICATE\-\-\-\-\- .Ve .PP التسلسلات. يُسمح بالنص قبل الشهادات وبينها وبعدها، والذي يمكن استخدامه مثلاً لوصف الشهادات. .PP يُعالَج \fBCAfile\fP عند تنفيذ دالة \fBSSL_CTX_load_verify_locations()\fP. .PP إذا لم يكن \fBCApath\fP NULL، فإنه يشير إلى دليل يحتوي على شهادات CA بتنسيق PEM. تحتوي الملفات كل منها على شهادة CA واحدة. تُبحث الملفات بواسطة قيمة تجزئة اسم موضوع CA، والتي يجب أن تكون متاحة. إذا وُجدت أكثر من شهادة CA بنفس قيمة تجزئة الاسم، يجب أن يكون الامتداد مختلفًا (مثل 9d66eef0.0، 9d66eef0.1 إلخ). يُجرى البحث بترتيب رقم الامتداد، بغض النظر عن الخصائص الأخرى للشهادات. استخدم أداة \fBc_rehash\fP لإنشاء الروابط الضرورية. .PP تُبحث الشهادات في \fBCApath\fP فقط عند الحاجة، مثلاً عند بناء سلسلة الشهادات أو عند إجراء التحقق الفعلي من شهادة النظير. .PP عند البحث عن شهادات CA لبناء السلسلة، ستبحث مكتبة OpenSSL عن الشهادات المناسبة أولاً في \fBCAfile\fP، ثم في \fBCApath\fP. تفاصيل عملية بناء السلسلة موصوفة في "بناء مسار التصديق" في \fBopenssl\-verification\-options\fP\|(1). .PP إذا لم يكن \fBCAstore\fP NULL، فهو URI لمخزن، قد يمثل حاوية واحدة أو كتالوجًا كاملاً من الحاويات. بصرف النظر عن أن \fBCAstore\fP ليس بالضرورة ملفًا أو دليلاً محليًا، فإنه يُعالَج عمومًا بنفس طريقة \fBCApath\fP. .PP في وضع الخادم، عند طلب شهادة عميل، يجب على الخادم إرسال قائمة CAs التي سيقبل منها شهادات العميل. لا تتأثر هذه القائمة بمحتويات \fBCAfile\fP أو \fBCApath\fP ويجب تعيينها صراحةً باستخدام عائلة دوال \&\fBSSL_CTX_set_client_CA_list\fP\|(3). .PP عند بناء سلسلة الشهادات الخاصة به، سيحاول عميل/خادم OpenSSL ملء الشهادات المفقودة من \fBCAfile\fP/\fBCApath\fP، إذا لم تُحدد سلسلة الشهادات صراحةً (انظر \&\fBSSL_CTX_add_extra_chain_cert\fP\|(3)، \&\fBSSL_CTX_use_certificate\fP\|(3). .SH تحذيرات .IX Header تحذيرات إذا توفّرت عدة شهادات CA تطابق الاسم، ومُعرّف المفتاح، ورقم السلسلة، فسيُفحص أولها فقط. قد يؤدّي هذا إلى نتائج غير متوقّعة إذا توفّرت نفس شهادة CA بتواريخ انتهاء مختلفة. إذا حدث خطأ تحقق "انتهت صلاحية الشهادة"، فلن يُبحث عن أي شهادة أخرى. تأكّد من عدم خلط الشهادات منتهية الصلاحية مع الصالحة. .SH "القيم المُرجعة" .IX Header "القيم المُرجعة" بالنسبة لـ SSL_CTX_load_verify_locations، قد تحدث قيم الإرجاع التالية: .IP 0 4 فشلت العملية لأن \fBCAfile\fP و \fBCApath\fP هما NULL أو فشلت المعالجة في أحد المواقع المُحدّدة. افحص مكدس الأخطاء لمعرفة السبب. .IP 1 4 .IX Item 1 نجحت العملية. .PP \&تُرجع \fBSSL_CTX_set_default_verify_paths()\fP و \fBSSL_CTX_set_default_verify_dir()\fP و \&\fBSSL_CTX_set_default_verify_file()\fP جميعها القيمة 1 عند النجاح أو 0 عند الفشل. يُعتبر الموقع المبدئي المفقود نجاحًا أيضًا. .SH أمثلة .IX Header أمثلة أنشئ ملف شهادة CA مع نص وصفي من شهادات CA ca1.pem ca2.pem ca3.pem: .PP .Vb 5 \& #!/bin/sh \& rm CAfile.pem \& for i in ca1.pem ca2.pem ca3.pem ; do \& openssl x509 \-in $i \-text >> CAfile.pem \& done .Ve .PP جهّز الدليل /some/where/certs الذي يحتوي على عدة شهادات CA لاستخدامه كـ \fBCApath\fP: .PP .Vb 2 \& cd /some/where/certs \& c_rehash . .Ve .SH "انظر أيضًا" .IX Header "انظر أيضًا" \&\fBssl\fP\|(7)، \&\fBSSL_CTX_set_client_CA_list\fP\|(3)، \&\fBSSL_get_client_CA_list\fP\|(3)، \&\fBSSL_CTX_use_certificate\fP\|(3)، \&\fBSSL_CTX_add_extra_chain_cert\fP\|(3)، \&\fBSSL_CTX_set_cert_store\fP\|(3)، \&\fBSSL_CTX_set_client_CA_list\fP\|(3) .SH "حقوق النسخ" .IX Header "حقوق النسخ" حقوق النشر 2000\-2021 لمؤلفي مشروع OpenSSL. جميع الحقوق محفوظة. .PP مرخص بموجب رخصة Apache 2.0 (المشار إليها فيما يلي بـ ”الرخصة“). لا يجوز لك استخدام هذا الملف إلا وفقًا لشروط الرخصة. يمكنك الحصول على نسخة منها في الملف LICENSE الموجود في حزمة التوزيع المصدرية أو على الرابط . .PP .SH ترجمة تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي . .PP هذه الترجمة هي وثيقة مجانية؛ راجع .UR https://www.gnu.org/licenses/gpl-3.0.html رخصة جنو العامة الإصدار 3 .UE أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات. .PP إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: .MT kde-l10n-ar@kde.org .ME .