एप्लिकेशनों को सुरक्षित SOVD डायग्नोस्टिक ऑपरेशनों के लिए निकटता प्रमाण (proximity challenge) उत्पन्न करने और सत्यापित करने में सक्षम बनाता है।
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 7c7c088635a6उद्गमखुले प्रश्न (2)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
एप्लिकेशनों को सुरक्षित SOVD डायग्नोस्टिक ऑपरेशनों के लिए निकटता प्रमाण (proximity challenge) उत्पन्न करने और सत्यापित करने में सक्षम बनाता है।
यह इंटरफ़ेस क्लास AUTOSAR Adaptive Platform में डायग्नोस्टिक परिवेश में SOVD ऑपरेशनों के लिए निकटता परीक्षणों के कार्यान्वयन का काम करती है [SWS_DM_01481]। एप्लिकेशन इस क्लास से प्राप्त होते हैं, Offer() के माध्यम से Diagnostic Management द्वारा अग्रेषण को सक्षम करते हैं, और आवश्यक चुनौती तथा इसके बाद के सत्यापन को अतुल्यकालिक रूप से प्रदान करते हैं [SWS_DM_01478]। सत्यापन विधियों के समवर्ती कॉल निर्माण के समय चुने गए समवर्ती मोड के अनुसार निर्देशित होते हैं, जबकि पंजीकरण और विनाश थ्रेड-सुरक्षित नहीं हैं।
संदर्भ
क्लास ara::diag::SovdProximityChallenge[SWS_DM_01481] AUTOSAR Adaptive Platform में Service-Oriented Vehicle Diagnostics (SOVD) परिवेश में निकटता प्रमाण (Proximity Challenge) के लिए एप्लिकेशन-साइड इंटरफ़ेस कार्यान्वयन के रूप में कार्य करती है। यह AUTOSAR Diagnostic Management (DM या Diagnostic Server) और वास्तविक वाहन एप्लिकेशन के बीच एक सेतु बनाती है, जो भौतिक या क्रिप्टोग्राफ़िक निकटता परीक्षणों के लिए सुरक्षा तर्क प्रदान करती है AUTOSAR_AP_SWS_Diagnostics §8.56 “Providing the SOVD operation proximity_challenge”। यदि किसी SOVD ऑपरेशन के लिए यह कॉन्फ़िगर किया गया है कि निकटता प्रमाण आवश्यक है (विशेषता proximityProofRequiredTRUE है), तो Diagnostic Management डायग्नोस्टिक अनुरोध को संसाधित करते समय एप्लिकेशन से एक चुनौती का अनुरोध करता है और क्लाइंट द्वारा प्रेषित प्रतिक्रिया को सत्यापित करवाता है [SWS_DM_01398]। इस संयोजन में तीन प्रमुख पक्ष शामिल हैं: बाहरी SOVD क्लाइंट, मध्यस्थ Diagnostic Management, और उपयोग करने वाली एप्लिकेशन।
हैंडलर क्लास का इंस्टैंसिएशन कंस्ट्रक्टर SovdProximityChallenge[SWS_DM_01480] के माध्यम से होता है। यह इंस्टेंस को मैनिफ़ेस्ट में परिभाषित ara::core::InstanceSpecifier से बाइंड करता है और पैरामीटर ConcurrencyType के माध्यम से निर्धारित करता है कि बाद का निष्पादन समवर्ती (kConcurrent) होगा या क्रमिक (kNotConcurrent)। कंस्ट्रक्टर स्वयं थ्रेड-सुरक्षित के रूप में निर्दिष्ट है [SWS_DM_01480]। ऑब्जेक्ट निर्माण के बाद, हैंडलर प्रारंभ में निष्क्रिय स्थिति में रहता है। केवल Offer()[SWS_DM_01478] के स्पष्ट कॉल के माध्यम से ही Diagnostic Management को एप्लिकेशन इंस्टेंस को अनुरोध अग्रेषित करने के लिए अधिकृत किया जाता है।
StopOffer()[SWS_DM_01495] का उपयोग करके किसी भी समय अग्रेषण को फिर से निष्क्रिय किया जा सकता है। न तो Offer(), StopOffer() और न ही वर्चुअल डिस्ट्रक्टर ~SovdProximityChallenge()[SWS_DM_01479] थ्रेड-सुरक्षित हैं। व्याख्या: नष्ट होने की प्रक्रिया में चल रहे किसी ऑब्जेक्ट को अग्रेषण रोकने के लिए ऑब्जेक्ट के विनाश से पहले StopOffer() को कॉल करना आवश्यक हो सकता है। प्रश्न Q-b4c66854163f433e (खुला) इसके अलावा, SOVD ऑपरेशनों को लगातार सुरक्षित रखने के लिए व्यावहारिक रूप से डायग्नोस्टिक प्रक्रिया के संपूर्ण रनटाइम के दौरान आमतौर पर एक एप्लिकेशन इंस्टेंस बनाए रखने की संभावना है। वास्तविक क्वेरी और सत्यापन विधियों GetChallenge()[SWS_DM_01494] और ValidateResponse()[SWS_DM_01493] की थ्रेड-सुरक्षा कंस्ट्रक्टर में पास किए गए ConcurrencyType द्वारा नियंत्रित होती है।
उपयोग पथ
सफल आरंभीकरण और Offer()[SWS_DM_01478] के माध्यम से सेवा प्रावधान के बाद, क्लास Diagnostic Management के अनुरोधों पर प्रतिक्रिया देती है। यदि कोई SOVD क्लाइंट किसी संरक्षित ऑपरेशन का अनुरोध करता है, तो DM शुद्ध वर्चुअल विधि GetChallenge()[SWS_DM_01494] को कॉल करता है। एप्लिकेशन निकटता टोकन उत्पन्न करती है और इसे वैधता समय (valid_until) के साथ अतुल्यकालिक रूप से एक ara::core::Future<SovdProximityChallengeType> के माध्यम से वापस लौटाती है [SWS_DM_01494]। डिफ़ॉल्ट रूप से, यह माना जाता है कि किसी भी समय केवल एक ही चुनौती मौजूद होती है जो सभी क्लाइंटों और ऑपरेशनों के लिए मान्य होती है, जिसका लाइफ़टाइम आमतौर पर निश्चित (उदा. दो मिनट पर) निर्धारित किया जाता है AUTOSAR_AP_SWS_Diagnostics §8.56 “Providing the SOVD operation proximity_challenge”। अधिक जटिल परिदृश्यों के लिए, एप्लिकेशन क्लाइंट- या ऑपरेशन-विशिष्ट परीक्षण करने हेतु पास की गई ara::diag::MetaInfo ऑब्जेक्ट का मूल्यांकन कर सकती है AUTOSAR_AP_SWS_Diagnostics §8.56 “Providing the SOVD operation proximity_challenge”।
Diagnostic Management विशेषता proximity_challenge को प्रतिक्रिया बॉडी में क्लाइंट को प्रेषित करता है [SWS_DM_01398]। यदि क्लाइंट निकटता प्रमाण के साथ प्रतिक्रिया देता है, तो DM इस डेटा को ValidateResponse()[SWS_DM_01493] के माध्यम से अग्रेषित करता है। पास किया गया मेमोरी क्षेत्र proximityResponse तब तक मान्य रहता है जब तक कि लौटाया गया ara::core::Future<ProximityChallengeValidationResultType> पूरा नहीं हो जाता या प्रसंस्करण निरस्त नहीं हो जाता [SWS_DM_01493]। प्रक्रिया के शटडाउन से पहले, सेवा को StopOffer()[SWS_DM_01495] के माध्यम से अपंजीकृत कर दिया जाता है।
कंस्ट्रक्टर [SWS_DM_01480] के माध्यम से ऑब्जेक्ट निर्माण के दौरान ही फ़्रेमवर्क मॉडल की सुसंगतता की जांच करता है और निम्नलिखित उल्लंघनों की रिपोर्ट कर सकता है: InstanceSpecifierMappingIntegrityViolation (पहचानकर्ता का समाधान नहीं किया जा सकता है या यह किसी पोर्ट प्रोटोटाइप को संदर्भित नहीं करता है), PortInterfaceMappingViolation (पोर्ट प्रोटोटाइप DiagnosticSovdProximityChallengeInterface के रूप में टाइप नहीं किया गया है), ProcessMappingViolation (कोई उपयुक्त मॉडलयुक्त प्रक्रिया नहीं मिली) या InstanceSpecifierAlreadyInUseViolation (पहचानकर्ता प्रक्रिया में पहले से ही उपयोग में है) [SWS_DM_01480]।
Offer()[SWS_DM_01478] को कॉल करते समय, परिणामी ara::core::Result<void> त्रुटि की स्थिति में मानकीकृत त्रुटि कोड प्रदान करता है: DiagOfferErrc::kAlreadyOffered, यदि इस पोर्ट के लिए सेवा पहले से ही सक्रिय रूप से प्रस्तुत की जा रही है, या DiagOfferErrc::kConfigurationMismatch, यदि मॉनिटर कॉन्फ़िगरेशन DEXT से मेल नहीं खाता है। GetChallenge()[SWS_DM_01494] और ValidateResponse()[SWS_DM_01493] के लिए कोई मानकीकृत त्रुटि कोड परिभाषित नहीं हैं। क्लास के सभी सदस्य फ़ंक्शन noexcept के रूप में घोषित हैं और अपवाद सुरक्षा सुनिश्चित करते हैं।
यह मार्गदर्शिका AUTOSAR Adaptive Platform रिलीज़ R25-11 के विनिर्देश पर आधारित है।
This Offer will enable the DM to forward request messages to this handler.
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: f009f89ccf76उद्गमखुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
क्लास ara::diag::SovdProximityChallenge का सिंक्रोनस मेथड Offer (#include "ara/diag/sovd_proximity_challenge.h" में परिभाषित) हैंडलर को Diagnostic Management (DM) के साथ पंजीकृत करता है और इसे हैंडलर इंस्टेंस पर इनकमिंग अनुरोध संदेश (request messages) अग्रेषित करने में सक्षम बनाता है [SWS_DM_01478]। कॉल पैरामीटर रहित होता है और इसे noexcept के साथ निर्दिष्ट किया गया है [SWS_DM_01478]।
रिटर्न मान के रूप में ara::core::Result<void> कार्य करता है [SWS_DM_01478]। त्रुटि की स्थिति में, मेथड रोलबैक सिमेंटिक्स के साथ एक विशिष्ट त्रुटि कोड लौटाता है [SWS_DM_01478]:
DiagOfferErrc::kAlreadyOffered: सेवा पहले से ही इंस्टेंस के माध्यम से पेश की जा चुकी है [SWS_DM_01478]।
DiagOfferErrc::kConfigurationMismatch: हैंडलर का कॉन्फ़िगरेशन DEXT डेटा से मेल नहीं खाता है [SWS_DM_01478]।
निष्पादन सुरक्षा के संबंध में, मेथड को exception safe घोषित किया गया है, लेकिन इसे स्पष्ट रूप से not thread-safe माना गया है [SWS_DM_01478]। इसलिए उसी इंस्टेंस पर समानांतर कॉल्स को कॉलिंग एप्लिकेशन द्वारा सिंक्रनाइज़ किया जाना चाहिए। परिनियोजन पैटर्न DM हैंडलर के एकीकृत सक्रियण सिद्धांत से मेल खाता है, जैसा कि अन्य के साथ-साथ ara::diag::GenericRoutine[SWS_DM_00557], ara::diag::GenericUDSService[SWS_DM_00619] और ara::diag::CommunicationControl[SWS_DM_00809] पर भी लागू होता है। व्याख्या: जब तक Offer को सफलतापूर्वक निष्पादित नहीं किया जाता है, DM संभवतः Proximity Challenge के लिए अनुरोधों को हैंडलर पर अग्रेषित नहीं करता है। प्रश्न Q-320a80aca81ef460 (खुला)
यह उपयोग नोट AUTOSAR R25-11 के आधार पर स्वचालित रूप से तैयार किया गया था।
InstanceSpeci- InstanceSpecifier either cannot be resolved in the model in the fierMappingIn- context of your executable, or it refers to a model element other tegrityViolation than a PortPrototype.
PortInterfaceMap- A PortPrototype that is referenced by a pingViolation DiagnosticSovdProximityChallengePortMapping needs to be typed by a DiagnosticSovdProximityChallengeInterface. ProcessMappingVio- Matching InstanceRef exists, but no matching (modelled) Process lation found that matches the (runtime) process. InstanceSpecifier- Violation message that is sent in case a constructor in the ara AlreadyInUseViola- framework was called with an InstanceSpecifier already in use in tion this process.
Parameter (in)
Parameter
Beschreibung
instanceSpecifier
InstanceSpecifier to a PortPrototype of a DiagnosticSovdProximityChallengeInterface service instance in the manifest.
concurrencyType
Specifies if the interface is implemented as thread safe ( kConcurrent) or non-thread safe (kNotConcurrent).
Request a governed re-review of this record. The record is not changed immediately.
This StopOffer will disable the forwarding of request messages from DM.
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: d973f1eccf91उद्गमखुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
क्लास ara::diag::SovdProximityChallenge का मेथड StopOffer Diagnostic Management (DM) से इस सर्विस इंस्टेंस को अनुरोध संदेशों के अग्रेषण को निष्क्रिय करता है ([SWS_DM_01495])। इंटरफ़ेस हेडर ara/diag/sovd_proximity_challenge.h के माध्यम से प्रदान किया जाता है।
उपयोग और निष्पादन संदर्भ
फ़ंक्शन को सिंक्रोनस रूप से कॉल किया जाता है, यह कोई इनपुट पैरामीटर स्वीकार नहीं करता है और इसका कोई रिटर्न मान नहीं होता है ([SWS_DM_01495])। निष्पादन के बाद, DM एप्लिकेशन को Proximity Challenge के लिए कोई और अनुरोध अग्रेषित नहीं करता है।
त्रुटि प्रबंधन और अपवाद सुरक्षा
मेथड को noexcept के रूप में घोषित किया गया है और यह पूरी तरह से अपवाद-सुरक्षित (exception safe) है ([SWS_DM_01495])। इस कॉल के लिए त्रुटि स्थितियां या विशिष्ट त्रुटि कोड प्रदान नहीं किए गए हैं।
समवर्तीता और जीवनचक्र
निष्पादन के संबंध में, StopOffer को स्पष्ट रूप से गैर-थ्रेड-सुरक्षित (not thread-safe) के रूप में निर्दिष्ट किया गया है ([SWS_DM_01495])। उसी इंस्टेंस पर समानांतर कॉल्स को कॉलर पक्ष पर सिंक्रनाइज़ किया जाना चाहिए। व्याख्या: कॉल आमतौर पर घटक के शटडाउन के दौरान या अस्थायी रूप से निलंबित Proximity Challenge जांच के दौरान होना चाहिए। प्रश्न Q-7b8910a8d5f6dc05 (खुला)
Diagnostic Management में परस्पर क्रिया
यह प्रक्रिया Diagnostic Management के एकीकृत निष्क्रियकरण पैटर्न का अनुसरण करती है, जैसा कि डायग्नोस्टिक संदेश प्रवाह को नियंत्रित करने के लिए तुलनात्मक रूप से ara::diag::CommunicationControl ([SWS_DM_00810]), ara::diag::DownloadService ([SWS_DM_00793]), ara::diag::EcuResetRequest ([SWS_DM_01017]) या ara::diag::Monitor ([SWS_DM_01089]; तुलना करें AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”) के लिए भी उपयोग किया जाता है।
यह उपयोग निर्देश AUTOSAR विनिर्देश R25-11 के आधार पर स्वचालित रूप से जनरेट किया गया था।
This function validates the proximity response sent by the client.
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 0179eb4520d7उद्गमखुले प्रश्न (1)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
प्योर वर्चुअल मेथड ara::diag::SovdProximityChallenge::ValidateResponse का उपयोग क्लाइंट द्वारा प्रेषित प्रॉक्सिमिटी रिस्पॉन्स [SWS_DM_01493] के सत्यापन के लिए किया जाता है। Diagnostic Server इंस्टेंस इस मेथड को तब कॉल करता है जब SOVD रिक्वेस्ट बॉडी में एट्रिब्यूट proximity_response होता है [SWS_DM_01395], जैसे कि किसी ऑपरेशन निष्पादन को समाप्त करने के अनुरोधों के मामले में [SWS_DM_01391]। बाइट-स्पैन proximityResponse और संदर्भ ऑब्जेक्ट metaInfo[SWS_DM_01493] पास किए जाते हैं। बाद वाला एप्लिकेशन को आवश्यकता पड़ने पर क्लाइंट- या ऑपरेशन-विशिष्ट जाँच करने में सक्षम बनाता है SWS Diagnostics पृ. 215। सत्यापन परिणाम एक ara::core::Future<ProximityChallengeValidationResultType> के माध्यम से एसिंक्रोनस रूप से प्रदान किया जाता है [SWS_DM_01493]।
इंटरफ़ेस को noexcept और अपवाद-सुरक्षित (exception safe) घोषित किया गया है [SWS_DM_01493]। कोई मानकीकृत त्रुटि कोड निर्दिष्ट नहीं हैं [SWS_DM_01493]। व्याख्या: प्रॉक्सिमिटी सत्यापन की विफलता संभवतः रिटर्न प्रकार ProximityChallengeValidationResultType या Future के त्रुटि चैनल के माध्यम से दर्शाई जाती है। प्रश्न Q-1be6378537b59f2b (खुला)
समवर्तीता के संबंध में, थ्रेड सुरक्षा सशर्त (conditional) है: क्या कार्यान्वयन को थ्रेड-सुरक्षित होना चाहिए, यह कंस्ट्रक्टर में निर्धारित ConcurrencyType द्वारा नियंत्रित होता है [SWS_DM_01493]। बफ़र proximityResponse में पास किया गया डेटा तब तक मान्य रहता है जब तक कि संबंधित Promise पूरा नहीं हो जाता या प्रोसेसिंग किसी CancellationHandler द्वारा रद्द नहीं कर दी जाती [SWS_DM_01493]।
फ़ंक्शन GetChallenge के माध्यम से चैलेंज के प्रावधान के साथ परस्पर क्रिया करता है [SWS_DM_01398]। प्रॉक्सिमिटी रिस्पॉन्स के सफल सत्यापन के बाद ही सर्वर अनुरोधित कार्रवाइयों को निष्पादित करता है, जैसे कि SovdOperationExecution पर Terminate के माध्यम से किसी ऑपरेशन को समाप्त करना [SWS_DM_02179]।
यह उपयोग निर्देश AUTOSAR Adaptive R25-11 विनिर्देश के आधार पर स्वचालित रूप से तैयार किया गया था।
gemini-3.8-flash-low· 2026-10-13 · जर्मन मूल