DEENESPTFRRUARHIKOZHNL

Secure Onboard Communication (SecOC)

ModulSecOC (Secure Onboard Communication)
BSW-Modul-ID150
Standard-Header#include "SecOC.h"
SWS-SpezifikationAUTOSAR_SWS_SecureOnboardCommunication.pdf
ClusterSecurity & Intrusion Detection

دليل الوحدةمولَّد بالذكاء الاصطناعي

تؤمّن وحدات I-PDU بـ Authenticator وFreshness Value ضد التلاعب وإعادة الإرسال بجانب موجه PDU.
مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: claude-opus-5-5 · الجهد: high · درجة الحرارة: غير قابل للتحكم · الموجّه: e42ecdfc6fe3 المصدر أسئلة مفتوحة (2)
المرساة السببية: R20-11 صالح اعتبارًا من R20-11 مُركَّب حديثًا لهذا الإصدار من المواصفة.
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تؤمّن وحدات I-PDU بـ Authenticator وFreshness Value ضد التلاعب وإعادة الإرسال بجانب موجه PDU.

تحمي SecOC وحدات I-PDU ضد التلاعب وإعادة الإرسال. ولتحقيق ذلك، فإنها تُلحق عند الإرسال Authenticator وFreshness Value وتفحص كليهما عند الاستقبال. ويتم فصل قبول PDU عن المعالجة التشفيرية: إذ لا تقوم سوى الدوال الرئيسية الدورية بالمصادقة أو التحقق في ست خطوات ([SWS_SecOC_00040]). ويوفر CSM التشفير، بينما يوفر Freshness Manager خارجي قيمة Freshness Value. وتحدد محاولات إعادة المحاولة المحدودة متى يتم تجاهل PDU المستلمة والإبلاغ عن حالة التحقق ([SWS_SecOC_00241]).

تؤمّن SecOC وحدات I-PDU في مكدس الاتصال. وتقع بجانب PduR وتُلحق بكل Authentic I-PDU الـ Authenticator وFreshness Value قد تكون مقتطعة. وبذلك تنشأ Secured I-PDU (SWS SecOC ص. 39). ويُحسب Authenticator عبر Data Identifier وبيانات الحمولة وFreshness Value الكاملة (SWS SecOC ص. 29). ويوفر CSM التشفير ([SWS_SecOC_00138])، بينما يوفر Freshness Manager قيمة Freshness Value عبر RTE أو دالة C ([SWS_SecOC_91001]، [SWS_SecOC_00230]).

kontext com Com / obere Schicht pdur PduR com->pdur Authentic I-PDU secoc SecOC pdur->secoc SecOC_[If|Tp]Transmit, SecOC_RxIndication, SecOC_StartOfReception lower Untere Schicht (CanIf, FrIf, CanTp …) pdur->lower Secured I-PDU secoc->pdur PduR_SecOCTransmit, PduR_SecOC…RxIndication csm Csm secoc->csm Csm_MacGenerate / Csm_MacVerify fvm Freshness Manager (مكون برمجيات SW-C عبر RTE أو دالة C) secoc->fvm Get[Tx|Rx]Freshness…, SPduTxConfirmation, VerificationStatusCallout app SW-C (Verifikationsstatus) secoc->app VerificationStatusIndication det Det secoc->det SECOC_E_… idsm IdsM secoc->idsm Security Events app->secoc SecOC_VerifyStatusOverride, SecOC_SendDefaultAuthenticationInformation lower->pdur Secured I-PDU (Empfang)

مخطط السياق: SecOC بين PduR، وCSM، وFreshness Manager، والتطبيق، وDET، وIdsM. المصادر: [SWS_SecOC_00138]، [SWS_SecOC_91001]، [SWS_SecOC_00273]

الإرسال والاستقبال منفصلان. عند SecOC_[If|Tp]Transmit، تنسخ SecOC بيانات الحمولة فقط. ولا تقوم سوى SecOC_MainFunctionTx الدورية بحساب Authentication Information وإطلاق الإرسال عبر PduR (SWS SecOC ص. 40، [SWS_SecOC_00176]). وتخزن SecOC وحدات Secured I-PDU المستلمة مؤقتًا بالكامل وتفحصها في SecOC_MainFunctionRx في ست خطوات، من التحليل اللغوي حتى التمرير إلى الأعلى ([SWS_SecOC_00040]، [SWS_SecOC_00255]). وتعمل الوحدة فقط في الحالة SECOC_INIT، التي ينشئها SecOC_Init ويلغيها SecOC_DeInit ([SWS_SecOC_00162]، [SWS_SecOC_00161]).

يتحكم عدّادان في عمليات إعادة المحاولة عند الاستقبال ([SWS_SecOC_00237]، [SWS_SecOC_00239]، [SWS_SecOC_00240]، [SWS_SecOC_00241]):

  • يعدّ عداد Build حالات الاختناق المؤقتة مثل E_BUSY.
  • يعدّ عداد Verify مقارنات MAC الفاشلة.
  • إذا وصل أحدهما إلى حده الأقصى، يتم تجاهل PDU.

عند الإرسال، يؤدي الوصول إلى الحد الأقصى إلى SECOC_E_CRYPTO_FAILURE، وإلى الإرسال بنمط افتراضي إذا كان مسموحًا به ([SWS_SecOC_00155]، [SWS_SecOC_00229]).

rxverifikation a تم استقبال Secured I-PDU بالكامل عدّاد البناء = 0، عدّاد التحقق = 0 b Freshness abfragen (SecOC_GetRxFreshness / …AuthData) a->b c Ergebnis Freshness? b->c d عدّاد البناء + 1 c->d E_BUSY h Verwerfen: SECOC_FRESHNESSFAILURE c->h E_NOT_OK i Csm_MacVerify c->i E_OK e عدّاد البناء >= SecOCAuthenticationBuildAttempts؟ d->e f إعادة المحاولة في استدعاء SecOC_MainFunctionRx التالي e->f لا g Verwerfen: SECOC_AUTHENTICATIONBUILDFAILURE e->g نعم f->b j Ergebnis Verifikation? i->j j->d E_BUSY, QUEUE_FULL k عدّاد التحقق + 1، عدّاد البناء = 0 j->k رمز MAC غير صالح m Verwerfen: SECOC_VERIFICATIONFAILURE j->m غير قابل للإصلاح (E_NOT_OK، KEY_FAILURE) n SECOC_VERIFICATIONSUCCESS, Authentic I-PDU an obere Schicht j->n بنجاح l عدّاد التحقق >= SecOCAuthenticationVerifyAttempts؟ k->l l->b لا: القيمة التالية الصالحة لـ Freshness Value l->m نعم

مخطط نشاط: عدّادا الإنشاء والتحقق يقرران بشأن إعادة المحاولة أو التجاهل. المصادر: [SWS_SecOC_00239]، [SWS_SecOC_00241]

تُبلّغ SecOC عن نتيجة كل محاولة بصفتها SecOC_VerificationStatusType، وفقًا للتكوين إلى مكونات البرمجيات وإلى Freshness Manager ([SWS_SecOC_00271]، [SWS_SecOC_00243]). وباستخدام SecOC_VerifyStatusOverride، يمكن تجاوز الفحص بشكل موجه ([SWS_SecOC_00122]). وعند التقسيم إلى Authentic I-PDU وCryptographic I-PDU، لا يتم الفحص إلا عند توفر كلا الجزأين مع Message Linker متطابق ([SWS_SecOC_00211]).

الدور بجانب PduR وحدود النظام

تقع SecOC في البنية الطبقية بجانب موجه PDU. وهي تحول Authentic I-PDU إلى Secured I-PDU عبر إلحاق Authentication Information مباشرة بعد بيانات الحمولة: الـ Authenticator وFreshness Value المقتطعة إن وجدت (SWS SecOC ص. 39، SWS SecOC ص. 43). ولا يجوز لأي وحدة أخرى الاعتماد على SecOC، بحيث يمكن بناء نظام بدون SecOC أيضًا. وتظهر MetaData الخاصة بـ Authentic PDU دون تغيير في Secured PDU والعكس صحيح ([SWS_SecOC_00212]).

يُحسب Authenticator عبر تسلسل ثلاثة أجزاء: SecOCDataId، والجزء المؤمَّن من Authentic I-PDU، وFreshness Value الكاملة (SWS SecOC ص. 29). ويوفر CSM التشفير، على سبيل المثال باستخدام Csm_MacGenerate وCsm_MacVerify ([SWS_SecOC_00138]). ويقدم Freshness Manager قيمة Freshness Value، إما عبر منفذ RTE FreshnessManagement أو عبر دوال C ([SWS_SecOC_91001]، [SWS_SecOC_00230]). ومستلمو البلاغات الآخرون هم:

kontext com Com / obere Schicht pdur PduR com->pdur Authentic I-PDU secoc SecOC pdur->secoc SecOC_[If|Tp]Transmit, SecOC_RxIndication, SecOC_StartOfReception lower Untere Schicht (CanIf, FrIf, CanTp …) pdur->lower Secured I-PDU secoc->pdur PduR_SecOCTransmit, PduR_SecOC…RxIndication csm Csm secoc->csm Csm_MacGenerate / Csm_MacVerify fvm Freshness Manager (مكون برمجيات SW-C عبر RTE أو دالة C) secoc->fvm Get[Tx|Rx]Freshness…, SPduTxConfirmation, VerificationStatusCallout app SW-C (Verifikationsstatus) secoc->app VerificationStatusIndication det Det secoc->det SECOC_E_… idsm IdsM secoc->idsm Security Events app->secoc SecOC_VerifyStatusOverride, SecOC_SendDefaultAuthenticationInformation lower->pdur Secured I-PDU (Empfang)

مخطط السياق: تتوسط SecOC بين PduR وCSM وFreshness Manager والتطبيق، وتبلّغ إلى DET وIdsM. المصادر: SWS SecOC ص. 24، [SWS_SecOC_00138]، [SWS_SecOC_91001]، [SWS_SecOC_00273]

تدعم الآليات نفسها البوابات (Gateways) أيضًا. وتدعم SecOC بوابات إعادة المصادقة بين مناطق الأمان، مع تكوين كل عملية بشكل منفصل. ولا يتم دعم «Gatewaying-on-the-fly» (SWS SecOC ص. 57).

التهيئة، وحالة الوحدة، والدوال الرئيسية الدورية

تتضمن حالة الوحدة SecOC_StateType كلاً من SECOC_UNINIT وSECOC_INIT ([SWS_SecOC_00162]).

  • يتلقى SecOC_Init قيمة SecOC_ConfigType خاصة بالتنفيذ وينقل عند النجاح إلى SECOC_INIT. وعند التعيين إلى عدة أقسام (partitions)، يمكن توفير دالة Init لكل قسم ([SWS_SecOC_00106]، [SWS_SecOC_00104]).
  • يتجاهل SecOC_DeInit جميع وحدات I-PDU المخزنة مؤقتًا ويعيد تعيين الوحدة إلى الحالة غير المهيأة ([SWS_SecOC_00161]). ويتم أثناء ذلك أيضًا مسح المتغيرات وذاكرات التخزين المؤقت الداخلية (SWS SecOC ص. 65).
  • يُبلّغ الاستدعاء بدون تهيئة مسبقة عن SECOC_E_UNINIT ([SWS_SecOC_00101]).

تنجز المعالجة الفعلية كلاً من SecOC_MainFunctionTx وSecOC_MainFunctionRx. ولكل نسخة مكوَّنة، تنشأ دالة خاصة …_<shortName> ([SWS_SecOC_00176]، [SWS_SecOC_00171]). وتكون فترتها قابلة للتكوين (SWS SecOC ص. 130، SWS SecOC ص. 129). وتعمل كل SecOCTxPduProcessing في النسخة المشار إليها ([SWS_SecOC_00276]).

بدون تهيئة، تعود دالة Tx الرئيسية فورًا. وبخلاف ذلك، تصادق على جميع وحدات Authentic I-PDU الجديدة في الاستدعاء نفسه وتطلق إرسالها فورًا عبر PduR (SWS SecOC ص. 84).

lebenszyklus start Start uninit SECOC_UNINIT start->uninit uninit->uninit SecOC_MainFunctionTx: عودة فورية؛ استدعاء API: SECOC_E_UNINIT init SECOC_INIT uninit->init SecOC_Init(config) erfolgreich init->uninit SecOC_DeInit(): مسح وحدات I-PDU المخزنة مؤقتًا والمتغيرات والمخازن المؤقتة init->init SecOC_MainFunctionTx/Rx: المصادقة أو التحقق

مخطط الحالة: Init وDeInit يبدلان بين SECOC_UNINIT وSECOC_INIT؛ وتعمل الدالة الرئيسية فقط في الحالة المهيأة. المصادر: [SWS_SecOC_00162]، [SWS_SecOC_00106]، [SWS_SecOC_00161]، SWS SecOC ص. 84

الإرسال: من Authentic إلى Secured I-PDU

مسار الإرسال منفصل ويتم على مرحلتين (SWS SecOC ص. 40):

  1. تستدعي الطبقة العليا PduR_<Up>Transmit، ويستدعي PduR SecOC_[If|Tp]Transmit. وتنسخ SecOC الـ Authentic I-PDU بالكامل إلى ذاكرتها الخاصة وتعود ([SWS_SecOC_00252]).
  2. في الدورة التالية للدالة الرئيسية، تنشأ Secured I-PDU، وتطلق SecOC إرسالها عبر PduR.

تمرر SecOC تأكيدات الطبقة السفلى إلى الأعلى عبر PduR_SecOC[If|Tp]TxConfirmation ([SWS_SecOC_00063]).

تتضمن المصادقة ست خطوات: الإعداد، وتكوين DataToAuthenticator، وإنشاء Authenticator، وتجميع Secured I-PDU، وزيادة Freshness Counter، والإرسال. وتدخل Data Id (16 بت) وFreshness Value في ذلك بترتيب Big Endian (SWS SecOC ص. 33).

إذا كان مصدر الحداثة دالة C (CFUNC)، تجلب SecOC القيمة عبر SecOC_GetTxFreshness. وإذا كان ينبغي لـ Freshness Manager تقديم القيمة المقتطعة بنفسه، يُستخدم SecOC_GetTxFreshnessTruncData لذلك ([SWS_SecOC_00231]، [SWS_SecOC_00230]). وتُبلّغ SecOC عن إطلاق الإرسال باستخدام SecOC_SPduTxConfirmation أو عبر RTE ([SWS_SecOC_00232]، [SWS_SecOC_00233]). وتُملأ المناطق غير المستخدمة بـ SecOCTxPduUnusedAreasDefault ([SWS_SecOC_00269]).

المصادقة أثناء الإرسال المباشر (واجهة الناقل)ComPduRSecOCFreshness ManagerCsmUntere Schicht (z. B. CanIf)PduR_ComTransmit()SecOC_IfTransmit()Authentic I-PDU مكتملةin eigenen Puffer kopierenE_OKUse Case: SecOC_MainFunctionTx (الاستدعاء التالي)SecOC_GetTxFreshness()أو SecOC_GetTxFreshnessTruncData()E_OK, Freshness ValueCsm_MacGenerate(DataToAuthenticator)AuthenticatorAsynchroner Csm-Job: Ergebnis per CallbackSecured I-PDU bilden:Authentic I-PDU | قيمة Freshness Value (مقتطعة) | AuthenticatorPduR_SecOCTransmit()Transmit (Secured I-PDU)SecOC_SPduTxConfirmation()Use Case: تأكيدTxConfirmation(result)SecOC_TxConfirmation(result)PduR_SecOCIfTxConfirmation(result)TxConfirmation(result)

مخطط تسلسلي: قبول Authentic I-PDU والمصادقة في الدورة التالية للدالة الرئيسية منفصلان. المصادر: SWS SecOC ص. 40، [SWS_SecOC_00231]، [SWS_SecOC_00232]، [SWS_SecOC_00063]

في حالة الإرسال المُشغَّل، يجب أن يكون قد تم تنفيذ SecOC_IfTransmit واحد على الأقل مسبقًا. وبدون بيانات متاحة، يستجيب SecOC_TriggerTransmit بـ E_NOT_OK، ويجب عدم استخدام AlwaysTransmit (SWS SecOC ص. 44، [SWS_SecOC_00127]).

بالنسبة لـ SECOC_TPPDU، يبدأ SecOC_TpTransmit العملية. وتجلب SecOC البيانات تدريجيًا باستخدام PduR_SecOCTpCopyTxData ([SWS_SecOC_00253]، [SWS_SecOC_00254]). وتقرأ وحدة TP بعد ذلك عبر SecOC_CopyTxData ([SWS_SecOC_00129]).

المصادقة باستخدام بروتوكول النقل (SECOC_TPPDU)ComPduRSecOCCanTpPduR_ComTransmit()SecOC_TpTransmit()loopحتى يتم نسخ Authentic I-PDU بالكاملPduR_SecOCTpCopyTxData()Com_CopyTxData()BUFREQ_E_BUSY: إعادة المحاولة في استدعاء Main Function التاليBUFREQ_E_NOT_OK: AbbruchUse Case: SecOC_MainFunctionTxauthenticate()PduR_SecOCTransmit()CanTp_Transmit()loopje N-PDUPduR_CanTpCopyTxData()SecOC_CopyTxData()PduR_CanTpTxConfirmation()SecOC_TpTxConfirmation()PduR_SecOCTpTxConfirmation()Com_TpTxConfirmation()

مخطط تسلسلي: عند إرسال TP، تكون SecOC مصبًا (sink) لـ TP باتجاه الأعلى ومصدرًا لـ TP باتجاه الأسفل. المصادر: SWS SecOC ص. 109، [SWS_SecOC_00253]، [SWS_SecOC_00254]

باستخدام SecOCTxSecuredPduCollection، يتم تقسيم Secured I-PDU إلى رسالتين:

  • الـ Authentic I-PDU،
  • وCryptographic I-PDU تتكون من Authentication Data وMessage Linker.

يتم إرسال كلتيهما في الدورة نفسها ([SWS_SecOC_00201]، [SWS_SecOC_00209]، [SWS_SecOC_00202]). ولا يكون التأكيد إلى الأعلى E_OK إلا إذا تم تأكيد كلا الجزأين بـ E_OK ([SWS_SecOC_00270]).

الاستقبال والتحقق

يتضمن التحقق ست خطوات ([SWS_SecOC_00040]):

  1. تحليل Authentic I-PDU وFreshness Value وAuthenticator،
  2. والاستعلام عن Freshness Value لدى Freshness Manager،
  3. وتكوين البيانات المراد فحصها،
  4. وفحص Authentication Information،
  5. وتأكيد Freshness Manager،
  6. وتمرير Authentic I-PDU إلى الطبقة العليا.

تنسخ SecOC في البداية Secured I-PDU إلى ذاكرتها الخاصة وتفحصها في الدورة التالية للدالة الرئيسية (SWS SecOC ص. 50). وتصل عبر واجهات الناقل بواسطة SecOC_RxIndication ([SWS_SecOC_00124]). وإذا كانت I-PDU ذات الطول الثابت أقصر مما تم تكوينه، فيتم تجاهلها بصمت ([SWS_SecOC_00268]). ويأتي طول Authentic I-PDU من التكوين، أو من الطبقة السفلى، أو من الترويسة ([SWS_SecOC_00257]، [SWS_SecOC_00258]، [SWS_SecOC_00259]).

الاستقبال عبر واجهة الناقل والتعامل مع الحداثةPduRSecOCSchMFreshness ManagerCsmSecOC_RxIndication()Secured I-PDU puffern,عدّاد البناء والتحقق = 0SecOC_MainFunctionRx()loopAuthentication verify attempts [MAC-Verifikation fehlgeschlagen]loopAuthentication build attempts [GetRxFreshness()==E_BUSY || Csm_MacVerify()==E_BUSY]GetRxFreshness()Freshness ValueCsm_MacVerify()VerifikationsergebnisVerificationStatus()

مخطط تسلسلي: يعمل الاستعلام عن الحداثة وفحص MAC في سياق دالة Rx الرئيسية ضمن حلقتي إعادة محاولة متداخلتين. المصادر: SWS SecOC ص. 103، [SWS_SecOC_00237]، [SWS_SecOC_00238]

في بروتوكول النقل، يتم الاستقبال على النحو التالي ([SWS_SecOC_00130]، [SWS_SecOC_00128]، [SWS_SecOC_00125]):

  • يحجز SecOC_StartOfReception ذاكرة تخزين مؤقت لكامل Secured I-PDU،
  • ويتولى SecOC_CopyRxData استلام المقاطع الفردية،
  • ويبلّغ SecOC_TpRxIndication عن نهاية الاستقبال.

لا يجوز لـ SecOC تمرير Authentic I-PDU إلا بعد اكتمال الاستقبال ([SWS_SecOC_00255]). تفسير وفقًا للرسم التوضيحي: يُفترض ألا يبدأ التمرير إلى الطبقة العليا إلا بعد التحقق الناجح (SWS SecOC ص. 112). سؤال Q-d5c1780d034c722e (مفتوح) وبخلاف ذلك، يعيد الإصدار R23-11 توجيه بدء الاستقبال بالفعل في SecOC_StartOfReception (SWS SecOC ص. 54).

التحقق مع بروتوكول النقلCanTpPduRSecOCComPduR_CanTpStartOfReception()SecOC_StartOfReception()BUFREQ_OK (مخزن مؤقت لكامل Secured I-PDU)loopje N-PDUPduR_CanTpCopyRxData()SecOC_CopyRxData()BUFREQ_OKPduR_CanTpRxIndication()SecOC_TpRxIndication(E_OK)Use Case: SecOC_MainFunctionRxverify()optتحقق ناجح (تفسير الترتيب وفقًا للرسم التخطيطي)PduR_SecOCTpStartOfReception()Com_StartOfReception()loopحتى يتم نسخ جميع البياناتPduR_SecOCTpCopyRxData()Com_CopyRxData()PduR_SecOCTpRxIndication()Com_TpRxIndication()

مخطط تسلسلي: تخزن SecOC كامل Secured I-PDU مؤقتًا؛ ولا يتبع التمرير إلى Com (تفسير) إلا بعد التحقق الناجح. المصادر: SWS SecOC ص. 112، [SWS_SecOC_00255]

باستخدام SecOCRxSecuredPduCollection، لا تفحص SecOC إلا عند توفر Authentic I-PDU وCryptographic I-PDU مع Message Linker متطابق ([SWS_SecOC_00203]، [SWS_SecOC_00211]). ولتحقيق ذلك، تحتفظ بذاكرتي تخزين مؤقت منفصلتين ([SWS_SecOC_00204]):

  • بعد الفحص الناجح، يتم إفراغ كلتا ذاكرتي التخزين المؤقت ([SWS_SecOC_00207]).
  • بعد الفشل، يتم الاحتفاظ بكلتيهما، ويُعاد الفحص عند كل ورود جديد ([SWS_SecOC_00208]).

تستبعد استراتيجية الفيضان QUEUE هذا التقسيم ([SWS_SecOC_CONSTR_00265]).

مدير الحداثة، وحالة التحقق، والتجاوز (Override)

لا تدير SecOC الحداثة بنفسها. ووفقًا لـ SecOCQueryFreshnessValue (RTE أو CFUNC) وSecOCUseAuthDataFreshness، فإنها تستعلم عن GetRxFreshness أو GetRxFreshnessAuthData. وفي الحالة الثانية، تمرر بالإضافة إلى ذلك مقطعًا مكوَّنًا من PDU المستلمة ([SWS_SecOC_00244]، [SWS_SecOC_00245]، [SWS_SecOC_00246]، [SWS_SecOC_00247]). وتُمرر أيضًا قيمة Freshness Value المقتطعة وعدد محاولات التحقق السابقة ([SWS_SecOC_91007]، [SWS_SecOC_91006]).

تتوفر القيم بصيغة SecOC_FreshnessArrayType ([SWS_SecOC_91012])، مع وجود البت الأكثر أهمية في البايت الأول، أي Big Endian (SWS SecOC ص. 80). وتعني قيمة الإرجاع E_BUSY أن القيمة غير متاحة مؤقتًا ([SWS_SecOC_91002]).

يُلخص SecOC_VerificationStatusType نتيجة كل محاولة: freshnessValueID بالإضافة إلى قيمة من SecOC_VerificationResultType، مثل SECOC_FRESHNESSFAILURE ([SWS_SecOC_00160]، [SWS_SecOC_00149]). ويتم الإبلاغ عنها وفقًا للوضع BOTH أو FAILURE_ONLY أو NONE ([SWS_SecOC_00271]، [SWS_SecOC_91016]). واختياريًا، يتم تمرير الحالة النهائية فقط ([SWS_SecOC_00272]). ويتلقى Freshness Manager النتيجة عبر SecOC_VerificationStatusCallout ([SWS_SecOC_00119]، [SWS_SecOC_00243]).

يتجاوز SecOC_VerifyStatusOverride التحقق بشكل موجه ([SWS_SecOC_00122]). وفي R20-11، يتضمن SecOC_OverrideStatusType من بين أمور أخرى …DROP_UNTIL_NOTICE و…DROP_UNTIL_LIMIT و…CANCEL و…PASS_UNTIL_NOTICE ([SWS_SecOC_00991]). ويضيف R23-11 كلاً من …SKIP_UNTIL_LIMIT و…PASS_UNTIL_LIMIT (SWS SecOC ص. 102). وعلى جانب الإرسال، يُفعّل SecOC_SendDefaultAuthenticationInformation النمط الافتراضي أو يعطله لكل Freshness Value ID ([SWS_SecOC_91013]).

التكوين ومرجع النسخ (Instance)

ينقسم التكوين إلى ثلاث حاويات:

  • SecOCGeneral للمعلمات العامة، مثل SecOCDefaultAuthenticationInformationPattern (SWS SecOC ص. 124)،
  • وSecOCTxPduProcessing واحد لكل PDU إرسال (SWS SecOC ص. 155)،
  • وSecOCRxPduProcessing واحد لكل PDU استقبال (SWS SecOC ص. 140).

المعلمات المركزية هي SecOCDataId وSecOCFreshnessValueId، وأطوال Freshness وAuthenticator، بالإضافة إلى مرجع CsmJob (SWS SecOC ص. 106). وإذا كانت مهمة CSM تعمل بشكل غير متزامن، فإن SecOC تحتاج إلى استدعاءات راجعة خاصة بالشركة المصنعة لذلك (SWS SecOC ص. 78).

توجد بعض المنافذ فقط عند وجود تكوين مناسب:

  • SendDefaultAuthenticationInformation فقط إذا تم تعيين نمط افتراضي ([SWS_SecOC_91020])،
  • وFreshnessManagement فقط عند الاستعلام عبر RTE ([SWS_SecOC_91001]).

لا يتم الإبلاغ عن أحداث الأمان إلا إذا تم تعيين SecOCEnableSecurityEventReporting ([SWS_SecOC_00273]).

التصرف في حالة الخطأ

ينطبق ما يلي على جانب الإرسال:

  • في حالة أخطاء CSM القابلة للإصلاح مثل E_BUSY أو QUEUE_FULL، تحتفظ SecOC بـ Authentic I-PDU وتحاول مرة أخرى في الدورة التالية ([SWS_SecOC_00151]).
  • إذا تم الوصول إلى حد المحاولات، فإنها تبلّغ عن SECOC_E_CRYPTO_FAILURE إلى DET ([SWS_SecOC_00155]).
  • عند الوصول إلى الحد الأقصى، أو حدوث E_NOT_OK للحداثة، أو خطأ غير قابل للإصلاح، تستخدم SecOC النمط الافتراضي، شريطة أن يكون مصرحًا به ([SWS_SecOC_00229]).
  • إذا لم يتم تكوين أي نمط، تلغي SecOC المهمة (SWS SecOC ص. 124).
  • في حالة وجود نمط مكوَّن ولكن غير مسموح به، يُفترض أن تلغي SecOC أيضًا. سؤال Q-a3c1cc4b9b925ed4 (مفتوح)
txfehler a SecOC_MainFunctionTx: Authentifizierung starten b Freshness abfragen, Csm_MacGenerate a->b c Ergebnis? b->c d الاحتفاظ بـ Authentic I-PDU، استدعاء Main Function التالي c->d behebbar (E_BUSY, QUEUE_FULL) g Default-Senden per SecOC_SendDefaultAuthenticationInformation freigegeben? c->g الحداثة E_NOT_OK أو غير قابلة للإصلاح (E_NOT_OK، KEY_FAILURE) j إرسال Secured I-PDU عبر PduR c->j E_OK e SecOCAuthenticationBuildAttempts erreicht? d->e e->b لا e->g نعم (بالإضافة إلى Det: SECOC_E_CRYPTO_FAILURE) h قيمة الحداثة Freshness Value والمصادِق Authenticator من SecOCDefaultAuthenticationInformationPattern g->h نعم i Authentic I-PDU entfernen, Sendeauftrag abbrechen g->i لم يتم توصيف أي نمط؛ تفسير: ينطبق أيضًا في حال عدم تفعيل النمط h->j

مخطط نشاط: تؤدي الأخطاء القابلة للإصلاح إلى إعادة المحاولة، ويؤدي الوصول إلى الحد الأقصى أو الخطأ الجسيم إلى استخدام النمط الافتراضي أو الإلغاء. المصادر: [SWS_SecOC_00151]، [SWS_SecOC_00155]، [SWS_SecOC_00229]، SWS SecOC ص. 124

تعالج SecOC حالات الإلغاء والأخطاء للطبقات المجاورة على النحو التالي:

  • يمرر SecOC_[If|Tp]CancelTransmit فورًا إلى الأسفل بواسطة SecOC ويحرر جميع ذاكرات التخزين المؤقت (SWS SecOC ص. 48، [SWS_SecOC_91009]).
  • إذا أبلغت الطبقة السفلى عن E_NOT_OK، تمتنع SecOC فقط عن التأكيد باتجاه الأعلى.
  • إذا أسفر جلب البيانات عند إرسال TP عن BUFREQ_E_BUSY، تعيد SecOC المحاولة في الدورة التالية ([SWS_SecOC_00260]).
  • يؤدي BUFREQ_E_NOT_OK عند الإرسال كما عند الاستقبال إلى الإلغاء الفوري ([SWS_SecOC_00266]، [SWS_SecOC_00267]).

على جانب الاستقبال، تحتفظ SecOC بعداد إنشاء وعداد تحقق لكل PDU، وكلاهما يبدأ من 0 ([SWS_SecOC_00234]، [SWS_SecOC_00235]):

  • يزيد E_BUSY أو خطأ CSM قابل للإصلاح عداد الإنشاء؛ وتعيد SecOC المحاولة في الدورة التالية ([SWS_SecOC_00236]، [SWS_SecOC_00237]، [SWS_SecOC_00238]).
  • إذا وصل عداد الإنشاء إلى حده، يتبع ذلك SECOC_AUTHENTICATIONBUILDFAILURE ([SWS_SecOC_00240]).
  • يزيد الـ MAC غير الصحيح عداد التحقق ويعيد تعيين عداد الإنشاء ([SWS_SecOC_00239]).
  • عند الوصول إلى حد التحقق أو حدوث خطأ جسيم، ينطبق SECOC_VERIFICATIONFAILURE، وعند النجاح ينطبق SECOC_VERIFICATIONSUCCESS ([SWS_SecOC_00241]، [SWS_SecOC_00242]).
rxverifikation a تم استقبال Secured I-PDU بالكامل عدّاد البناء = 0، عدّاد التحقق = 0 b Freshness abfragen (SecOC_GetRxFreshness / …AuthData) a->b c Ergebnis Freshness? b->c d عدّاد البناء + 1 c->d E_BUSY h Verwerfen: SECOC_FRESHNESSFAILURE c->h E_NOT_OK i Csm_MacVerify c->i E_OK e عدّاد البناء >= SecOCAuthenticationBuildAttempts؟ d->e f إعادة المحاولة في استدعاء SecOC_MainFunctionRx التالي e->f لا g Verwerfen: SECOC_AUTHENTICATIONBUILDFAILURE e->g نعم f->b j Ergebnis Verifikation? i->j j->d E_BUSY, QUEUE_FULL k عدّاد التحقق + 1، عدّاد البناء = 0 j->k رمز MAC غير صالح m Verwerfen: SECOC_VERIFICATIONFAILURE j->m غير قابل للإصلاح (E_NOT_OK، KEY_FAILURE) n SECOC_VERIFICATIONSUCCESS, Authentic I-PDU an obere Schicht j->n بنجاح l عدّاد التحقق >= SecOCAuthenticationVerifyAttempts؟ k->l l->b لا: القيمة التالية الصالحة لـ Freshness Value l->m نعم

مخطط نشاط: عدّادا الإنشاء والتحقق يتحكمان في إعادة المحاولة والتجاهل عند الاستقبال. المصادر: SWS SecOC ص. 42، PRS SecOC ص. 19، [SWS_SecOC_00239]، [SWS_SecOC_00241]

بالنسبة لـ E_NOT_OK الحداثة، يحتوي R20-11 على متطلبين جنبًا إلى جنب. يتجاهل أحدهما PDU فورًا بـ SECOC_FRESHNESSFAILURE ([SWS_SecOC_00256]). والآخر يعدّ محاولة فاشلة ويبلّغ عند الوصول إلى الحد الأقصى عن SECOC_E_FRESHNESS_FAILURE إلى DET ([SWS_SecOC_00248]). بالإضافة إلى ذلك، تُرسل Security Events إلى IdsM، مثل SECOC_SEV_MAC_VERIFICATION_FAILED مع DataId كسياق ([SWS_SecOC_00274]، [SWS_SecOC_00275]).

أدلة تفصيلية إضافية

دليل مُنشأ بواسطة الذكاء الاصطناعي استنادًا إلى مقتطفات المواصفات الواردة في الحمولة. والمتطلبات هي المعيارية لـ R20-11؛ ومواضع الوثائق مستمدة جزئيًا من إصدارات أخرى. ولا يُعد بديلًا للمواصفات.

Secure Onboard Communication (SecOC)

Provides cryptographic authentication and freshness protection for critical communication PDUs.

Funktionen — Übersicht

Typen — Übersicht

Funktionen & Typen — Detailansicht

دالة SecOC_Init [SWS_SecOC_00106] 📄 PDF

void SecOC_Init (const SecOC_ConfigType* config);

Initializes the the Sec OC module. Successful initialization leads to state Sec OC_ INIT. In configurations, in which Sec OC is assigned to more than one partition (i.e. Sec OC_ Main Functions are mapped to partition s), Sec OC may provide one init AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_SecureOnboardCommunication function per partition. The decision on whether a single Sec OC_ Init() function or one per partition is provided is implementation - specific. In case a given implementation provides one Sec OC_ Init() function per partition, it is up to the implementation to devise a naming pattern that prevents name clashes among the different Sec OC_ Init() functions (e.g., by adding a suffix containing short name the Ecuc Partition.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 4620b5d490e2 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الدالة المتزامنة SecOC_Init لتهيئة الوحدة SecOC ونقلها عند الاكتمال الناجح إلى الحالة SecOC_INIT [SWS_SecOC_00106]. يتم الاستدعاء عبر الواجهة من SecOC.h باستخدام معرف الخدمة (Service ID) 0x01 [SWS_SecOC_00106].

المعلمات وقيم الإرجاع

  • معلمة التمرير: عبر معلمة الإدخال config يتم تمرير مؤشر إلى بنية تكوين محددة من النوع SecOC_ConfigType [SWS_SecOC_00106].
  • قيمة الإرجاع: لا تمتلك الدالة أي قيمة إرجاع (void) [SWS_SecOC_00106].

التزامن وتقسيم الذاكرة (Partitioning)

تم تحديد تنفيذ SecOC_Init بأنه غير قابل لإعادة الدخول (Non Reentrant) [SWS_SecOC_00106].

تنطبق متطلبات خاصة على الأنظمة متعددة الأقسام: إذا كانت الوحدة SecOC مخصصة لعدة أقسام (عبر توزيع الدوال الرئيسية مثل SecOC_MainFunction على الأقسام)، فيمكن أن توجد دالة Init لكل قسم [SWS_SecOC_00106]. إن توفير دالة مركزية SecOC_Init أو دوال منفصلة لكل قسم أمر خاص بالتنفيذ [SWS_SecOC_00106]. إذا قُدمت دوال خاصة بالأقسام، فيجب على التنفيذ منع تعارض الأسماء، على سبيل المثال عن طريق إلحاق لاحقة تحتوي على الاسم القصير لـ EcucPartition المعنية [SWS_SecOC_00106].

تم توليد هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR Classic R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة SecOC_DeInit [SWS_SecOC_00161] 📄 PDF

void SecOC_DeInit (void);

This service stops the secure onboard communication. All buffered I - PDU are removed and have to be obtained again, if needed, after Sec OC_ Init has been called. By a call to Sec OC_ De Init the AUTOSAR Sec OC module is put into a not in itialized state (Sec OC_ UNINIT).

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: c3c9650a2dbc المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام والدلالات

تُنهي الدالة المتزامنة SecOC_DeInit تشغيل الاتصال الآمن على متن المركبة (On-Board) في الوحدة النمطية SecOC وتنقله إلى الحالة SecOC_UNINIT [SWS_SecOC_00161]. والدالة مصرح عنها في ملف الرأس SecOC.h وتمتلك مُعرّف الخدمة 0x05 بالإضافة إلى البنية void SecOC_DeInit(void) [SWS_SecOC_00161]. وهي لا تعالج أي معلمات إدخال أو إخراج ولا تُرجع أي قيمة إرجاع [SWS_SecOC_00161].

تفريغ الذاكرة المؤقتة وانتقال الحالة

باستدعاء SecOC_DeInit، يتم التخلص من جميع وحدات I-PDU المخزنة مؤقتًا في الوحدة النمطية وإزالتها من المخازن المؤقتة [SWS_SecOC_00161]. وإذا ظلت هذه البيانات مطلوبة بعد إعادة بدء الاتصال المؤمن، فيجب الحصول عليها مرة أخرى بعد استدعاء جديد لـ SecOC_Init [SWS_SecOC_00161].

التزامن والقيود

تنطبق متطلبات وشروط حدية ثابتة على تنفيذ إلغاء التهيئة [SWS_SecOC_00161]:

  • غير قابلة لإعادة الدخول: تم تحديد الواجهة على أنها غير قابلة لإعادة الدخول (Non Reentrant)، وبالتالي لا يجوز تنفيذها بشكل متزامن [SWS_SecOC_00161].
  • شروط الترتيب: تظل الوحدة النمطية بعد الاستدعاء في حالة غير مهيأة، بحيث تتطلب خدمات الاتصال اللاحقة لزامًا استدعاءً جديدًا لـ SecOC_Init [SWS_SecOC_00161].

تم إنشاء ملاحظة الاستخدام هذه تلقائيًا استنادًا إلى مواصفة AUTOSAR Classic R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة SecOC_IfTransmit [SWS_SecOC_00112] 📄 PDF

Std_ReturnType SecOC_IfTransmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);

Requests transmission of a PDU.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 4ad6d7766599 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام

تُستخدم دالة الخدمة المتزامنة SecOC_IfTransmit لطلب إرسال PDU في الوحدة SecOC [SWS_SecOC_00112]. وتمتلك معرّف الخدمة (Service ID) 0x49 وتُصرَّح عبر ملف الرأس SecOC.h [SWS_SecOC_00112].

تتوقع الدالة معلمتي إدخال [SWS_SecOC_00112]:

  • TxPduId: معرّف الـ PDU المراد إرسالها (النوع PduIdType).
  • PduInfoPtr: مؤشر إلى بنية من النوع PduInfoType، والتي توفر طول البيانات بالإضافة إلى مؤشرات إلى بيانات الـ PDU والبيانات الوصفية.

لا توجد معلمات دخل/خرج ولا معلمات خرج فقط [SWS_SecOC_00112].

قيم الإرجاع ومعالجة الأخطاء

تُعاد كقيمة إرجاع متزامنة حالةٌ من النوع Std_ReturnType [SWS_SecOC_00112]:

في حالة الخطأ، يُشار إلى فشل الطلب مباشرةً من خلال E_NOT_OK؛ ولا يتم تحديد رموز أخطاء معينة لـ DET أو DEM بشكل منفصل في مواصفة الدالة [SWS_SecOC_00112].

التزامن والقيود

فيما يتعلق بالتزامن، فإن الدالة قابلة لإعادة الدخول (reentrant) لمعرّفات PDU مختلفة، ولكنها غير قابلة لإعادة الدخول لنفس معرّف الـ PDU [SWS_SecOC_00112].

تم إنشاء ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR.

دالة SecOC_TpTransmit [SWS_SecOC_91008] 📄 PDF

Std_ReturnType SecOC_TpTransmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);

Requests transmission of a PDU.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 4b4f6d06f1cb المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الواجهة المتزامنة SecOC_TpTransmit ذات معرّف الخدمة 0x53 لطلب إرسال PDU في الوحدة SecOC وتُصرَّح عبر ملف الرأس SecOC.h [SWS_SecOC_91008]. وتستقبل طلب الإرسال وتبدأ المعالجة الإضافية داخل الوحدة.

الاستخدام والتكامل

تتوقع الدالة كمعلمات دخل معرّف الـ PDU TxPduId بالإضافة إلى المؤشر PduInfoPtr إلى ثابت من النوع PduInfoType، والذي يتضمن بيانات حول طول الـ PDU ومؤشرات إلى بيانات الحمولة النافعة والبيانات الوصفية [SWS_SecOC_91008]. ويتحدد التفاعل الوظيفي بواسطة التكوين: إذا تم تكوين SecOCPduType على SECOC_TPPDU، فإن استدعاء SecOC_TpTransmit يُطلق عملية الإرسال الفعلية لـ Authentic I-PDU [SWS_SecOC_00253].

القيم المعادة والتزامن

تُعاد نتيجة الاستدعاء عبر Std_ReturnType: تؤكد القيمة E_OK أنه تم قبول طلب الإرسال بنجاح، بينما تعني E_NOT_OK أنه قد تم رفض الطلب [SWS_SecOC_91008]. وفيما يتعلق بسلوك التزامن، تم تنفيذ الدالة لتكون قابلة لإعادة الدخول لمعرّفات PDU مختلفة، ولكن لا يجوز بأي حال من الأحوال استدعاؤها بشكل متكرر الدخول لنفس TxPduId [SWS_SecOC_91008].

تفسير: من المرجح أن يُعزى رفض طلب باستخدام E_NOT_OK في التطبيق العملي في المقام الأول إلى قيم مؤشرات غير صالحة في PduInfoPtr أو إلى إرسال محظور بالفعل أو جارٍ لنفس الـ PDU. سؤال Q-4c6165f6330c4bc2 (مفتوح)

أُنشئت ملاحظة الاستخدام هذه آليًا بناءً على مواصفة AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة SecOC_IfCancelTransmit [SWS_SecOC_00113] 📄 PDF

Std_ReturnType SecOC_IfCancelTransmit (PduIdType TxPduId);

Requests cancellation of an ongoing transmission of a PDU in a lower layer communication module.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 93fdfc8c106e المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام وسياق الاستدعاء

تطلب دالة الواجهة المتزامنة SecOC_IfCancelTransmit إلغاء إرسال PDU جارٍ في وحدة اتصالات تابعة [SWS_SecOC_00113]. وتُصرَّح عبر ملف الرأس SecOC.h وتمتلك معرّف الخدمة 0x4a [SWS_SecOC_00113]. وعبر معلمة التمرير TxPduId من النوع PduIdType، يتم تمرير تلك الـ PDU المراد إلغاء عملية إرسالها [SWS_SecOC_00113]. ولا توجد معلمات دخل أو خرج إضافية [SWS_SecOC_00113].

قيم الإرجاع والتنفيذ

تُنقل نتيجة طلب الإلغاء بشكل متزامن عبر قيمة الإرجاع من النوع Std_ReturnType إلى المستدعي [SWS_SecOC_00113]:

  • E_OK: نفذت الوحدة الهدف التابعة إلغاء إرسال الـ PDU بنجاح [SWS_SecOC_00113].
  • E_NOT_OK: رفضت الوحدة الهدف طلب الإلغاء [SWS_SecOC_00113].

نظراً لعدم تحديد رموز أخطاء معينة أو إشعارات أخطاء لآليات تتبع أخطاء التطوير أو التشخيص (DET/DEM) لهذه الدالة، فإن قيمة الإرجاع تُستخدم حصرياً لاكتشاف الأخطاء [SWS_SecOC_00113].

التزامن والقيود

فيما يخص الاستدعاء المتوازي، فإن SecOC_IfCancelTransmit قابلة لإعادة الدخول لمعرّفات PDU مختلفة، ولكنها صراحةً غير قابلة لإعادة الدخول لنفس المعرّف TxPduId [SWS_SecOC_00113]. لذلك، يجب على الوحدات المستدعية ضمان عدم قيام عدة مثيلات في الوقت نفسه ببدء إلغاء الإرسال لنفس الـ PDU من خلال مزامنة مناسبة.

تم إنشاء ملاحظة الاستخدام هذه بصورة آلية استنادًا إلى مواصفة AUTOSAR CP R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة SecOC_TpCancelTransmit [SWS_SecOC_91009] 📄 PDF

Std_ReturnType SecOC_TpCancelTransmit (PduIdType TxPduId);

Requests cancellation of an ongoing transmission of a PDU in a lower layer communication module.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 507f9341fb59 المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الدالة المتزامنة SecOC_TpCancelTransmit لطلب إلغاء إرسال PDU جارٍ في وحدة اتصال تابعة [SWS_SecOC_91009]. تم التصريح عنها عبر ملف الرأس SecOC.h وتحمل معرّف الخدمة 0x54 [SWS_SecOC_91009].

كمعلمة إدخال، يتم تمرير المعرّف TxPduId من النوع PduIdType، والذي يحدد PDU الإرسال المراد إلغاؤها بشكل فريد [SWS_SecOC_91009]. ويتم الإبلاغ عن نتيجة طلب الإلغاء بشكل متزامن عبر قيمة الإرجاع من النوع Std_ReturnType [SWS_SecOC_91009]:

  • E_OK: تم تنفيذ إلغاء الإرسال بنجاح بواسطة الوحدة الهدف [SWS_SecOC_91009].
  • E_NOT_OK: تم رفض الإلغاء من قبل الوحدة الهدف [SWS_SecOC_91009].

فيما يتعلق بالتزامن، فإن الدالة قابلة لإعادة الدخول (reentrant) لمعرّفات PDU المختلفة، ولكنها صراحة غير قابلة لإعادة الدخول لنفس معرّف PDU [SWS_SecOC_91009]. لذلك، يجب على المتصلين التأكد من تجنب الاستدعاءات المتوازية لنفس TxPduId. ونظرًا لأن الحمولة (Payload) لا توفر رموز خطأ محددة لـ Default Error Tracer (DET) أو Diagnostic Event Manager (DEM)، فمن المرجح أن تتم معالجة الأخطاء المباشرة في سياق المتصل بشكل أساسي عبر تقييم قيمة الإرجاع E_NOT_OK [SWS_SecOC_91009]. سؤال Q-c1f907444c4ca270 (مفتوح)

تم إنشاء إشعار الاستخدام هذا تلقائيًا ويستند إلى مواصفات AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة SecOC_TpCancelReceive [SWS_SecOC_91010] 📄 PDF

Std_ReturnType SecOC_TpCancelReceive (PduIdType RxPduId);

Requests cancellation of an ongoing reception of a PDU in a lower layer transport protocol module.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 7bc4b1ba75bb المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الدالة المتزامنة SecOC_TpCancelReceive لطلب إلغاء عملية استقبال جارية لـ PDU في وحدة بروتوكول نقل تابعة [SWS_SecOC_91010]. عبر معلمة الإدخال الوحيدة RxPduId، يتم تمرير التعريف الفريد لـ PDU المراد إلغاؤها إلى الوحدة [SWS_SecOC_91010].

قيم الإرجاع والتنفيذ

يتم تقديم الإفادة حول نجاح الإلغاء مباشرة عبر قيمة الإرجاع من النوع Std_ReturnType [SWS_SecOC_91010]:

  • E_OK: تم تنفيذ إلغاء الاستقبال بنجاح بواسطة الوحدة الهدف [SWS_SecOC_91010].
  • E_NOT_OK: تم رفض الإلغاء بواسطة الوحدة الهدف [SWS_SecOC_91010].

لا تتضمن بيانات مواصفات الدالة رموز خطأ محددة، أو أخطاء تطوير (DET) أو أخطاء إنتاج (DEM). Interpretation: يُقصد بالوحدة الهدف ("destination module") المذكورة في المواصفات وحدة بروتوكول النقل التابعة التي يتم توجيه طلب الإلغاء إليها. سؤال Q-bce6ed77e65a6b9b (مفتوح)

التزامن والتكامل

فيما يتعلق بالتزامن، تم التصريح عن الدالة بأنها غير قابلة لإعادة الدخول (Non Reentrant) [SWS_SecOC_91010]. لذلك، لا يجوز إجراء استدعاء متزامن أو مقاطع؛ ويجب على وحدات البرمجيات المستدعية تنسيق عمليات الوصول وفقًا لذلك. تحمل الدالة معرّف الخدمة 0x4c ويتم التصريح عنها عبر ملف الرأس SecOC.h [SWS_SecOC_91010].

تم إنشاء إشعار الاستخدام هذا بواسطة ذكاء اصطناعي ويستند حصريًا إلى مواصفات إصدار AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة SecOC_VerifyStatusOverride [SWS_SecOC_00122] 📄 PDF

Std_ReturnType SecOC_VerifyStatusOverride (uint16 ValueID, SecOC_OverrideStatusType overrideStatus, uint8 numberOfMessagesToOverride);

Service SecOC_VerifyStatusOverride.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 87867716fd61 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تتيح الدالة المتزامنة SecOC_VerifyStatusOverride للتطبيق تجاوز سلوك التحقق وإعادة التوجيه في SecOC بشكل مستهدف، لقبول أو رفض وحدات I-PDU بشكل مستقل عن نتيجة التحقق الفعلية بالإضافة إلى التحكم في معالجة الأخطاء [SWS_SecOC_00122].

المعلمات وسياق الاستدعاء

يعتمد التوجيه على تكوين الوحدة: إذا تم ضبط SecOCOverrideStatusWithDataId على FALSE، فإن Value ID يحدد Freshness Value لجميع وحدات Secured I-PDU المرتبطة؛ وإذا كانت المعلمة مضبوطة على TRUE، فإن Value ID يشير مباشرة إلى Data ID الخاصة بوحدة Secured I-PDU [SWS_SecOC_00122]. عبر overrideStatus، يتم تحديد السلوك المطلوب وصلاحيته الزمنية. يحدد العداد numberOfMessagesToOverride عدد عمليات التحقق المتتالية المراد تجاوزها، ولكنه يُقيَّم حصرياً في الأوضاع SECOC_OVERRIDE_DROP_UNTIL_LIMIT وSECOC_OVERRIDE_SKIP_UNTIL_LIMIT وSECOC_OVERRIDE_PASS_UNTIL_LIMIT [SWS_SecOC_00122].

للأوضاع SECOC_OVERRIDE_PASS_UNTIL_NOTICE وSECOC_OVERRIDE_SKIP_UNTIL_LIMIT وSECOC_OVERRIDE_PASS_UNTIL_LIMIT وSECOC_OVERRIDE_SKIP_UNTIL_NOTICE، يجب بالضرورة تكوين SecOCEnableForcedPassOverride على TRUE [SWS_SecOC_00122].

التزامن وقيم الإرجاع

الدالة قابلة لإعادة الدخول لقيم Freshness Value ID المختلفة، ولكنها غير قابلة لإعادة الدخول لنفس Freshness Value ID [SWS_SecOC_00122]. يؤدي الاستدعاء الناجح إلى إرجاع E_OK، بينما يُقابل الاستدعاء الفاشل بـ E_NOT_OK [SWS_SecOC_00122].

التفاعل أثناء التحقق

يتدخل التجاوز (Override) المضبوط في منطق المعالجة لمسار الاستقبال:

  • إذا استُخدمت وحدات Authentic وCryptographic I-PDU منفصلة (SecOCRxSecuredPduCollection)، فإن overrideStatus يتحكم في السلوك بمجرد استلام كلا وحدتي PDU باستخدام Message Linker المطابق [SWS_SecOC_00203]، [SWS_SecOC_00206]، [SWS_SecOC_00211].
  • حتى عند تجاوز SecOCAuthenticationBuildAttempts أو SecOCAuthenticationVerifyAttempts وكذلك في حالة الأخطاء غير القابلة للإصلاح (مثل KEY_FAILURE)، فإن نتيجة التحقق وإعادة توجيه PDU تتبعان في المقام الأول overrideStatus [SWS_SecOC_00240]، [SWS_SecOC_00241].

تم إنشاء هذا النص بواسطة ذكاء اصطناعي ويستند إلى متطلبات مواصفة AUTOSAR.

دليل المنفِّذ قيد الإعداد (التعقيد I2)

دالة SecOC_SendDefaultAuthenticationInformation [SWS_SecOC_91013] 📄 PDF

Std_ReturnType SecOC_SendDefaultAuthenticationInformation (uint16 FreshnessValueID, boolean sendDefaultAuthenticationInformation);

The service provides the ability to enable the sending of un - authenticated PDU to lower layer. (example: in case authentication build counter has reached the configuration value Sec OCAuthentication Build Attempts or the query of the freshness function returns E_ NOT_ OK or the calculation of the authenticator has returned a non - recoverable error such as returning E_ NOT_ OK or KEY_ FAILURE). T his service is optional (the service is available only if Sec OCDefault Authentication Information Pattern is configured). If the service is not available or the service is available but the service was called with send Default

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 78b64ca2ff88 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام

تتيح الدالة المتزامنة SecOC_SendDefaultAuthenticationInformation ([SWS_SecOC_91013]) تمكين أو تعطيل إرسال وحدات I-PDU غير المصادق عليها إلى الطبقات الأدنى بشكل موجه. والخدمة مصرح عنها عبر SecOC.h وتتحكم عبر الراية send Default Authentication Information في السلوك لـ Freshness Value ID محددة. وعند نجاح الطلب، تُرجع الدالة E_OK، وإلا فإنها تُرجع E_NOT_OK ([SWS_SecOC_91013]).

التفاعل وسلوك الخطأ

تعد الدالة اختيارية ولا تتاح إلا عند تهيئة المعامل SecOCDefaultAuthenticationInformationPattern ([SWS_SecOC_91013]). ويسري هذا السلوك عندما يفشل إنشاء معلومات المصادقة - على سبيل المثال عند الوصول إلى العداد SecOCAuthenticationBuildAttempts، أو عندما تُرجع دالة الطراوة E_NOT_OK، أو عند إرجاع حساب المصدق خطأ غير قابل للإصلاح مثل KEY_FAILURE أو E_NOT_OK ([SWS_SecOC_91013]، [SWS_SecOC_00229]):

  • إذا تم استدعاء الخدمة بـ TRUE، تستخدم الوحدة النمط SecOCDefaultAuthenticationInformationPattern لجميع بايتات قيمة الطراوة والمصدق لبناء معلومات المصادقة، ولا تلغي طلب الإرسال ([SWS_SecOC_91013]، [SWS_SecOC_00229]).
  • إذا كانت الخدمة غير متاحة أو تم استدعاؤها للمعرف المعني بـ FALSE، تزيل الوحدة وحدة I-PDU الأصلية من مخزنها المؤقت الداخلي وتلغي الإرسال ([SWS_SecOC_91013]، [SWS_SecOC_00229]).

التزامن

الدالة غير قابلة لإعادة الدخول لنفس Freshness Value ID، ولكن يجوز استدعاؤها بشكل قابل لإعادة الدخول لمعرفات مختلفة ([SWS_SecOC_91013]).

تم توليد ملاحظة الاستخدام هذه تلقائيًا استنادًا إلى مواصفة AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة SecOC_RxIndication [SWS_SecOC_00124] 📄 PDF

void SecOC_RxIndication (PduIdType RxPduId, const PduInfoType* PduInfoPtr);

Indication of a received PDU from a lower layer communication interface module.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: f7c10da93bc2 المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام وسياق الاستدعاء

يتم استدعاء دالة الواجهة المتزامنة SecOC_RxIndication (مُعرّف الخدمة 0x42) بواسطة وحدة واجهة اتصال تابعة للإبلاغ عن استلام PDU إلى وحدة SecOC [SWS_SecOC_00124]. عند الاستدعاء، يحدد RxPduId وحدة PDU المستلمة، بينما يُمرَّر عبر PduInfoPtr مؤشر إلى معلومات PDU. تحتوي هذه البنية على طول الحمولة النافعة SduLength، ومؤشر المخزن المؤقت SduDataPtr، بالإضافة إلى البيانات الوصفية المرتبطة بـ PDU [SWS_SecOC_00124]. لا تحتوي الدالة على قيمة إرجاع وتم التصريح عنها عبر ملف الرأس SecOC.h [SWS_SecOC_00124].

معالجة الأخطاء وفحص الطول

بالنسبة لاستقبال وحدات I-PDU ذات التكوين الثابت (وحدات I-PDU المؤمنة أو الموثوقة أو التشفيرية التي يكون فيها معلمة EcuC DynamicLength مساوية لـ FALSE)، ينطبق فحص أخطاء محدد: إذا كان الطول المستلم أقل من الطول المكوَّن، تتجاهل وحدة SecOC وحدة I-PDU بصمت [SWS_SecOC_00268]. تفسير: نظراً لأن الدالة تُرجع void، فمن المرجح أن يتم تجاهل وحدات I-PDU الخاطئة أو غير المكتملة دون إرسال إشعار إلى الطبقة المستدعية. سؤال Q-6e9a176383e1983b (مفتوح)

التزامن والقيود

تنفيذ SecOC_RxIndication قابل لإعادة الدخول للاستدعاءات ذات معرفات PDU المختلفة، ولكنه صراحة غير قابل لإعادة الدخول لنفس معرّف PDU [SWS_SecOC_00124]. لذلك، يجب على الوحدات المستدعية عبر التحكم في تدفق عملياتها ضمان منع الاستدعاءات المتوازية ذات RxPduId المتطابقة.

تم إنشاء ملاحظة الاستخدام هذه تلقائياً وتستند إلى مواصفات AUTOSAR رقم R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة SecOC_TpRxIndication [SWS_SecOC_00125] 📄 PDF

void SecOC_TpRxIndication (PduIdType id, Std_ReturnType result);

Called after an I - PDU has been received via the TP API, the result indicates whether the transmission was successful or not.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 4e2c4fc6858d المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الدالة SecOC_TpRxIndication كواجهة استدعاء راجع (Callback) للوحدة النمطية SecOC ويتم استدعاؤها بعد استقبال I-PDU عبر واجهة برمجة تطبيقات بروتوكول النقل (TP API) [SWS_SecOC_00125]. ومن خلال هذا الإشعار، تعلم SecOC ما إذا كان نقل I-PDU قد اكتمل بنجاح أم حدث خطأ في النقل [SWS_SecOC_00125].

تمتلك الواجهة المعلمات والخصائص التالية وفقًا لـ [SWS_SecOC_00125]:

  • id (PduIdType): مُعرّف I-PDU المستلمة التي يتم الإشارة إلى حدث الاستقبال من أجلها.
  • result (Std_ReturnType): نتيجة استقبال PDU، والتي توضح ما إذا كان النقل ناجحًا أم فاشلاً.
  • قيمة الإرجاع: لا توجد (void)؛ لا تُرجع الدالة أي قيمة حالة إلى المُستدعي.

فيما يتعلق بالتزامن، تم تحديد SecOC_TpRxIndication على أنها قابلة لإعادة الدخول (Reentrant) وتعمل بشكل متزامن (Synchronous) تحت مُعرّف الخدمة 0x45 [SWS_SecOC_00125]. ويتم توفير التصريح عبر ملف الرأس SecOC.h [SWS_SecOC_00125]. التفسير: يُرجح أن يتم إطلاق الاستدعاء عادةً بواسطة طبقة ناقلة مثل PduR أو وحدة نمطية لـ TP، بمجرد اكتمال نقل بيانات PDU بالكامل. سؤال Q-6448356fa3609004 (مفتوح)

لم تُحدد المواصفة لهذه الدالة أي رموز أخطاء معينة، أو فحوصات DET، أو إدخالات أخطاء DEM [SWS_SecOC_00125]. وتقتصر معالجة الأخطاء على تمرير نتيجة النقل عبر المعلمة result، والتي تقرر الوحدة النمطية SecOC بناءً عليها ما إذا كانت ستتم معالجة البيانات المستلمة أو تجاهلها.

تم إنشاء ملاحظة الاستخدام هذه تلقائيًا استنادًا إلى مواصفات AUTOSAR CP R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة SecOC_TxConfirmation [SWS_SecOC_00126] 📄 PDF

void SecOC_TxConfirmation (PduIdType TxPduId, Std_ReturnType result);

The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 73c9975309da المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام وسياق الاستدعاء

تُستدعى الدالة SecOC_TxConfirmation بواسطة وحدة واجهة الاتصالات التابعة لتأكيد إرسال PDU بنجاح أو فشل إرسالها بشكل متزامن إلى الوحدة SecOC [SWS_SecOC_00126]. ولا تمتلك الخدمة أي قيمة إرجاع (void)، وهي مُصرّحة في ملف الرأس SecOC.h وتُدار تحت معرّف الخدمة 0x40 [SWS_SecOC_00126].

تتوقع الدالة معلمتي إدخال [SWS_SecOC_00126]:

  • TxPduId: معرّف الـ PDU المرسلة (النوع PduIdType).
  • result: نتيجة الإرسال (النوع Std_ReturnType) مع القيم E_OK في حالة الإرسال الناجح أو E_NOT_OK في حالة فشل الإرسال.

معالجة الأخطاء والتزامن

تُمرر أخطاء إرسال الطبقات السفلى مباشرةً عبر الوسيط result بالقيمة E_NOT_OK [SWS_SecOC_00126]. فيما يتعلق بالتزامن، فإن الاستدعاء قابل لإعادة الدخول لمعرّفات PDU مختلفة، ولكنه مُعرَّف بأنه غير قابل لإعادة الدخول لنفس معرّف الـ PDU [SWS_SecOC_00126]. ويُرجح أن يقع سياق التنفيذ الفعلي على مستوى المهمة (task level) أو مستوى المقاطعة (interrupt level) للوحدة التابعة، نظراً لأن المواصفة لا تنص على قيود في هذا الشأن. سؤال Q-8bb15b92df860fc1 (مفتوح)

التفاعل وإعادة التوجيه

إذا تم استخدام التكوين SecOCTxSecuredPduCollection، فلا تُمرر SecOC التأكيد إلى الطبقة الأعلى إلا بعد استدعاء SecOC_TxConfirmation لكلٍّ من Authentic I-PDU وCryptographic I-PDU [SWS_SecOC_00270].

ينطبق شرط صارم على حالة النتيجة للطبقة العليا: لا تكون المعلمة result للاستدعاء المُعاد توجيهه مساوية لـ E_OK إلا إذا تم تمرير التأكيدات لكلتا الـ PDUs الجزئيتين مع E_OK في كل منهما؛ وخلاف ذلك، تكون الحالة E_NOT_OK [SWS_SecOC_00270].

تم إنشاء ملاحظة الاستخدام هذه بصورة آلية بناءً على مواصفة AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة SecOC_TpTxConfirmation [SWS_SecOC_00152] 📄 PDF

void SecOC_TpTxConfirmation (PduIdType id, Std_ReturnType result);

This function is called after the I - PDU has been transmitted on its network, the result indicates whether the transmission was successful or not.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: ed0d4b6dacab المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الدالة SecOC_TpTxConfirmation لتأكيد I-PDU تم إرسالها عبر الشبكة وتبلغ وحدة SecOC بشكل متزامن بنجاح عملية الإرسال أو فشلها [SWS_SecOC_00152].

الاستخدام والمعلمات

يتم الاستدعاء بعد الإرسال الفيزيائي لـ I-PDU على الشبكة [SWS_SecOC_00152]. وتُصرَّح الواجهة في الرأس SecOC.h وتمتلك معرّف الخدمة 0x48 [SWS_SecOC_00152]. وتستقبل معلمتي دخل ولا ترجع أي قيمة (void):

  • id (النوع PduIdType): تمييز فريد لـ I-PDU المنقولة [SWS_SecOC_00152].
  • result (النوع Std_ReturnType): يحدد ما إذا كان الإرسال على الشبكة ناجحاً أم فاشلاً [SWS_SecOC_00152].

التزامن والتنفيذ

وفقاً للمواصفة، يجب تنفيذ الدالة بشكل متزامن وهي قابلة لإعادة الدخول بالكامل (Reentrant) [SWS_SecOC_00152]. وبالتالي يمكن استدعاؤها على التوازي لمعرّفات I-PDUs مختلفة أو لنفس معرّف الـ I-PDU، طالما أن سياق الاستدعاء يتطلب ذلك.

معالجة الأخطاء والتفاعل

لا يتم الإفصاح عن رموز أخطاء DET أو DEM محددة في حمولة البيانات (payload). وتتم معالجة الأخطاء المتعلقة بالإرسال في المقام الأول عبر معلمة الحالة الممررة result، والتي تُعلم الوحدة بما إذا كانت عملية الإرسال قد نجحت [SWS_SecOC_00152]. تفسير: يُرجح أن الدالة تعمل أساساً كواجهة رد نداء (callback interface) لمثيلات بروتوكول النقل التابعة، وذلك للإبلاغ عن حالة الإرسال بعد إتمام عمليات الإرسال الكبيرة أو المجزأة. سؤال Q-a2957406d76ee65f (مفتوح)

تم إعداد ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي وتُلخّص المتطلبات الواردة في مواصفة AUTOSAR للوحدة SecOC.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة SecOC_TriggerTransmit [SWS_SecOC_00127] 📄 PDF

Std_ReturnType SecOC_TriggerTransmit (PduIdType TxPduId, PduInfoType* PduInfoPtr);

Within this API , the upper layer module (called module) shall check whether the available data fits into the buffer size reported by Pdu Info Ptr - >Sdu Length. If it fits, it shall copy its data into the buffer provided by Pdu Info Ptr - >Sdu Data Ptr and update the length of the actual copied data in Pdu Info Ptr - >Sdu Length. If not, it returns E_ NOT_ OK without changing Pdu Info Ptr.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: da47edaa7d8f المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الواجهة المتزامنة SecOC_TriggerTransmit لنسخ SDU المطلوبة للإرسال [SWS_SecOC_00127]. عبر المعلمة TxPduId يتم تحديد SDU، بينما توفر PduInfoPtr كمعلمة إدخال وإخراج المؤشر إلى المخزن المؤقت للوجهة (SduDataPtr) بالإضافة إلى بيانات حجم المخزن المؤقت (SduLength) [SWS_SecOC_00127].

الاستخدام وتمرير البيانات

داخل الدالة، تتحقق الوحدة مما إذا كانت البيانات المراد توفيرها تتناسب مع حجم المخزن المؤقت المُبلغ عنه عبر PduInfoPtr->SduLength [SWS_SecOC_00127]:

  • إذا كانت البيانات تتسع، تقوم الدالة بنسخها إلى المخزن المؤقت PduInfoPtr->SduDataPtr، وتُسجل العدد الفعلي للبايتات المنسوخة في PduInfoPtr->SduLength، وتُرجع E_OK [SWS_SecOC_00127].
  • إذا لم تكن المساحة كافية، تُرجع الدالة E_NOT_OK دون تغيير محتوى PduInfoPtr [SWS_SecOC_00127].

معالجة الأخطاء والتزامن

إذا تم إرجاع E_NOT_OK، فلن يتم نسخ أي بيانات SDU. في هذه الحالة، لا يجوز للمستدعي تقييم أو استخدام PduInfoPtr، حيث قد يحتوي على مؤشر NULL أو يشير إلى بيانات غير صالحة [SWS_SecOC_00127]. الدالة قابلة لإعادة الدخول لمعرفات PDU المختلفة، ولكنها غير قابلة لإعادة الدخول لنفس TxPduId [SWS_SecOC_00127]. الخدمة متاحة عبر ملف الرأس SecOC.h [SWS_SecOC_00127].

تم إنشاء ملاحظة الاستخدام هذه تلقائياً استناداً إلى مواصفات AUTOSAR Classic Platform الإصدار R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة SecOC_CopyRxData [SWS_SecOC_00128] 📄 PDF

BufReq_ReturnType SecOC_CopyRxData (PduIdType id, const PduInfoType* info, PduLengthType* bufferSizePtr);

This function is called to provide the received data of an I - PDU segment (N - PDU) to the upper layer. Each call to this function provides the next part of the I - PDU data. The si ze of the remaining buffer is written to the position indicated by buffer Size Ptr.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 35610f4482a7 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام والدلالات

يتم استدعاء الدالة المتزامنة SecOC_CopyRxData لتمرير البيانات المستلمة لمقطع I-PDU (N-PDU) إلى الطبقة العليا [SWS_SecOC_00128]. يوفر كل استدعاء الجزء التالي من بيانات I-PDU [SWS_SecOC_00128]. الخدمة لها مُعرّف الخدمة 0x44 ومتاحة عبر ملف الرأس SecOC.h [SWS_SecOC_00128].

المعاملات والاستعلام عن المخزن المؤقت

تحدد المعلمة id وحدة I-PDU المستلمة بشكل فريد [SWS_SecOC_00128]. عبر المؤشر info، يتم توفير مخزن المصدر المؤقت SduDataPtr وعدد البايتات المطلوب نسخها SduLength [SWS_SecOC_00128]. يؤدي تمرير SduLength بالقيمة 0 إلى الاستعلام عن مخزن الاستقبال المؤقت المتاح حالياً في الوحدة العليا؛ وفي هذه الحالة يجوز تمرير SduDataPtr كـ NULL_PTR [SWS_SecOC_00128]. بعد النسخ، تتم كتابة حجم المخزن المؤقت المتبقي في الموقع المشار إليه بواسطة bufferSizePtr [SWS_SecOC_00128].

القيم المعادة والتزامن

تُرجع الدالة الحالة BufReq_ReturnType [SWS_SecOC_00128]. في حالة النقل الناجح للبيانات، تُبلّغ عن BUFREQ_OK [SWS_SecOC_00128]. في حال حدوث خطأ، لا يتم نسخ أي بيانات وتُرجع الدالة BUFREQ_E_NOT_OK [SWS_SecOC_00128]. تم تحديد SecOC_CopyRxData بأنها قابلة لإعادة الدخول [SWS_SecOC_00128].

تم إنشاء ملاحظة الاستخدام هذه تلقائيًا استنادًا إلى مواصفات AUTOSAR CP R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة SecOC_CopyTxData [SWS_SecOC_00129] 📄 PDF

BufReq_ReturnType SecOC_CopyTxData (PduIdType id, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);

Service SecOC_CopyTxData.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 42779c9fb9b6 المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام والدلالات

يتم استدعاء الدالة المتزامنة والقابلة لإعادة الدخول SecOC_CopyTxData لجلب بيانات الإرسال لمقطع I-PDU (N-PDU) [SWS_SecOC_00129]. عبر المعلمة info، يتم تمرير المخزن المؤقت للوجهة SduDataPtr وكمية البايتات المطلوبة SduLength [SWS_SecOC_00129]. يتيح الاستدعاء مع ضبط SduLength على 0 الاستعلام عن كمية البيانات المتاحة أو الإبلاغ عن تغييرات الحالة عبر المعلمة retry؛ في هذه الحالة يجوز أن يكون SduDataPtr هو NULL_PTR [SWS_SecOC_00129]. عبر availableDataPtr، تبلّغ الوحدة عن كمية البيانات المتبقية في مخزن الإرسال المؤقت [SWS_SecOC_00129].

إعادة المحاولة ومعالجة الأخطاء

يتم التحكم في سلوك التخزين المؤقت وإعادة المحاولة عبر retry [SWS_SecOC_00129]:

  • إذا كان retry عبارة عن NULL_PTR، فيجوز تحرير البيانات المنسوخة على الفور [SWS_SecOC_00129].
  • مع TP_CONFPENDING، تظل البيانات المنسوخة مسبقاً في المخزن المؤقت لمعالجة الأخطاء [SWS_SecOC_00129].
  • يؤكد TP_DATACONF جميع البيانات المنقولة قبل هذا الاستدعاء لتحرير المخزن المؤقت [SWS_SecOC_00129].
  • يتسبب TP_DATARETRY في إعادة نسخ البيانات المنقولة بالفعل بدءاً من إزاحة البايت المحددة بواسطة TxTpDataCnt [SWS_SecOC_00129].

كقيم إرجاع، تُرجع الدالة BUFREQ_OK عند نجاح عملية النسخ، وBUFREQ_E_BUSY إذا لم تكن هناك بيانات إرسال كافية متاحة مؤقتاً (مما يتيح للمستدعي إعادة المحاولة لاحقاً)، أو BUFREQ_E_NOT_OK في حالة الفشل العام [SWS_SecOC_00129].

التزامن

تم تصميم الدالة لتكون قابلة لإعادة الدخول، بحيث يُرجح أن تكون الاستدعاءات المتوازية لمثيلات PDU المختلفة مسموحاً بها [SWS_SecOC_00129]. سؤال Q-6420f2ca317efcb4 (مفتوح)

تم إنشاء ملاحظة الاستخدام هذه تلقائيًا بناءً على المواصفة.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة SecOC_StartReception [SWS_SecOC_00130] 📄 PDF

BufReq_ReturnType SecOC_StartOfReception (PduIdType id, const PduInfoType* info, PduLengthType TpSduLength, PduLengthType* bufferSizePtr);

Service SecOC_StartReception.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: e711d8ef8bcc المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام

يتم استدعاء الدالة المتزامنة والقابلة لإعادة الدخول SecOC_StartReception في بداية استقبال N-SDU للتحقق من الاتصال وتوفير مخزن الاستقبال المؤقت اللازم [SWS_SecOC_00130]. يمكن استقبال N-SDU كإطار مفرد (Single Frame, SF) أو مجزأة عبر عدة وحدات N-PDU (First Frame, FF، يليه Consecutive Frames, CF) [SWS_SecOC_00130]. التصريح متاح عبر ملف الرأس SecOC.h [SWS_SecOC_00130].

المعاملات والاستعلام عن المخزن المؤقت

  • id: تعريف وحدة I-PDU المستلمة [SWS_SecOC_00130].
  • info: مؤشر إلى بنية PduInfoType تحتوي على البيانات النافعة للإطار الأول أو المفرد بالإضافة إلى البيانات الوصفية؛ وإذا لم تكن هناك بيانات أو بيانات وصفية متاحة، فسيتم تمرير NULL_PTR [SWS_SecOC_00130].
  • TpSduLength: الطول الإجمالي لـ N-SDU المراد استقبالها. إذا تم تمرير المعلمة بالقيمة 0، تُرجع الخدمة حجم المخزن المؤقت الأقصى المتاح حاليًا [SWS_SecOC_00130].
  • bufferSizePtr: معلمة مخرجات للمخزن المؤقت المتاح للاستقبال، والتي تُستخدم بواسطة وحدة بروتوكول النقل لحساب Block Size (BS) [SWS_SecOC_00130].

قيم الإرجاع ومعالجة الأخطاء

  • BUFREQ_OK: تم قبول الاتصال وتتواصل عملية الاستقبال؛ يشير bufferSizePtr إلى حجم المخزن المؤقت المتاح (إذا لم يتوفر مخزن مؤقت بالحجم المطلوب، يتم الإبلاغ عن 0) [SWS_SecOC_00130].
  • BUFREQ_E_NOT_OK: تم رفض الاتصال ويتم إلغاء الاستقبال؛ يظل bufferSizePtr دون تغيير [SWS_SecOC_00130].
  • BUFREQ_E_OVFL: لا يمكن توفير مخزن مؤقت بالطول المطلوب؛ يتوقف الاستقبال ويظل bufferSizePtr دون تغيير [SWS_SecOC_00130].

تم إنشاء ملاحظة الاستخدام هذه آليًا استنادًا إلى AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة SecOC_GetRxFreshness [SWS_SecOC_91007] 📄 PDF

Std_ReturnType SecOC_GetRxFreshness (uint16 SecOCFreshnessValueID, const uint8* SecOCTruncatedFreshnessValue, uint32 SecOCTruncatedFreshnessValueLength, uint16 SecOCAuthVerifyAttempts, uint8* SecOCFreshnessValue, uint32* SecOCFreshnessValueLength);

Service SecOC_GetRxFreshness.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: ef974f5cced3 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم دالة الواجهة المتزامنة SecOC_GetRxFreshness بواسطة الوحدة SecOC للاستعلام عن قيمة Freshness الحالية لـ I-PDU آمنة مستلمة [SWS_SecOC_91007]. يتم الاستدعاء بمجرد استلام PDU الآمنة بالكامل وتحديد SecOCQueryFreshnessValue == CFUNC وكذلك SecOCUseAuthDataFreshness == FALSE لتكوينها [SWS_SecOC_00247]، [SWS_SecOC_00250].

الدالة قابلة لإعادة الدخول (reentrant) [SWS_SecOC_91007] وتمرر أو تتوقع المعلمات التالية:

  • SecOCFreshnessValueID: معرّف قيمة Freshness المراد الاستعلام عنها [SWS_SecOC_91007].
  • SecOCTruncatedFreshnessValue وSecOCTruncatedFreshnessValueLength: مؤشر إلى قيمة Freshness المقتطعة المضمنة في PDU المستلمة وطولها بالبتات [SWS_SecOC_91007].
  • SecOCAuthVerifyAttempts: عدد محاولات التحقق السابقة منذ استلام PDU (يبدأ من 0، وتتم زيادته عند كل محاولة فاشلة) [SWS_SecOC_91007].
  • SecOCFreshnessValue وSecOCFreshnessValueLength: مخزن مؤقت للمخرجات لقيمة Freshness المحددة بالإضافة إلى معلمة إدخال/إخراج لطولها بالبتات [SWS_SecOC_91007].

تتحكم نتيجة الاستعلام في المعالجة اللاحقة في SecOC:

  • E_OK: تم توفير قيمة Freshness بنجاح وتُستخدم لحساب مصادق الهوية (Authenticator) [SWS_SecOC_91007].
  • E_NOT_OK: فشل التوفير بسبب مشكلات عامة أو معرّف Freshness خاطئ [SWS_SecOC_91007].
  • E_BUSY: المعلومة غير متاحة مؤقتًا [SWS_SecOC_91007]. في هذه الحالة، تزيد SecOC من Authentication-Build-Counter ولا تجري أي محاولة للتحقق من المصادقة [SWS_SecOC_00236].

تم إنشاء ملاحظة الاستخدام هذه تلقائيًا بناءً على مواصفة AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I2)

دالة SecOC_GetRxFreshnessAuthData [SWS_SecOC_91006] 📄 PDF

Std_ReturnType SecOC_GetRxFreshnessAuthData (uint16 SecOCFreshnessValueID, const uint8* SecOCTruncatedFreshnessValue, uint32 SecOCTruncatedFreshnessValueLength, const uint8* SecOCAuthDataFreshnessValue, uint16 SecOCAuthDataFreshnessValueLength, uint16 SecOCAuthVerifyAttempts, uint8* SecOCFreshnessValue, uint32* SecOCFreshnessValueLength);

Service SecOC_GetRxFreshnessAuthData.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 21909ecce4eb المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تستدعي وحدة SecOC الدالة المتزامنة وقابلة لإعادة الدخول SecOC_GetRxFreshnessAuthData لتحديد قيمة الطراوة الحالية للمصادقة عند استلام وحدات I-PDU المؤمنة بالكامل ([SWS_SecOC_91006]، [SWS_SecOC_00246]). ويتم الاستدعاء تحديداً عندما يتم تعيين المعلمات SecOCQueryFreshnessValue = CFUNC وكذلك SecOCUseAuthDataFreshness = TRUE لتكوين PDU المعني ([SWS_SecOC_00246]، [SWS_SecOC_00249]).

المعاملات والقيم الممررة

  • بيانات الدخل: يتم تمرير المعرّف SecOCFreshnessValueID، وقيمة الطراوة المختصرة المضمنة في I-PDU SecOCTruncatedFreshnessValue مع طول البتات SecOCTruncatedFreshnessValueLength، بالإضافة إلى العداد SecOCAuthVerifyAttempts الذي تتم زيادته في حالة المحاولات الفاشلة ([SWS_SecOC_91006]).
  • بيانات المصادقة: يتم اختيارياً عبر SecOCAuthDataFreshnessValue وSecOCAuthDataFreshnessValueLength تمرير مقطع مُهيأ من PDU المستلمة؛ ويتم تحديد موضع البدء والطول بواسطة SecOCAuthDataFreshnessStartPosition وSecOCAuthDataFreshnessLen ([SWS_SecOC_91006]، [SWS_SecOC_00246]).
  • بيانات النتيجة: يتم توفير قيمة الطراوة الكاملة عبر مخزن الإخراج المؤقت SecOCFreshnessValue، والذي يعمل طول البتات الخاص به كمعامل إدخال/إخراج SecOCFreshnessValueLength ([SWS_SecOC_91006]).

قيم الإرجاع ومعالجة الأخطاء

تشير الدالة إلى نجاح الاستعلام باستخدام E_OK ([SWS_SecOC_91006]). وإذا تعذر توفير قيمة الطراوة بسبب مشاكل عامة أو معرف طراوة غير صالح، فإنها تُرجع E_NOT_OK؛ وفي حالة عدم التوفر المؤقت، فإنها تُرجع E_BUSY ([SWS_SecOC_91006]). تفسير: نظراً لأن الدالة متصلة كدالة C عبر CFUNC، فمن المحتمل أن يتم التنفيذ بواسطة وحدة خارجية لإدارة الطراوة. سؤال Q-01aa77b7235b9001 (مفتوح)

تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة SecOC_GetTxFreshness [SWS_SecOC_91004] 📄 PDF

Std_ReturnType SecOC_GetTxFreshness (uint16 SecOCFreshnessValueID, uint8* SecOCFreshnessValue, uint32* SecOCFreshnessValueLength);

This API returns th e freshness value from the Most Significant Bits in the first byte in the array (Sec OCFreshness Value), in big endian format.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: dd021d2527b1 المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم الدالة المتزامنة والقابلة لإعادة الدخول SecOC_GetTxFreshness لتوفير قيمة الحداثة الحالية للرسائل المراد إرسالها، وهي مُصرّحة عبر الرأس SecOC.h [SWS_SecOC_91004]. ووفقاً لـ [SWS_SecOC_00231]، تستدعي وحدة SecOC هذه الدالة لـ PDU معينة إذا تم ضبط SecOCQueryFreshnessValue = CFUNC وSecOCProvideTxTruncatedFreshnessValue = FALSE في التكوين. تفسير: نظراً لأن SecOC تنفذ الاستدعاء عند وجود التكوين المناسب، فيُرجح أنه يجب توفير الدالة كاستدعاء خارجي (callout) بواسطة مكوّن خارجي. سؤال Q-99a14f896ffddf5f (مفتوح)

تستخدم الواجهة المعلمات التالية [SWS_SecOC_91004]:

  • SecOCFreshnessValueID (دخل): معرّف رقمي لقيمة الحداثة المطلوبة.
  • SecOCFreshnessValueLength (دخل/خرج): يمرر أو يستلم طول البتات لقيمة الحداثة المقدمة.
  • SecOCFreshnessValue (خرج): مؤشر إلى مصفوفة بايتات لاستيعاب قيمة الحداثة بصيغة الطرفية الكبيرة (Big-Endian)، بدءاً من البتات الأكثر أهمية في البايت الأول.

تشير قيمة الإرجاع من النوع Std_ReturnType إلى نتيجة التوفير [SWS_SecOC_91004]:

  • E_OK: تم توفير قيمة الحداثة بنجاح.
  • E_BUSY: يتعذر تقديم معلومات الحداثة مؤقتاً.
  • E_NOT_OK: فشل الطلب، نظراً لتعذر تحديد قيمة للمعك المعرّف (ID) أو بشكل عام.

تم إنشاء ملاحظة الاستخدام هذه آلياً وتستند حصرياً إلى مواصفات إصدار AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة SecOC_GetTxFreshnessTruncData [SWS_SecOC_91003] 📄 PDF

Std_ReturnType SecOC_GetTxFreshnessTruncData (uint16 SecOCFreshnessValueID, uint8* SecOCFreshnessValue, uint32* SecOCFreshnessValueLength, uint8* SecOCTruncatedFreshnessValue, uint32* SecOCTruncatedFreshnessValueLength);

Service SecOC_GetTxFreshnessTruncData.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 2ae3128a39ae المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

يتم استدعاء الدالة المتزامنة وقابلة لإعادة الدخول (reentrant) SecOC_GetTxFreshnessTruncData بواسطة الوحدة SecOC للاستعلام في عمليات الإرسال (TX) عن كل من قيمة Freshness الكاملة وقيمة Freshness المقتطعة (Truncated Freshness) لـ Secured I-PDU المراد نقلها [SWS_SecOC_91003]. يتم الاستدعاء تحديدًا عندما يتم تعيين SecOCQueryFreshnessValue = CFUNC وكذلك SecOCProvideTxTruncatedFreshnessValue = TRUE لتكوين PDU [SWS_SecOC_00230].

تمرر الواجهة المعلمات التالية [SWS_SecOC_91003]:

  • SecOCFreshnessValueID (in): معرّف قيمة Freshness المطلوبة.
  • SecOCFreshnessValue (out): مخزن مؤقت للوجهة لقيمة Freshness الكاملة الحالية.
  • SecOCFreshnessValueLength (inout): يحدد طول قيمة الحداثة المقدمة بالبتات.
  • SecOCTruncatedFreshnessValue (out): مخزن مؤقت اختياري لقيمة Freshness المقتطعة التي يتم تضمينها في Secured I-PDU.
  • SecOCTruncatedFreshnessValueLength (inout): يمرر الطول المكوَّن لقيمة Freshness المقتطعة؛ ويمكن تعديل القيمة بواسطة الدالة عند الحاجة أو الإبقاء عليها دون تغيير.

كقيمة إرجاع، تُرجع الدالة E_OK عند التوفير بنجاح، أو E_BUSY إذا كانت المعلومة غير متاحة مؤقتًا، أو E_NOT_OK إذا فشل التوفير بسبب مشكلات عامة أو على وجه التحديد للمعرّف ID الممرر [SWS_SecOC_91003]. التصريح متاح عبر ملف الرأس SecOC.h [SWS_SecOC_91003].

تم إنشاء إشعار الاستخدام هذا بواسطة مساعد تنسيق بالذكاء الاصطناعي استنادًا إلى بيانات المواصفات من AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة SecOC_SPduTxConfirmation [SWS_SecOC_91005] 📄 PDF

void SecOC_SPduTxConfirmation (uint16 SecOCFreshnessValueID);

This interface is used by the Sec OC to indicate that the Secured I - PDU has been initiated for transmission.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 802cf05f792c المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام

تُستخدم واجهة الدالة المتزامنة SecOC_SPduTxConfirmation بواسطة الوحدة SecOC للإشارة إلى أنه قد تم بدء إرسال I-PDU مؤمّنة (Secured I-PDU) [SWS_SecOC_91005]. والدالة مُصرّحة في ملف الرأس SecOC.h ولا تمتلك أي قيمة إرجاع (void) [SWS_SecOC_91005].

يتم تمرير SecOCFreshnessValueID كمعلمة التمرير الوحيدة كقيمة دخل (in) من النوع uint16 [SWS_SecOC_91005]. وتَنقل هذه المعلمة معرّف قيمة الحداثة الخاصة بالـ I-PDU المعنية [SWS_SecOC_91005]. ولا توجد معلمات دخل أو خرج أو تمرير (inout/out) أخرى في الواجهة [SWS_SecOC_91005].

التزامن والخصائص

تمتلك الواجهة معرّف الخدمة 0x4d، وتعمل بشكل متزامن، ومصممة لتكون قابلة لإعادة الدخول بالكامل [SWS_SecOC_91005]. وتسمح خاصية إعادة الدخول بالاستدعاء المتوازي في سياقات تنفيذ متزامنة [SWS_SecOC_91005]. ولا تنص مواصفة الواجهة على رسائل خطأ عبر DET أو DEM أو رموز أخطاء خاصة [SWS_SecOC_91005].

تفسير: نظراً لأن SecOC تستدعي هذه الدالة للإبلاغ عن بدء إرسال الـ PDU، ولا تمرر سوى SecOCFreshnessValueID، فيُرجح أن الاستدعاء يُستخدم لتحديث عداد الحداثة أو تأكيده في مكوّن خارجي [SWS_SecOC_91005]. سؤال Q-f234a3c6e9b16362 (مفتوح)

تم إنشاء ملاحظة الاستخدام هذه آلياً وتستند حصرياً إلى بيانات المواصفة من AUTOSAR CP R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة SecOC_MainFunctionRx [SWS_SecOC_00171] 📄 PDF

void SecOC_MainFunctionRx (void);

This function performs the processing of the Sec OC module's authentication and verification processing for the Rx path. Per configured Sec OCMain Function Rx instance one Sec OC_ Main Function Rx_ shall be implemented. Hereby is the short name of the Sec OCMain Function Rx configuration container in the ECU configuration.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 03542d899cdb المصدر أسئلة مفتوحة (3)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام وسياق الاستدعاء

تتولى الدالة SecOC_MainFunctionRx معالجة المصادقة والتحقق المركزية للوحدة SecOC للرسائل الواردة في مسار الاستقبال [SWS_SecOC_00171]. وفقًا لمواصفات واجهتها، تمتلك الدالة التوقيع void SecOC_MainFunctionRx (void)، وتتضمن معرّف الخدمة 0x06، ولا تتوقع أي معلمات تمرير ولا تُرجع أي قيمة إرجاع [SWS_SecOC_00171]. ويتم التصريح عنها عبر ملف الرأس SchM_SecOC.h [SWS_SecOC_00171]؛ ويمكن استنتاج (Interpretation) أن استدعاءها يتم دوريًا بواسطة مجدول BSW في سياق مهمة نظام تشغيل. سؤال Q-d24cb58f541f6674 (مفتوح)

التثبيت والتكوين

في تكوينات النظام التي تحتوي على عدة مثيلات استقبال، يتم تنفيذ مثيل دالة خاص لكل حاوية SecOCMainFunctionRx تم تكوينها وفقًا للمخطط SecOC_MainFunctionRx_<shortName> [SWS_SecOC_00171]. وفي هذا الإطار، يتوافق <shortName> مع الاسم المختصر للحاوية المحدد في نموذج تكوين ECU [SWS_SecOC_00171]. يتيح هذا على الأرجح تحكمًا زمنيًا منفصلاً أو تحديد أولويات لمسارات معالجة Rx المختلفة. سؤال Q-ebb55c5d3a3da97d (مفتوح)

معالجة الأخطاء والتزامن

لا توجد قيم إرجاع محددة أو رموز خطأ صريحة موثقة لـ DET أو DEM بالنسبة لـ SecOC_MainFunctionRx في المتطلبات [SWS_SecOC_00171]. وبالتالي، يُرجح أن تتم معالجة حالات الخطأ أو عمليات التحقق الفاشلة داخليًا فقط والإبلاغ عنها بشكل غير متزامن عبر مسار الاستقبال إلى الوحدات الأعلى. سؤال Q-5d1e45f7a779bea9 (مفتوح)

تم إنشاء هذا النص بواسطة ذكاء اصطناعي وهو مخصص للإرشاد فقط. المرجع المعتمد دائمًا هو مواصفة AUTOSAR الرسمية.

دالة SecOC_MainFunctionTx [SWS_SecOC_00176] 📄 PDF

void SecOC_MainFunctionTx (void);

This function performs the processing of the Sec OC module's authentication and verification processing for the Tx path. Per configured Sec OCMain Function Tx instance one Sec OC_ Main Function Tx_ shall be implemented. Hereby is t he short name of the Sec OCMain Function Tx configuration container in the ECU configuration.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 0a9d6b2d7e1e المصدر أسئلة مفتوحة (2)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام وسياق الاستدعاء

تتولى الدالة الرئيسية SecOC_MainFunctionTx وفقاً لـ [SWS_SecOC_00176] معالجة المصادقة والتحقق لوحدة SecOC في مسار الإرسال (مسار Tx). وهي تمتلك التوقيع void SecOC_MainFunctionTx(void)، وبالتالي لا تقبل أي معاملات ممررة ولا تُرجع أي قيمة إرجاع؛ وقد تم تعيين معرف الخدمة (Service ID) 0x03 لها [SWS_SecOC_00176]. ويتم توفير التصريح عبر ملف الترويسة SchM_SecOC.h [SWS_SecOC_00176]. تفسير: نظراً لأن التكامل يتم عبر مدير الجدولة (Schedule Manager)، فمن المرجح عادةً أن يحدث الاستدعاء دورياً بواسطة مجدول BSW في سياق مهمة نظام التشغيل (OS Task). سؤال Q-34b30208648c8e30 (مفتوح)

إنشاء النسخ وتسمية الاصطلاحات

تنص المواصفة على تطبيق خاص بالنسخة للتكوينات المتعددة: لكل حاوية نسخة مُكوّنة SecOCMainFunctionTx في تكوين ECU، يجب تنفيذ دالة واحدة بالضبط وفقاً لمخطط التسمية SecOC_MainFunctionTx_<shortName>، حيث يطابق <shortName> الاسم المختصر لحاوية التكوين المعنية [SWS_SecOC_00176].

القيود ومعالجة الأخطاء

لم يتم إدراج رموز أخطاء محددة، أو استجابات DET أو DEM، بالإضافة إلى تفاصيل حول إمكانية إعادة الدخول (Reentrancy) بشكل منفصل في عنصر المواصفة [SWS_SecOC_00176]. تفسير: نظراً للاقتران بحاويات التكوين الخاصة بالنسخة، فمن المحتمل أن تكون كل نسخة منشأة مسؤولة عن مجموعة فرعية معزولة من معالجات Tx-PDU، وينبغي ألا تُقاطع وفقاً للجدول الزمني بشكل متزامن بواسطة سياق المهمة نفسه. سؤال (مفتوح)

تم إنشاء إشعار الاستخدام هذا آلياً بواسطة مساعد تنظيم ذكاء اصطناعي بناءً على مواصفة AUTOSAR R20-11.

دالة SecOC_VerificationStatusCallout [SWS_SecOC_00119] 📄 PDF

void SecOC_VerificationStatusCallout (SecOC_VerificationStatusType verificationStatus);

Service is used to propagate the status of each verification attempt from the Sec OC module to other modules. This service can be configured such that:  Only: "False" Verifica tion Status is propagated to modules  Both: "True" and "False" Verification Status are propagated to modules  None: No Verification Status is propagated

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: a7aa9530a7de المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

تُستخدم دالة رد النداء (Callout) المتزامنة SecOC_VerificationStatusCallout لتمرير حالة محاولات التحقق من وحدة SecOC إلى وحدات البرمجيات الخارجية [SWS_SecOC_00119]. تم التصريح عنها عبر ملف الرأس SecOC_Externals.h ولديها مُعرّف الخدمة 0x50 [SWS_SecOC_00119]. عبر معلمة الإدخال verificationStatus (من النوع SecOC_VerificationStatusType) يتم تمرير بنية بيانات تجمع نتيجة التحقق لـ Freshness Value ID وData ID محددين [SWS_SecOC_00119]. لا تحتوي الدالة على معلمات إخراج ولا قيمة إرجاع (نوع الإرجاع void) [SWS_SecOC_00119].

سلوك إعادة توجيه الحالة قابل للتكوين ويدعم ثلاث حالات [SWS_SecOC_00119]:

  • Only: يتم نشر محاولات التحقق الفاشلة فقط («False»).
  • Both: يتم تمرير كل من حالات التحقق الناجحة («True») والفاشلة («False») إلى الوحدات.
  • None: لا يتم تمرير أي حالة تحقق.

فيما يتعلق بالتزامن، تُعد SecOC_VerificationStatusCallout قابلة لإعادة الدخول لقيم Freshness Value ID المختلفة، لكنها غير قابلة لإعادة الدخول لنفس Freshness Value ID [SWS_SecOC_00119]. لذلك، يجب على الوحدات المُنفِّذة ضمان عدم حدوث استدعاءات متزامنة عند تطابق Freshness Value ID. من المرجح أن يكون سياق الاستدعاء متزامناً ضمن روتين التحقق الداخلي لوحدة SecOC. سؤال Q-cd6928ca22d48f54 (مفتوح) لا توجد رموز أخطاء محددة أو بلاغات إلى DET وDEM معرفة لرد النداء هذا [SWS_SecOC_00119].

تم إنشاء ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي وتستند حصرياً إلى بيانات مواصفات إصدار AUTOSAR رقم R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

دالة SecOC_VerifyStatus [SWS_SecOC_91014] 📄 PDF

void SecOC_VerifyStatus (SecOC_VerificationStatusType verificationStatus);

This s ervice provides the ability to inform the application about the result of the verification attempt of a received PDU by the Sec OC module.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 40383ff847fc المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

الاستخدام والدلالات

تُعلم الدالة المتزامنة SecOC_VerifyStatus التطبيق بنتيجة محاولة التحقق من صحة PDU مستلمة بواسطة وحدة SecOC [SWS_SecOC_91014]. وتمتلك الواجهة معرف الخدمة 0x53، ولا تُرجع أي قيمة (void)، وتُتاح عبر ملف الترويسة SecOC_Externals.h [SWS_SecOC_91014].

المعلمات

يعمل معامل الإدخال الوحيد verificationStatus من النوع SecOC_VerificationStatusType كمعامل ممرر [SWS_SecOC_91014]. ويوفر هذا الهيكل تفاصيل حول حالة التحقق بالإضافة إلى معلومات حول Data-ID وFreshness-Value-ID التي تم إجراء التحقق من أجلها [SWS_SecOC_91014]. ولا توجد معاملات إدخال أو إخراج إضافية [SWS_SecOC_91014].

معالجة الأخطاء والتزامن

لم يتم تحديد رموز أخطاء معينة أو إشعارات إلى DET أو DEM لهذه الخدمة [SWS_SecOC_91014]. تفسير: من المرجح إبلاغ التطبيق بعمليات التحقق الفاشلة في المقام الأول عبر قيم الحالة داخل الهيكل الممرر verificationStatus. سؤال Q-177be3d746f99b24 (مفتوح) وفيما يتعلق بالتزامن، فإن SecOC_VerifyStatus غير قابلة لإعادة الدخول لنفس Freshness-Value-ID، ولكنها قابلة لإعادة الدخول لـ Freshness-Value-ID مختلفة [SWS_SecOC_91014].

تم إنشاء هذا النص بواسطة ذكاء اصطناعي وهو مخصص كدليل إرشادي. والمستند المرجعي الملزم هو مواصفة AUTOSAR.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

نوع SecOC_StateType [SWS_SecOC_00162] 📄 PDF

States of the Sec OC module

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 9d4be727e8c2 المصدر أسئلة مفتوحة (2)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

يُستخدم نوع التعداد SecOC_StateType للتمثيل الرسمي لحالات التشغيل الداخلية لوحدة SecOC ويتم توفيره عبر ملف الترويسة SecOC.h [SWS_SecOC_00162]. وهو يتيح إدارة متسقة للحالة عبر دورة حياة مكون البرمجيات بأكملها.

وفقاً للمواصفة، يشتمل نطاق قيم نوع التعداد هذا على حالتين منفصلتين بالضبط [SWS_SecOC_00162]:

  • SECOC_UNINIT: يشير بوضوح إلى أن وحدة SecOC غير مهيأة [SWS_SecOC_00162].
  • SECOC_INIT: يحدد بشكل ملزم أن وحدة SecOC قد تم تهيئتها [SWS_SecOC_00162].

فيما يتعلق بالتفاعل وشروط الترتيب، يمثل SECOC_UNINIT على الأرجح الحالة الافتراضية مباشرة بعد بدء تشغيل النظام. سؤال Q-4d02fe3a0979113f (مفتوح) وفي هذه المرحلة، من المحتمل أن تُرفض الاستدعاءات الوظيفية للتأمين التشفيري أو التحقق من صحة الرسائل، نظراً لعدم توفر هياكل البيانات اللازمة بعد. ولا تتغير الحالة إلى SECOC_INIT على الأرجح إلا بعد التهيئة الناجحة للوحدة. ومن المحتمل أن تستعين الوحدات المستدعية أو روتينات المراقبة الداخلية بـ SecOC_StateType للتحقق المتزامن من حالة التشغيل الحالية ومنع الوصول غير المسموح به بشكل موثوق قبل التهيئة.

تم إنشاء هذا النص بواسطة ذكاء اصطناعي ويستند حصرياً إلى بيانات المواصفة من AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

نوع SecOC_VerificationResultType [SWS_SecOC_00149] 📄 PDF

Enumeration to indicate veri fication results.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 9b4c5c47c73b المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

يُستخدم نوع التعداد SecOC_VerificationResultType للإشارة إلى نتائج التحقق من I-PDUs الآمنة في الوحدة SecOC، ويتم توفيره عبر ملف الرأس Rte_SecOC_Type.h [SWS_SecOC_00149].

يحدد التعداد قيم النتائج التالية لتمييز حالة التحقق [SWS_SecOC_00149]:

  • SECOC_VERIFICATIONSUCCESS (0x00): نجح التحقق من البيانات [SWS_SecOC_00149].
  • SECOC_VERIFICATIONFAILURE (0x01): لم ينجح التحقق [SWS_SecOC_00149].
  • SECOC_FRESHNESSFAILURE (0x02): فشل التحقق بسبب قيمة Freshness خاطئة [SWS_SecOC_00149].
  • SECOC_AUTHENTICATIONBUILDFAILURE (0x03): لم ينجح التحقق بسبب رموز مصادقة ذات بنية غير صحيحة [SWS_SecOC_00149].
  • SECOC_NO_VERIFICATION (0x04): تم تخطي التحقق وتمرير البيانات دون تغيير إلى الطبقة الأعلى؛ لا يمكن حدوث هذه الحالة إلا عند تفعيل تجاوز الحالة SecOC_VerifyStatusOverride [SWS_SecOC_00149].
  • SECOC_VERIFICATIONFAILURE_OVERWRITTEN (0x05): فشل التحقق، ولكن تم تسليم I-PDU إلى الطبقة العليا نتيجة لحالة التجاوز؛ لا تحدث هذه الحالة أيضًا إلا عند استخدام SecOC_VerifyStatusOverride [SWS_SecOC_00149].

بناءً على هذه القيم، يمكن للطبقات الأعلى تقييم ما إذا كان التحقق قد نجح بشكل منتظم، أو فشل بسبب الرموز التشفيرية أو قيم Freshness، أو ما إذا كانت حالات التجاوز (Override) الإدارية قد تحكمت في تمرير البيانات [SWS_SecOC_00149] بدقة.

تم إنشاء هذا النص بواسطة ذكاء اصطناعي استنادًا إلى مواصفات AUTOSAR CP R20-11.

نوع SecOC_VerificationStatusType [SWS_SecOC_00160] 📄 PDF

Data structure to bundle the status of a verification attempt for a specific Freshness Value and Data ID

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 98b8726de1ab المصدر أسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

استخدام بنية حالة التحقق

تجمع بنية النوع SecOC_VerificationStatusType وفقًا لـ [SWS_SecOC_00160] نتيجة محاولة التحقق لـ I-PDU مؤمنة مع Data-ID المرتبط وقيمة Freshness المستخدمة. ويتم توفير التعريف عبر ملف الرأس Rte_SecOC_Type.h ويتضمن العناصر التالية:

  • freshnessValueID (uint16): مُعرّف قيمة Freshness التي أدت إلى حالة التحقق ([SWS_SecOC_00160]).
  • verificationStatus (SecOC_VerificationResultType): النتيجة المفصلة لمحاولة التحقق ([SWS_SecOC_00160]).
  • secOCDataId (uint16): Data-ID الخاصة بـ PDU المعنية ([SWS_SecOC_00160]).

يُميز العنصر verificationStatus حالات نجاح وأخطاء محددة ([SWS_SecOC_00160]):

  • SECOC_VERIFICATIONSUCCESS: كان الفحص التشفيري ناجحًا.
  • SECOC_VERIFICATIONFAILURE: فشل التحقق.
  • SECOC_FRESHNESSFAILURE: فشل التحقق بسبب قيمة Freshness غير صالحة.
  • SECOC_AUTHENTICATIONBUILDFAILURE: فشل التحقق نتيجة رموز مصادقة تم إنشاؤها بشكل غير صحيح.
  • SECOC_NO_VERIFICATION: لم يتم تنفيذ أي محاولة تحقق لـ I-PDU هذه؛ حيث تم تمريرها دون تغيير إلى الطبقة العليا.
  • SECOC_VERIFICATIONFAILURE_OVERWRITTEN: فشل التحقق، ولكن تمت إعادة توجيه I-PDU إلى الطبقة العليا بسبب حالة تجاوز (Override) نشطة.

التفسير: نظرًا لأن هذا النوع يجمع تفاصيل التحقق، يُرجح استخدامه بشكل أساسي في واجهات الاستجابة والإشعار لإبلاغ الطبقات العليا بحالة مصادقة البيانات المستلمة. سؤال Q-a1099bc88a2981e2 (مفتوح)

تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

نوع SecOC_OverrideStatusType [SWS_SecOC_00991] 📄 PDF

Type SecOC_OverrideStatusType.

مُولَّد بالذكاء الاصطناعي غير مُراجَع النموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: a5d2888a2f81 المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني

يحدد نوع التعداد SecOC_OverrideStatusType الأوضاع المختلفة لتجاوز حالة التحقق من I-PDUs في الوحدة SecOC، ويتم توفيره عبر ملف الرأس Rte_SecOC_Type.h [SWS_SecOC_00991].

تتحكم قيم نوع التعداد فيما إذا كان التحقق من Authenticator سيتم وكيفية إجرائه، وكيفية التعامل مع I-PDU الواردة [SWS_SecOC_00991]:

  • SECOC_OVERRIDE_DROP_UNTIL_NOTICE (0x00): يُلغى التحقق دون استدعاء CSM، ويتم تجاهل I-PDU وتعيين نتيجة التحقق إلى SECOC_NO_VERIFICATION [SWS_SecOC_00991].
  • SECOC_OVERRIDE_DROP_UNTIL_LIMIT (0x01): كما سبق، يتم تعليق التحقق وتجاهل I-PDU، ولكن بشكل محدود حتى الوصول إلى العدد المكوَّن من الرسائل المراد تجاوزها [SWS_SecOC_00991].
  • SECOC_OVERRIDE_CANCEL (0x02): يلغي التجاوز النشط لحالة التحقق ويعيد السلوك المعتاد [SWS_SecOC_00991].
  • SECOC_OVERRIDE_PASS_UNTIL_NOTICE (0x40) وSECOC_OVERRIDE_PASS_UNTIL_LIMIT (0x42): يتم تنفيذ التحقق من Authenticator وتمرير I-PDU إلى الطبقة العليا بصرف النظر عن النتيجة؛ وإذا فشل التحقق، يتم تعيين النتيجة إلى SECOC_VERIFICATIONFAILURE_OVERWRITTEN (إما حتى إشعار آخر أو بشكل محدود بعداد) [SWS_SecOC_00991].
  • SECOC_OVERRIDE_SKIP_UNTIL_LIMIT (0x41) وSECOC_OVERRIDE_SKIP_UNTIL_NOTICE (0x43): يُلغى التحقق، وتكون النتيجة SECOC_NO_VERIFICATION، ويتم تسليم I-PDU إلى الطبقة العليا. وإذا تم تكوين SecOCRxSecuredPduCollection، تعالج SecOC الـ SecOCRxAuthenticPdu مباشرةً دون انتظار SecOCRxCryptographicPdu [SWS_SecOC_00991].

تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR R20-11.

دليل المنفِّذ قيد الإعداد (التعقيد I1)

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/CP_MOD_SecOC
Status
unspecified
Version
AUTOSAR/AP/record/CP_MOD_SecOC@rel:R20-11#1bfffb45
Content hash
1bfffb45
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_SecureOnboardCommunication.pdf#nameddest=SWS_SecOC_00106

التهيئة والحالة

SecOC_DeInit دالة

This service stops the secure onboard communication. All buffered I - PDU are removed and have to be obtained again, if needed, after Sec OC_ Init has been called. By a call to Sec OC_ De Init the AUTOSAR Sec OC module is put into a not in itialized state (Sec OC_ UNINIT).

void SecOC_DeInit (void);

Returns the version information of this module.

void SecOC_GetVersionInfo (Std_VersionInfoType* versioninfo);
SecOC_Init دالة

Initializes the the Sec OC module. Successful initialization leads to state Sec OC_ INIT. In configurations, in which Sec OC is assigned to more than one partition (i.e. Sec OC_ Main Functions are mapped to partition s), Sec OC may provide one init AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_SecureOnboardCommunication function per partition. The decision on whether a single Sec OC_ Init() function or one per partition is provided is implementation - specific. In case a given implementation provides one Sec OC_ Init() function per partition, it is up to the implementation to devise a naming pattern that prevents name clashes among the different Sec OC_ Init() functions (e.g., by adding a suffix containing short name the Ecuc Partition.

void SecOC_Init (const SecOC_ConfigType* config);

الخدمات · Get…

Service SecOC_GetRxFreshness.

Std_ReturnType SecOC_GetRxFreshness (uint16 SecOCFreshnessValueID, const uint8* SecOCTruncatedFreshnessValue, uint32 SecOCTruncatedFreshnessValueLength, uint16 SecOCAuthVerifyAttempts, uint8* SecOCFreshnessValue, uint32* SecOCFreshnessValueLength);

Service SecOC_GetRxFreshnessAuthData.

Std_ReturnType SecOC_GetRxFreshnessAuthData (uint16 SecOCFreshnessValueID, const uint8* SecOCTruncatedFreshnessValue, uint32 SecOCTruncatedFreshnessValueLength, const uint8* SecOCAuthDataFreshnessValue, uint16 SecOCAuthDataFreshnessValueLength, uint16 SecOCAuthVerifyAttempts, uint8* SecOCFreshnessValue, uint32* SecOCFreshnessValueLength);

This API returns th e freshness value from the Most Significant Bits in the first byte in the array (Sec OCFreshness Value), in big endian format.

Std_ReturnType SecOC_GetTxFreshness (uint16 SecOCFreshnessValueID, uint8* SecOCFreshnessValue, uint32* SecOCFreshnessValueLength);

Service SecOC_GetTxFreshnessTruncData.

Std_ReturnType SecOC_GetTxFreshnessTruncData (uint16 SecOCFreshnessValueID, uint8* SecOCFreshnessValue, uint32* SecOCFreshnessValueLength, uint8* SecOCTruncatedFreshnessValue, uint32* SecOCTruncatedFreshnessValueLength);

الخدمات · Tp…

Requests cancellation of an ongoing reception of a PDU in a lower layer transport protocol module.

Std_ReturnType SecOC_TpCancelReceive (PduIdType RxPduId);

Requests cancellation of an ongoing transmission of a PDU in a lower layer communication module.

Std_ReturnType SecOC_TpCancelTransmit (PduIdType TxPduId);

Requests transmission of a PDU.

Std_ReturnType SecOC_TpTransmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);

الخدمات · أخرى

Requests cancellation of an ongoing transmission of a PDU in a lower layer communication module.

Std_ReturnType SecOC_IfCancelTransmit (PduIdType TxPduId);

Requests transmission of a PDU.

Std_ReturnType SecOC_IfTransmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);

The service provides the ability to enable the sending of un - authenticated PDU to lower layer. (example: in case authentication build counter has reached the configuration value Sec OCAuthentication Build Attempts or the query of the freshness function returns E_ NOT_ OK or the calculation of the authenticator has returned a non - recoverable error such as returning E_ NOT_ OK or KEY_ FAILURE). T his service is optional (the service is available only if Sec OCDefault Authentication Information Pattern is configured). If the service is not available or the service is available but the service was called with send Default

Std_ReturnType SecOC_SendDefaultAuthenticationInformation (uint16 FreshnessValueID, boolean sendDefaultAuthenticationInformation);

This s ervice provides the ability to inform the application about the result of the verification attempt of a received PDU by the Sec OC module.

void SecOC_VerifyStatus (SecOC_VerificationStatusType verificationStatus);

Service SecOC_VerifyStatusOverride.

Std_ReturnType SecOC_VerifyStatusOverride (uint16 ValueID, SecOC_OverrideStatusType overrideStatus, uint8 numberOfMessagesToOverride);

دوال الاستدعاء الراجع

This function is called to provide the received data of an I - PDU segment (N - PDU) to the upper layer. Each call to this function provides the next part of the I - PDU data. The si ze of the remaining buffer is written to the position indicated by buffer Size Ptr.

BufReq_ReturnType SecOC_CopyRxData (PduIdType id, const PduInfoType* info, PduLengthType* bufferSizePtr);

Service SecOC_CopyTxData.

BufReq_ReturnType SecOC_CopyTxData (PduIdType id, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);

Indication of a received PDU from a lower layer communication interface module.

void SecOC_RxIndication (PduIdType RxPduId, const PduInfoType* PduInfoPtr);

This interface is used by the Sec OC to indicate that the Secured I - PDU has been initiated for transmission.

void SecOC_SPduTxConfirmation (uint16 SecOCFreshnessValueID);

Service SecOC_StartReception.

BufReq_ReturnType SecOC_StartOfReception (PduIdType id, const PduInfoType* info, PduLengthType TpSduLength, PduLengthType* bufferSizePtr);

Called after an I - PDU has been received via the TP API, the result indicates whether the transmission was successful or not.

void SecOC_TpRxIndication (PduIdType id, Std_ReturnType result);

This function is called after the I - PDU has been transmitted on its network, the result indicates whether the transmission was successful or not.

void SecOC_TpTxConfirmation (PduIdType id, Std_ReturnType result);

Within this API , the upper layer module (called module) shall check whether the available data fits into the buffer size reported by Pdu Info Ptr - >Sdu Length. If it fits, it shall copy its data into the buffer provided by Pdu Info Ptr - >Sdu Data Ptr and update the length of the actual copied data in Pdu Info Ptr - >Sdu Length. If not, it returns E_ NOT_ OK without changing Pdu Info Ptr.

Std_ReturnType SecOC_TriggerTransmit (PduIdType TxPduId, PduInfoType* PduInfoPtr);

The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.

void SecOC_TxConfirmation (PduIdType TxPduId, Std_ReturnType result);

دوال Callout والواجهات المتوقعة

Service is used to propagate the status of each verification attempt from the Sec OC module to other modules. This service can be configured such that:  Only: "False" Verifica tion Status is propagated to modules  Both: "True" and "False" Verification Status are propagated to modules  None: No Verification Status is propagated

void SecOC_VerificationStatusCallout (SecOC_VerificationStatusType verificationStatus);

دورية

This function performs the processing of the Sec OC module's authentication and verification processing for the Rx path. Per configured Sec OCMain Function Rx instance one Sec OC_ Main Function Rx_ shall be implemented. Hereby is the short name of the Sec OCMain Function Rx configuration container in the ECU configuration.

void SecOC_MainFunctionRx (void);

This function performs the processing of the Sec OC module's authentication and verification processing for the Tx path. Per configured Sec OCMain Function Tx instance one Sec OC_ Main Function Tx_ shall be implemented. Hereby is t he short name of the Sec OCMain Function Tx configuration container in the ECU configuration.

void SecOC_MainFunctionTx (void);

الأنواع

Configuration data structure of Sec OC module

Type SecOC_OverrideStatusType.

States of the Sec OC module

Enumeration to indicate veri fication results.

Data structure to bundle the status of a verification attempt for a specific Freshness Value and Data ID