.\" -*- 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_GET_SESSION 3ssl" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH SSL_GET_SESSION 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_get_session, SSL_get0_session, SSL_get1_session \- استرداد بيانات جلسة TLS/SSL .SH موجز .IX Header موجز .Vb 1 \& #include \& \& SSL_SESSION *SSL_get_session(const SSL *ssl); \& SSL_SESSION *SSL_get0_session(const SSL *ssl); \& SSL_SESSION *SSL_get1_session(SSL *ssl); .Ve .SH الوصف .IX Header الوصف \&\fBSSL_get_session()\fP يُرجع مؤشرًا إلى \fBSSL_SESSION\fP المُستخدم فعليًا في \&\fBssl\fP. لا يُزاد عداد المرجع لـ \fBSSL_SESSION\fP، لذا قد يُصبح المؤشر غير صالح بعمليات أخرى. .PP \&\fBSSL_get0_session()\fP هو نفسه \fBSSL_get_session()\fP. .PP \&\fBSSL_get1_session()\fP هو نفسه \fBSSL_get_session()\fP، لكن يُزاد عداد المرجع لـ \fBSSL_SESSION\fP بمقدار واحد. .SH ملاحظات .IX Header ملاحظات تحتوي جلسة ssl على كل المعلومات اللازمة لإعادة إنشاء الاتصال دون مصافحة كاملة لإصدارات SSL حتى TLSv1.2. في TLSv1.3، الأمر نفسه صحيح، لكن الجلسات تُنشأ بعد حدوث المصافحة الرئيسية. يُرسل الخادم معلومات الجلسة إلى العميل في وقت يختاره، قد يكون بعد فترة من إنشاء الاتصال الأولي (أو أبدًا). استدعاء هذه الدوال من جانب العميل في TLSv1.3 قبل إنشاء الجلسة سيُعيد كائن SSL_SESSION لكن لا يمكن استخدام ذلك الكائن لاستئناف الجلسة. انظر \&\fBSSL_SESSION_is_resumable\fP\|(3) لمعلومات حول كيفية تحديد ما إذا كان كائن SSL_SESSION يمكن استخدامه للاستئناف أم لا. .PP بالإضافة إلى ذلك، في TLSv1.3، يمكن للخادم إرسال رسائل متعددة تُنشئ جلسة لاتصال واحد. في تلك الحالة، من جانب العميل، ستعيد الدوال أعلاه معلومات فقط عن آخر جلسة استُلمت. من جانب الخادم، ستعيد معلومات فقط عن آخر جلسة أُرسلت، أو إذا لم تُرسل تذاكر جلسة فجلسة الاتصال الحالي. .PP الطريقة المُفضلة للتطبيقات للحصول على كائن SSL_SESSION قابل للاستئناف هي استخدام استدعاء رد جلسة جديد كما هو موصوف في \fBSSL_CTX_sess_set_new_cb\fP\|(3). يُستدعى استدعاء رد الجلسة الجديد فقط عندما تُنشأ جلسة فعليًا، لذا يتجنب هذا المشكلة الموصوفة أعلاه حيث يحصل تطبيق على كائن SSL_SESSION لا يمكن استخدامه للاستئناف في TLSv1.3. كما يُمكن التطبيقات من الحصول على معلومات حول كل الجلسات التي أرسلها الخادم. .PP ستُزال جلسة آليًا من خبيئة الجلسة وتُوسم كغير قابلة للاستئناف إذا لم يُغلق الاتصال بشكل نظيف، مثلًا إذا حدث خطأ فادح في الاتصال أو لم يُستدع \fBSSL_shutdown\fP\|(3) قبل \&\fBSSL_free\fP\|(3). .PP في TLSv1.3، يُوصى باستخدام كل كائن SSL_SESSION للاستئناف مرة واحدة فقط. .PP \&\fBSSL_get0_session()\fP يُرجع مؤشرًا إلى الجلسة الفعلية. نظرًا لعدم زيادة عداد المرجع، يكون المؤشر صالحًا فقط أثناء استخدام الاتصال. إذا استُدعي \fBSSL_clear\fP\|(3) أو \&\fBSSL_free\fP\|(3)، قد تُزال الجلسة بالكامل (إذا اعتُبرت سيئة)، ويُصبح المؤشر الذي حُصل عليه غير صالح. حتى لو كانت الجلسة صالحة، يمكن إزالتها في أي وقت بسبب انتهاء المهلة أثناء \fBSSL_CTX_flush_sessions\fP\|(3). .PP إذا أُريد الاحتفاظ بالبيانات، سيزيد \fBSSL_get1_session()\fP عداد المرجع، بحيث لا تُزال الجلسة ضمنيًا بعمليات أخرى بل تبقى في الذاكرة. لإزالة الجلسة، يجب استدعاء \&\fBSSL_SESSION_free\fP\|(3) صراحةً مرة واحدة لإنقاص عداد المرجع مرة أخرى. .PP تحتفظ كائنات SSL_SESSION بمعلومات ارتباط داخلية حول قائمة خبيئة الجلسة، عند إدراجها في خبيئة جلسة لكائن SSL_CTX واحد. لذلك، يجب استخدام كائن SSL_SESSION واحد فقط، بغض النظر عن عدد مراجعة، مع كائن SSL_CTX واحد (وكائنات SSL التي أُنشئت من كائن SSL_CTX هذا). .SH "القيم المُرجعة" .IX Header "القيم المُرجعة" يمكن أن تحدث قيم الإعادة التالية: .IP NULL 4 .IX Item NULL لا توجد جلسة متاحة في \fBssl\fP. .IP "مؤشر إلى SSL_SESSION" 4 .IX Item "مؤشر إلى SSL_SESSION" تشير القيمة المُرجعة إلى بيانات جلسة SSL. .SH "انظر أيضًا" .IX Header "انظر أيضًا" \&\fBssl\fP\|(7), \fBSSL_free\fP\|(3), \&\fBSSL_clear\fP\|(3), \&\fBSSL_SESSION_free\fP\|(3) .SH "حقوق النسخ" .IX Header "حقوق النسخ" حقوق الطبع والنشر 2000\-2018 لمؤلفي مشروع 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 .