GALANTHUS / ABI FUNCTION REFERENCE
gln_verify_pending_ebics_bank_keys
Declared in <galanthus/c_api/gln_capi.h>.
GLN_API gln_status_t GLN_CALL gln_verify_pending_ebics_bank_keys(
gln_backend_t* in_backend,
const gln_ebics_verify_bank_keys_request_t* in_request,
gln_backend_result_t** out_result);
Purpose
gln_verify_pending_ebics_bank_keys promotes pending EBICS bank keys only when both expected digests match the staged keys.
When To Use
Call this after HPB download and out-of-band digest comparison.
Call Contract
GLN_OK from the function means an envelope was produced in *out_result; it does not mean the backend operation succeeded. Inspect the envelope with gln_get_backend_result_outcome, gln_get_backend_result_status, and gln_get_backend_result_kind.
out_result == NULL is the no-envelope invalid-argument case. In that case the function returns GLN_ERR_INVALID_ARG directly.
Initialize in_request by calling gln_default_ebics_verify_bank_keys_request and provide non-empty expected_authentication_digest and expected_encryption_digest. Missing digests return an invalid-argument envelope; mismatches fail with ebics_bank_key_verification_failed.
The parameter table is binding for required handles and output slots.
Return
Returns GLN_OK when the call produced a gln_backend_result_t envelope in out_result. Operation success, caller action, provider rejection, and operation errors are reported inside that envelope.
| Type | Nullability | Ownership |
|---|---|---|
gln_status_t | value | value |
Parameters
| Name | Direction | Type | Nullability | Ownership |
|---|---|---|---|---|
in_backend | input | gln_backend_t* | nonnull | borrowed |
in_request | input | const gln_ebics_verify_bank_keys_request_t* | nonnull | borrowed |
out_result | output | gln_backend_result_t** | nonnull | transferred_out |
Success Result
Successful operation envelopes have outcome GLN_BACKEND_OUTCOME_SUCCESS, status GLN_OK, and kind GLN_BACKEND_RESULT_KIND_EBICS_BANK_KEYS.
Borrow the typed success view with gln_get_backend_result_ebics_bank_keys.
Use gln_get_backend_result_ebics_bank_keys only when the envelope outcome is GLN_BACKEND_OUTCOME_SUCCESS and the kind is GLN_BACKEND_RESULT_KIND_EBICS_BANK_KEYS.
The typed bank-key result is the promoted trusted key material.
Outcomes
GLN_BACKEND_OUTCOME_SUCCESS: read theGLN_BACKEND_RESULT_KIND_EBICS_BANK_KEYStyped view.GLN_BACKEND_OUTCOME_ERROR: inspectgln_get_backend_result_statusandgln_get_backend_result_error. Missing or mismatched expected digests fail this operation. Digest mismatches are reported asebics_bank_key_verification_failed.
Bank-key verification is a local key-store promotion step.
Ownership And Lifetime
The envelope returned through out_result is caller-owned and must be released with gln_destroy_backend_result.
Typed views, result rows or fields, borrowed strings, and the JSON string are borrowed from the envelope. They become invalid when the envelope is destroyed. Copy strings or row data before destroying the envelope when the caller needs to keep them.