DEENESPTFRRUARHIKOZHNL

class ara::diag::Authentication

[SWS_DM_01123] Upstream: RS_Diag_04251

class Authentication {...};

Class to implement the Service Authentication interfaces to application.

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

User GuideAI-GENERATED

Provides interfaces to the application for UDS Service 0x29 authentication towards external diagnostic testers.
AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: a55f7043e3c0 Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

Provides interfaces to the application for UDS Service 0x29 authentication towards external diagnostic testers.

The class ara::diag::Authentication serves as an application-side interface for performing UDS Service 0x29 authentication towards external testers (AUTOSAR AP SWS Diagnostics p. 63). After initialization and activation via Offer(), the application takes over certificate verification as well as proof of ownership via asynchronous callbacks ([SWS_DM_01126], [SWS_DM_01130]). Instances are neither copyable nor movable and are bound to Diagnostic Management via a port-specific InstanceSpecifier ([SWS_DM_01124], [SWS_DM_01609]).

Context

The class ara::diag::Authentication provides the application-side interface for handling the UDS service 0x29 (Authentication) within the AUTOSAR Adaptive Platform (AUTOSAR AP SWS Diagnostics p. 63). It acts as a type-safe base for application-specific handlers that control and execute the cryptographic authentication of incoming diagnostic connections.

In the system architecture, the class interacts with two major partners: the external diagnostic tester, which directs authentication requests to the vehicle, and the vehicle-internal Diagnostic Management (DM), which receives, filters, and forwards diagnostic messages to registered handlers ([SWS_DM_01130]). The application implements the interface functions specified by ara::diag::Authentication to verify certificates, calculate challenges, and generate session keys ([SWS_DM_01126], [SWS_DM_01128]).

AuthenticationKontext Tester Tester DiagnosticManagement DiagnosticManagement Tester->DiagnosticManagement UDS 0x29 DiagnosticManagement->Tester UDS Response AuthenticationHandler AuthenticationHandler DiagnosticManagement->AuthenticationHandler Verify-Callbacks AuthenticationHandler->DiagnosticManagement Offer / StopOffer

Context diagram: Embedding of the authentication handler between Diagnostic Management and external diagnostic tester. Sources: [SWS_DM_01124], [SWS_DM_01130], AUTOSAR AP SWS Diagnostics p. 63.

Lifecycle

Instances of ara::diag::Authentication are bound to a specific port model. The constructor expects an ara::core::InstanceSpecifier that references a PortPrototype of a DiagnosticAuthenticationInterface, as well as the parameter ConcurrencyType ([SWS_DM_01124]). The latter specifies whether the implementation is designed to be thread-safe (kConcurrent) or non-thread-safe (kNotConcurrent) ([SWS_DM_01124]). Because the verification callbacks can be invoked reentrantly for different clients ([SWS_DM_01126], [SWS_DM_01127]), Diagnostic Management is expected to serialize the calls to the instance in case of kNotConcurrent. Question Q-5d890d01c54e70ca (open)

Regarding ownership, ara::diag::Authentication is strictly defined as a non-copyable and non-movable single instance: both copy and move constructors as well as the corresponding assignment operators are explicitly deleted ([SWS_DM_01609], [SWS_DM_01610], [SWS_DM_01607], [SWS_DM_01608]). After instantiation, the class does not automatically accept requests. Only by calling Offer() is Diagnostic Management authorized to forward incoming authentication requests to the instance ([SWS_DM_01130]). Forwarding can be deactivated again at any time via StopOffer() ([SWS_DM_01131]). Resources are released deterministically via the virtual destructor ~Authentication() ([SWS_DM_01125]).

Usage Path

A typical use case comprises offering the service, certificate verification, and proof of key ownership (Proof of Ownership):

  1. Offering the service: After instantiation, the application registers with Diagnostic Management via Offer() ([SWS_DM_01130]).
  2. Certificate verification: When an authentication request from the tester arrives, the DM forwards it to the responsible method:
    • In the case of unidirectional authentication, the DM calls VerifyCertificateUnidirectional(...) ([SWS_DM_01126]). The application verifies the passed client certificate and asynchronously returns a tuple consisting of a server challenge and the server's ephemeral public key via ara::core::Future.
    • In the case of bidirectional authentication, the DM calls VerifyCertificateBidirectional(...) ([SWS_DM_01127]). In this process, the application additionally generates the server certificate as well as its own proof of ownership for the tester.
  3. Proof of ownership: If the tester responds to the server challenge, the DM calls the method VerifyOwnership(...) ([SWS_DM_01128]). The application checks the passed clientPOWN together with the client's ephemeral key against the previously generated challenge. Upon success, the future returns the session key information.
  4. Stopping the service: If the interface is to be closed, the application calls StopOffer() ([SWS_DM_01131]).
Sequence of unidirectional authenticationDiagnostic testerDiagnostic ManagementAuthentication-HandlerOffer()Result<void>UDS 0x29 (VerifyCertificateUnidirectional)VerifyCertificateUnidirectional(...)Zertifikat verifizieren, Challenge & Key erzeugenFuture-Ergebnis: Challenge, Ephemeral KeyPositive response with server challenge & keyUDS 0x29 (VerifyOwnership with POWN & Key)VerifyOwnership(clientPOWN, clientEphemeralKey, ...)POWN verifizieren & Session Key berechnenFuture-Ergebnis: Session Key InfoPositive Response

Sequence diagram: Sequence of unidirectional authentication with subsequent verification of the proof of ownership. Sources: [SWS_DM_01126], [SWS_DM_01128], [SWS_DM_01130].

Error Scenarios

When using ara::diag::Authentication, static modeling errors and dynamic runtime errors must be distinguished:

  • Construction violations: If the model configuration does not match the process or if the InstanceSpecifier is erroneous, construction fails with defined violations (among others InstanceSpecifierMappingIntegrityViolation, PortInterfaceMappingViolation, ProcessMappingViolation, or InstanceSpecifierAlreadyInUseViolation) ([SWS_DM_01124]).
  • State errors on offer: Calling Offer() again when the service is already offered fails with the error code DiagOfferErrc::kAlreadyOffered ([SWS_DM_01130]).
  • Cryptographic and protocol errors: If the verification of the client certificate or the proof of ownership fails, the application must resolve the future with a suitable UDS Negative Response Code (NRC) according to ISO 14229-1 via DiagUdsNrcErrc ([SWS_DM_01126], [SWS_DM_01127], [SWS_DM_01128]).
  • Connection termination: If an ongoing diagnostic conversation is canceled, the DM signals this via the object CancellationHandler ([SWS_DM_01126]). The application can query the status via cancellationHandler.IsCanceled() or register a callback function via SetNotifier. The passed data spans remain valid only until the promise is fulfilled or processing is canceled ([SWS_DM_01126], [SWS_DM_01128]).

This class guide was generated automatically and is based on the specification AUTOSAR Adaptive Platform Release R25-11.

Member map

Class diagram

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

G nara__diag__Authentication309 Authentication + Authentication() + operator=() + ~Authentication() + Offer() + StopOffer() + VerifyCertificateBidirectional() + VerifyCertificateUnidirectional() + VerifyOwnership()

Detail view

Select an entry in the outline.

Constructors and destructor

Authentication function 3

Constructor of Authentication.

Overloads Authentication 3
explicit Authentication (const ara::core::InstanceSpecifier &specifier, ConcurrencyType concurrencyType) noexcept; SWS_DM_01124
Authentication (Authentication &)=delete; SWS_DM_01609
Authentication (Authentication &&) noexcept=delete; SWS_DM_01610

Destructor of Authentication.

virtual ~Authentication () noexcept;

Methods

Offer function

This Offer will enable the DM to forward request messages to this handler.

ara::core::Result< void > Offer () noexcept;
StopOffer function

This StopOffer will disable the forwarding of request messages from DM.

void StopOffer () noexcept;

This function accepts the certificate and challenge received from the tester, verifies the certificate, and creates a challenge, Ephemeral Public Key and Proof Of Ownership that must be returned to the tester. The function also returns the server certificate that will be used by the tester to verify the Proof Of Ownership. This callback may be called re-entrant to requests from different clients.

virtual ara::core::Future< std::tuple< ara::core::Vector< ara::core::Byte >, ara::core::Vector< ara::core::Byte >, ara::core::Vector< ara::core::Byte >, ara::core::Vector< ara::core::Byte > > > VerifyCertificateBidirectional (ara::core::Byte communicationConfiguration, ara::core::Span< const ara::core::Byte > clientCertificate, ara::core::Span< const ara::core::Byte > client Challenge, const MetaInfo &metaInfo, CancellationHandler cancellation Handler) noexcept=0;

This function accepts the certificate received from the tester, verifies it, and creates a challenge and ephemeral public key that must be returned to the tester. This callback may be called re-entrant to requests from different clients

virtual ara::core::Future< std::tuple< ara::core::Vector< ara::core::Byte >, ara::core::Vector< ara::core::Byte > > > Verify CertificateUnidirectional (ara::core::Byte communicationConfiguration, ara::core::Span< const ara::core::Byte > clientCertificate, ara::core::Span< const ara::core::Byte > clientChallenge, const Meta Info &metaInfo, CancellationHandler cancellationHandler) noexcept=0;

This function accepts the Proof Of Ownership received from the tester and verifies it with the Public Key of the certificate received in the verifyCertificateUnidirectional / verifyCertificate Bidirectional against the server challenge created in the last call to verifyCertificateUnidirectional / verifyCertificateBidirectional.

virtual ara::core::Future< ara::core::Vector< ara::core::Byte > > VerifyOwnership (ara::core::Span< const ara::core::Byte > clientPOWN, ara::core::Span< const ara::core::Byte > clientEphemeralPublicKey, const MetaInfo &metaInfo, CancellationHandler cancellationHandler) noexcept=0;

Operators

operator= function 2

Authentication shall be a single not assignable instance.

Overloads = 2

Method documentation

function Authentication [SWS_DM_01124] Upstream: RS_Diag_04251, RS_AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

explicit Authentication (const ara::core::InstanceSpecifier &specifier, ConcurrencyType concurrencyType) noexcept;

Constructor of Authentication.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 906bc324edb3 Provenance
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The constructor synchronously initializes an object of handler class ara::diag::Authentication to process diagnostic authentication requests on a software port [SWS_DM_01124]. The parameter specifier refers to the modeled PortPrototype, which must mandatory be typed by a DiagnosticAuthenticationInterface via a DiagnosticAuthenticationPortMapping [SWS_DM_01124]. Via the parameter concurrencyType, it is defined whether the framework delivers method calls concurrently (kConcurrent) or non-thread-safely (kNotConcurrent) [SWS_DM_01124].

Since the function is declared as noexcept, incorrect calls are not reported via exceptions, but trigger framework violations [SWS_DM_01124]:

  • InstanceSpecifierMappingIntegrityViolation: The identifier cannot be resolved in the context of the Executable or does not reference a PortPrototype [SWS_DM_01124].
  • PortInterfaceMappingViolation: The referenced PortPrototype is not modeled as a DiagnosticAuthenticationInterface [SWS_DM_01124].
  • ProcessMappingViolation: At runtime, no matching modeled process is found [SWS_DM_01124].
  • InstanceSpecifierAlreadyInUseViolation: The InstanceSpecifier has already been used for an instance in the current process [SWS_DM_01124].

The constructor itself is thread-safe and exception-safe [SWS_DM_01124], whereas the associated destructor ~Authentication() is specified as not thread-safe [SWS_DM_01125]. Immediately after instantiation, no diagnostic requests are forwarded yet: the application must first call Offer() to activate forwarding for the UDS service 0x29 (Authentication with PKI Certificate Exchange, APCE AUTOSAR_AP_SWS_Diagnostics Tab. 4.1 “Limitations of sub-functions of 0x19 ReadDTCInformation”) by the Diagnostic Manager [SWS_DM_01130]. Certificate validation is subsequently processed via VerifyCertificateUnidirectional [SWS_DM_01126], VerifyCertificateBidirectional [SWS_DM_01127], and VerifyOwnership [SWS_DM_01128]. Before object destruction, forwarding must be stopped with StopOffer() [SWS_DM_01131].

This usage note was generated by an AI based on the AUTOSAR Adaptive specification R25-11.

Implementer's Guide to follow (complexity I2)

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)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 DiagnosticAuthenticationPortMapping needs to be typed by a DiagnosticAuthenticationInterface. 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)

ParameterBeschreibung
specifierInstanceSpecifier to a PortPrototype of a DiagnosticAuthenticationInterface.
concurrencyTypeSpecifies 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.

Record
AUTOSAR/AP/record/SWS_DM_01124
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01124@rel:R25-11#869efd0b
Content hash
869efd0b
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01124
Status: valid/unmigrated Version: rel:R25-11#a528cb61 Versionshistorie & Revisions (1 transition, 6 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_01124@rel:R25-11#a528cb61
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#869efd0b2026-09-30
  • R21-11rel:R21-11#a05195552026-10-14
  • R22-11rel:R22-11#0575421d2026-10-14
  • R23-11rel:R23-11#fe6f8f0a2026-10-14
  • R24-11rel:R24-11#85e435582026-10-14
  • R25-11rel:R25-11#a528cb612026-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

function Authentication [SWS_DM_01609] Upstream: RS_AP_00147

Authentication (Authentication &)=delete;

Authentication shall be a single not copy-able instance.

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication

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

Record
AUTOSAR/AP/record/SWS_DM_01609
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01609@rel:R25-11#7e225c2d
Content hash
7e225c2d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01609
Status: valid/unmigrated Version: rel:R25-11#3da2cab5 Versionshistorie & Revisions (1 transition, 4 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_01609@rel:R25-11#3da2cab5
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#7e225c2d2026-09-30
  • R23-11rel:R23-11#4d1637062026-10-14
  • R24-11rel:R24-11#3da2cab52026-10-14
  • R25-11rel:R25-11#3da2cab52026-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

function Authentication [SWS_DM_01610] Upstream: RS_AP_00147

Authentication (Authentication &&) noexcept=delete;

Move constructor of Authentication.

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication

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

Record
AUTOSAR/AP/record/SWS_DM_01610
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01610@rel:R25-11#528b40c1
Content hash
528b40c1
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01610
Status: valid/unmigrated Version: rel:R25-11#15116263 Versionshistorie & Revisions (1 transition, 4 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_01610@rel:R25-11#15116263
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#528b40c12026-09-30
  • R23-11rel:R23-11#a56d73ab2026-10-14
  • R24-11rel:R24-11#151162632026-10-14
  • R25-11rel:R25-11#151162632026-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

function Offer [SWS_DM_01130] Upstream: RS_Diag_04251

ara::core::Result< void > Offer () noexcept;

This Offer will enable the DM to forward request messages to this handler.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 082dbe15e2bd Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

With the synchronous method Offer() of class ara::diag::Authentication ([SWS_DM_01130]), an Adaptive Application registers its authentication handler with Diagnostic Management (DM). As a result, the DM is authorized and enabled to forward incoming requests to this handler (AUTOSAR_AP_SWS_Diagnostics §8.3.1.1.3.1 “Offer”). The function takes no input parameters and indicates the outcome of the operation via the return type ara::core::Result<void>.

The call is declared as noexcept and is thus exception-safe ([SWS_DM_01130]). If registration fails because the service has already been provided for this instance previously, the specific error code DiagOfferErrc::kAlreadyOffered is returned in the result object ([SWS_DM_01130]). In addition, the interface is specified as not thread-safe; parallel accesses to the same instance must presumably not occur unprotected and must be synchronized on the application side. Question Q-51ab72e4e72a7351 (open)

In the lifecycle of diagnostic processing, Offer() corresponds directly to the counter-function StopOffer() ([SWS_DM_01131], AUTOSAR_AP_SWS_Diagnostics §8.3.1.1.3.2 “StopOffer”), which terminates the forwarding of requests again. This pattern follows the uniform offering approach of diagnostic handlers, as also applied for example in ara::diag::CommunicationControl::Offer ([SWS_DM_00809]) or ara::diag::DoIPPowerMode::Offer ([SWS_DM_00735]), where requests can only be processed after explicit offering by the application ([SWS_DM_01525]).

This usage note was created automatically by the AI curation assistant based on the AUTOSAR R25-11 specification status.

Implementer's Guide to follow (complexity I1)

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
ara::core::Result< void >Returns nothing or an error.

Fehler

FehlercodeBeschreibung
DiagOfferErrc::kAlreadyOfferedrollback_semantics The service is already offered.

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

Record
AUTOSAR/AP/record/SWS_DM_01130
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01130@rel:R25-11#78b7f7aa
Content hash
78b7f7aa
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01130
Status: valid/unmigrated Version: rel:R25-11#ceefb477 Versionshistorie & Revisions (1 transition, 6 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_01130@rel:R25-11#ceefb477
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#78b7f7aa2026-09-30
  • R21-11rel:R21-11#2d6054a22026-10-14
  • R22-11rel:R22-11#61d3a12b2026-10-14
  • R23-11rel:R23-11#d2d63def2026-10-14
  • R24-11rel:R24-11#66beb2132026-10-14
  • R25-11rel:R25-11#ceefb4772026-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

function StopOffer [SWS_DM_01131] Upstream: RS_Diag_04251

void StopOffer () noexcept;

This StopOffer will disable the forwarding of request messages from DM.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 4aa6d764eb2f Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

use

The method StopOffer of class ara::diag::Authentication (defined in ara/diag/authentication.h) disables the forwarding of request messages by the Diagnostic Manager (DM) to the instance [SWS_DM_01131]. The call is executed synchronously, requires no input parameters, and has no return value AUTOSAR_AP_SWS_Diagnostics §8.3.1.1.3.2 “StopOffer”.

Error Handling and Execution Safety

The function is specified as exception safe (noexcept); specific error codes or exceptions are not defined [SWS_DM_01131].

Concurrency and Limitations

The operation is explicitly designated as not thread-safe (“not thread-safe”) [SWS_DM_01131]. Concurrent calls on the same instance must be synchronized by the calling application.

Interaction and Architectural Context

The design pattern of StopOffer is used consistently across various services and handlers in the Adaptive Diagnostic Manager, including SecurityAccess [SWS_DM_00767], CommunicationControl [SWS_DM_00810], DownloadService [SWS_DM_00793], and EcuResetRequest [SWS_DM_01017]. Although the naming is based on service offering in ara::com, it is a diagnostics-specific implementation AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”. Interpretation: Prior to deactivation using StopOffer, the instance would typically have been actively receiving requests via an offering function. Question Q-da990416e53707ed (open)

This usage note was generated by an AI based on the specification AUTOSAR AP R25-11.

Implementer's Guide to follow (complexity I2)

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_01131
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01131@rel:R25-11#23d4ebca
Content hash
23d4ebca
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01131
Status: valid/unmigrated Version: rel:R25-11#7692df5e Versionshistorie & Revisions (1 transition, 6 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_01131@rel:R25-11#7692df5e
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#23d4ebca2026-09-30
  • R21-11rel:R21-11#334e81982026-10-14
  • R22-11rel:R22-11#e0037c802026-10-14
  • R23-11rel:R23-11#df69c0c42026-10-14
  • R24-11rel:R24-11#0a4f51072026-10-14
  • R25-11rel:R25-11#7692df5e2026-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

function VerifyCertificateBidirectional [SWS_DM_01127] Upstream: RS_Diag_04251, RS_AP_00128

virtual ara::core::Future< std::tuple< ara::core::Vector< ara::core::Byte >, ara::core::Vector< ara::core::Byte >, ara::core::Vector< ara::core::Byte >, ara::core::Vector< ara::core::Byte > > > VerifyCertificateBidirectional (ara::core::Byte communicationConfiguration, ara::core::Span< const ara::core::Byte > clientCertificate, ara::core::Span< const ara::core::Byte > client Challenge, const MetaInfo &metaInfo, CancellationHandler cancellation Handler) noexcept=0;

This function accepts the certificate and challenge received from the tester, verifies the certificate, and creates a challenge, Ephemeral Public Key and Proof Of Ownership that must be returned to the tester. The function also returns the server certificate that will be used by the tester to verify the Proof Of Ownership. This callback may be called re-entrant to requests from different clients.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 96bce3dceaab Provenance
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The pure virtual callback method VerifyCertificateBidirectional of interface ara::diag::Authentication ([SWS_DM_01127]) is called by the Diagnostic Server as soon as a diagnostic request for UDS service 0x29 (Authentication) with sub-function 0x02 (verifyCertificateBidirectional) arrives and the initial checks have been passed successfully ([SWS_DM_01235], AUTOSAR_AP_SWS_Diagnostics §7.3.2.8.11.3 “Service 0x29 – verifyCertificateBidirectional (0x02)”).

Usage and semantics: The server passes the communication configuration and the certificate and challenge data received from the tester via communicationConfiguration, clientCertificate, and clientChallenge together with metaInfo and the cancellationHandler ([SWS_DM_01127], [SWS_DM_01235]). The buffers of the input spans remain valid until the returned ara::core::Future is satisfied via the associated promise or the operation is cancelled ([SWS_DM_01127]). Asynchronously, the method returns a 4-tuple consisting of server challenge, server certificate, calculated proof of ownership, and the ephemeral public key of the server to the Diagnostic Server ([SWS_DM_01127]).

Cancellation and concurrency: Via cancellationHandler, the application can poll the current status using IsCanceled or register a notification function for connection termination via SetNotifier ([SWS_DM_01127]). The interface is defined as noexcept and may be called reentrantly with respect to requests from different clients ([SWS_DM_01127]). Whether the implementation must be thread-safe is determined via the ConcurrencyType passed in the constructor ([SWS_DM_01127]).

Error handling and interaction: In the error case, the application returns an appropriate NRC in accordance with ISO 14229-1 via DiagUdsNrcErrc; negative return values are processed separately by the Diagnostic Server ([SWS_DM_01127], [SWS_DM_01236]). Within UDS authentication ([SWS_DM_01226]), configuration of this sub-function forms a necessary prerequisite if DiagnosticProofOfOwnership is configured ([SWS_DM_01227], [SWS_DM_01228]).

Note: These notes were generated automatically on the basis of specification AUTOSAR AP R25-11.

Implementer's Guide to follow (complexity I2)

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication
Exception-Sicherheitexception safe
Thread-Sicherheitconditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor

Parameter (in)

ParameterBeschreibung
communicationConfigurationAs defined in ISO 14229-1:2020, this parameter provides information about how to proceed with security in further diagnostic communication after the Authentication.
clientCertificateThe certificate that is received from the tester during Bidirectional Authentication. Lifetime: Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler.
clientChallengeAs defined in ISO14229-1:2020, this parameter provides the challenge received from the tester during Bidirectional Authentication, Lifetime: Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler.
metaInfoMetaInfo of the request.
cancellationHandlerThis parameter is used to • Query the current cancellation status by calling cancellationHandler.IsCanceled. Returns TRUE in case, the current conversation has been cancelled and FALSE otherwise. • Register a notifier function by calling cancellationHandler.SetNotifier. The registered notifier is called if the current conversation is cancelled.

Rückgabewert

TypBeschreibung
ara::core::Future<std::tuple<ara::core::Vector<ara::core::Vector<ara::core::Vector<ara::core::Vector<ara::core::Byte >, ara::core::Byte >, ara::core::Byte >, ara::core::Byte > > >Returns the challenge created by the application, Certificate of the server, ProofOfOwnership calculated by the server, Ephemeral Public Key of server.

Fehler

FehlercodeBeschreibung
Please use an applicable NRC, as defined in ISO 14229-1, using DiagUdsNrcErrc.

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

Record
AUTOSAR/AP/record/SWS_DM_01127
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01127@rel:R25-11#1a83c676
Content hash
1a83c676
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01127
Status: valid/unmigrated Version: rel:R25-11#221a1952 Versionshistorie & Revisions (1 transition, 6 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_01127@rel:R25-11#221a1952
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#1a83c6762026-09-30
  • R21-11rel:R21-11#709ba10b2026-10-14
  • R22-11rel:R22-11#f6afc01a2026-10-14
  • R23-11rel:R23-11#9b3be6d92026-10-14
  • R24-11rel:R24-11#53b61fdb2026-10-14
  • R25-11rel:R25-11#221a19522026-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

function VerifyCertificateUnidirectional [SWS_DM_01126] Upstream: RS_Diag_04251, RS_AP_00128

virtual ara::core::Future< std::tuple< ara::core::Vector< ara::core::Byte >, ara::core::Vector< ara::core::Byte > > > Verify CertificateUnidirectional (ara::core::Byte communicationConfiguration, ara::core::Span< const ara::core::Byte > clientCertificate, ara::core::Span< const ara::core::Byte > clientChallenge, const Meta Info &metaInfo, CancellationHandler cancellationHandler) noexcept=0;

This function accepts the certificate received from the tester, verifies it, and creates a challenge and ephemeral public key that must be returned to the tester. This callback may be called re-entrant to requests from different clients

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 880414da5993 Provenance
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The callback method VerifyCertificateUnidirectional of class ara::diag::Authentication is called by the Diagnostic Server instance as soon as a request for UDS service 0x29 with sub-function verifyCertificateUnidirectional (0x01) has been received and successfully pre-checked (SWS Diagnostics §7.3.2.8.11.2 “Service 0x29 – verifyCertificateUnidirectional (0x01)”, [SWS_DM_01230]). It implements unidirectional authentication via PKI certificate exchange in accordance with ISO 14229-1 ([SWS_DM_01226]).

As parameters, the communication configuration (communicationConfiguration), the client certificate (clientCertificate), and the client challenge (clientChallenge) as well as meta information and a CancellationHandler are passed ([SWS_DM_01126]). The passed spans remain valid until the returned ara::core::Future is satisfied or processing is cancelled via the handler. The method asynchronously returns a tuple consisting of the generated server challenge and the ephemeral public key of the server ([SWS_DM_01126]).

If an error occurs during validation, the future must be completed with an appropriate negative response code (NRC) via DiagUdsNrcErrc ([SWS_DM_01126]).

The function is specified as exception safe and may be called reentrantly for requests from different diagnostic clients ([SWS_DM_01126]). Thread safety is conditional; whether the implementation must be thread-safe is determined by the ConcurrencyType specified in the constructor ([SWS_DM_01126]). In the overall process, configuration of this check is a mandatory prerequisite if sub-function DiagnosticProofOfOwnership is configured ([SWS_DM_01227]).

This usage note was generated automatically based on specification AUTOSAR AP R25-11.

Implementer's Guide to follow (complexity I2)

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication
Exception-Sicherheitexception safe
Thread-Sicherheitconditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor

Parameter (in)

ParameterBeschreibung
communicationConfigurationAs defined in ISO14229-1:2020 [1], this parameter provides information about how to proceed with security in further diagnostic communication after the Authentication.
clientCertificateThe certificate that is received from the tester during Unidirectional Authentication. Lifetime: Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler.
clientChallengeAs defined in ISO14229-1:2020 [1], this parameter provides the challenge received fom the tester during Unidirectional Authentication. This parameter has a dependency on the CommunicationConfiguration used. Lifetime: Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler.
metaInfoMetaInfo of the request.
cancellationHandlerThis parameter is used to • Query the current cancellation status by calling cancellationHandler.IsCanceled. Returns TRUE in case, the current conversation has been cancelled and FALSE otherwise. • Register a notifier function by calling cancellationHandler.SetNotifier. The registered notifier is called if the current conversation is cancelled.

Rückgabewert

TypBeschreibung
ara::core::Future<std::tuple<ara::core::Vector<ara::core::Vector<ara::core::Byte >, ara::core::Byte > > >Returns challenge created by the application, Ephemeral PublicKey of Server

Fehler

FehlercodeBeschreibung
Please use an applicable NRC, as defined in ISO 14229-1, using DiagUdsNrcErrc.

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

Record
AUTOSAR/AP/record/SWS_DM_01126
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01126@rel:R25-11#891430be
Content hash
891430be
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01126
Status: valid/unmigrated Version: rel:R25-11#5b0bedab Versionshistorie & Revisions (1 transition, 6 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_01126@rel:R25-11#5b0bedab
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#891430be2026-09-30
  • R21-11rel:R21-11#6b67e2b92026-10-14
  • R22-11rel:R22-11#96d86c762026-10-14
  • R23-11rel:R23-11#6ec11ca22026-10-14
  • R24-11rel:R24-11#334a55a52026-10-14
  • R25-11rel:R25-11#5b0bedab2026-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

function VerifyOwnership [SWS_DM_01128] Upstream: RS_Diag_04251, RS_AP_00128

virtual ara::core::Future< ara::core::Vector< ara::core::Byte > > VerifyOwnership (ara::core::Span< const ara::core::Byte > clientPOWN, ara::core::Span< const ara::core::Byte > clientEphemeralPublicKey, const MetaInfo &metaInfo, CancellationHandler cancellationHandler) noexcept=0;

This function accepts the Proof Of Ownership received from the tester and verifies it with the Public Key of the certificate received in the verifyCertificateUnidirectional / verifyCertificate Bidirectional against the server challenge created in the last call to verifyCertificateUnidirectional / verifyCertificateBidirectional.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 395c9e79b3c8 Provenance
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

Usage and Call Context

The pure virtual method VerifyOwnership of class ara::diag::Authentication is called by the Diagnostic Server as soon as an authentication request of UDS service 0x29 with subfunction proofOfOwnership (0x03) has been received and the preparatory checks have succeeded [SWS_DM_01240]. The task of the implementation is to verify the proof of ownership transmitted by the tester against the generated server challenge using the public key from the previously exchanged client certificate [SWS_DM_01128].

Upon invocation, the Diagnostic Server passes the relevant cryptographic input data and context objects AUTOSAR_AP_SWS_Diagnostics §8.3.1.1.3.5 “VerifyOwnership”:

  • clientPOWN: Contains the proof of ownership provided by the diagnostic tester for the previous server challenge.
  • clientEphemeralPublicKey: The client's ephemeral public key for Diffie-Hellman key agreement according to ISO 14229-1:2020.
  • metaInfo: Meta-information of the current diagnostic request.
  • cancellationHandler: Allows querying a possible cancellation (cancellationHandler.IsCanceled) as well as registering a notification function (cancellationHandler.SetNotifier).

The function operates asynchronously and returns a ara::core::Future, which provides the session key information as a byte vector in case of success [SWS_DM_01128].

Error handling

If the ownership check cannot be performed successfully, the application sets a matching negative UDS return value (NRC) according to ISO 14229-1 via DiagUdsNrcErrc in the returned future [SWS_DM_01128]. If the method returns such a defined error code, the Diagnostic Server sends a negative response with the corresponding NRC to the client [SWS_DM_01241].

Concurrency and Constraints

The interface is defined as noexcept. Regarding thread safety, the behavior is considered conditional (conditional): whether the method must be implemented thread-safe is determined by the ConcurrencyType specified during the construction of the instance [SWS_DM_01128]. For the buffers clientPOWN and clientEphemeralPublicKey, it is ensured that their memory area remains valid until the promise is fulfilled or processing is canceled via the cancellationHandler [SWS_DM_01128].

This usage note was generated automatically based on the AUTOSAR AP R25-11 specification.

Implementer's Guide to follow (complexity I1)

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication
Exception-Sicherheitexception safe
Thread-Sicherheitconditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor

Parameter (in)

ParameterBeschreibung
clientPOWNThe Proof Of Ownership provided by the Tester to the previously exchanged Server Challenge, Lifetime: Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler.
clientEphemeralPublicKeyAs defined in ISO14229-1:2020, this is the Ephemeral public key generated by the client for Diffie-Hellman key agreement, Lifetime: Valid until Promise is fulfilled or the processing is cancelled by the cancellationHandler.
metaInfoMetaInfo of the request.
cancellationHandlerThis parameter is used to • Query the current cancellation status by calling cancellationHandler.IsCanceled. Returns TRUE in case, the current conversation has been cancelled and FALSE otherwise. • Register a notifier function by calling cancellationHandler.SetNotifier. The registered notifier is called if the current conversation is cancelled.

Rückgabewert

TypBeschreibung
ara::core::Future<ara::core::Vector<ara::core::Byte > >Session Key Info or error

Fehler

FehlercodeBeschreibung
Please use an applicable NRC, as defined in ISO 14229-1, using DiagUdsNrcErrc.

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

Record
AUTOSAR/AP/record/SWS_DM_01128
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01128@rel:R25-11#6c1fffad
Content hash
6c1fffad
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01128
Status: valid/unmigrated Version: rel:R25-11#d5b901ef Versionshistorie & Revisions (1 transition, 6 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_01128@rel:R25-11#d5b901ef
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#6c1fffad2026-09-30
  • R21-11rel:R21-11#c3b0498c2026-10-14
  • R22-11rel:R22-11#aabbb0bc2026-10-14
  • R23-11rel:R23-11#57ff671b2026-10-14
  • R24-11rel:R24-11#4d4d184a2026-10-14
  • R25-11rel:R25-11#d5b901ef2026-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

function operator= [SWS_DM_01607] Upstream: RS_AP_00147

Authentication & operator= (Authentication &)=delete;

Authentication shall be a single not assignable instance.

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication

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

Record
AUTOSAR/AP/record/SWS_DM_01607
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01607@rel:R25-11#bbae8210
Content hash
bbae8210
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01607
Status: valid/unmigrated Version: rel:R25-11#e43ad077 Versionshistorie & Revisions (1 transition, 4 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_01607@rel:R25-11#e43ad077
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#bbae82102026-09-30
  • R23-11rel:R23-11#a480b8c62026-10-14
  • R24-11rel:R24-11#e43ad0772026-10-14
  • R25-11rel:R25-11#e43ad0772026-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

function operator= [SWS_DM_01608] Upstream: RS_AP_00147

Authentication & operator= (Authentication &&)=delete;

Move assignment operator of Authentication.

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication

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

Record
AUTOSAR/AP/record/SWS_DM_01608
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01608@rel:R25-11#58f113cc
Content hash
58f113cc
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01608
Status: valid/unmigrated Version: rel:R25-11#7761b325 Versionshistorie & Revisions (1 transition, 4 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_01608@rel:R25-11#7761b325
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#58f113cc2026-09-30
  • R23-11rel:R23-11#5ce3d7fa2026-10-14
  • R24-11rel:R24-11#7761b3252026-10-14
  • R25-11rel:R25-11#7761b3252026-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

function ~Authentication [SWS_DM_01125] Upstream: RS_Diag_04251

virtual ~Authentication () noexcept;

Destructor of Authentication.

AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: d82e30be663a Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

The virtual destructor ~Authentication() terminates the lifecycle of an instance of class ara::diag::Authentication and releases its resources [SWS_DM_01125]. The method is declared in header file #include "ara/diag/authentication.h" of module Diagnostics AUTOSAR_AP_SWS_Diagnostics §8.3.1.1.1.3 “Destructor”.

The function takes no parameters, returns no return value, and is called synchronously when destructing the object [SWS_DM_01125]. Qualification as virtual ensures that in polymorphic deletion via pointers or references to base classes, resources of derived classes are also properly cleaned up.

With regard to error handling, the method is specified as exception safe and bears the specifier noexcept [SWS_DM_01125]. Error or status codes are not returned, and it is guaranteed that no C++ exceptions escape to the outside.

Regarding concurrency, ~Authentication() is classified as not thread-safe [SWS_DM_01125]. Destruction must therefore under no circumstances occur concurrently with other method calls on the same instance. Interpretation: The using application is likely required to complete all ongoing authentication or diagnostic operations prior to destruction and to protect the call externally against concurrent accesses. Question Q-41b1c115c1056759 (open) The destructor implements the upstream requirement RS_Diag_04251 AUTOSAR_AP_SWS_Diagnostics §8.3.1.1.1.3 “Destructor”.

This text was generated by an AI system and editorially reviewed.

Implementer's Guide to follow (complexity I1)

Header-Datei#include "ara/diag/authentication.h"
Scopeclass ara::diag::Authentication
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

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

Record
AUTOSAR/AP/record/SWS_DM_01125
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01125@rel:R25-11#f87a1af6
Content hash
f87a1af6
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01125
Status: valid/unmigrated Version: rel:R25-11#4da26eb6 Versionshistorie & Revisions (1 transition, 6 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_01125@rel:R25-11#4da26eb6
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#f87a1af62026-09-30
  • R21-11rel:R21-11#340e99022026-10-14
  • R22-11rel:R22-11#f53657532026-10-14
  • R23-11rel:R23-11#b44955282026-10-14
  • R24-11rel:R24-11#fbd031862026-10-14
  • R25-11rel:R25-11#4da26eb62026-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