DEENESPTFRRUARHIKOZHNL

classe 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

Guia do utilizadorGERADO POR IA

Oferece à aplicação interfaces para autenticação de serviço UDS 0x29 em relação a testadores de diagnóstico externos.
GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: a55f7043e3c0 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Oferece à aplicação interfaces para autenticação de serviço UDS 0x29 em relação a testadores de diagnóstico externos.

A classe ara::diag::Authentication serve como interface do lado da aplicação para a execução da autenticação de serviço UDS 0x29 perante testadores externos (AUTOSAR AP SWS Diagnostics p. 63). Após a inicialização e ativação via Offer(), a aplicação assume a verificação do certificado e a comprovação de posse (Proof of Ownership) por meio de callbacks assíncronos ([SWS_DM_01126], [SWS_DM_01130]). As instâncias não são copiáveis nem movíveis e são vinculadas ao Diagnostic Management por meio de um InstanceSpecifier específico de porta ([SWS_DM_01124], [SWS_DM_01609]).

Contexto

A classe ara::diag::Authentication fornece a interface do lado da aplicação para o processamento do serviço UDS 0x29 (Authentication) dentro da AUTOSAR Adaptive Platform (AUTOSAR AP SWS Diagnostics p. 63). Ela atua como uma base com segurança de tipos para handlers específicos da aplicação, que controlam e executam a autenticação criptográfica de conexões de diagnóstico recebidas.

Na arquitetura do sistema, a classe interage com dois parceiros essenciais: o testador de diagnóstico externo, que envia requisições de autenticação ao veículo, e o Diagnostic Management (DM) interno do veículo, que recebe, filtra e encaminha mensagens de diagnóstico para handlers registrados ([SWS_DM_01130]). A aplicação implementa as funções de interface predefinidas por ara::diag::Authentication para verificar certificados, calcular challenges e gerar chaves de sessão ([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

Diagrama de contexto: Integração do Authentication-Handler entre o Diagnostic Management e o testador de diagnóstico externo. Fontes: [SWS_DM_01124], [SWS_DM_01130], AUTOSAR AP SWS Diagnostics p. 63

Ciclo de vida

Instâncias de ara::diag::Authentication são vinculadas a um modelo de porta específico. O construtor espera um ara::core::InstanceSpecifier, que referencia um PortPrototype de um DiagnosticAuthenticationInterface, bem como o parâmetro ConcurrencyType ([SWS_DM_01124]). Este último determina se a implementação é projetada como segura para threads (kConcurrent) ou não segura para threads (kNotConcurrent) ([SWS_DM_01124]). Como os callbacks de verificação podem ser chamados de forma reentrante para diferentes clientes ([SWS_DM_01126], [SWS_DM_01127]), presume-se que o Diagnostic Management serialize as chamadas para a instância em caso de kNotConcurrent. Pergunta Q-5d890d01c54e70ca (aberta)

Em relação à relação de posse, ara::diag::Authentication é estritamente definida como uma instância única não copiável e não movível: tanto os construtores de cópia quanto os de movimentação, bem como os respectivos operadores de atribuição, estão explicitamente deletados ([SWS_DM_01609], [SWS_DM_01610], [SWS_DM_01607], [SWS_DM_01608]). Após a instanciação, a classe não aceita requisições automaticamente. Somente por meio da chamada de Offer() o Diagnostic Management é autorizado a encaminhar requisições de autenticação recebidas para a instância ([SWS_DM_01130]). O encaminhamento pode ser desativado novamente a qualquer momento via StopOffer() ([SWS_DM_01131]). A liberação dos recursos ocorre de forma determinística por meio do destrutor virtual ~Authentication() ([SWS_DM_01125]).

Caminho de utilização

Um caso de uso típico compreende a disponibilização do serviço, a verificação de certificados e a comprovação de posse da chave (Proof of Ownership):

  1. Oferecer serviço: Após a instanciação, a aplicação registra-se no Diagnostic Management por meio de Offer() ([SWS_DM_01130]).
  2. Verificação de certificado: Se uma requisição de autenticação do testador for recebida, o DM a encaminhará para o método responsável:
    • Na autenticação unidirecional, o DM chama VerifyCertificateUnidirectional(...) ([SWS_DM_01126]). A aplicação verifica o certificado de cliente passado e retorna assincronamente via ara::core::Future uma tupla composta por um challenge do servidor e a chave pública efêmera do servidor.
    • Na autenticação bidirecional, o DM chama VerifyCertificateBidirectional(...) ([SWS_DM_01127]). Nesse caso, a aplicação gera adicionalmente o certificado do servidor e seu próprio Proof of Ownership para o testador.
  3. Comprovação de posse (Proof of Ownership): Se o testador responder ao challenge do servidor, o DM chamará o método VerifyOwnership(...) ([SWS_DM_01128]). A aplicação verifica o clientPOWN passado juntamente com a chave efêmera do cliente em relação ao challenge gerado anteriormente. Em caso de sucesso, o future retorna as informações da chave de sessão.
  4. Finalizar serviço: Se a interface precisar ser fechada, a aplicação chama StopOffer() ([SWS_DM_01131]).
Sequência da autenticação unidirecionalTestador de diagnósticoDiagnostic ManagementAuthentication-HandlerOffer()Result<void>UDS 0x29 (VerifyCertificateUnidirectional)VerifyCertificateUnidirectional(...)Zertifikat verifizieren, Challenge & Key erzeugenFuture-Ergebnis: Challenge, Ephemeral KeyPositive Response com Server-Challenge & KeyUDS 0x29 (VerifyOwnership com POWN & Key)VerifyOwnership(clientPOWN, clientEphemeralKey, ...)POWN verifizieren & Session Key berechnenFuture-Ergebnis: Session Key InfoPositive Response

Diagrama de sequência: Fluxo de uma autenticação unidirecional com verificação subsequente da comprovação de posse. Fontes: [SWS_DM_01126], [SWS_DM_01128], [SWS_DM_01130]

Cenários de erro

Ao utilizar ara::diag::Authentication, deve-se distinguir entre erros de modelagem estáticos e erros de tempo de execução dinâmicos:

  • Violações de construção: Se a configuração do modelo não coincidir com o processo ou se o InstanceSpecifier estiver incorreto, a construção falhará com violações definidas (entre outras, InstanceSpecifierMappingIntegrityViolation, PortInterfaceMappingViolation, ProcessMappingViolation ou InstanceSpecifierAlreadyInUseViolation) ([SWS_DM_01124]).
  • Erros de estado no Offer: Uma nova chamada de Offer() quando o serviço já foi oferecido falha com o código de erro DiagOfferErrc::kAlreadyOffered ([SWS_DM_01130]).
  • Erros criptográficos e de protocolo: Se a verificação do certificado de cliente ou do Proof of Ownership falhar, a aplicação deverá resolver o future com um Negative Response Code (NRC) UDS adequado, conforme a ISO 14229-1, através de DiagUdsNrcErrc ([SWS_DM_01126], [SWS_DM_01127], [SWS_DM_01128]).
  • Interrupção da conexão: Se uma conversação de diagnóstico em andamento for cancelada, o DM sinalizará isso por meio do objeto CancellationHandler ([SWS_DM_01126]). A aplicação pode consultar o status via cancellationHandler.IsCanceled() ou registrar uma função de callback via SetNotifier. Os spans de dados transmitidos permanecem válidos apenas até que a promise seja cumprida ou o processamento seja cancelado ([SWS_DM_01126], [SWS_DM_01128]).

Este guia de classes foi gerado automaticamente e baseia-se na especificação AUTOSAR Adaptive Platform Release R25-11.

Mapa de membros

Diagrama de classes

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

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

Vista de detalhes

Selecione uma entrada no índice.

Construtores e destrutor

Authentication função 3

Constructor of Authentication.

Sobrecargas 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;

Métodos

Offer função

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

ara::core::Result< void > Offer () noexcept;
StopOffer função

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;

Operadores

operator= função 2

Authentication shall be a single not assignable instance.

Sobrecargas = 2

Documentação dos métodos

função 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.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 906bc324edb3 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

O construtor inicializa de forma síncrona um objeto da classe de handler ara::diag::Authentication para o processamento de pedidos de autenticação de diagnóstico numa porta de software [SWS_DM_01124]. O parâmetro specifier remete para o PortPrototype modelado, que tem de ser obrigatoriamente tipificado através de um DiagnosticAuthenticationPortMapping por um DiagnosticAuthenticationInterface [SWS_DM_01124]. Através do parâmetro concurrencyType define-se se o framework entrega chamadas de método de forma concorrente (kConcurrent) ou não segura para threads (kNotConcurrent) [SWS_DM_01124].

Como a função está declarada como noexcept, chamadas incorretas não são reportadas através de exceções, mas desencadeiam violações de framework (violations) [SWS_DM_01124]:

  • InstanceSpecifierMappingIntegrityViolation: O identificador não pode ser resolvido no contexto do executável ou não referencia um PortPrototype [SWS_DM_01124].
  • PortInterfaceMappingViolation: O PortPrototype referenciado não está modelado como DiagnosticAuthenticationInterface [SWS_DM_01124].
  • ProcessMappingViolation: Em tempo de execução não é encontrado nenhum processo modelado correspondente [SWS_DM_01124].
  • InstanceSpecifierAlreadyInUseViolation: O InstanceSpecifier já foi utilizado para uma instância no processo atual [SWS_DM_01124].

O próprio construtor é seguro para threads e seguro contra exceções (exception safe) [SWS_DM_01124], enquanto o respetivo destrutor ~Authentication() está especificado como não seguro para threads [SWS_DM_01125]. Imediatamente após a instanciação, ainda não são encaminhados pedidos de diagnóstico: a aplicação tem primeiro de chamar Offer() para ativar o encaminhamento para o serviço UDS 0x29 (Authentication com PKI Certificate Exchange, APCE AUTOSAR_AP_SWS_Diagnostics Tab. 4.1 «Limitations of sub-functions of 0x19 ReadDTCInformation») por parte do Diagnostic Manager [SWS_DM_01130]. A validação de certificados é seguidamente processada através de VerifyCertificateUnidirectional [SWS_DM_01126], VerifyCertificateBidirectional [SWS_DM_01127] e VerifyOwnership [SWS_DM_01128]. Antes da destruição do objeto, o encaminhamento deve ser encerrado com StopOffer() [SWS_DM_01131].

Esta nota de utilização foi gerada por uma IA com base na especificação AUTOSAR Adaptive R25-11.

Guia do implementador em breve (complexidade 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#c509903c
Content hash
c509903c
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

função 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#5369a0c8
Content hash
5369a0c8
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

função 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#2981a977
Content hash
2981a977
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

função 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.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 082dbe15e2bd Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Com o método síncrono Offer() da classe ara::diag::Authentication ([SWS_DM_01130]), uma Adaptive Application registra seu handler de autenticação junto ao Diagnostic Management (DM). Com isso, o DM é autorizado e capacitado a encaminhar requisições recebidas para este handler (AUTOSAR_AP_SWS_Diagnostics §8.3.1.1.3.1 «Offer»). A função não recebe parâmetros de entrada e sinaliza o resultado da operação por meio do tipo de retorno ara::core::Result<void>.

A chamada é declarada como noexcept e, portanto, segura contra exceções ([SWS_DM_01130]). Se o registro falhar porque o serviço já foi disponibilizado anteriormente para esta instância, o código de erro específico DiagOfferErrc::kAlreadyOffered é retornado no objeto Result ([SWS_DM_01130]). Além disso, a interface é especificada como not thread-safe; acessos paralelos na mesma instância presumivelmente não devem ocorrer sem proteção e devem ser sincronizados no lado da aplicação. Pergunta Q-51ab72e4e72a7351 (aberta)

No ciclo de vida do processamento de diagnóstico, Offer() corresponde diretamente à função oposta StopOffer() ([SWS_DM_01131], AUTOSAR_AP_SWS_Diagnostics §8.3.1.1.3.2 «StopOffer»), que encerra novamente o encaminhamento de requisições. Esse padrão segue a abordagem uniforme de disponibilização de handlers de diagnóstico, como também é aplicada, por exemplo, em ara::diag::CommunicationControl::Offer ([SWS_DM_00809]) ou ara::diag::DoIPPowerMode::Offer ([SWS_DM_00735]), nos quais requisições só podem ser processadas após a oferta explícita pela aplicação ([SWS_DM_01525]).

Esta nota de uso foi gerada automaticamente pelo assistente de curadoria de IA com base no estado da especificação AUTOSAR R25-11.

Guia do implementador em breve (complexidade 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#31c4ff94
Content hash
31c4ff94
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

função StopOffer [SWS_DM_01131] Upstream: RS_Diag_04251

void StopOffer () noexcept;

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

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 4aa6d764eb2f Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

usar

O método StopOffer da classe ara::diag::Authentication (definido em ara/diag/authentication.h) desativa o encaminhamento de mensagens de solicitação pelo Diagnostic Manager (DM) para a instância [SWS_DM_01131]. A chamada é executada de forma síncrona, não requer parâmetros de passagem e não possui valor de retorno AUTOSAR_AP_SWS_Diagnostics §8.3.1.1.3.2 «StopOffer».

Tratamento de erros e segurança de execução

A função é especificada como segura contra exceções (noexcept); códigos de erro específicos ou exceções não estão definidos [SWS_DM_01131].

Simultaneidade e restrições

A operação é expressamente indicada como não segura para threads («not thread-safe») [SWS_DM_01131]. Chamadas concorrentes na mesma instância devem ser sincronizadas pela aplicação chamadora.

Interação e relação arquitetural

O padrão de projeto de StopOffer é utilizado de forma consistente no Adaptive Diagnostic Manager através de diferentes serviços e handlers, entre eles SecurityAccess [SWS_DM_00767], CommunicationControl [SWS_DM_00810], DownloadService [SWS_DM_00793] e EcuResetRequest [SWS_DM_01017]. Embora a nomenclatura seja baseada no fornecimento de serviços em ara::com, trata-se de uma implementação específica de diagnóstico AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 «Monitors». Interpretação: antes da desativação por meio de StopOffer, a instância provavelmente terá recebido solicitações ativamente através de uma função de disponibilização. Pergunta Q-da990416e53707ed (aberta)

Esta nota de uso foi gerada por uma IA com base na especificação AUTOSAR AP R25-11.

Guia do implementador em breve (complexidade 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#0202816a
Content hash
0202816a
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

função 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.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 96bce3dceaab Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

O método de callback puramente virtual VerifyCertificateBidirectional da interface ara::diag::Authentication ([SWS_DM_01127]) é chamado pelo Diagnostic Server assim que uma solicitação de diagnóstico para o serviço UDS 0x29 (Authentication) com a subfunção 0x02 (verifyCertificateBidirectional) chega e as verificações iniciais foram concluídas com sucesso ([SWS_DM_01235], AUTOSAR_AP_SWS_Diagnostics §7.3.2.8.11.3 «Service 0x29 – verifyCertificateBidirectional (0x02)»).

Uso e semântica:\nO servidor passa a configuração de comunicação, bem como os dados de certificado e de challenge recebidos do testador através de communicationConfiguration, clientCertificate e clientChallenge juntamente com metaInfo e o cancellationHandler ([SWS_DM_01127], [SWS_DM_01235]). Os buffers dos spans de entrada permanecem válidos até que o ara::core::Future retornado seja cumprido por meio do Promise associado ou a operação seja cancelada ([SWS_DM_01127]). De forma assíncrona, o método retorna uma 4-tupla composta por challenge do servidor, certificado do servidor, Proof-of-Ownership calculado e a Ephemeral Public Key do servidor para o Diagnostic Server ([SWS_DM_01127]).

Cancelamento e simultaneidade:\nAtravés do cancellationHandler, a aplicação pode consultar o status atual por meio de sondagem (polling) via IsCanceled ou registrar uma função de notificação para a desconexão por meio de SetNotifier ([SWS_DM_01127]). A interface é definida como noexcept e pode ser chamada de forma reentrante com relação a solicitações de diferentes clientes ([SWS_DM_01127]). Se a implementação deve ser segura para threads é determinado através do ConcurrencyType passado no construtor ([SWS_DM_01127]).

Tratamento de erros e interação:\nEm caso de erro, a aplicação retorna um NRC apropriado em conformidade com a ISO 14229-1 através de DiagUdsNrcErrc; valores de retorno negativos são processados separadamente pelo Diagnostic Server ([SWS_DM_01127], [SWS_DM_01236]). Dentro da autenticação UDS ([SWS_DM_01226]), a configuração desta subfunção constitui um pré-requisito necessário se DiagnosticProofOfOwnership estiver configurado ([SWS_DM_01227], [SWS_DM_01228]).

Nota: Estas notas foram geradas automaticamente com base na especificação AUTOSAR AP R25-11.

Guia do implementador em breve (complexidade 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#04ffef43
Content hash
04ffef43
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

função 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

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 880414da5993 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

O método de callback VerifyCertificateUnidirectional da classe ara::diag::Authentication é chamado pela instância do Diagnostic Server assim que uma solicitação para o serviço UDS 0x29 com a subfunção verifyCertificateUnidirectional (0x01) for recebida e pré-verificada com sucesso (SWS Diagnostics §7.3.2.8.11.2 «Service 0x29 – verifyCertificateUnidirectional (0x01)», [SWS_DM_01230]). Ele realiza a autenticação unidirecional via troca de certificados PKI em conformidade com a ISO 14229-1 ([SWS_DM_01226]).

Como parâmetros, são passados a configuração de comunicação (communicationConfiguration), o certificado de cliente (clientCertificate) e o challenge de cliente (clientChallenge), bem como metainformações e um CancellationHandler ([SWS_DM_01126]). Os spans passados permanecem válidos até que o ara::core::Future retornado seja cumprido ou o processamento seja cancelado através do manipulador. O método retorna de forma assíncrona uma tupla composta pelo challenge do servidor gerado e pela chave pública efêmera do servidor ([SWS_DM_01126]).

Se ocorrer um erro durante a validação, o Future deve ser encerrado com um código de resposta negativo (NRC) apropriado através de DiagUdsNrcErrc ([SWS_DM_01126]).

A função é especificada como exception safe e pode ser chamada de forma reentrante para solicitações de diferentes clientes de diagnóstico ([SWS_DM_01126]). A segurança de thread é condicional; se a implementação deve ser thread-safe é determinado pelo ConcurrencyType definido no construtor ([SWS_DM_01126]). No fluxo geral, a configuração desta verificação é um pré-requisito obrigatório caso a subfunção DiagnosticProofOfOwnership seja configurada ([SWS_DM_01227]).

Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR AP R25-11.

Guia do implementador em breve (complexidade 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#4489f529
Content hash
4489f529
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

função 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.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 395c9e79b3c8 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Utilização e contexto de chamada

O método puramente virtual VerifyOwnership da classe ara::diag::Authentication é chamado pelo Diagnostic Server assim que uma solicitação de autenticação do serviço UDS 0x29 com a subfunção proofOfOwnership (0x03) foi recebida e as verificações preparatórias foram bem-sucedidas [SWS_DM_01240]. A tarefa da implementação é verificar a prova de posse (Proof of Ownership) transmitida pelo testador com base na chave pública do certificado de cliente previamente trocado contra o challenge gerado pelo servidor [SWS_DM_01128].

Na chamada, o Diagnostic Server passa os dados de entrada criptográficos relevantes, bem como objetos de contexto AUTOSAR_AP_SWS_Diagnostics §8.3.1.1.3.5 «VerifyOwnership»:

  • clientPOWN: Contém a Proof of Ownership fornecida pelo testador de diagnóstico para o challenge anterior do servidor.
  • clientEphemeralPublicKey: A chave pública efêmera do cliente para o acordo de chaves Diffie-Hellman de acordo com a ISO 14229-1:2020.
  • metaInfo: Metainformações da solicitação de diagnóstico atual.
  • cancellationHandler: Permite consultar um eventual cancelamento (cancellationHandler.IsCanceled), bem como registrar uma função de notificação (cancellationHandler.SetNotifier).

A função opera de forma assíncrona e retorna um ara::core::Future, que, em caso de sucesso, disponibiliza as informações de Session Key como um vetor de bytes [SWS_DM_01128].

Tratamento de erros

Se a verificação de posse não puder ser realizada com sucesso, a aplicação define um valor de retorno negativo de UDS (NRC) adequado conforme a ISO 14229-1 por meio de DiagUdsNrcErrc no Future retornado [SWS_DM_01128]. Se o método retornar tal código de erro definido, o Diagnostic Server envia uma Negative Response com o respectivo NRC ao cliente [SWS_DM_01241].

Simultaneidade e condições marginais

A interface está definida como noexcept. Em relação à segurança de threads, o comportamento é considerado condicional (conditional): se o método precisa ser implementado de forma segura para threads, é determinado pelo ConcurrencyType especificado na construção da instância [SWS_DM_01128]. Para os buffers clientPOWN e clientEphemeralPublicKey, garante-se que a sua área de memória permaneça válida até que o Promise seja cumprido ou o processamento seja cancelado por meio do cancellationHandler [SWS_DM_01128].

Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR AP R25-11.

Guia do implementador em breve (complexidade 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#87b11b88
Content hash
87b11b88
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

função 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#e9967a85
Content hash
e9967a85
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

função 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#2157ba4d
Content hash
2157ba4d
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

função ~Authentication [SWS_DM_01125] Upstream: RS_Diag_04251

virtual ~Authentication () noexcept;

Destructor of Authentication.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: d82e30be663a Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

O destruidor virtual ~Authentication() conclui o ciclo de vida de uma instância da classe ara::diag::Authentication e libera seus recursos [SWS_DM_01125]. O método está declarado no arquivo de cabeçalho #include "ara/diag/authentication.h" do módulo Diagnostics AUTOSAR_AP_SWS_Diagnostics §8.3.1.1.1.3 «Destructor».

A função não recebe parâmetros, não fornece valor de retorno e é chamada de forma síncrona durante a destruição do objeto [SWS_DM_01125]. A qualificação como virtual garante que, em caso de exclusão polimórfica através de ponteiros ou referências para classes base, os recursos de classes derivadas também sejam devidamente limpos.

Em relação ao tratamento de erros, o método é especificado como exception safe e traz o especificador noexcept [SWS_DM_01125]. Códigos de erro ou de status não são retornados e garante-se que nenhuma exceção C++ se propague externamente.

Quanto à simultaneidade, ~Authentication() é classificado como not thread-safe [SWS_DM_01125]. A destruição não deve, portanto, sob hipótese alguma ocorrer simultaneamente com outras chamadas de método da mesma instância. Interpretação: A aplicação utilizadora provavelmente deve ser obrigada a concluir todos os processos de autenticação ou diagnóstico em andamento antes da destruição e proteger a chamada externamente contra acessos paralelos. Pergunta Q-41b1c115c1056759 (aberta) O destruidor implementa o requisito de nível superior RS_Diag_04251 AUTOSAR_AP_SWS_Diagnostics §8.3.1.1.1.3 «Destructor».

Este texto foi gerado por um sistema de IA e revisado editorialmente.

Guia do implementador em breve (complexidade 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#66b159a6
Content hash
66b159a6
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