DEENESPTFRRUARHIKOZHNL

struct ara::diag::SovdProximityChallengeType

[SWS_DM_01482] Upstream: RS_Diag_04262

struct SovdProximityChallengeType {...};

Holds the data returned by the SovdProximityChallenge::GetChallenge()

Header-Datei#include "ara/diag/sovd_proximity_challenge.h"
Forwarding-Header#include "ara/diag/diag_fwd.h"
Scopenamespace ara::diag

User GuideAI-GEGENEREERD

Stelt de challenge-bytes en de geldigheidsperiode beschikbaar voor de SOVD-nabijheidscontrole.
DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 3ac9286258b1 Herkomst Open vragen (3)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Stelt de challenge-bytes en de geldigheidsperiode beschikbaar voor de SOVD-nabijheidscontrole.

De datastructuur ara::diag::SovdProximityChallengeType dient als retourtype voor SovdProximityChallenge::GetChallenge() en bundelt de voor de SOVD-nabijheidscontrole vereiste gegevens [SWS_DM_01482]. Deze stelt een challenge-bytereeks als ara::core::Span en het bijbehorende geldigheidstijdstip valid_until beschikbaar voor de SOVD-client [SWS_DM_01492]. De client moet de challenge oplossen voordat dit tijdstip wordt bereikt, terwijl de gereferentieerde buffer gedurende de gehele gebruiksduur geldig moet blijven in het geheugen.

Context

De datastructuur ara::diag::SovdProximityChallengeType dient binnen de diagnosemodule (ara::diag) van het AUTOSAR Adaptive Platform als gestandaardiseerde retourcontainer voor beveiligings- en proximity-controles [SWS_DM_01482]. Concreet neemt de structuur de resultaatgegevens van de methode-aanroep SovdProximityChallenge::GetChallenge() op AUTOSAR_AP_SWS_Diagnostics §8.56.3 “Struct: SovdProximityChallengeType”. De voornaamste taak van deze structuur bestaat erin om de SOVD-client (Service-Oriented Vehicle Diagnostics) van alle noodzakelijke parameters te voorzien waarmee deze het fysieke bewijs van de voertuignabijheid (proximity) kan leveren [SWS_DM_01492].

In de interactie fungeert SovdProximityChallengeType als een zuiver overdrachtsobject tussen de beschikbaarstellende diagnose-instantie SovdProximityChallenge en de verzoekende SOVD-client [SWS_DM_01482]. De structuur bundelt twee fundamentele attributen: de challenge-reeks challenge en de absolute vervaldatum valid_until AUTOSAR_AP_SWS_Diagnostics §8.56.3.1 “Public Member Variables”. Interpretatie: De structuur zelf kapselt geen bedrijfslogica in, maar fungeert als een zuiver Plain Old Data (POD) Value Object voor staatloze parameteroverdracht. Vraag Q-d2f4870d4cfaf724 (open)

Levenscyclus

De levenscyclus van een SovdProximityChallengeType-instantie begint met de aanmaak ervan door de aanroepende diagnose-interface SovdProximityChallenge::GetChallenge() AUTOSAR_AP_SWS_Diagnostics §8.56.3 “Struct: SovdProximityChallengeType”. De structuur bezit waardesemantiek (Value Semantics), waardoor deze na de aanroep door middel van kopiëren of verplaatsen (Move) aan de aanroeper wordt overgedragen.

Met betrekking tot de eigendomsverhoudingen moet bij de lidvariabelen een belangrijk onderscheid in acht worden genomen:

  • Het gegevenselement challenge is gedefinieerd als ara::core::Span<ara::core::Byte> [SWS_DM_01492]. Een ara::core::Span is een niet-bezittende weergave (Non-owning View) op een aaneengesloten bytereeks in het geheugen. Vermoedelijk moet het geheugengebied waarnaar deze span verwijst, worden beheerd door de onderliggende diagnosecomponent en minstens zo lang geldig blijven als de span wordt benaderd. Vraag (open)
  • Het gegevenselement valid_until slaat een absolute tijdstempel van het type std::chrono::system_clock::time_point op [SWS_DM_01491]. Deze tijdstempel definieert rechtstreeks de functionele geldigheidsperiode van de challenge in het totale systeem.

De vernietiging van de struct vindt automatisch plaats volgens de reguliere C++-regels bij het verlaten van de scope van de aanroeper. Aangezien de struct zelf geen dynamisch geheugen alloceert, is de vernietiging triviaal, maar vereist wel inachtneming van de levensduur van de onderliggende databuffer van de span [SWS_DM_01492].

Gebruikspad

Het typische gebruikspad in de context van de SOVD-nabijheidscontrole is opgedeeld in een vaste opeenvolging van opvragen, evaluatie en bewijslevering:

  1. Een diagnosetoepassing of de SOVD-dienst initieert de proximity-controle en roept SovdProximityChallenge::GetChallenge() aan AUTOSAR_AP_SWS_Diagnostics §8.56.3 “Struct: SovdProximityChallengeType”.
  2. Als retourwaarde wordt een instantie van SovdProximityChallengeType gegenereerd, die is gevuld met de gegenereerde challenge-bytes en het vervaltijdstip [SWS_DM_01482].
  3. De ontvanger leest challenge uit als byte-span om de op te lossen taak naar de SOVD-client te verzenden [SWS_DM_01492].
  4. Tegelijkertijd wordt de tijdstempel valid_until geëvalueerd om het tijdvenster voor het bewijs vast te leggen [SWS_DM_01491].
  5. De SOVD-client lost de challenge op en verzendt het bewijs voordat het door valid_until gemarkeerde tijdstip is bereikt [SWS_DM_01491], [SWS_DM_01492].
Verloop van het beschikbaar stellen en evalueren van de proximity-challengeSOVD-ClientSovdProximityChallengeSovdProximityChallengeTypeAnforderung Proximity-ChallengeGetChallenge() uitvoerenInstantiëring met challenge (Span) en valid_untilRetourneren van SovdProximityChallengeTypeUitlezen van challenge en valid_untilChallenge oplossen voor verstrijken van valid_until

Sequentiediagram: Typisch verloop van het opvragen en evalueren van de challenge in het kader van de SOVD-proximity-controle. Bronnen: [SWS_DM_01482], [SWS_DM_01491], [SWS_DM_01492], AUTOSAR_AP_SWS_Diagnostics §8.56.3 “Struct: SovdProximityChallengeType”.

Foutscenario's

Bij het gebruik van SovdProximityChallengeType moet met name rekening worden gehouden met twee foutgevoelige randvoorwaarden:

  • Time-out: Als de systeemtijd de in valid_until gespecificeerde tijdstempel std::chrono::system_clock::time_point bereikt [SWS_DM_01491], verliest de challenge zijn geldigheid. Interpretatie: Een na het verstrijken van valid_until binnenkomende oplossingspoging van de SOVD-client zal door de verifiërende diagnose-instantie vermoedelijk als ongeldig worden afgewezen, waardoor een hernieuwde aanroep van SovdProximityChallenge::GetChallenge() noodzakelijk wordt. Vraag Q-ab9b44a73c189384 (open)
  • Ongeldige geheugenreferentie (Dangling Span): Aangezien challenge als niet-bezittende ara::core::Span<ara::core::Byte> is geïmplementeerd [SWS_DM_01492], leidt toegang tot de bytes na vernietiging of herallocatie van de onderliggende buffer tot ongedefinieerd gedrag. De aanroeper moet waarborgen dat de gereferentieerde bytebuffer gedurende de gehele gebruiksduur van de span in het geheugen behouden blijft.

Deze handleiding is gebaseerd op de AUTOSAR-specificatie voor het Adaptive Platform (Release R25-11) en beschrijft de struct ara::diag::SovdProximityChallengeType als datacontainer voor SOVD-nabijheidscontroles.

UML-klassendiagram

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G nara__diag__SovdProximityChallengeType366 «struct» SovdProximityChallengeType + challenge + valid_until

Constanten

challenge variabele

Challenge which has to be solved by the SOVD client to prove proximity.

valid_until variabele

The time until the challenge is valid.

Documentatie van constanten / variabelen

variabele challenge [SWS_DM_01492] Upstream: RS_Diag_04262

ara::core::Span<ara::core::Byte> challenge;

Challenge which has to be solved by the SOVD client to prove proximity.

Header-Datei#include "ara/diag/sovd_proximity_challenge.h"
Scopestruct ara::diag::SovdProximityChallengeType
Symbolchallenge
Typara::core::Span< ara::core::Byte >

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

Record
AUTOSAR/AP/record/SWS_DM_01492
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01492@rel:R25-11#1ee6c560
Content hash
1ee6c560
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01492
Status: valid/unmigrated Version: rel:R25-11#e253ee2f Versionshistorie & Revisions (1 transition, 5 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01492@rel:R25-11#e253ee2f
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#497a67862026-09-30
  • R22-11rel:R22-11#ee00d0182026-10-14
  • R23-11rel:R23-11#e253ee2f2026-10-14
  • R24-11rel:R24-11#e253ee2f2026-10-14
  • R25-11rel:R25-11#e253ee2f2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

variabele valid_until [SWS_DM_01491] Upstream: RS_Diag_04262

std::chrono::system_clock::time_point valid_until;

The time until the challenge is valid.

Header-Datei#include "ara/diag/sovd_proximity_challenge.h"
Scopestruct ara::diag::SovdProximityChallengeType
Symbolvalid_until
Typstd::chrono::system_clock::time_point

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

Record
AUTOSAR/AP/record/SWS_DM_01491
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01491@rel:R25-11#5d07666c
Content hash
5d07666c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01491
Status: valid/unmigrated Version: rel:R25-11#486011a8 Versionshistorie & Revisions (1 transition, 5 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01491@rel:R25-11#486011a8
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#c6564b8a2026-09-30
  • R22-11rel:R22-11#721ac4e82026-10-14
  • R23-11rel:R23-11#486011a82026-10-14
  • R24-11rel:R24-11#486011a82026-10-14
  • R25-11rel:R25-11#486011a82026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill