Skip to content

Declared in <galanthus/c_api/gln_capi.h>.

GLN_API gln_status_t GLN_CALL gln_get_ebics_supported_versions(
    gln_backend_t*         in_backend,
    gln_backend_result_t** out_result);
  • Family: Backend operations
  • Return type: gln_status_t

Purpose

gln_get_ebics_supported_versions runs the EBICS HEV query and returns the protocol versions advertised by the bank.

When To Use

Use this before setup when the embedder wants to inspect the bank's supported EBICS protocol versions explicitly.

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.

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.

TypeNullabilityOwnership
gln_status_tvaluevalue

Parameters

NameDirectionTypeNullabilityOwnership
in_backendinputgln_backend_t*nonnullborrowed
out_resultoutputgln_backend_result_t**nonnulltransferred_out

Success Result

Successful operation envelopes have outcome GLN_BACKEND_OUTCOME_SUCCESS, status GLN_OK, and kind GLN_BACKEND_RESULT_KIND_EBICS_SUPPORTED_VERSIONS.

Borrow the typed success view with gln_get_backend_result_ebics_supported_versions.

Use gln_get_backend_result_ebics_supported_versions only when the envelope outcome is GLN_BACKEND_OUTCOME_SUCCESS and the kind is GLN_BACKEND_RESULT_KIND_EBICS_SUPPORTED_VERSIONS.

The typed result is a list of version rows. Enumerate it with gln_get_ebics_supported_versions_count and gln_get_ebics_supported_version_at.

Outcomes

  • GLN_BACKEND_OUTCOME_SUCCESS: read the GLN_BACKEND_RESULT_KIND_EBICS_SUPPORTED_VERSIONS typed view.
  • GLN_BACKEND_OUTCOME_REJECTED: inspect gln_get_backend_result_status and gln_get_backend_result_error for EBICS rejection details.
  • GLN_BACKEND_OUTCOME_ERROR: inspect gln_get_backend_result_status and gln_get_backend_result_error. Non-EBICS backends use this outcome with status GLN_ERR_NOT_SUPPORTED.

This HEV query does not produce TAN-style action-required continuations.

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.

Related Topics

See Also