DEENESPTFRRUARHIKOZHNL

클래스 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

사용자 가이드AI 생성

애플리케이션이 UDS 서비스 Authentication에서 진단 인증서를 수신하고 검증할 수 있도록 지원합니다.
AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: 82e724c2cab7 출처 열린 질문 (1)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

애플리케이션이 UDS 서비스 Authentication에서 진단 인증서를 수신하고 검증할 수 있도록 지원합니다.

클래스 ara::diag::TransmitCertificate은 서비스 Authentication [SWS_DM_01961]의 UDS 하위 기능 TransmitCertificate(0x29 0x04)를 위한 애플리케이션 인터페이스를 구현합니다. Offer()을 통한 활성화 후, 애플리케이션은 비동기 메서드 Process()에서 전송된 인증서 데이터를 수신하고 애플리케이션별 검증을 시작합니다 [SWS_DM_01968]. 검증에 성공하면 Diagnostic Management가 반환 매개변수 0x13(CertificateVerified)을 포함하는 긍정 UDS 응답을 트리거하는 반면, 오류는 해당하는 NRC와 함께 부정 응답으로 회신됩니다. 이 인스턴스는 포트 인터페이스에 영구적으로 바인딩되며 복사하거나 이동할 수 없습니다.

컨텍스트

헤더 ara/diag/transmit_certificate.h(AUTOSAR_AP_SWS_Diagnostics §8.26 “Header: ara/diag/transmit_certificate.h”)의 클래스 ara::diag::TransmitCertificate [SWS_DM_01961]은 서비스 Authentication의 UDS 하위 기능 TransmitCertificate(0x29 0x04)를 실현하기 위한 Adaptive 애플리케이션의 인터페이스를 나타냅니다. 일반화된 인터페이스로서 애플리케이션이 16비트 식별자(certificateEvaluationId)를 기반으로 하나 이상의 전송된 인증서를 수신하고 처리할 수 있도록 지원합니다.

상호작용에는 세 가지 주요 컴포넌트가 관여합니다:

  • 인증서 전송을 위한 UDS 요청을 차량으로 전송하는 외부 진단 테스터 [SWS_DM_01968].
  • 수신된 진단 요청을 필터링하고 전달하며 최종 UDS 응답을 생성하는 Adaptive Platform의 Diagnostic Server(Diagnostic Management, DM) [SWS_DM_01251], [SWS_DM_01969].
  • ara::diag::TransmitCertificate에서 파생된 인스턴스를 제공하고, 인증서 검증을 수행하며, 그 결과를 서버에 비동기적으로 반환하는 Adaptive 애플리케이션 [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()

컨텍스트 다이어그램: UDS 0x29 04를 통한 인증서 전송에 관여하는 컴포넌트. 출처: [SWS_DM_01968], [SWS_DM_01969], AUTOSAR_AP_SWS_Diagnostics §7.3.2.8 “Successful verification of transmitCertificate”.

수명 주기

ara::diag::TransmitCertificate의 인스턴스는 ara::core::InstanceSpecifier 및 동시성 모드 ConcurrencyType를 지정하여 생성자를 통해 생성됩니다 [SWS_DM_01962]. InstanceSpecifier는 매니페스트에서 DiagnosticTransmitCertificateInterface으로 유형화된 PortPrototype를 참조해야 합니다 [SWS_DM_01962]. 이 매핑에 실패하거나 현재 프로세스에서 인스턴스 식별자가 중복 사용되는 경우 InstanceSpecifierMappingIntegrityViolation, PortInterfaceMappingViolation, ProcessMappingViolation 또는 InstanceSpecifierAlreadyInUseViolation과 같은 런타임 위반이 발생합니다 [SWS_DM_01962].

이 클래스에는 엄격한 소유권 및 인스턴스화 규칙이 적용됩니다. 인증 핸들러는 고유하며 복사 불가능하고 이동 불가능한 인스턴스로 설계되었습니다. 따라서 복사 생성자 [SWS_DM_01964], 복사 할당 연산자 [SWS_DM_01966], 이동 생성자 [SWS_DM_01963] 및 이동 할당 연산자 [SWS_DM_01965]은 명시적으로 삭제되었습니다(=delete).

생성자 자체는 스레드 안전하고 예외 안전하도록 명시되어 있습니다 [SWS_DM_01962]. 해제는 가상 표준 소멸자 [SWS_DM_01967]을 통해 수행됩니다. 실제 실행 메서드 Process를 스레드 안전하게 구현해야 하는지 여부는 선택된 concurrencyType(kConcurrent 또는 kNotConcurrent)에 따라 달라집니다 [SWS_DM_01962], [SWS_DM_01968].

사용 경로

일반적인 흐름에는 핸들러 등록, 수신 인증서 처리 및 이후 등록 취소가 포함됩니다:

  1. 서비스 제공(Offer): 구성된 인터페이스에 대한 요청을 이 핸들러로 전달해도 됨을 Diagnostic Management에 알리기 위해 애플리케이션이 Offer()을 호출합니다 [SWS_DM_01969].
  2. 요청 수신(Process): Diagnostic Server에 하위 기능 TransmitCertificate의 UDS 요청이 수신되면, 서버는 데이터를 애플리케이션의 순수 가상 메서드 Process()로 전달합니다 [SWS_DM_01968]. 이 메서드는 16비트 식별자 certificateEvaluationId, 인증서 원시 데이터를 나타내는 ara::core::Span<ara::core::Byte const>, 메타데이터(metaInfo) 및 cancellationHandler을 수신합니다 [SWS_DM_01968].
  3. 평가 및 조치: AUTOSAR는 인증서에 대한 고정된 시맨틱을 규정하지 않으므로 검증 및 필요한 조치 도출은 전적으로 애플리케이션의 책임입니다 [SWS_DM_01968]. 해석: 애플리케이션은 일반적으로 전송된 인증서를 암호화 방식으로 검증하거나 내부 키 저장소를 업데이트하는 데 사용할 것으로 보입니다. 질문 Q-34844f9257d074c6 (열림)
  4. 결과 전달: 메서드는 ara::core::Future<void>을 반환합니다 [SWS_DM_01968]. 애플리케이션이 오류 없이 Future를 성공적으로 완료하면 Diagnostic Server는 테스터에게 긍정 UDS 응답을 전송하며, 이때 매개변수 authenticationReturnParameter(RV)는 값 0x13(CertificateVerified)으로 설정됩니다 [SWS_DM_01251](AUTOSAR_AP_SWS_Diagnostics §7.3.2.8 “Successful verification of transmitCertificate”).
  5. 서비스 중지(StopOffer): 핸들러가 더 이상 요청을 수신하지 않도록 하려면 애플리케이션이 StopOffer()을 호출하여 전달을 종료합니다 [SWS_DM_01970].
인증서 전송 흐름TesterDiagnosticServerTransmitCertificateOffer()Result<void>Use Case: 인증서 전송(UDS 0x29 04)UDS-Anfrage 0x29 04(certificateEvaluationId, certificateData)Process(certificateEvaluationId, certificateData, metaInfo, cancellationHandler)인증서 검증 / 작업 도출altVerifizierung erfolgreichFuture<void> 충족됨Positive Response (RV 0x13 CertificateVerified)Verifizierung fehlgeschlagenDiagUdsNrcErrc가 포함된 Future<void>Negative Response (NRC)Use Case: Dienstangebot beendenStopOffer()

시퀀스 다이어그램: Offer부터 UDS 응답까지의 일반적인 인증서 전송 흐름. 출처: [SWS_DM_01968], [SWS_DM_01969], [SWS_DM_01970], [SWS_DM_01249], [SWS_DM_01251].

오류 시나리오

오류 상태는 라이프사이클의 여러 단계에서 발생할 수 있습니다:

  • 이미 활성화된 제공: 이 인스턴스에 대해 서비스가 이미 활발히 제공되고 있음에도 Offer()을 호출하면 호출이 실패하고 ara::core::Result<void>에 롤백 시맨틱과 함께 오류 코드 DiagOfferErrc::kAlreadyOffered가 반환됩니다 [SWS_DM_01969]. Offer() 및 StopOffer()는 스레드 안전하지 않으며 동시에 호출할 수 없습니다 [SWS_DM_01969], [SWS_DM_01970].
  • 인증서 검증 실패: 애플리케이션이 Process()에서 평가 중 오류를 감지하면 ISO 14229-1에 따라 DiagUdsNrcErrc의 해당 오류 코드로 Future를 완료합니다 [SWS_DM_01968]. Diagnostic Server는 이 반환값을 가로채 테스터에게 부정 진단 응답(Negative Response)을 전송하며, 이 부정 응답 코드(NRC)는 전송된 오류 코드와 정확히 일치합니다 [SWS_DM_01249](AUTOSAR_AP_SWS_Diagnostics §7.3.2.8 “Handling Negative return values of ara::diag::TransmitCertificate::Process method”).
  • 진행 중인 대화 중단: 비동기 처리 중에 애플리케이션은 cancellationHandler.IsCanceled()을 통해 상태를 조회하여 진단 대화가 중단되었는지 확인할 수 있습니다 [SWS_DM_01968]. 또한 중단 시 즉시 알림을 받을 수 있도록 cancellationHandler.SetNotifier(...)를 통해 콜백 함수를 등록할 수 있습니다 [SWS_DM_01968].

이 가이드는 AUTOSAR Adaptive Platform R25-11 사양(diag 모듈)을 기반으로 하며 AI의 도움을 받아 큐레이팅되었습니다.

멤버 맵

클래스 다이어그램

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

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

상세 보기

개요에서 항목을 선택하세요.

생성자 및 소멸자

Constructor of TransmitCertificate.

오버로드 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;

메서드

Offer 함수

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

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

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 함수

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

void StopOffer () noexcept;

연산자

operator= 함수 2

Move assignment operator of TransmitCertificate.

오버로드 = 2

메서드 문서

함수 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.

AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: db62dd9c27e2 출처 열린 질문 (1)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

Adaptive Application은 Offer 메서드를 통해 Diagnostic Management (DM)에 의한 진단 요청 전달을 ara::diag::TransmitCertificate [SWS_DM_01969] 클래스의 담당 핸들러로 활성화합니다. 호출은 동기식으로 매개변수 없이 이루어지며, 인터페이스는 예외 안전(noexcept)(으)로 정의되어 있습니다 [SWS_DM_01969]. 반환 타입으로는 ara::core::Result<void>이(가) 사용되며, 이를 통해 등록 성공 여부 또는 오류 상태가 호출자에게 전달됩니다 [SWS_DM_01969].

해당 핸들러 인스턴스에 대해 이 함수가 이미 이전에 호출된 경우 재호출은 실패하고 롤백 시맨틱을 갖는 특정 오류 DiagOfferErrc::kAlreadyOffered을(를) 반환하며 [SWS_DM_01969], 이는 DiagErrc의 표준화된 오류 값에 해당합니다 [SWS_DM_00514]. 이 메서드는 명시적으로 스레드 안전하지 않은 것으로 지정되어 있으므로 [SWS_DM_01969] 동일한 인스턴스에 대한 병렬 접근은 방지되어야 합니다(해석: 동시 호출로부터의 보호는 애플리케이션 소프트웨어의 책임입니다). 질문 Q-b44b11a0a2dcb2b4 (열림)

Offer의 함수 패턴은 ara::diag::Authentication::Offer [SWS_DM_01130], ara::diag::CommunicationControl::Offer [SWS_DM_00809] 또는 ara::diag::GenericRoutine::Offer [SWS_DM_00557]에도 적용되는 진단 핸들러의 일관된 제공 개념을 따릅니다. AUTOSAR는 이름이 ara::com과(와) 유사하게 지정되었음에도 독립적인 진단 구현이 존재함을 명확히 합니다(AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”). Offer을(를) 통한 제공 이전에는 호출 전에 준비되지 않은 것으로 간주되는 DoIP 서비스와 유사하게 DM이 핸들러로 요청을 전달하지 않습니다 [SWS_DM_01525].

이 사용 지침은 자동으로 생성되었으며 릴리스 R25-11의 사양을 기반으로 합니다.

구현자 가이드 준비 중 (복잡도 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#913ad615
Content hash
913ad615
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

함수 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.

AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: d261181b4bb6 출처
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

인터페이스 클래스 ara::diag::TransmitCertificate의 메서드 Process은(는) 진단 테스터가 UDS 서비스 0x29 (Authentication)의 맥락에서 하위 기능 TransmitCertificate (0x04)을(를) 통해 전송한 인증서를 애플리케이션 내부에서 처리하는 역할을 합니다 [SWS_DM_01968], AUTOSAR_AP_SWS_Diagnostics §7.3.2.8.11.5 “Service 0x29 – transmitCertificate (0x04)”. AUTOSAR는 인증서에 대해 특정한 시맨틱을 규정하지 않으므로, 내용 검증 및 필요한 작업 도출은 전적으로 애플리케이션의 책임입니다 [SWS_DM_01968].

이 메서드는 비동기식으로 호출되며 다음 매개변수를 전달받습니다 [SWS_DM_01968]:

  • certificateEvaluationId: 인증서 평가를 식별하기 위한 UDS 요청 메시지의 16비트 평가 ID [SWS_DM_01968], [SWS_DM_01247].
  • certificateData: 테스터가 전송한 인증서 데이터(ara::core::Span<ara::core::Byte const> [SWS_DM_01968] 형태).
  • metaInfo: 진단 요청에 대한 메타 정보 [SWS_DM_01968].
  • cancellationHandler: 진단 대화가 조기 중단될 때 cancellationHandler.IsCanceled()을(를) 통한 중단 상태 쿼리 및 cancellationHandler.SetNotifier()을(를) 통한 알림 등록을 가능하게 합니다 [SWS_DM_01968].

반환은 ara::core::Future<void> [SWS_DM_01968](으)로서 비동기식으로 이루어집니다. 처리에 실패하면 ISO 14229-1에 따른 적절한 Negative Response Code (NRC)를 DiagUdsNrcErrc을(를) 통해 제공해야 합니다 [SWS_DM_01968]. 이 함수는 noexcept(으)로 선언되어 있으며 예외 안전(exception safe)합니다 [SWS_DM_01968].

스레드 안전성은 조건부(conditional)입니다. 이는 ara::diag::TransmitCertificate의 생성자에 전달되는 ConcurrencyType에 따라 결정됩니다 [SWS_DM_01968]. 전달하기 전에 진단 관리자는 certificateEvaluationId [SWS_DM_01247]을(를) 기반으로 요청의 유효성을 검증합니다.

이 사용 지침은 AUTOSAR R25-11 사양을 바탕으로 자동 생성되었습니다.

구현자 가이드 준비 중 (복잡도 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#8dab1a71
Content hash
8dab1a71
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

함수 StopOffer [SWS_DM_01970] Upstream: RS_Diag_04251

void StopOffer () noexcept;

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

AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: 7da07a83c1d7 출처 열린 질문 (1)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

ara::diag::TransmitCertificate 클래스([SWS_DM_01970])의 StopOffer 메서드는 Diagnostic Management (DM)에 대한 인증서 전송 서비스 제공을 종료합니다. 호출을 통해 DM에서 이 핸들러로 들어오는 진단 요청 메시지의 전달이 비활성화됩니다([SWS_DM_01970]).

사용법 및 의미론

호출은 헤더 ara/diag/transmit_certificate.h([SWS_DM_01970])의 시그니처 void StopOffer() noexcept;을(를) 통해 매개변수 없이 수행됩니다. 이 함수는 반환값을 제공하지 않으며 noexcept 및 exception safe로 지정되어 있어([SWS_DM_01970]) 예외를 던지지 않는 것이 보장됩니다.

동시성 및 제약사항

이 메서드는 명시적으로 not thread-safe로 지정되어 있습니다([SWS_DM_01970]). 따라서 호출자는 외부 메커니즘을 통해 동일한 ara::diag::TransmitCertificate 인스턴스에 대한 경쟁적인 호출이 동기화되도록 보장해야 합니다. 해석: 서비스 인스턴스를 소멸시키기 전이나 일시적으로 비활성화할 때 상태 변경 중에 새로운 요청이 도착하는 것을 차단하기 위해 StopOffer이(가) 호출될 것으로 추정됩니다. 질문 Q-9ab97301565c5bf9 (열림)

상호 작용

이 개념은 메시지 전달 비활성화를 위한 표준화된 DM 패턴에 해당하며, 이는 [SWS_DM_00767](SecurityAccess), [SWS_DM_00810](CommunicationControl) 또는 [SWS_DM_01017](EcuResetRequest)와 같은 관련 인터페이스에서도 정의되어 있습니다. 이 제조업체별 진단 구현은 통신 프레임워크와 이름 지정을 공유하지만 ara::com과(와)는 구별되어야 합니다(AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”). 이 요소는 인증 인터페이스의 기초가 되기도 하는 업스트림 요구사항 RS_Diag_04251을 충족하는 역할을 합니다(AUTOSAR_AP_SWS_Diagnostics §8.3.1.1.3.2 “StopOffer”; [SWS_DM_01131]).

이 텍스트는 사양 문서를 바탕으로 AI 시스템을 통해 작성되었습니다.

구현자 가이드 준비 중 (복잡도 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#0675d2b5
Content hash
0675d2b5
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

함수 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.

AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: b553bcd9da3e 출처 열린 질문 (1)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

생성자는 UDS 서비스 0x29(서브기능 TransmitCertificate)의 일환으로 인증서를 처리하기 위한 클래스 ara::diag::TransmitCertificate의 인스턴스를 초기화합니다 [SWS_DM_01962].

사용

호출은 동기식으로 이루어지며 noexcept 및 exception safe로 명시되어 있습니다 [SWS_DM_01962]. 호출 시 두 개의 매개변수가 전달됩니다:

  • specifier: 매니페스트 내의 DiagnosticTransmitCertificateInterface에 대해 DiagnosticAuthenticationPortMapping을 통해 타입이 지정되는 PortPrototype를 가리켜야 하는 ara::core::InstanceSpecifier [SWS_DM_01962].
  • concurrencyType: 인터페이스가 가상 메서드 Process의 동시 호출을 허용하는지 또는 순차적으로 처리해야 하는지 여부를 kConcurrent 또는 kNotConcurrent를 통해 결정합니다 [SWS_DM_01962], [SWS_DM_01968].

오류 처리 및 제약 조건

객체 생성은 thread-safe합니다 [SWS_DM_01962]. 인증 인스턴스는 고유해야 하므로 복사 및 이동 생성자와 대입 연산자는 명시적으로 삭제되어 있습니다 [SWS_DM_01963], [SWS_DM_01964], [SWS_DM_01965], [SWS_DM_01966]. 매니페스트의 잘못된 구성이나 식별자의 중복 사용 시 Violations가 보고됩니다(InstanceSpecifierMappingIntegrityViolation, PortInterfaceMappingViolation, ProcessMappingViolation 또는 InstanceSpecifierAlreadyInUseViolation과 같음) [SWS_DM_01962]. 생성자가 Exceptions를 발생시키지 않으므로, 이러한 메시지는 ara 프레임워크의 런타임 보고를 통해 신호될 것으로 보입니다. 질문 Q-140f1e794355ad96 (열림)

상호 작용

생성 후에는 Diagnostic Management Daemon이 요청을 전달할 수 있도록 인스턴스를 Offer()을 통해 활성화해야 합니다 [SWS_DM_01969]. Process()를 통한 처리가 성공하면 서버는 매개변수 CertificateVerified(0x13)과 함께 긍정적으로 응답하지만 [SWS_DM_01251], 오류가 발생하면 부정적인 UDS 응답으로 이어집니다 [SWS_DM_01249]. StopOffer()을 사용하면 전달이 종료됩니다 [SWS_DM_01970].

본 텍스트는 AI에 의해 생성되었으며 참고용으로 제공됩니다. 공식 AUTOSAR 사양만이 구속력을 갖습니다.

구현자 가이드 준비 중 (복잡도 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#15d75083
Content hash
15d75083
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

함수 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#4a37e229
Content hash
4a37e229
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

함수 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#70cf6cc3
Content hash
70cf6cc3
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

함수 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#8289fb3d
Content hash
8289fb3d
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

함수 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#95f21238
Content hash
95f21238
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

함수 ~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#124b8b8a
Content hash
124b8b8a
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