DEENESPTFRRUARHIKOZHNL

classe ara::diag::TransmitCertificate

[SWS_DM_01961] Upstream: RS_Diag_04251

class TransmitCertificate {...};

Class to implement the subfunction TransmitCertificate (29 04) of UDS service Authentication as interface to application. This class implements a so called generic interface, where the application has means to handle one ore more certificateEvaluationId transferred certificates.

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

Guide utilisateurGÉNÉRÉ PAR IA

Permet à l'application de recevoir et de vérifier des certificats de diagnostic dans le service UDS Authentication.
GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 82e724c2cab7 Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Permet à l'application de recevoir et de vérifier des certificats de diagnostic dans le service UDS Authentication.

La classe ara::diag::TransmitCertificate implémente l'interface applicative pour la sous-fonction UDS TransmitCertificate (0x29 0x04) du service Authentication [SWS_DM_01961]. Après la mise à disposition via Offer(), l'application reçoit les données de certificat transmises dans la méthode asynchrone Process() et lance la vérification spécifique à l'application [SWS_DM_01968]. En cas de vérification réussie, le Diagnostic Management déclenche une réponse positive UDS avec le paramètre de retour 0x13 (CertificateVerified), tandis que les erreurs font l'objet d'une réponse négative avec le NRC correspondant. L'instance est liée de manière fixe à une interface de port et ne doit être ni copiée ni déplacée.

Contexte

La classe ara::diag::TransmitCertificate [SWS_DM_01961] dans l'en-tête ara/diag/transmit_certificate.h (AUTOSAR_AP_SWS_Diagnostics §8.26 « Header: ara/diag/transmit_certificate.h ») représente l'interface de l'application Adaptive pour la réalisation de la sous-fonction UDS TransmitCertificate (0x29 0x04) du service Authentication. En tant qu'interface générique, elle permet à l'application de recevoir et de traiter un ou plusieurs certificats transmis à l'aide d'un identifiant 16 bits (certificateEvaluationId).

Trois composants principaux participent à l'interaction :

  • Le testeur de diagnostic externe, qui envoie la requête UDS de transmission de certificat au véhicule [SWS_DM_01968].
  • Le Diagnostic Server (Diagnostic Management, DM) de l'Adaptive Platform, qui filtre les requêtes de diagnostic entrantes, les transmet et génère les réponses UDS finales [SWS_DM_01251], [SWS_DM_01969].
  • L'application Adaptive, qui fournit une instance dérivée de ara::diag::TransmitCertificate, effectue la vérification du certificat et renvoie le résultat de manière asynchrone au serveur [SWS_DM_01968].
TransmitCertificateKontext Tester Tester DiagnosticServer DiagnosticServer Tester->DiagnosticServer UDS-Anfrage 0x29 04 DiagnosticServer->Tester Positive / Negative UDS-Antwort TransmitCertificate TransmitCertificate DiagnosticServer->TransmitCertificate Weiterleitung via Process() TransmitCertificate->DiagnosticServer Dienststeuerung via Offer() / StopOffer()

Diagramme de contexte : composants impliqués lors de la transmission de certificat via UDS 0x29 04. Sources : [SWS_DM_01968], [SWS_DM_01969], AUTOSAR_AP_SWS_Diagnostics §7.3.2.8 « Successful verification of transmitCertificate ».

Cycle de vie

Les instances de ara::diag::TransmitCertificate sont créées via le constructeur en spécifiant un ara::core::InstanceSpecifier ainsi que le mode de concurrence ConcurrencyType [SWS_DM_01962]. Le InstanceSpecifier doit faire référence dans le manifeste à un PortPrototype typé par un DiagnosticTransmitCertificateInterface [SWS_DM_01962]. Si cette association échoue ou si l'identifiant d'instance est utilisé plusieurs fois dans le processus actuel, des violations à l'exécution telles que InstanceSpecifierMappingIntegrityViolation, PortInterfaceMappingViolation, ProcessMappingViolation ou InstanceSpecifierAlreadyInUseViolation se produisent [SWS_DM_01962].

La classe est soumise à des règles strictes de possession et d'instanciation : un gestionnaire d'authentification est conçu comme une instance unique, non copiable et non déplaçable. En conséquence, le constructeur de copie [SWS_DM_01964], l'opérateur d'assignation par copie [SWS_DM_01966] ainsi que le constructeur de déplacement [SWS_DM_01963] et l'opérateur d'assignation par déplacement [SWS_DM_01965] sont explicitement supprimés (=delete).

Le constructeur lui-même est spécifié comme étant thread-safe et sûr vis-à-vis des exceptions [SWS_DM_01962]. La libération s'effectue via le destructeur virtuel standard [SWS_DM_01967]. La nécessité d'implémenter la méthode d'exécution proprement dite Process de manière thread-safe dépend du concurrencyType sélectionné (kConcurrent ou kNotConcurrent) [SWS_DM_01962], [SWS_DM_01968].

Parcours d'utilisation

Le déroulement standard comprend l'enregistrement du gestionnaire, le traitement des certificats entrants et la désinscription ultérieure :

  1. Proposer le service (Offer) : l'application appelle Offer() pour signaler au Diagnostic Management que les requêtes destinées à l'interface configurée peuvent être transmises à ce gestionnaire [SWS_DM_01969].
  2. Recevoir la requête (Process) : lorsqu'une requête UDS de la sous-fonction TransmitCertificate parvient au Diagnostic Server, celui-ci transmet les données à la méthode virtuelle pure Process() de l'application [SWS_DM_01968]. La méthode reçoit l'identifiant 16 bits certificateEvaluationId, les données brutes du certificat sous la forme de ara::core::Span<ara::core::Byte const>, des métadonnées (metaInfo) ainsi qu'un cancellationHandler [SWS_DM_01968].
  3. Évaluation et action : AUTOSAR n'imposant aucune sémantique fixe pour les certificats, la vérification et la déduction des mesures requises incombent entièrement à l'application [SWS_DM_01968]. Interprétation : l'application devrait typiquement vérifier le certificat transmis sur le plan cryptographique ou l'utiliser pour mettre à jour un magasin de clés interne. Question Q-34844f9257d074c6 (ouverte)
  4. Transmission du résultat : la méthode renvoie un ara::core::Future<void> [SWS_DM_01968]. Si l'application termine le futur avec succès sans erreur, le Diagnostic Server transmet une réponse positive UDS au testeur, dans laquelle le paramètre authenticationReturnParameter (RV) est défini à la valeur 0x13 (CertificateVerified) [SWS_DM_01251] (AUTOSAR_AP_SWS_Diagnostics §7.3.2.8 « Successful verification of transmitCertificate »).
  5. Arrêter le service (StopOffer) : si le gestionnaire ne doit plus recevoir de requêtes, l'application interrompt la transmission en appelant StopOffer() [SWS_DM_01970].
Déroulement du transfert de certificatTesterDiagnosticServerTransmitCertificateOffer()Result<void>Use Case: Transmission de certificat (UDS 0x29 04)UDS-Anfrage 0x29 04(certificateEvaluationId, certificateData)Process(certificateEvaluationId, certificateData, metaInfo, cancellationHandler)Vérification du certificat / Déduire l'actionaltVerifizierung erfolgreichFuture<void> rempliPositive Response (RV 0x13 CertificateVerified)Verifizierung fehlgeschlagenFuture<void> avec DiagUdsNrcErrcNegative Response (NRC)Use Case: Dienstangebot beendenStopOffer()

Diagramme de séquence : déroulement typique de la transmission de certificat, de Offer jusqu'à la réponse UDS. Sources : [SWS_DM_01968], [SWS_DM_01969], [SWS_DM_01970], [SWS_DM_01249], [SWS_DM_01251].

Scénarios d'erreur

Des états d'erreur peuvent survenir lors de différentes phases du cycle de vie :

  • Offre déjà active : si Offer() est appelé alors que le service est déjà activement proposé pour cette instance, l'appel échoue et renvoie dans ara::core::Result<void> le code d'erreur DiagOfferErrc::kAlreadyOffered avec une sémantique de rollback [SWS_DM_01969]. Offer() et StopOffer() ne sont pas thread-safe et ne doivent pas être appelés de manière concurrente [SWS_DM_01969], [SWS_DM_01970].
  • Échec de la vérification du certificat : si l'application détecte une erreur lors de l'évaluation dans Process(), elle termine le futur avec un code d'erreur correspondant issu de DiagUdsNrcErrc selon l'ISO 14229-1 [SWS_DM_01968]. Le Diagnostic Server intercepte cette valeur de retour et envoie une réponse de diagnostic négative (Negative Response) au testeur, dont le code de réponse négative (NRC) correspond exactement au code d'erreur transmis [SWS_DM_01249] (AUTOSAR_AP_SWS_Diagnostics §7.3.2.8 « Handling Negative return values of ara::diag::TransmitCertificate::Process method »).
  • Interruption de conversations en cours : pendant le traitement asynchrone, l'application peut interroger l'état via cancellationHandler.IsCanceled() afin de déterminer si la conversation de diagnostic a été interrompue [SWS_DM_01968]. De plus, une fonction de rappel peut être enregistrée via cancellationHandler.SetNotifier(...) afin d'être notifiée immédiatement en cas d'interruption [SWS_DM_01968].

Ce guide se base sur la spécification AUTOSAR Adaptive Platform R25-11 (module diag) et a été élaboré à l'aide d'une IA.

Carte des membres

Constructeurs et destructeur

2

Opérateurs

1

Diagramme de classes

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

G nara__diag__TransmitCertificate785 TransmitCertificate + TransmitCertificate() + operator=() + ~TransmitCertificate() + Offer() + Process() + StopOffer()

Vue détaillée

Sélectionnez une entrée dans le plan.

Constructeurs et destructeur

Constructor of TransmitCertificate.

Surcharges TransmitCertificate 3
explicit TransmitCertificate (const ara::core::InstanceSpecifier &specifier, ConcurrencyType concurrencyType) noexcept; SWS_DM_01962
TransmitCertificate (TransmitCertificate &&) noexcept=delete; SWS_DM_01963
TransmitCertificate (TransmitCertificate &)=delete; SWS_DM_01964

Destructor of TransmitCertificate.

virtual ~TransmitCertificate () noexcept=default;

Méthodes

Offer fonction

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

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

This method is used to process certificates send by a diagnostic tester, via the UDS subfunction TransmitCertificate inside the application. There is no specific semantics for the certificate and it is left to the application to process the received certificate and derive the needed actions.

virtual ara::core::Future< void > Process (std::uint16_t certificate EvaluationId, ara::core::Span< ara::core::Byte const > certificate Data, const MetaInfo &metaInfo, CancellationHandler cancellation Handler) noexcept=0;
StopOffer fonction

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

void StopOffer () noexcept;

Opérateurs

operator= fonction 2

Move assignment operator of TransmitCertificate.

Surcharges = 2

Documentation des méthodes

fonction Offer [SWS_DM_01969] Upstream: RS_Diag_04251

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

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

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : db62dd9c27e2 Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Via la méthode Offer, une Adaptive Application active le transfert des requêtes de diagnostic par le Diagnostic Management (DM) vers le gestionnaire compétent de la classe ara::diag::TransmitCertificate [SWS_DM_01969]. L'appel s'effectue de manière synchrone et sans paramètre ; l'interface est définie comme sûre du point de vue des exceptions (noexcept) [SWS_DM_01969]. Le type de retour utilisé est ara::core::Result<void>, ce qui permet de transmettre à l'appelant le succès de l'enregistrement ou un état d'erreur [SWS_DM_01969].

Si la fonction a déjà été appelée auparavant pour l'instance de gestionnaire concernée, un nouvel appel échoue et renvoie l'erreur spécifique DiagOfferErrc::kAlreadyOffered avec une sémantique de rollback [SWS_DM_01969], laquelle correspond à la valeur d'erreur standardisée dans DiagErrc [SWS_DM_00514]. La méthode étant explicitement spécifiée comme non thread-safe [SWS_DM_01969], les accès parallèles sur la même instance doivent être évités (interprétation : la protection contre les appels concurrents incombe au logiciel applicatif). Question Q-b44b11a0a2dcb2b4 (ouverte)

Le modèle de fonctionnement de Offer suit le concept uniforme de mise à disposition des gestionnaires de diagnostic, tel qu'il est également appliqué pour ara::diag::Authentication::Offer [SWS_DM_01130], ara::diag::CommunicationControl::Offer [SWS_DM_00809] ou ara::diag::GenericRoutine::Offer [SWS_DM_00557]. AUTOSAR précise que malgré une dénomination similaire inspirée de ara::com, il s'agit d'une implémentation de diagnostic indépendante (AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 « Monitors »). Avant la mise à disposition par Offer, le DM ne transfère aucune requête au gestionnaire, à l'instar des services DoIP qui sont considérés comme non prêts avant l'appel [SWS_DM_01525].

Cette note d'utilisation a été générée de manière automatisée et est basée sur les spécifications de la version R25-11.

Guide de l'implémenteur à venir (complexité I1)

Header-Datei#include "ara/diag/transmit_certificate.h"
Scopeclass ara::diag::TransmitCertificate
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_01969
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01969@rel:R25-11#78d63b1d
Content hash
78d63b1d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01969
Status: valid/unmigrated Version: rel:R25-11#b76c9464 Versionshistorie & Revisions (1 transition, 3 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_01969@rel:R25-11#b76c9464
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#3e7453c82026-09-30
  • R24-11rel:R24-11#bec87af22026-10-14
  • R25-11rel:R25-11#b76c94642026-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

fonction Process [SWS_DM_01968] Upstream: RS_Diag_04251

virtual ara::core::Future< void > Process (std::uint16_t certificate EvaluationId, ara::core::Span< ara::core::Byte const > certificate Data, const MetaInfo &metaInfo, CancellationHandler cancellation Handler) noexcept=0;

This method is used to process certificates send by a diagnostic tester, via the UDS subfunction TransmitCertificate inside the application. There is no specific semantics for the certificate and it is left to the application to process the received certificate and derive the needed actions.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : d261181b4bb6 Provenance
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La méthode Process de la classe d'interface ara::diag::TransmitCertificate sert au traitement interne à l'application des certificats transmis par un testeur de diagnostic dans le cadre du service UDS 0x29 (Authentication) via la sous-fonction TransmitCertificate (0x04) [SWS_DM_01968], AUTOSAR_AP_SWS_Diagnostics §7.3.2.8.11.5 « Service 0x29 – transmitCertificate (0x04) ». Comme AUTOSAR ne prescrit aucune sémantique spécifique pour le certificat, la vérification du contenu et la déduction des actions requises incombent entièrement à l'application [SWS_DM_01968].

La méthode est appelée de manière asynchrone et accepte les paramètres suivants [SWS_DM_01968] :

  • certificateEvaluationId : identifiant d'évaluation 16 bits issu du message de requête UDS, destiné à identifier l'évaluation du certificat [SWS_DM_01968], [SWS_DM_01247].
  • certificateData : données de certificat transmises par le testeur sous forme de ara::core::Span<ara::core::Byte const> [SWS_DM_01968].
  • metaInfo : méta-informations relatives à la requête de diagnostic [SWS_DM_01968].
  • cancellationHandler : permet d'interroger l'état d'interruption via cancellationHandler.IsCanceled() ainsi que d'enregistrer une notification via cancellationHandler.SetNotifier() en cas d'interruption prématurée de la conversation de diagnostic [SWS_DM_01968].

Le retour s'effectue de manière asynchrone sous forme de ara::core::Future<void> [SWS_DM_01968]. Si le traitement échoue, un code de réponse négatif (NRC) approprié selon l'ISO 14229-1 doit être mis à disposition via DiagUdsNrcErrc [SWS_DM_01968]. La fonction est déclarée comme noexcept et est sûre du point de vue des exceptions (exception safe) [SWS_DM_01968].

La sécurité des threads est conditionnelle (conditional) : elle dépend du ConcurrencyType transmis au constructeur de ara::diag::TransmitCertificate [SWS_DM_01968]. Avant le transfert, le gestionnaire de diagnostic valide la requête à l'aide de la certificateEvaluationId [SWS_DM_01247].

Cette note d'utilisation a été générée automatiquement sur la base de la spécification AUTOSAR R25-11.

Guide de l'implémenteur à venir (complexité I1)

Header-Datei#include "ara/diag/transmit_certificate.h"
Scopeclass ara::diag::TransmitCertificate
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
certificateEvaluationIdRepresents the 16bit certificate evaluation ID as part of the UDS request message
certificateDataCertificate to be verified, transmitted by the tester
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< void >void

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_01968
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01968@rel:R25-11#833404cf
Content hash
833404cf
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01968
Status: valid/unmigrated Version: rel:R25-11#2f57ac3d Versionshistorie & Revisions (1 transition, 3 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_01968@rel:R25-11#2f57ac3d
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#80309d8f2026-09-30
  • R24-11rel:R24-11#2e314ad32026-10-14
  • R25-11rel:R25-11#2f57ac3d2026-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

fonction StopOffer [SWS_DM_01970] Upstream: RS_Diag_04251

void StopOffer () noexcept;

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

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 7da07a83c1d7 Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La méthode StopOffer de la classe ara::diag::TransmitCertificate ([SWS_DM_01970]) met fin à la mise à disposition du service de transfert de certificats pour le Diagnostic Management (DM). L'appel désactive le transfert des messages de requête de diagnostic entrants du DM vers ce gestionnaire ([SWS_DM_01970]).

Utilisation et sémantique

L'appel s'effectue sans paramètre via la signature void StopOffer() noexcept; du fichier d'en-tête ara/diag/transmit_certificate.h ([SWS_DM_01970]). La fonction ne renvoie aucune valeur et est spécifiée comme noexcept ainsi qu'exception safe ([SWS_DM_01970]), de sorte qu'il est garanti qu'elle ne lève aucune exception.

Concurrence et restrictions

La méthode est explicitement spécifiée comme not thread-safe ([SWS_DM_01970]). Les appelants doivent donc s'assurer que les appels concurrents sur la même instance de ara::diag::TransmitCertificate sont synchronisés par des mécanismes externes. Interprétation : StopOffer devrait être appelée avant la destruction d'une instance de service ou lors d'une désactivation temporaire, afin d'empêcher l'arrivée de nouvelles requêtes pendant le changement d'état. Question Q-9ab97301565c5bf9 (ouverte)

Interaction

Le concept correspond au modèle standardisé du DM pour la désactivation du transfert de messages, tel qu'il est également défini dans des interfaces associées comme [SWS_DM_00767] (SecurityAccess), [SWS_DM_00810] (CommunicationControl) ou [SWS_DM_01017] (EcuResetRequest). Bien que cette implémentation de diagnostic spécifique au constructeur partage la nomenclature du framework de communication, elle doit être distinguée de ara::com (AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 « Monitors »). L'élément sert à satisfaire l'exigence en amont RS_Diag_04251, sur laquelle repose également l'interface d'authentification (AUTOSAR_AP_SWS_Diagnostics §8.3.1.1.3.2 « StopOffer » ; [SWS_DM_01131]).

Ce texte a été généré par un système d'IA sur la base des documents de spécification.

Guide de l'implémenteur à venir (complexité I2)

Header-Datei#include "ara/diag/transmit_certificate.h"
Scopeclass ara::diag::TransmitCertificate
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_01970
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01970@rel:R25-11#dd49a23e
Content hash
dd49a23e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01970
Status: valid/unmigrated Version: rel:R25-11#e825f7c2 Versionshistorie & Revisions (1 transition, 3 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_01970@rel:R25-11#e825f7c2
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#27dc0f262026-09-30
  • R24-11rel:R24-11#7f4933e22026-10-14
  • R25-11rel:R25-11#e825f7c22026-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

fonction TransmitCertificate [SWS_DM_01962] Upstream: RS_Diag_04251, RS_AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

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

Constructor of TransmitCertificate.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : b553bcd9da3e Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Le constructeur initialise une instance de la classe ara::diag::TransmitCertificate pour le traitement de certificats dans le cadre du service UDS 0x29 (sous-fonction TransmitCertificate) [SWS_DM_01962].

Utilisation

L'appel s'effectue de manière synchrone et est spécifié comme noexcept ainsi que exception safe [SWS_DM_01962]. Deux paramètres sont transmis lors de l'appel :

  • specifier : un ara::core::InstanceSpecifier qui doit faire référence à un PortPrototype qui est typé dans le manifeste via un DiagnosticAuthenticationPortMapping vers un DiagnosticTransmitCertificateInterface [SWS_DM_01962].
  • concurrencyType : détermine via kConcurrent ou kNotConcurrent si l'interface autorise des appels concurrents de la méthode virtuelle Process ou si elle doit être traitée séquentiellement [SWS_DM_01962], [SWS_DM_01968].

Gestion des erreurs et conditions limites

La création de l'objet est thread-safe [SWS_DM_01962]. Comme une instance d'authentification doit être unique, les constructeurs de copie et de déplacement ainsi que les opérateurs d'affectation sont explicitement supprimés [SWS_DM_01963], [SWS_DM_01964], [SWS_DM_01965], [SWS_DM_01966]. En cas d'erreurs de configuration dans le manifeste ou d'utilisation en double d'un identifiant, des violations sont signalées (telles que InstanceSpecifierMappingIntegrityViolation, PortInterfaceMappingViolation, ProcessMappingViolation ou InstanceSpecifierAlreadyInUseViolation) [SWS_DM_01962]. Comme le constructeur ne lève aucune exception, ces messages devraient être signalés via le reporting d'exécution du framework ara. Question Q-140f1e794355ad96 (ouverte)

Interaction

Après la construction, l'instance doit être libérée au moyen de Offer() afin que le démon Diagnostic Management transfère les requêtes [SWS_DM_01969]. En cas de traitement réussi via Process(), le serveur répond positivement avec le paramètre CertificateVerified (0x13) [SWS_DM_01251], tandis que les erreurs entraînent des réponses UDS négatives [SWS_DM_01249]. Avec StopOffer(), le transfert est terminé [SWS_DM_01970].

Ce texte a été généré par une IA et sert de guide d'orientation. Seules les spécifications officielles d'AUTOSAR font foi.

Guide de l'implémenteur à venir (complexité I3)

Header-Datei#include "ara/diag/transmit_certificate.h"
Scopeclass ara::diag::TransmitCertificate
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 DiagnosticTransmitCertificateInterface. 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 DiagnosticTransmitCertificateInterface service instance in the manifest.
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_01962
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01962@rel:R25-11#971889c1
Content hash
971889c1
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01962
Status: valid/unmigrated Version: rel:R25-11#4bc6b226 Versionshistorie & Revisions (1 transition, 3 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_01962@rel:R25-11#4bc6b226
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#a2a421fd2026-09-30
  • R24-11rel:R24-11#038e02882026-10-14
  • R25-11rel:R25-11#4bc6b2262026-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

fonction TransmitCertificate [SWS_DM_01963] Upstream: RS_AP_00147

TransmitCertificate (TransmitCertificate &&) noexcept=delete;

Move constructor of TransmitCertificate.

Header-Datei#include "ara/diag/transmit_certificate.h"
Scopeclass ara::diag::TransmitCertificate

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

Record
AUTOSAR/AP/record/SWS_DM_01963
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01963@rel:R25-11#880544bb
Content hash
880544bb
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01963
Status: valid/unmigrated Version: rel:R25-11#e75646b3 Versionshistorie & Revisions (1 transition, 3 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_01963@rel:R25-11#e75646b3
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#448fd6ae2026-09-30
  • R24-11rel:R24-11#e75646b32026-10-14
  • R25-11rel:R25-11#e75646b32026-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

fonction TransmitCertificate [SWS_DM_01964] Upstream: RS_AP_00147

TransmitCertificate (TransmitCertificate &)=delete;

Authentication shall be a single not copy-able instance.

Header-Datei#include "ara/diag/transmit_certificate.h"
Scopeclass ara::diag::TransmitCertificate

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

Record
AUTOSAR/AP/record/SWS_DM_01964
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01964@rel:R25-11#f35f2d52
Content hash
f35f2d52
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01964
Status: valid/unmigrated Version: rel:R25-11#54c14617 Versionshistorie & Revisions (1 transition, 3 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_01964@rel:R25-11#54c14617
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#aef5a0482026-09-30
  • R24-11rel:R24-11#54c146172026-10-14
  • R25-11rel:R25-11#54c146172026-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

fonction operator= [SWS_DM_01965] Upstream: RS_AP_00147

TransmitCertificate & operator= (TransmitCertificate &&)=delete;

Move assignment operator of TransmitCertificate.

Header-Datei#include "ara/diag/transmit_certificate.h"
Scopeclass ara::diag::TransmitCertificate

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

Record
AUTOSAR/AP/record/SWS_DM_01965
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01965@rel:R25-11#8cf1c6e0
Content hash
8cf1c6e0
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01965
Status: valid/unmigrated Version: rel:R25-11#a9a5dc1b Versionshistorie & Revisions (1 transition, 3 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_01965@rel:R25-11#a9a5dc1b
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#72b99e592026-09-30
  • R24-11rel:R24-11#a9a5dc1b2026-10-14
  • R25-11rel:R25-11#a9a5dc1b2026-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

fonction operator= [SWS_DM_01966] Upstream: RS_AP_00147

TransmitCertificate & operator= (TransmitCertificate &)=delete;

Authentication shall be a single not assignable instance.

Header-Datei#include "ara/diag/transmit_certificate.h"
Scopeclass ara::diag::TransmitCertificate

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

Record
AUTOSAR/AP/record/SWS_DM_01966
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01966@rel:R25-11#1e1f524b
Content hash
1e1f524b
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01966
Status: valid/unmigrated Version: rel:R25-11#e8fa3524 Versionshistorie & Revisions (1 transition, 3 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_01966@rel:R25-11#e8fa3524
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#be2979622026-09-30
  • R24-11rel:R24-11#e8fa35242026-10-14
  • R25-11rel:R25-11#e8fa35242026-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

fonction ~TransmitCertificate [SWS_DM_01967] Upstream: RS_Diag_04251

virtual ~TransmitCertificate () noexcept=default;

Destructor of TransmitCertificate.

Header-Datei#include "ara/diag/transmit_certificate.h"
Scopeclass ara::diag::TransmitCertificate
Exception-Sicherheitexception safe

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

Record
AUTOSAR/AP/record/SWS_DM_01967
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01967@rel:R25-11#f8fd6943
Content hash
f8fd6943
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01967
Status: valid/unmigrated Version: rel:R25-11#9015cb63 Versionshistorie & Revisions (1 transition, 3 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_01967@rel:R25-11#9015cb63
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#c09be9702026-09-30
  • R24-11rel:R24-11#07c76de42026-10-14
  • R25-11rel:R25-11#9015cb632026-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