Secure Onboard Communication (SecOC)
Provides cryptographic authentication and freshness protection for critical communication PDUs.
Funktionen — Übersicht
void SecOC_Init (const SecOC_ConfigType* config);Initializes the the Sec OC module.void SecOC_DeInit (void);This service stops the secure onboard communication.void SecOC_GetVersionInfo (Std_VersionInfoType* versioninfo);Returns the version information of this module.Std_ReturnType SecOC_IfTransmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);Requests transmission of a PDU.Std_ReturnType SecOC_TpTransmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);Requests transmission of a PDU.Std_ReturnType SecOC_IfCancelTransmit (PduIdType TxPduId);Requests cancellation of an ongoing transmission of a PDU in a lower layer communication module.Std_ReturnType SecOC_TpCancelTransmit (PduIdType TxPduId);Requests cancellation of an ongoing transmission of a PDU in a lower layer communication module.Std_ReturnType SecOC_TpCancelReceive (PduIdType RxPduId);Requests cancellation of an ongoing reception of a PDU in a lower layer transport protocol module.Std_ReturnType SecOC_VerifyStatusOverride (uint16 ValueID, SecOC_OverrideStatusType overrideStatus, uint8 numberOfMessagesToOverride);Service SecOC_VerifyStatusOverride.Std_ReturnType SecOC_SendDefaultAuthenticationInformation (uint16 FreshnessValueID, boolean sendDefaultAuthenticationInformation);The service provides the ability to enable the sending of un - authenticated PDU to lower layer.void SecOC_RxIndication (PduIdType RxPduId, const PduInfoType* PduInfoPtr);Indication of a received PDU from a lower layer communication interface module.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.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.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...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...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.BufReq_ReturnType SecOC_CopyTxData (PduIdType id, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);Service SecOC_CopyTxData.BufReq_ReturnType SecOC_StartOf SecOC_StartReception (PduIdType id, const PduInfoType* info, PduLengthType TpSduLength, PduLengthType* bufferSizePtr); ⚠️Service SecOC_StartReception.Std_ReturnType SecOC_GetRxFreshness (uint16 SecOCFreshnessValueID, const uint8* SecOCTruncatedFreshnessValue, uint32 SecOCTruncatedFreshnessValueLength, uint16 SecOCAuthVerifyAttempts, uint8* SecOCFreshnessValue, uint32* SecOCFreshnessValueLength);Service SecOC_GetRxFreshness.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.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),...Std_ReturnType SecOC_GetTxFreshnessTruncData (uint16 SecOCFreshnessValueID, uint8* SecOCFreshnessValue, uint32* SecOCFreshnessValueLength, uint8* SecOCTruncatedFreshnessValue, uint32* SecOCTruncatedFreshnessValueLength);Service SecOC_GetTxFreshnessTruncData.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.void SecOC_MainFunctionRx (void);This function performs the processing of the Sec OC module's authentication and verification processing for the Rx path.void SecOC_MainFunctionTx (void);This function performs the processing of the Sec OC module's authentication and verification processing for the Tx path.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.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...
Typen — Übersicht
struct SecOC_ConfigTypeConfiguration data structure of Sec OC moduleenum SecOC_StateTypeStates of the Sec OC moduleSecOC_FreshnessArrayType-enum SecOC_VerificationResultTypeEnumeration to indicate veri fication results.enum SecOC_VerificationStatusTypeData structure to bundle the status of a verification attempt for a specific Freshness Value and Data IDenum SecOC_OverrideStatusTypeType SecOC_OverrideStatusType.
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.
सिंक्रोनस फ़ंक्शन SecOC_Init मॉड्यूल SecOC के इनिशियलाइज़ेशन का कार्य करता है और सफल समापन पर इसे SecOC_INIT स्थिति में स्थानांतरित करता है [SWS_SecOC_00106]। यह कॉल सर्विस-ID 0x01 के साथ SecOC.h के इंटरफ़ेस के माध्यम से किया जाता है [SWS_SecOC_00106]।
पैरामीटर और रिटर्न मान
- पासिंग पैरामीटर: इनपुट पैरामीटर
configके माध्यम से,SecOC_ConfigTypeप्रकार के चयनित कॉन्फ़िगरेशन स्ट्रक्चर का एक पॉइंटर पास किया जाता है [SWS_SecOC_00106]। - रिटर्न मान: फ़ंक्शन का कोई रिटर्न मान (
void) नहीं है [SWS_SecOC_00106]।
कंकरेंसी और पार्टीशनिंग
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 विनिर्देश के आधार पर AI द्वारा जनरेट किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता 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).
उपयोग और सिमेंटिक्स
तुल्यकालिक फ़ंक्शन SecOC_DeInit SecOC मॉड्यूल में सुरक्षित ऑन-बोर्ड संचार के संचालन को समाप्त करता है और इसे SecOC_UNINIT [SWS_SecOC_00161] स्थिति में स्थानांतरित करता है। फ़ंक्शन हेडर फ़ाइल SecOC.h में घोषित है और इसमें सर्विस-ID 0x05 के साथ-साथ हस्ताक्षर void SecOC_DeInit(void) [SWS_SecOC_00161] शामिल हैं। यह न तो इनपुट और न ही आउटपुट पैरामीटर संसाधित करता है और कोई रिटर्न मान नहीं देता है [SWS_SecOC_00161]।
बफ़र सफ़ाई और स्थिति संक्रमण
SecOC_DeInit को कॉल करने पर, मॉड्यूल में मध्यवर्ती रूप से संग्रहीत सभी I-PDUs को छोड़ दिया जाता है और बफ़र्स से हटा दिया जाता है [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_GetVersionInfo [SWS_SecOC_00107] 📄 PDF
void SecOC_GetVersionInfo (Std_VersionInfoType* versioninfo);
Returns the version information of this module.
फ़ंक्शन SecOC_IfTransmit [SWS_SecOC_00112] 📄 PDF
Std_ReturnType SecOC_IfTransmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);
Requests transmission of a PDU.
उपयोग
सिंक्रोनस सर्विस फ़ंक्शन SecOC_IfTransmit मॉड्यूल SecOC में एक PDU के ट्रांसमिशन का अनुरोध करने के लिए कार्य करता है [SWS_SecOC_00112]। इसमें सर्विस-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_OK: ट्रांसमिशन अनुरोध स्वीकार कर लिया गया था [SWS_SecOC_00112]।E_NOT_OK: ट्रांसमिशन अनुरोध स्वीकार नहीं किया गया था [SWS_SecOC_00112]।
त्रुटि की स्थिति में, अनुरोध की विफलता को सीधे E_NOT_OK द्वारा इंगित किया जाता है; फ़ंक्शन विनिर्देश में DET या DEM के लिए विशिष्ट त्रुटि कोड अलग से निर्दिष्ट नहीं किए गए हैं [SWS_SecOC_00112]।
समवर्तीता और प्रतिबंध
समवर्तीता के संबंध में, फ़ंक्शन विभिन्न PDU-IDs के लिए पुन: प्रवेशी (reentrant) है, लेकिन समान PDU-ID के लिए पुन: प्रवेशी नहीं है [SWS_SecOC_00112]।
यह उपयोग नोट AUTOSAR विनिर्देश के आधार पर एक AI द्वारा जनरेट किया गया था।
फ़ंक्शन SecOC_TpTransmit [SWS_SecOC_91008] 📄 PDF
Std_ReturnType SecOC_TpTransmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);
Requests transmission of a PDU.
सर्विस-ID 0x53 वाला सिंक्रोनस इंटरफ़ेस SecOC_TpTransmit SecOC मॉड्यूल में PDU ट्रांसमिशन का अनुरोध करने के लिए कार्य करता है और इसे हेडर फ़ाइल SecOC.h के माध्यम से घोषित किया गया है [SWS_SecOC_91008]। यह ट्रांसमिशन अनुरोध स्वीकार करता है और मॉड्यूल के भीतर आगे की प्रोसेसिंग शुरू करता है।
उपयोग और अंतःक्रिया
एक इनपुट पैरामीटर के रूप में, फ़ंक्शन PDU पहचानकर्ता TxPduId और साथ ही PduInfoType प्रकार के एक कॉन्सटेंट के पॉइंटर PduInfoPtr की अपेक्षा करता है, जिसमें 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.
उपयोग और कॉल संदर्भ
सिंक्रोनस इंटरफ़ेस फ़ंक्शन SecOC_IfCancelTransmit एक अधोवर्ती संचार मॉड्यूल में एक सक्रिय PDU ट्रांसमिशन को रद्द करने का अनुरोध करता है [SWS_SecOC_00113]। इसे हेडर फ़ाइल SecOC.h के माध्यम से घोषित किया गया है और इसमें सर्विस-ID 0x4a है [SWS_SecOC_00113]। PduIdType प्रकार के पास किए गए पैरामीटर TxPduId के माध्यम से वह 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.
सिंक्रोनस फ़ंक्शन SecOC_TpCancelTransmit का उपयोग किसी अधीनस्थ संचार मॉड्यूल में चल रहे PDU ट्रांसमिशन को रद्द करने का अनुरोध करने के लिए किया जाता है [SWS_SecOC_91009]। इसे हेडर फ़ाइल SecOC.h के माध्यम से घोषित किया गया है और इसकी Service-ID 0x54 है [SWS_SecOC_91009]।
एक इनपुट पैरामीटर के रूप में प्रकार PduIdType का पहचानकर्ता TxPduId पास किया जाता है, जो रद्द किए जाने वाले ट्रांसमिट PDU की विशिष्ट रूप से पहचान करता है [SWS_SecOC_91009]। रद्दीकरण अनुरोध का परिणाम प्रकार Std_ReturnType के रिटर्न मान के माध्यम से सिंक्रोनस रूप से रिपोर्ट किया जाता है [SWS_SecOC_91009]:
E_OK: ट्रांसमिशन का रद्दीकरण गंतव्य मॉड्यूल द्वारा सफलतापूर्वक निष्पादित किया गया [SWS_SecOC_91009]।E_NOT_OK: रद्दीकरण को गंतव्य मॉड्यूल द्वारा अस्वीकार कर दिया गया था [SWS_SecOC_91009]।
समवर्तीता (concurrency) के संबंध में, फ़ंक्शन विभिन्न PDU-IDs के लिए reentrant है, लेकिन समान PDU-ID के लिए स्पष्ट रूप से reentrant नहीं है [SWS_SecOC_91009]। इसलिए कॉलर्स को यह सुनिश्चित करना होगा कि समान TxPduId के साथ समानांतर कॉलों से बचा जाए। चूंकि पेलोड 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.
सिंक्रोनस फ़ंक्शन 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) प्रदान नहीं की गई हैं। व्याख्या: विनिर्देश में उल्लिखित गंतव्य मॉड्यूल (“destination module”) संभवतः अधीनस्थ ट्रांसपोर्ट प्रोटोकॉल मॉड्यूल को संदर्भित करता है, जिसे रद्दीकरण अनुरोध भेजा जाता है। प्रश्न Q-bce6ed77e65a6b9b (खुला)
समवर्तीता और एकीकरण
समवर्तीता के संबंध में, फ़ंक्शन को गैर-reentrant (Non Reentrant) घोषित किया गया है [SWS_SecOC_91010]। इसलिए कोई समवर्ती या बाधित करने वाला कॉल नहीं होना चाहिए; कॉलिंग सॉफ़्टवेयर इकाइयों को तदनुसार एक्सेस का समन्वय करना चाहिए। फ़ंक्शन की Service-ID 0x4c है और इसे हेडर फ़ाइल SecOC.h के माध्यम से घोषित किया गया है [SWS_SecOC_91010]।
यह उपयोग नोट एक AI द्वारा उत्पन्न किया गया था और विशेष रूप से AUTOSAR रिलीज़ R20-11 के विनिर्देशों पर आधारित है।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
फ़ंक्शन SecOC_VerifyStatusOverride [SWS_SecOC_00122] 📄 PDF
Std_ReturnType SecOC_VerifyStatusOverride (uint16 ValueID, SecOC_OverrideStatusType overrideStatus, uint8 numberOfMessagesToOverride);
Service SecOC_VerifyStatusOverride.
सिंक्रोनस फ़ंक्शन SecOC_VerifyStatusOverride एप्लिकेशन को SecOC के सत्यापन और अग्रेषण व्यवहार को लक्षित तरीके से ओवरराइड करने में सक्षम बनाता है, ताकि वास्तविक सत्यापन परिणाम की परवाह किए बिना I-PDUs को स्वीकार या अस्वीकार किया जा सके और त्रुटि प्रबंधन को नियंत्रित किया जा सके [SWS_SecOC_00122]।
पैरामीटर और कॉल संदर्भ
संबोधन मॉड्यूल कॉन्फ़िगरेशन पर निर्भर करता है: यदि SecOCOverrideStatusWithDataId को FALSE पर सेट किया गया है, तो Value ID सभी असाइन किए गए Secured I-PDUs के Freshness Value की पहचान करता है; यदि पैरामीटर TRUE पर सेट है, तो Value ID सीधे Secured I-PDU की Data ID को निर्दिष्ट करता है [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 IDs के लिए रीएंट्रेंट है, लेकिन समान Freshness Value ID के लिए रीएंट्रेंट नहीं है [SWS_SecOC_00122]। एक सफल कॉल E_OK देता है, जबकि एक असफल कॉल को E_NOT_OK के साथ स्वीकार किया जाता है [SWS_SecOC_00122]।
सत्यापन में अंतःक्रिया
एक सेट किया गया ओवरराइड प्राप्ति पथ के प्रसंस्करण तर्क में हस्तक्षेप करता है:
- यदि अलग-अलग Authentic और Cryptographic I-PDUs का उपयोग किया जाता है (
SecOCRxSecuredPduCollection), तो जैसे ही उपयुक्त Message Linker के साथ दोनों PDUs प्राप्त हो जाते हैं,overrideStatusव्यवहार को नियंत्रित करता है [SWS_SecOC_00203], [SWS_SecOC_00206], [SWS_SecOC_00211]। - यहाँ तक कि
SecOCAuthenticationBuildAttemptsयाSecOCAuthenticationVerifyAttemptsसे अधिक होने पर और अपूरणीय त्रुटियों (जैसेKEY_FAILURE) के मामले में भी, सत्यापन परिणाम और PDU अग्रेषण मुख्य रूप सेoverrideStatusके अनुसार निर्देशित होते हैं [SWS_SecOC_00240], [SWS_SecOC_00241]।
यह पाठ AI द्वारा तैयार किया गया था और 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
उपयोग
समकालिक फ़ंक्शन SecOC_SendDefaultAuthenticationInformation ([SWS_SecOC_91013]) निचली परतों पर गैर-प्रमाणित I-PDUs के प्रेषण को लक्षित रूप से सक्षम या अवरुद्ध करना संभव बनाता है। सेवा SecOC.h के माध्यम से घोषित की गई है और ध्वज send Default Authentication Information के माध्यम से एक विशिष्ट Freshness Value ID के लिए व्यवहार को नियंत्रित करती है। सफल अनुरोध पर, फ़ंक्शन E_OK लौटाता है, अन्यथा E_NOT_OK ([SWS_SecOC_91013])।
इंटरेक्शन और त्रुटि व्यवहार
फ़ंक्शन वैकल्पिक है और केवल तभी उपलब्ध होता है जब पैरामीटर SecOCDefaultAuthenticationInformationPattern कॉन्फ़िगर किया गया हो ([SWS_SecOC_91013])। यह व्यवहार तब लागू होता है जब प्रमाणीकरण जानकारी का निर्माण विफल हो जाता है - उदाहरण के लिए जब काउंटर SecOCAuthenticationBuildAttempts तक पहुँच गया हो, Freshness फ़ंक्शन E_NOT_OK प्रदान करता है, या प्रमाणीकरणकर्ता की गणना KEY_FAILURE या E_NOT_OK जैसी असाध्य त्रुटि लौटाती है ([SWS_SecOC_91013], [SWS_SecOC_00229]):
- यदि सेवा को
TRUEके साथ कॉल किया गया था, तो मॉड्यूल प्रमाणीकरण जानकारी बनाने के लिए Freshness मान और प्रमाणीकरणकर्ता के सभी बाइट्स के लिए पैटर्नSecOCDefaultAuthenticationInformationPatternका उपयोग करता है, और प्रेषण अनुरोध को रद्द नहीं करता है ([SWS_SecOC_91013], [SWS_SecOC_00229])। - यदि सेवा उपलब्ध नहीं है या संबंधित ID के लिए
FALSEके साथ कॉल की गई थी, तो मॉड्यूल अपने आंतरिक बफ़र से प्रामाणिक I-PDU को हटा देता है और ट्रांसमिशन को रद्द कर देता है ([SWS_SecOC_91013], [SWS_SecOC_00229])।
संगामिति
यह फ़ंक्शन समान Freshness Value ID के लिए पुन: प्रवेशी नहीं है, लेकिन विभिन्न IDs के लिए इसे पुन: प्रवेशी रूप से कॉल किया जा सकता है ([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.
उपयोग और कॉल संदर्भ
सिंक्रोनस इंटरफ़ेस फ़ंक्शन SecOC_RxIndication (सर्विस-ID 0x42) को SecOC मॉड्यूल को PDU की प्राप्ति की सूचना देने के लिए एक निचले संचार इंटरफ़ेस मॉड्यूल द्वारा कॉल किया जाता है [SWS_SecOC_00124]। कॉल के समय, RxPduId प्राप्त PDU की पहचान करता है, जबकि PduInfoPtr के माध्यम से PDU जानकारी का एक पॉइंटर पास किया जाता है। इस संरचना में पेलोड लंबाई SduLength, बफ़र पॉइंटर SduDataPtr और PDU का संबंधित मेटाडेटा [SWS_SecOC_00124] शामिल है। फ़ंक्शन का कोई रिटर्न मान नहीं है और इसे हेडर फ़ाइल SecOC.h के माध्यम से घोषित किया गया है [SWS_SecOC_00124]।
त्रुटि प्रबंधन और लंबाई जांच
स्थैतिक कॉन्फ़िगरेशन वाले I-PDUs की प्राप्ति के लिए (EcuC पैरामीटर DynamicLength के FALSE के बराबर होने पर सुरक्षित, प्रामाणिक या क्रिप्टोग्राफ़िक I-PDUs), एक विशिष्ट त्रुटि जांच लागू होती है: यदि प्राप्त लंबाई कॉन्फ़िगर की गई लंबाई से कम है, तो SecOC मॉड्यूल I-PDU को बिना सूचना के निरस्त कर देता है [SWS_SecOC_00268]। Interpretation: चूँकि फ़ंक्शन void लौटाता है, इसलिए दोषपूर्ण या अपूर्ण I-PDUs को संभवतः कॉलिंग लेयर को बिना किसी फीडबैक के निरस्त कर दिया जाता है। प्रश्न Q-6e9a176383e1983b (खुला)
समवर्तीता और प्रतिबंध
SecOC_RxIndication का निष्पादन अलग-अलग PDU-IDs वाले कॉल्स के लिए रीएंट्रेंट है, लेकिन समान PDU-ID के लिए स्पष्ट रूप से रीएंट्रेंट नहीं है [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.
फ़ंक्शन SecOC_TpRxIndication SecOC मॉड्यूल के कॉलबैक इंटरफ़ेस के रूप में कार्य करता है और ट्रांसपोर्ट प्रोटोकॉल API (TP API) के माध्यम से I-PDU प्राप्त होने के बाद कॉल किया जाता है [SWS_SecOC_00125]। इस अधिसूचना के माध्यम से, SecOC सीखता है कि I-PDU का ट्रांसमिशन सफलतापूर्वक पूरा हुआ था या कोई ट्रांसमिशन त्रुटि हुई थी [SWS_SecOC_00125]।
[SWS_SecOC_00125] के अनुसार इंटरफ़ेस में निम्नलिखित पैरामीटर और विशेषताएं हैं:
- id (
PduIdType): प्राप्त I-PDU की पहचान, जिसके लिए प्राप्ति घटना का संकेत दिया जाता है। - result (
Std_ReturnType): PDU रिसेप्शन का परिणाम, जो इंगित करता है कि ट्रांसपोर्ट सफल रहा या विफल रहा। - रिटर्न मान: कोई नहीं (
void); फ़ंक्शन कॉलर को कोई स्थिति मान वापस नहीं करता है।
कॉनकरेंसी के संबंध में, SecOC_TpRxIndication को रीएंट्रेंट (Reentrant) के रूप में निर्दिष्ट किया गया है और यह सर्विस-ID 0x45 [SWS_SecOC_00125] के तहत समकालिक रूप से (Synchronous) काम करता है। घोषणा हेडर फ़ाइल 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.
उपयोग और कॉल संदर्भ
SecOC मॉड्यूल को किसी PDU के सफल ट्रांसमिशन या ट्रांसमिशन की विफलता की सिंक्रोनस रूप से पुष्टि करने के लिए अधोवर्ती संचार इंटरफ़ेस मॉड्यूल द्वारा फ़ंक्शन SecOC_TxConfirmation को कॉल किया जाता है [SWS_SecOC_00126]। इस सर्विस का कोई रिटर्न मान (void) नहीं है, यह हेडर फ़ाइल SecOC.h में घोषित है और सर्विस-ID 0x40 के तहत प्रबंधित है [SWS_SecOC_00126]।
फ़ंक्शन दो इनपुट पैरामीटरों की अपेक्षा करता है [SWS_SecOC_00126]:
TxPduId: प्रेषित PDU का पहचानकर्ता (प्रकारPduIdType)।result: सफल ट्रांसमिशन परE_OKया असफल ट्रांसमिशन परE_NOT_OKमानों के साथ ट्रांसमिशन का परिणाम (प्रकारStd_ReturnType)।
त्रुटि हैंडलिंग और समवर्तीता
निचली परतों की ट्रांसमिशन त्रुटियां सीधे मान E_NOT_OK के साथ तर्क result के माध्यम से पास की जाती हैं [SWS_SecOC_00126]। समवर्तीता के संबंध में, कॉल को विभिन्न PDU-IDs के लिए पुन: प्रवेशी (reentrant) माना गया है, लेकिन समान PDU-ID के लिए इसे गैर-पुन: प्रवेशी (not reentrant) के रूप में परिभाषित किया गया है [SWS_SecOC_00126]। ठोस निष्पादन संदर्भ संभवतः अधोवर्ती मॉड्यूल के टास्क या इंटरप्ट स्तर पर होना चाहिए, क्योंकि विनिर्देश इसके संबंध में कोई प्रतिबंध प्रदान नहीं करता है। प्रश्न Q-8bb15b92df860fc1 (खुला)
इंटरैक्शन और फ़ॉरवर्डिंग
यदि कॉन्फ़िगरेशन SecOCTxSecuredPduCollection का उपयोग किया जाता है, तो SecOC पुष्टि को ऊपरी परत पर तभी अग्रेषित करता है जब SecOC_TxConfirmation को Authentic I-PDU और Cryptographic I-PDU दोनों के लिए कॉल कर लिया गया हो [SWS_SecOC_00270]।
ऊपरी परत को दिए जाने वाले परिणाम स्टेटस के लिए एक सख्त शर्त लागू होती है: अग्रेषित कॉल का पैरामीटर result केवल तभी E_OK होता है जब दोनों आंशिक PDU के लिए पुष्टियां 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.
फ़ंक्शन SecOC_TpTxConfirmation नेटवर्क पर प्रेषित एक I-PDU की पुष्टि करने का कार्य करता है और ट्रांसमिशन प्रक्रिया की सफलता या विफलता के बारे में SecOC मॉड्यूल को सिंक्रोनस रूप से सूचित करता है [SWS_SecOC_00152]।
उपयोग और पैरामीटर
कॉल नेटवर्क पर एक I-PDU के भौतिक ट्रांसमिशन के बाद होता है [SWS_SecOC_00152]। इंटरफ़ेस हेडर SecOC.h में घोषित है और इसमें सर्विस-ID 0x48 है [SWS_SecOC_00152]। यह दो इनपुट पैरामीटर स्वीकार करता है और कोई रिटर्न मान नहीं देता है (void):
id(प्रकारPduIdType): प्रेषित I-PDU की अद्वितीय पहचान [SWS_SecOC_00152]।result(प्रकारStd_ReturnType): इंगित करता है कि नेटवर्क पर ट्रांसमिशन सफल रहा या विफल [SWS_SecOC_00152]।
समवर्तीता और निष्पादन
विनिर्देश के अनुसार, फ़ंक्शन को सिंक्रोनस रूप से निष्पादित किया जाना चाहिए और यह पूरी तरह से पुन: प्रवेशी (Reentrant) है [SWS_SecOC_00152]। इस प्रकार इसे विभिन्न या समान I-PDUs के लिए समानांतर में कॉल किया जा सकता है, यदि कॉल संदर्भ को इसकी आवश्यकता हो।
त्रुटि प्रबंधन और परस्पर क्रिया
पेलोड में कोई विशिष्ट DET या DEM त्रुटि कोड नहीं दर्शाए गए हैं। ट्रांसमिशन से संबंधित त्रुटि प्रबंधन मुख्य रूप से पास किए गए स्टेटस पैरामीटर result के माध्यम से किया जाता है, जो मॉड्यूल को बताता है कि ट्रांसमिशन प्रक्रिया सफल रही या नहीं [SWS_SecOC_00152]। व्याख्या: बड़े या खंडित (fragmented) ट्रांसमिशन के पूरा होने के बाद ट्रांसमिशन स्टेटस को रिपोर्ट करने के लिए फ़ंक्शन संभवतः प्राथमिक रूप से अधोवर्ती ट्रांसपोर्ट प्रोटोकॉल इंस्टेंसेस के लिए एक कॉलबैक इंटरफ़ेस के रूप में कार्य करता है। प्रश्न Q-a2957406d76ee65f (खुला)
यह उपयोग संबंधी नोट एक AI द्वारा बनाया गया था और यह SecOC मॉड्यूल के लिए AUTOSAR विनिर्देश की आवश्यकताओं को सारांशित करता है।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता 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.
सिंक्रोनस इंटरफ़ेस 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]। - यदि मेमोरी स्थान पर्याप्त नहीं है, तो फ़ंक्शन
PduInfoPtrकी सामग्री को बदले बिनाE_NOT_OKलौटाता है [SWS_SecOC_00127]।
त्रुटि हैंडलिंग और समवर्तीता
यदि E_NOT_OK लौटाया जाता है, तो कोई SDU डेटा कॉपी नहीं किया गया था। इस मामले में, कॉलर को PduInfoPtr का मूल्यांकन या उपयोग नहीं करना चाहिए, क्योंकि इसमें NULL पॉइंटर हो सकता है या यह अमान्य डेटा को संदर्भित कर सकता है [SWS_SecOC_00127]। यह फ़ंक्शन अलग-अलग PDU-IDs के लिए रीएंट्रेंट है, लेकिन समान TxPduId के लिए रीएंट्रेंट नहीं है [SWS_SecOC_00127]। यह सर्विस हेडर SecOC.h के माध्यम से उपलब्ध है [SWS_SecOC_00127]।
यह उपयोग निर्देश विनिर्देश AUTOSAR Classic Platform Release 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.
उपयोग और सिमेंटिक्स
सिंक्रोनस फ़ंक्शन SecOC_CopyRxData को ऊपरी परत पर एक I-PDU खंड (N-PDU) के प्राप्त डेटा को स्थानांतरित करने के लिए कॉल किया जाता है [SWS_SecOC_00128]। प्रत्येक कॉल I-PDU डेटा का अगला भाग प्रदान करता है [SWS_SecOC_00128]। इस सर्विस की सर्विस-ID 0x44 है और यह हेडर फ़ाइल SecOC.h के माध्यम से उपलब्ध है [SWS_SecOC_00128]।
पैरामीटर और बफ़र क्वेरी
पैरामीटर id विशिष्ट रूप से प्राप्त I-PDU की पहचान करता है [SWS_SecOC_00128]। पॉइंटर info के माध्यम से स्रोत बफ़र SduDataPtr और कॉपी किए जाने वाले बाइट्स की संख्या SduLength प्रदान की जाती है [SWS_SecOC_00128]। मान 0 के साथ SduLength को पास करना ऊपरी मॉड्यूल में वर्तमान में उपलब्ध प्राप्ति बफ़र की क्वेरी करने का काम करता है; इस स्थिति में 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.
उपयोग और सिमेंटिक्स
सिंक्रोनस और रीएंट्रेंट फ़ंक्शन SecOC_CopyTxData को I-PDU खंड (N-PDU) के लिए ट्रांसमिशन डेटा पुनर्प्राप्त करने के लिए कॉल किया जाता है [SWS_SecOC_00129]। पैरामीटर info के माध्यम से गंतव्य बफ़र SduDataPtr और अनुरोध की जाने वाली बाइट मात्रा SduLength पास की जाती है [SWS_SecOC_00129]। 0 के बराबर SduLength के साथ कॉल करने से उपलब्ध डेटा मात्रा को क्वेरी करना या पैरामीटर 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.
उपयोग
सिंक्रोनस और रीएंट्रेंट फ़ंक्शन SecOC_StartReception को N-SDU की प्राप्ति की शुरुआत में कनेक्शन की जांच करने और आवश्यक प्राप्ति बफ़र प्रदान करने के लिए कॉल किया जाता है [SWS_SecOC_00130]। N-SDU को सिंगल फ़्रेम (Single Frame, SF) के रूप में या कई N-PDUs में खंडित करके (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.
सिंक्रोनस इंटरफ़ेस फ़ंक्शन SecOC_GetRxFreshness SecOC मॉड्यूल को प्राप्त सुरक्षित I-PDU के लिए वर्तमान Freshness मान की क्वेरी करने का कार्य करता है [SWS_SecOC_91007]। यह कॉल तब की जाती है जब सुरक्षित PDU पूरी तरह से प्राप्त हो जाता है और इसके कॉन्फ़िगरेशन के लिए SecOCQueryFreshnessValue == CFUNC और SecOCUseAuthDataFreshness == FALSE निर्दिष्ट होता है [SWS_SecOC_00247], [SWS_SecOC_00250]।
फ़ंक्शन रीएंट्रेंट है [SWS_SecOC_91007] और निम्नलिखित पैरामीटर पास करता है या उनकी अपेक्षा करता है:
SecOCFreshnessValueID: क्वेरी किए जाने वाले Freshness मान की पहचान [SWS_SecOC_91007]।SecOCTruncatedFreshnessValueऔरSecOCTruncatedFreshnessValueLength: प्राप्त PDU में निहित संक्षिप्त Freshness मान का पॉइंटर और बिट्स में इसकी लंबाई [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-ID के कारण प्रावधान विफल रहा [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.
पूर्ण रूप से प्राप्त सुरक्षित I-PDUs के प्रमाणीकरण के लिए वर्तमान Freshness मान निर्धारित करने के लिए SecOC मॉड्यूल द्वारा समकालिक और पुन: प्रवेशी फ़ंक्शन SecOC_GetRxFreshnessAuthData को कॉल किया जाता है ([SWS_SecOC_91006], [SWS_SecOC_00246])। कॉल विशेष रूप से तब की जाती है जब संबंधित PDU कॉन्फ़िगरेशन के लिए SecOCQueryFreshnessValue = CFUNC और SecOCUseAuthDataFreshness = TRUE पैरामीटरीकृत होते हैं ([SWS_SecOC_00246], [SWS_SecOC_00249])।
पैरामीटर और पासिंग मान
-
इनपुट डेटा: पहचानकर्ता
SecOCFreshnessValueID, I-PDU में निहित संक्षिप्त Freshness मानSecOCTruncatedFreshnessValueबिट लंबाईSecOCTruncatedFreshnessValueLengthसहित, और काउंटरSecOCAuthVerifyAttempts, जिसे विफल प्रयासों पर बढ़ाया जाता है, पास किए जाते हैं ([SWS_SecOC_91006])। -
प्रमाणीकरण डेटा: प्राप्त PDU का एक कॉन्फ़िगर किया गया भाग वैकल्पिक रूप से
SecOCAuthDataFreshnessValueऔरSecOCAuthDataFreshnessValueLengthके माध्यम से पास किया जाता है; प्रारंभिक स्थिति और लंबाईSecOCAuthDataFreshnessStartPositionऔरSecOCAuthDataFreshnessLenद्वारा निर्धारित की जाती है ([SWS_SecOC_91006], [SWS_SecOC_00246])। -
परिणाम डेटा: पूर्ण Freshness मान आउटपुट बफ़र
SecOCFreshnessValueके माध्यम से प्रदान किया जाता है, जिसकी बिट लंबाई इनपुट/आउटपुट पैरामीटरSecOCFreshnessValueLengthके रूप में कार्य करती है ([SWS_SecOC_91006])।
रिटर्न मान और त्रुटि प्रबंधन
फ़ंक्शन E_OK ([SWS_SecOC_91006]) के साथ क्वेरी की सफलता का संकेत देता है। यदि सामान्य समस्याओं या अमान्य Freshness-ID के कारण Freshness मान प्रदान नहीं किया जा सकता है, तो यह E_NOT_OK लौटाता है; अस्थायी अनुपलब्धता के मामले में, यह E_BUSY लौटाता है ([SWS_SecOC_91006])। Interpretation: चूँकि फ़ंक्शन C फ़ंक्शन के रूप में CFUNC के माध्यम से जुड़ा हुआ है, इसलिए कार्यान्वयन एक बाहरी Freshness प्रबंधन मॉड्यूल द्वारा किए जाने की संभावना है। प्रश्न Q-01aa77b7235b9001 (खुला)
यह पाठ AUTOSAR विनिर्देश R20-11 के आधार पर AI द्वारा उत्पन्न किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता 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.
सिंक्रोनस और पुन: प्रवेशी फ़ंक्शन SecOC_GetTxFreshness भेजे जाने वाले संदेशों के लिए वर्तमान फ्रेशनेस मान प्रदान करने का कार्य करता है और हेडर SecOC.h के माध्यम से घोषित किया गया है [SWS_SecOC_91004]। [SWS_SecOC_00231] के अनुसार, SecOC मॉड्यूल किसी PDU के लिए इस फ़ंक्शन को तब कॉल करता है जब कॉन्फ़िगरेशन में SecOCQueryFreshnessValue = CFUNC और SecOCProvideTxTruncatedFreshnessValue = FALSE सेट होते हैं। व्याख्या: चूंकि SecOC उपयुक्त कॉन्फ़िगरेशन पर कॉल निष्पादित करता है, इसलिए फ़ंक्शन को संभवतः किसी बाहरी घटक द्वारा एक कॉलआउट के रूप में प्रदान किया जाना चाहिए। प्रश्न Q-99a14f896ffddf5f (खुला)
इंटरफ़ेस निम्नलिखित पैरामीटरों का उपयोग करता है [SWS_SecOC_91004]:
SecOCFreshnessValueID(In): अनुरोधित फ्रेशनेस मान का संख्यात्मक पहचानकर्ता।SecOCFreshnessValueLength(InOut): प्रदान किए गए फ्रेशनेस मान की बिट लंबाई पास या प्राप्त करता है।SecOCFreshnessValue(Out): पहले बाइट में सबसे महत्वपूर्ण बिट्स से शुरू करते हुए, बिग-एंडियन प्रारूप में फ्रेशनेस मान संग्रहीत करने के लिए बाइट ऐरे का पॉइंटर।
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.
सिंक्रोनस और रीएंट्रेंट फ़ंक्शन SecOC_GetTxFreshnessTruncData को SecOC मॉड्यूल द्वारा कॉल किया जाता है ताकि ट्रांसमिशन संचालन (TX) के दौरान ट्रांसमिट किए जाने वाले Secured I-PDU के लिए पूर्ण Freshness मान और संक्षिप्त Freshness मान (Truncated Freshness) दोनों को प्राप्त किया जा सके [SWS_SecOC_91003]। यह कॉल विशेष रूप से तब की जाती है जब PDU कॉन्फ़िगरेशन के लिए SecOCQueryFreshnessValue = CFUNC और SecOCProvideTxTruncatedFreshnessValue = TRUE सेट होते हैं [SWS_SecOC_00230]।
यह इंटरफ़ेस निम्नलिखित पैरामीटर पास करता है [SWS_SecOC_91003]:
SecOCFreshnessValueID(in): अनुरोधित Freshness मान का पहचानकर्ता।SecOCFreshnessValue(out): वर्तमान पूर्ण Freshness मान के लिए गंतव्य बफ़र।SecOCFreshnessValueLength(inout): बिट्स में प्रदान किए गए Freshness मान की लंबाई निर्दिष्ट करता है।SecOCTruncatedFreshnessValue(out): संक्षिप्त Freshness मान के लिए वैकल्पिक बफ़र, जिसे Secured I-PDU में एम्बेड किया जाता है।SecOCTruncatedFreshnessValueLength(inout): संक्षिप्त Freshness की कॉन्फ़िगर की गई लंबाई पास करता है; यदि आवश्यक हो तो फ़ंक्शन द्वारा मान को अनुकूलित किया जा सकता है या अपरिवर्तित रखा जा सकता है।
रिटर्न मान के रूप में, यह फ़ंक्शन सफल प्रावधान पर E_OK, यदि जानकारी अस्थायी रूप से उपलब्ध नहीं है तो E_BUSY, या यदि प्रावधान सामान्य समस्याओं के कारण या विशेष रूप से पास की गई ID के लिए विफल हो जाता है तो E_NOT_OK लौटाता है [SWS_SecOC_91003]। डिक्लेरेशन हेडर SecOC.h के माध्यम से उपलब्ध है [SWS_SecOC_91003]।
यह उपयोग निर्देश AUTOSAR R20-11 के विनिर्देश डेटा के आधार पर एक AI क्युरेशन सहायक द्वारा जनरेट किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता 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.
उपयोग
सिंक्रोनस फ़ंक्शन इंटरफ़ेस SecOC_SPduTxConfirmation का उपयोग SecOC मॉड्यूल द्वारा यह इंगित करने के लिए किया जाता है कि एक सुरक्षित I-PDU (Secured I-PDU) का ट्रांसमिशन शुरू किया गया है [SWS_SecOC_91005]। फ़ंक्शन हेडर फ़ाइल SecOC.h में घोषित है और इसका कोई रिटर्न मान (void) नहीं है [SWS_SecOC_91005]।
एकमात्र पास किए गए पैरामीटर के रूप में, SecOCFreshnessValueID को uint16 प्रकार के इनपुट मान (in) के रूप में पास किया जाता है [SWS_SecOC_91005]। यह पैरामीटर संबंधित I-PDU के लिए संबंधित फ्रेशनेस मान का पहचानकर्ता वहन करता है [SWS_SecOC_91005]। इंटरफ़ेस में कोई अन्य इनपुट, आउटपुट या थ्रू-पैरामीटर (inout/out) मौजूद नहीं हैं [SWS_SecOC_91005]।
समवर्तीता और विशेषताएँ
इंटरफ़ेस में सर्विस-ID 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_
उपयोग और कॉल संदर्भ
फ़ंक्शन SecOC_MainFunctionRx प्राप्ति पथ में आने वाले संदेशों के लिए मॉड्यूल SecOC के केंद्रीय प्रमाणीकरण और सत्यापन प्रसंस्करण का कार्य संभालता है [SWS_SecOC_00171]। अपने इंटरफ़ेस विनिर्देश के अनुसार, फ़ंक्शन का सिग्नेचर void SecOC_MainFunctionRx (void) है, इसमें सर्विस-ID 0x06 है, यह किसी पासिंग पैरामीटर की अपेक्षा नहीं करता है और कोई रिटर्न मान नहीं देता है [SWS_SecOC_00171]। इसे हेडर फ़ाइल SchM_SecOC.h के माध्यम से घोषित किया जाता है [SWS_SecOC_00171]; इससे यह निष्कर्ष निकाला जा सकता है (Interpretation) कि इसका कॉल ऑपरेटिंग सिस्टम टास्क के संदर्भ में BSW-Scheduler द्वारा आवधिक रूप से किया जाता है। प्रश्न Q-d24cb58f541f6674 (खुला)
इंस्टेंसिएशन और कॉन्फ़िगरेशन
कई प्राप्ति इंस्टेंस वाले सिस्टम कॉन्फ़िगरेशन में, प्रत्येक कॉन्फ़िगर किए गए SecOCMainFunctionRx कंटेनर के लिए स्कीमा SecOC_MainFunctionRx_<shortName> के अनुसार एक अलग फ़ंक्शन इंस्टेंस लागू किया जाता है [SWS_SecOC_00171]। इसमें <shortName> ECU कॉन्फ़िगरेशन मॉडल में दिए गए कंटेनर के संक्षिप्त नाम से मेल खाता है [SWS_SecOC_00171]। यह संभवतः विभिन्न Rx प्रसंस्करण पथों के अलग-अलग समय नियंत्रण या प्राथमिकता निर्धारण को सक्षम बनाता है। प्रश्न Q-ebb55c5d3a3da97d (खुला)
त्रुटि हैंडलिंग और समवर्तीता
SecOC_MainFunctionRx के लिए आवश्यकताओं में न तो विशिष्ट रिटर्न मान और न ही DET या DEM के लिए स्पष्ट त्रुटि कोड प्रलेखित हैं [SWS_SecOC_00171]। इसलिए त्रुटि स्थितियों या विफल सत्यापनों को विशुद्ध रूप से आंतरिक रूप से संसाधित किया जाना चाहिए और प्राप्ति पथ के माध्यम से एसिंक्रोनस रूप से उच्च स्तरीय मॉड्यूल को रिपोर्ट किया जाना चाहिए। प्रश्न Q-5d1e45f7a779bea9 (खुला)
यह पाठ एक AI द्वारा उत्पन्न किया गया था और यह मार्गदर्शन के रूप में कार्य करता है। आधिकारिक 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_
उपयोग और कॉल संदर्भ
मुख्य फ़ंक्शन SecOC_MainFunctionTx [SWS_SecOC_00176] के अनुसार प्रेषण पथ (Tx पथ) पर SecOC मॉड्यूल के प्रमाणीकरण और सत्यापन प्रसंस्करण का कार्य संभालता है। इसमें हस्ताक्षर void SecOC_MainFunctionTx(void) है, इस प्रकार यह कोई पासिंग पैरामीटर स्वीकार नहीं करता है और कोई रिटर्न मान वापस नहीं करता है; इसे सर्विस-ID 0x03 सौंपी गई है [SWS_SecOC_00176]। घोषणा हेडर SchM_SecOC.h के माध्यम से प्रदान की जाती है [SWS_SecOC_00176]। Interpretation: चूँकि एकीकरण शेड्यूल मैनेजर के माध्यम से होता है, इसलिए कॉल आम तौर पर एक ऑपरेटिंग सिस्टम टास्क के संदर्भ में BSW शेड्यूलर द्वारा चक्रीय रूप से होना चाहिए। प्रश्न Q-34b30208648c8e30 (खुला)
इंस्टेंसिएशन और नामकरण परिपाटी
विनिर्देश एकाधिक कॉन्फ़िगरेशन के लिए एक इंस्टेंस-विशिष्ट कार्यान्वयन प्रदान करता है: ECU कॉन्फ़िगरेशन में प्रत्येक कॉन्फ़िगर किए गए इंस्टेंस कंटेनर SecOCMainFunctionTx के लिए, नामकरण योजना SecOC_MainFunctionTx_<shortName> के अनुसार ठीक एक फ़ंक्शन लागू किया जाना चाहिए, जहाँ <shortName> संबंधित कॉन्फ़िगरेशन कंटेनर के संक्षिप्त नाम से मेल खाता है [SWS_SecOC_00176]।
प्रतिबंध और त्रुटि प्रबंधन
विशिष्ट त्रुटि कोड, DET या DEM प्रतिक्रियाएँ, और पुन: प्रवेश के विवरण विनिर्देश तत्व में अलग से सूचीबद्ध नहीं हैं [SWS_SecOC_00176]। Interpretation: इंस्टेंस-विशिष्ट कॉन्फ़िगरेशन कंटेनरों से जुड़े होने के कारण, उत्पन्न प्रत्येक इंस्टेंस Tx-PDU प्रक्रियाओं के एक पृथक सबसेट के लिए ज़िम्मेदार होना चाहिए और योजना के अनुसार उसी टास्क संदर्भ द्वारा समवर्ती रूप से बाधित नहीं होना चाहिए। प्रश्न (खुला)
यह उपयोग नोट AUTOSAR विनिर्देश R20-11 के आधार पर एक AI क्युरेशन सहायक द्वारा स्वचालित रूप से तैयार किया गया था।
फ़ंक्शन 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
सिंक्रोनस कॉलआउट फ़ंक्शन SecOC_VerificationStatusCallout SecOC मॉड्यूल से बाहरी सॉफ़्टवेयर मॉड्यूल में सत्यापन प्रयासों की स्थिति को अग्रेषित करने का कार्य करता है [SWS_SecOC_00119]। यह हेडर SecOC_Externals.h के माध्यम से घोषित है और इसकी सर्विस-ID 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 IDs के लिए रीएंट्रेंट है, लेकिन समान Freshness Value ID के लिए रीएंट्रेंट नहीं है [SWS_SecOC_00119]। इसलिए कार्यान्वयन करने वाले मॉड्यूल को यह सुनिश्चित करना चाहिए कि समान Freshness Value ID के साथ कोई समवर्ती कॉल न हो। कॉल संदर्भ संभवतः SecOC मॉड्यूल के आंतरिक सत्यापन रूटीन के भीतर सिंक्रोनस होना चाहिए। प्रश्न Q-cd6928ca22d48f54 (खुला) इस कॉलआउट के लिए कोई विशिष्ट त्रुटि कोड या DET और DEM को संदेश परिभाषित नहीं हैं [SWS_SecOC_00119]।
यह उपयोग निर्देश एक AI द्वारा जनरेट किया गया था और पूरी तरह से 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.
उपयोग और सिमेंटिक्स
समकालिक फ़ंक्शन SecOC_VerifyStatus SecOC मॉड्यूल द्वारा प्राप्त PDU के सत्यापन प्रयास के परिणाम के बारे में एप्लिकेशन को सूचित करता है [SWS_SecOC_91014]। इंटरफ़ेस में सर्विस-ID 0x53 है, यह कोई मान नहीं लौटाता है (void) और हेडर SecOC_Externals.h के माध्यम से प्रदान किया जाता है [SWS_SecOC_91014]।
पैरामीटर
SecOC_VerificationStatusType प्रकार का इनपुट पैरामीटर verificationStatus एकमात्र पासिंग पैरामीटर के रूप में कार्य करता है [SWS_SecOC_91014]। यह संरचना सत्यापन स्थिति के बारे में विवरण के साथ-साथ यह जानकारी भी प्रदान करती है कि सत्यापन किस Data-ID और Freshness-Value-ID के लिए किया गया था [SWS_SecOC_91014]। कोई अतिरिक्त इनपुट या आउटपुट पैरामीटर मौजूद नहीं हैं [SWS_SecOC_91014]।
त्रुटि हैंडलिंग और समवर्तीता
इस सेवा के लिए विशिष्ट त्रुटि कोड और DET या DEM को सूचनाएं परिभाषित नहीं हैं [SWS_SecOC_91014]। Interpretation: विफल सत्यापन की सूचना मुख्य रूप से पास की गई संरचना verificationStatus के भीतर स्थिति मानों के माध्यम से एप्लिकेशन को दी जानी चाहिए। प्रश्न Q-177be3d746f99b24 (खुला) समवर्तीता के संबंध में, SecOC_VerifyStatus समान Freshness-Value-ID के लिए पुन: प्रवेशी नहीं है, लेकिन विभिन्न Freshness-Value-IDs के लिए पुन: प्रवेशी है [SWS_SecOC_91014]।
यह पाठ AI द्वारा जनरेट किया गया था और मार्गदर्शन के रूप में कार्य करता है। AUTOSAR विनिर्देश ही प्रामाणिक है।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
टाइप SecOC_ConfigType [SWS_SecOC_00104] 📄 PDF
Configuration data structure of Sec OC module
टाइप SecOC_StateType [SWS_SecOC_00162] 📄 PDF
States of the Sec OC module
गणना प्रकार 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 का उपयोग कर सकते हैं।
यह पाठ एक AI द्वारा बनाया गया था और पूरी तरह से AUTOSAR R20-11 के विनिर्देश डेटा पर आधारित है।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
टाइप SecOC_FreshnessArrayType [SWS_SecOC_91012] 📄 PDF
-
टाइप SecOC_VerificationResultType [SWS_SecOC_00149] 📄 PDF
Enumeration to indicate veri fication results.
एन्यूमिरेशन प्रकार SecOC_VerificationResultType SecOC मॉड्यूल में सुरक्षित I-PDUs के सत्यापन के परिणामों को इंगित करने का कार्य करता है और इसे हेडर 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 मानों के कारण विफल हुआ, या क्या प्रशासनिक ओवरराइड स्थितियों ने डेटा अग्रेषण को नियंत्रित किया [SWS_SecOC_00149]।
यह पाठ AUTOSAR CP R20-11 विनिर्देश के आधार पर एक AI द्वारा उत्पन्न किया गया था।
टाइप SecOC_VerificationStatusType [SWS_SecOC_00160] 📄 PDF
Data structure to bundle the status of a verification attempt for a specific Freshness Value and Data ID
सत्यापन स्थिति संरचना का उपयोग
संरचना प्रकार 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): संबंधित PDU की Data-ID ([SWS_SecOC_00160])।
तत्व verificationStatus विशिष्ट सफलता और त्रुटि स्थितियों में अंतर करता है ([SWS_SecOC_00160]):
SECOC_VERIFICATIONSUCCESS: क्रिप्टोग्राफ़िक जाँच सफल रही।SECOC_VERIFICATIONFAILURE: सत्यापन विफल रहा।SECOC_FRESHNESSFAILURE: अमान्य Freshness मान के कारण सत्यापन विफल रहा।SECOC_AUTHENTICATIONBUILDFAILURE: गलत तरीके से बनाए गए प्रमाणीकरण कोड के परिणामस्वरूप विफल सत्यापन।SECOC_NO_VERIFICATION: इस I-PDU के लिए कोई सत्यापन प्रयास निष्पादित नहीं किया गया था; इसे बिना किसी परिवर्तन के ऊपरी परत पर भेज दिया गया।SECOC_VERIFICATIONFAILURE_OVERWRITTEN: सत्यापन विफल रहा, लेकिन सक्रिय Override स्थिति के कारण I-PDU को ऊपरी परत पर अग्रेषित कर दिया गया।
Interpretation: चूँकि यह प्रकार सत्यापन विवरणों को बंडल करता है, इसलिए इसका उपयोग मुख्य रूप से फीडबैक और अधिसूचना इंटरफेस में प्राप्त डेटा की प्रमाणीकरण स्थिति के बारे में उच्च-स्तरीय परतों को सूचित करने के लिए किया जाना चाहिए। प्रश्न Q-a1099bc88a2981e2 (खुला)
यह पाठ AUTOSAR विनिर्देश R20-11 के आधार पर AI द्वारा उत्पन्न किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता I1)
टाइप SecOC_OverrideStatusType [SWS_SecOC_00991] 📄 PDF
Type SecOC_OverrideStatusType.
एन्यूमिरेशन प्रकार SecOC_OverrideStatusType SecOC मॉड्यूल में I-PDUs की सत्यापन स्थिति को ओवरराइड करने के लिए विभिन्न मोड परिभाषित करता है और हेडर Rte_SecOC_Type.h के माध्यम से प्रदान किया जाता है [SWS_SecOC_00991]।
एन्यूमिरेशन प्रकार के मान यह नियंत्रित करते हैं कि क्या और कैसे प्रमाणक का सत्यापन होता है और आने वाले 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): प्रमाणक सत्यापन निष्पादित किया जाता है और परिणाम की परवाह किए बिना 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कॉन्फ़िगर किया गया है, तो SecOCSecOCRxCryptographicPduकी प्रतीक्षा किए बिना सीधेSecOCRxAuthenticPduको संसाधित करता है [SWS_SecOC_00991]।
यह पाठ AUTOSAR विनिर्देश R20-11 के आधार पर AI द्वारा उत्पन्न किया गया था।
इम्प्लीमेंटर गाइड जल्द आएगी (जटिलता 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#39672137- Content hash
39672137- Source
- https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_SecureOnboardCommunication.pdf#nameddest=SWS_SecOC_00106
gemini-3.8-flash-low· 2026-10-13 · जर्मन मूल