SSL_SET_SHUTDOWN(3ssl)

الاسم
SSL_set_shutdown, SSL_get_shutdown - معالجة حالة الإغلاق لاتصال SSL

موجز
 #include <openssl/ssl.h>

 void SSL_set_shutdown(SSL *ssl, int mode);

 int SSL_get_shutdown(const SSL *ssl);

الوصف
SSL_set_shutdown() تُعيِّن حالة الإغلاق لـ ssl إلى mode.

SSL_get_shutdown() تُعيد وضع الإغلاق لـ ssl.

ملاحظات
حالة الإغلاق لاتصال ssl هي قناع بتّي من:

0   لا يوجد إعداد إغلاق بعد.

SSL_SENT_SHUTDOWN
    أُرسل تنبيه إغلاق close_notify إلى النظير، يُعتبر الاتصال مغلقًا والجلسة مغلقة وصحيحة.

SSL_RECEIVED_SHUTDOWN
    وُرد تنبيه إغلاق من النظير، إما close_notify عادي أو خطأ قاتل.

يمكن تعيين SSL_SENT_SHUTDOWN و SSL_RECEIVED_SHUTDOWN في نفس الوقت.

تُستخدم حالة إغلاق الاتصال لتحديد حالة جلسة ssl. إذا كانت الجلسة لا تزال مفتوحة، عند استدعاء SSL_clear(3) أو SSL_free(3)، تُعتبر سيئة وتُزال وفقًا لـ RFC2246. الشرط الفعلي لجلسة مغلقة بشكل صحيح هو SSL_SENT_SHUTDOWN (وفقًا لـ TLS RFC، من المقبول إرسال تنبيه close_notify فقط دون انتظار رد النظير، عند إغلاق الاتصال الأساسي). يمكن استخدام SSL_set_shutdown() لتعيين هذه الحالة دون إرسال تنبيه إغلاق إلى النظير (انظر SSL_shutdown(3)).

إذا وُرد close_notify، سيُعيَّن SSL_RECEIVED_SHUTDOWN، لتعيين SSL_SENT_SHUTDOWN يجب على التطبيق مع ذلك استدعاء SSL_shutdown(3) أو SSL_set_shutdown() بنفسه.

SSL_set_shutdown() غير مدعومة لكائنات QUIC SSL.

القيم المُرجعة
SSL_set_shutdown() لا تُعيد معلومات تشخيصية.

SSL_get_shutdown() تُعيد حالة الإغلاق الحالية كما عُيِّنت أو بناءً على حالة الاتصال الفعلية.

SSL_get_shutdown() تُعيد 0 إذا استُدعيت على كائن تيار QUIC SSL. إذا استُدعيت على كائن اتصال QUIC SSL، تُعيد قيمة مع تعيين SSL_SENT_SHUTDOWN إذا أُرسل CONNECTION_CLOSE إلى النظير وتُعيد قيمة مع تعيين SSL_RECEIVED_SHUTDOWN إذا وُرد CONNECTION_CLOSE من النظير أو إذا أنهي اتصال QUIC بالكامل لأسباب أخرى.

انظر أيضًا
ssl(7), SSL_shutdown(3), SSL_CTX_set_quiet_shutdown(3), SSL_clear(3), SSL_free(3)

حقوق النسخ
حقوق النشر 2001-2023 لمؤلفي مشروع OpenSSL. جميع الحقوق محفوظة.

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

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

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 (https://www.gnu.org/licenses/gpl-3.0.html) أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

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