CLASSIC
Modul: cryif
Rolle: constitutive
Konfidenz: 95%
SNIP_CLASSIC_CRYIF_SECTION_8_3_2_Job_Processing_Interface
Wortlaut
8.3.2 Job Processing Interface
To unite a single call function and a streaming approach for the crypto services, there
is one interface CryIf_ProcessJob. Its job parameter job contains a Crypto_OperationModeType flag field (job->jobPrimitiveInputOutput.mode), which can be
set as "START", "UPDATE", "FINISH" or combination of them. It declares explicitly
what operation shall be performed. These operation modes can be mixed, and execute
multiple operations at once.
To process a crypto service with a single call with Crypto_ProcessJob the operation
mode is a disjunction of the 3 modes "START|UPDATE|FINISH".
[SWS_CryIf_91003] Definition of API function CryIf_ProcessJob ⌈
Service Name
CryIf_ProcessJob
Syntax
Std_ReturnType CryIf_ProcessJob (
uint32 channelId,
Crypto_JobType* job
)
Service ID [hex]
0x03
Sync/Async
Depends on configuration
Reentrancy
Reentrant
Parameters (in)
channelId
Holds the identifier of the crypto channel.
Parameters (inout)
job
Pointer to the configuration of the job. Contains structures with
user and primitive relevant information.
Parameters (out)
None
Return value
Std_ReturnType
E_OK: Request successful
E_NOT_OK: Request failed
CRYPTO_E_BUSY: Request failed, Crypro Driver Object is busy
CRYPTO_E_KEY_NOT_VALID: Request failed, the key is not valid
CRYPTO_E_KEY_SIZE_MISMATCH: Request failed, a key
element has the wrong size
CRYPTO_E_KEY_READ_FAIL: The service request failed,
because key element extraction is not allowed
CRYPTO_E_KEY_WRITE_FAIL: The service request failed
because the writing access failed
CRYPTO_E_KEY_NOT_AVAILABLE: The service request failed
because the key is not available
CRYPTO_E_JOB_CANCELED: The service request failed because
the synchronous Job has been canceled
CRYPTO_E_KEY_EMPTY: Request failed because of uninitialized
source key element
CRYPTO_E_ENTROPY_EXHAUSTED
CRYPTO_E_CUSTOM_ERROR: Remote processing failed
Description
This interface dispatches the received jobs to the configured crypto driver object.
Available via
CryIf.h
⌋
[SWS_CryIf_00027] CryIf_ProcessJob API: Report CRYIF_E_UNINIT error
Upstream requirements: SRS_CryptoStack_00034, SRS_BSW_00369, SRS_BSW_00406
⌈If development error detection for the CRYIF is enabled: The function CryIf_ProcessJob shall report CRYIF_E_UNINIT to the DET if the module is not yet initialized.⌋
[SWS_CryIf_00028] CryIf_ProcessJob API: Report CRYIF_E_PARAM_HANDLE
error
Upstream requirements: SRS_CryptoStack_00034, SRS_BSW_00369
⌈If development error detection for the CRYIF is enabled: The function CryIf_ProcessJob shall report CRYIF_E_PARAM_HANDLE to the DET if the parameter channelId is out or range.⌋
[SWS_CryIf_00029] CryIf_ProcessJob API: Report CRYIF_E_PARAM_POINTER
error
Upstream requirements: SRS_CryptoStack_00034, SRS_BSW_00369
⌈If development error detection for the CRYIF is enabled: The function CryIf_ProcessJob shall report CRYIF_E_PARAM_POINTER to the DET if the parameter job is a
null pointer.⌋
[SWS_CryIf_00044] CryIf_ProcessJob API: Forward crypto job to the mapped
driver
Upstream requirements: SRS_CryptoStack_00006, SRS_CryptoStack_00015
⌈If no errors are detected by CRYIF, the service CryIf_ProcessJob shall call
Crypto_<vi>_<ai>_ProcessJob for the driver configuration mapped to the service and
pass on the return value.⌋
[SWS_CryIf_00136] Job precessing redirection
Upstream requirements: SRS_CryptoStack_00104
⌈If job processing redirection is used for a job, the crypto interface need to adapt the
incoming crypto interface key references and key element references to the corresponding key references and key element references of the respective values of the
crypto driver.⌋
Versionen & Provenienz · Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.
Begründung & Zuweisungs-Evidenz
Cited verbatim in the snippet (deterministic citation).
Dokumenten-Herkunft & Rückverfolgbarkeit
| Spezifikations-Dokument | SWS_CryptoInterface.pdf |
|---|---|
| Dokumentseite | Seite 22 |
| Ziel-Modul | cryif (classic) |
| Ziel-Anforderung | SWS_Std_00005 |
| Semantische Rolle | constitutive |
| Automatisierungs-Konfidenz | 0.95 |