Scroll to navigation

OPENSSL_VERSION(3SSL) OpenSSL OPENSSL_VERSION(3SSL)

الاسم

OPENSSL_VERSION_MAJOR, OPENSSL_VERSION_MINOR, OPENSSL_VERSION_PATCH, OPENSSL_VERSION_PRE_RELEASE, OPENSSL_VERSION_BUILD_METADATA, OPENSSL_VERSION_TEXT, OPENSSL_VERSION_PREREQ, OPENSSL_version_major, OPENSSL_version_minor, OPENSSL_version_patch, OPENSSL_version_pre_release, OPENSSL_version_build_metadata, OpenSSL_version, OPENSSL_VERSION_NUMBER, OpenSSL_version_num, OPENSSL_info - احصل على رقم إصدار OpenSSL ومعلومات أخرى

موجز

 #include <openssl/opensslv.h>
 #define OPENSSL_VERSION_MAJOR  x
 #define OPENSSL_VERSION_MINOR  y
 #define OPENSSL_VERSION_PATCH  z
 /* The definitions here are typical release values */
 #define OPENSSL_VERSION_PRE_RELEASE ""
 #define OPENSSL_VERSION_BUILD_METADATA ""
 #define OPENSSL_VERSION_TEXT "OpenSSL x.y.z xx XXX xxxx"
 #define OPENSSL_VERSION_PREREQ(maj,min)
 #include <openssl/crypto.h>
 unsigned int OPENSSL_version_major(void);
 unsigned int OPENSSL_version_minor(void);
 unsigned int OPENSSL_version_patch(void);
 const char *OPENSSL_version_pre_release(void);
 const char *OPENSSL_version_build_metadata(void);
 const char *OpenSSL_version(int t);
 const char *OPENSSL_info(int t);
 /* from openssl/opensslv.h */
 #define OPENSSL_VERSION_NUMBER 0xnnnnnnnnL
 /* from openssl/crypto.h */
 unsigned long OpenSSL_version_num();

الوصف

ماكرو

تمثل وحدات الماكرو الثلاث OPENSSL_VERSION_MAJOR و OPENSSL_VERSION_MINOR و OPENSSL_VERSION_PATCH الأجزاء الثلاثة لمعرّف الإصدار، MAJOR.MINOR.PATCH.

ماكرو OPENSSL_VERSION_PRE_RELEASE هو جزء نصي مضاف يشير إلى أن هذا إصدار ما قبل الإصدار النهائي، مثل "-dev" للقطة تطويرية جارية أو "-alpha3" لإصدار ألفا. يجب أن تكون القيمة سلسلة محارف.

ماكرو OPENSSL_VERSION_BUILD_METADATA هو معلومات إضافية، محجوزة لأطراف أخرى، مثل "+fips" أو "+vendor.1"). لن يلمس مشروع OpenSSL هذا الماكرو (سيتركه سلسلة محارف فارغة). يجب أن تكون القيمة سلسلة محارف.

OPENSSL_VERSION_STR هو ماكرو ملائم للحصول على سلسلة محارف معرّف الإصدار القصير، "MAJOR.MINOR.PATCH".

OPENSSL_FULL_VERSION_STR هو ماكرو ملائم للحصول على سلسلة محارف معرّف الإصدار الأطول، والتي تجمع OPENSSL_VERSION_STR و OPENSSL_VERSION_PRE_RELEASE و OPENSSL_VERSION_BUILD_METADATA.

OPENSSL_VERSION_TEXT هو ماكرو ملائم للحصول على نص إصدار وصفي كامل، والذي يتضمن OPENSSL_FULL_VERSION_STR وتاريخ الإصدار.

OPENSSL_VERSION_PREREQ هو ماكرو مفيد للتحقق مما إذا كان إصدار OpenSSL للترويسات المستخدمة على الأقل عند رقم رئيسي (maj) وفرعي (min) معطى مسبقًا أم لا. سيقيم إلى صحيح إذا كان رقم إصدار الترويسة (OPENSSL_VERSION_MAJOR.OPENSSL_VERSION_MINOR) أكبر من أو يساوي maj.min.

OPENSSL_VERSION_NUMBER هو مزيج من الإصدار الرئيسي والفرعي والتصحيحي في عدد صحيح واحد 0xMNN00PP0L، حيث:

هو الرقم من OPENSSL_VERSION_MAJOR، بالتدوين السداسي عشري
هو الرقم من OPENSSL_VERSION_MINOR، بالتدوين السداسي عشري
هو الرقم من OPENSSL_VERSION_PATCH، بالترميز الست عشري

دوال

OPENSSL_version_major() و OPENSSL_version_minor() و OPENSSL_version_patch() و OPENSSL_version_pre_release() و OPENSSL_version_build_metadata() تُرجع قيم الكليّات المذكورة أعلاه لبناء المكتبة، على التوالي.

OpenSSL_version() تُرجع سلاسل محارف مختلفة اعتمادًا على t:

قيمة OPENSSL_VERSION_TEXT
قيمة OPENSSL_VERSION_STR
قيمة OPENSSL_FULL_VERSION_STR
أعلام المترجم المُعيّنة لعملية التجميع بالصيغة "compiler: ..." إن وُجدت، أو "compiler: information not available" بخلاف ذلك.
تاريخ عملية البناء بالصيغة "built on: ..." إن وُجد أو "built on: date not available" بخلاف ذلك. التاريخ لن يكون متاحًا في بناء قابل للتكرار، على سبيل المثال.
هدف "Configure" لبناء المكتبة بالصيغة "platform: ..." إن وُجد، أو "platform: information not available" بخلاف ذلك.
إعداد OPENSSLDIR لبناء المكتبة بالصيغة "OPENSSLDIR: "..."" إن وُجد، أو "OPENSSLDIR: N/A" بخلاف ذلك.
إعداد ENGINESDIR لبناء المكتبة بالصيغة "ENGINESDIR: "..."" إن وُجد، أو "ENGINESDIR: N/A" بخلاف ذلك. هذا الخيار مُهمَل في OpenSSL 3.0.
إعداد MODULESDIR لبناء المكتبة بالصيغة "MODULESDIR: "..."" إن وُجد، أو "MODULESDIR: N/A" بخلاف ذلك.
إعدادات وحدة المعالجة المركزية الحالية لـ OpenSSL. هذا هو الإعداد الحالي لأعلام قدرة وحدة المعالجة المركزية. عادة ما يُهيأ آليًا ولكن قد يُضبط عبر متغير بيئة. للقيمة نفس صياغة متغير البيئة. بالنسبة لـ x86، تبدو السلسلة المحارف كـ "CPUINFO: OPENSSL_ia32cap=0x123:0x456" أو "CPUINFO: N/A" إذا لم تكن متاحة.
سياق تثبيت Windows. يُستخدم سياق تثبيت Windows لحساب اسم مفتاح سجل OpenSSL على Windows. مفتاح السجل الكامل هو "SOFTWARE\WOW6432Node\OpenSSL-{major}.{minor}-{context}"، حيث "{major}" و "{minor}" و "{context}" هي رقم الإصدار الرئيسي لـ OpenSSL ورقم الإصدار الثانوي وسياق تثبيت Windows، على التوالي.

بالنسبة لـ t غير معروف، يُعاد النص "not available".

OPENSSL_info() تُعيد أيضًا سلاسل محارف مختلفة اعتمادًا على t:

"OPENSSLDIR" المُهيأ، وهو الموقع المبدئي لملفات إعدادات OpenSSL.
"ENGINESDIR" المُهيأ، وهو الموقع المبدئي لمحركات OpenSSL.
"MODULESDIR" المُهيأ، وهو الموقع المبدئي لوحدات OpenSSL القابلة للتحميل ديناميكيًا بخلاف المحركات.
امتداد الوحدة القابلة للتحميل ديناميكيًا المُهيأ.
الفاصل بين مواصفات الدليل واسم الملف. لاحظ أنه على بعض أنظمة التشغيل، هذا ليس نفس الفاصل بين عناصر الدليل.
فاصل قائمة OpenSSL. يُستخدم عادة في سلاسل المحارف التي هي قوائم عناصر، مثل قيمة متغير البيئة $PATH على Unix (حيث الفاصل هو ":") أو "%PATH%" على ويندوز (حيث الفاصل هو ";").
إعدادات وحدة المعالجة المركزية الحالية لـ OpenSSL. هذا هو الإعداد الحالي لأعلام قدرة وحدة المعالجة المركزية. عادة ما يُهيأ آليًا ولكن قد يُضبط عبر متغير بيئة. للقيمة نفس صياغة متغير البيئة. بالنسبة لـ x86، تبدو السلسلة المحارف كـ "OPENSSL_ia32cap=0x123:0x456".
سياق تثبيت Windows. يُستخدم سياق تثبيت Windows لحساب اسم مفتاح سجل OpenSSL على Windows. مفتاح السجل الكامل هو "SOFTWARE\WOW6432Node\OpenSSL-{major}.{minor}-{context}"، حيث "{major}" و "{minor}" و "{context}" هي رقم الإصدار الرئيسي لـ OpenSSL ورقم الإصدار الثانوي وسياق تثبيت Windows، على التوالي.

بالنسبة لـ t غير معروف، يُعاد NULL.

OpenSSL_version_num() تُعيد قيمة OPENSSL_VERSION_NUMBER.

القيم المُرجعة

OPENSSL_version_major() و OPENSSL_version_minor() و OPENSSL_version_patch() تُعيد أجزاء رقم الإصدار كأعداد صحيحة.

OPENSSL_version_pre_release() و OPENSSL_version_build_metadata() تُعيد قيم OPENSSL_VERSION_PRE_RELEASE و OPENSSL_VERSION_BUILD_METADATA على التوالي كسلاسل محارف ثابتة. بالنسبة لأي منهما غير مُعرَّف، تُعاد السلسلة الفارغة.

OpenSSL_version() تُعيد سلاسل محارف ثابتة.

انظر أيضًا

crypto(7)

التاريخ

الماكرو والدوال الموصوفة هنا أُضيفت في OpenSSL 3.0، باستثناء OPENSSL_VERSION_NUMBER و OpenSSL_version_num().

العلل

كان هناك تباين بين هذا الدليل والتعليق + الكود في <openssl/opensslv.h>، حيث اقترح الأخير أن الأربع بتات الأقل أهمية من OPENSSL_VERSION_NUMBER قد تكون 0x0f في إصدارات OpenSSL المُصدَرة.

حقوق النسخ

حقوق النشر 2018-2025 مؤلفو مشروع OpenSSL. جميع الحقوق محفوظة.

مرخص بموجب رخصة Apache 2.0 (المشار إليها فيما يلي بـ ”الرخصة“). لا يجوز لك استخدام هذا الملف إلا وفقًا لشروط الرخصة. يمكنك الحصول على نسخة منها في الملف LICENSE الموجود في حزمة التوزيع المصدرية أو على الرابط <https://www.openssl.org/source/license.html>.

ترجمة

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

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

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

7 أبريل 2026 3.5.6