функция ExportPublicly [SWS_CRYPT_10711] Upstream: RS_CRYPTO_02112
virtual ara::core::Result< std::size_t > ExportPublicly (ReadWriteMem Region out, FormatId format) const noexcept=0;
Serialize object using the provided format.
Использование
Синхронная функция-член ExportPublicly интерфейса ara::crypto::Serializable сериализует объект в указанном формате вывода [SWS_CRYPT_10711]. В качестве параметров передаются идентификатор формата format (тип FormatId), а также целевая область памяти out (тип ReadWriteMem Region). При успешном выполнении функция возвращает фактическое количество записанных байтов в ara::core::Result<std::size_t> [SWS_CRYPT_10711].
Взаимодействие со связанными функциями
Функция напрямую связана с GetExportSize [SWS_CRYPT_50006], с помощью которой можно определить размер в байтах, необходимый для определенного формата. Вызывающие стороны обычно перед предоставлением выходного буфера out сначала запрашивают GetExportSize, чтобы обеспечить достаточную емкость буфера. Вопрос Q-394ae08d9d7e6fa7 (открытый)
Обработка ошибок
В случае ошибки действует семантика отката и возвращается соответствующий код ошибки [SWS_CRYPT_10711]:
ara::crypto::CryptoErrc::kInsufficientCapacity: переданный выходной буферoutимеет слишком малый размер [SWS_CRYPT_10711].ara::crypto::CryptoErrc::kUnsupportedFormat: переданный идентификатор формата не поддерживается для этого типа объектов [SWS_CRYPT_10711].ara::crypto::CryptoErrc::kUnsupported: экспорт объекта в целом не поддерживается [SWS_CRYPT_10711].ara::crypto::CryptoErrc::kUsageViolation: экспортируемый объект является ключом, правила использования которого не допускают экспорт в открытом виде (kAllowPlaintextExport) [SWS_CRYPT_10711].
Параллелизм и граничные условия
Метод специфицирован как const, noexcept, потокобезопасный («thread-safe») и безопасный относительно исключений («exception safe») [SWS_CRYPT_10711]. Следовательно, он может выполняться параллельно и не генерирует исключений C++.
Это указание по использованию было сгенерировано ИИ на основе спецификации AUTOSAR R25-11.
Руководство разработчика реализации в подготовке (сложность I1)
| Header-Datei | #include "ara/crypto/common/serializable.h" |
|---|---|
| Scope | class ara::crypto::Serializable |
| Exception-Sicherheit | exception safe |
| Thread-Sicherheit | thread-safe |
Parameter (in)
| Parameter | Beschreibung |
|---|---|
| format | identifier of the output format |
Parameter (out)
| Parameter | Beschreibung |
|---|---|
| out | an output buffer that the serialized object will be written to |
Rückgabewert
| Typ | Beschreibung |
|---|---|
| ara::core::Result<std::size_t > | A result containing the size in bytes of the serialized object or an error. |
Fehler
| Fehlercode | Beschreibung |
|---|---|
| ara::crypto::CryptoErrc::kInsufficientCapacity | rollback_semantics if the output buffer is too small |
| ara::crypto::CryptoErrc::kUnsupportedFormat | rollback_semantics if the specified format ID is not supported for this object type |
| ara::crypto::CryptoErrc::kUnsupported | rollback_semantics if exporting the object is not supported |
| ara::crypto::CryptoErrc::kUsageViolation | rollback_semantics if the object to be exported is a key and the allowed usage of the key does not include kAllowPlaintextExport |
Request a governed re-review of this record. The record is not changed immediately.
- Record
AUTOSAR/AP/record/SWS_CRYPT_10711- Status
- valid/unmigrated
- Version
AUTOSAR/AP/record/SWS_CRYPT_10711@rel:R25-11#a92e23eb- Content hash
a92e23eb- Source
- https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Cryptography.pdf#nameddest=SWS_CRYPT_10711
Status: valid/unmigrated
Version: rel:R25-11#c8dd72d0
Versionshistorie & Revisions (1 transition, 8 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_CRYPT_10711@rel:R25-11#c8dd72d0
Recorded Revisions (8):
- R25-11
rel:R25-11#6e8a805e2026-09-30 - R19-11
rel:R19-11#fe62960e2026-10-14 - R20-11
rel:R20-11#4cac78d62026-10-14 - R21-11
rel:R21-11#13d51a182026-10-14 - R22-11
rel:R22-11#3bb1942d2026-10-14 - R23-11
rel:R23-11#ee143e792026-10-14 - R24-11
rel:R24-11#761192782026-10-14 - R25-11
rel:R25-11#c8dd72d02026-10-14 active
Requirement Text as-of this release:
Curation Decisions:
Reachable Artifacts & Dependents:
| Date | Actor | Transition | Reason / Rationale | Campaign |
|---|---|---|---|---|
| 2026-08-13 | tool | none → valid/unmigrated | mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record | 2026-08-13-status-backfill |
gemini-3.8-flash-low· 2026-10-13 · Немецкий оригинал