GALANTHUS / ABI FUNCTION REFERENCE
gln_get_interrupt_info_provider_status_count
Declared in <galanthus/c_api/gln_capi.h>.
GLN_API size_t GLN_CALL gln_get_interrupt_info_provider_status_count(const gln_interrupt_info_t* in_info);
Purpose
Returns the number of provider-status rows attached to an interrupt info handle.
Action-required interrupt info of kind GLN_INTERRUPT_TAN_REQUIRED, GLN_INTERRUPT_DECOUPLED_PENDING, or GLN_INTERRUPT_VOP_CONFIRMATION_REQUIRED can carry FinTS provider-status rows when the interruption record includes statuses.
Return
Returns the number of rows or entries materialized in the supplied typed view.
| Type | Nullability | Ownership |
|---|---|---|
size_t | value | value |
Parameters
| Name | Direction | Type | Nullability | Ownership |
|---|---|---|---|---|
in_info | input | const gln_interrupt_info_t* | nullable | borrowed |
Provider Status Row Semantics
These accessors read FinTS status rows attached to an action-required interrupt info object. TAN-required, decoupled-pending, and VoP-confirmation interrupts can carry these rows when the interruption record included FinTS statuses.
| Field | Meaning |
|---|---|
kind | GLN_PROVIDER_STATUS_KIND_FINTS for rows exposed by these interrupt-info accessors. |
code_or_null | FinTS status code from the interruption status entry. |
subcode_or_null | NULL; FinTS interruption status rows do not expose a separate subcode through this view. |
message_or_null | FinTS status message from the interruption status entry. |
reference_or_null | FinTS reference segment when the status entry carries one; otherwise NULL. |
provider_text_or_null | NULL; the FinTS interruption provider-status view does not attach an additional provider-text field. |
Use gln_get_interrupt_info_provider_status_count as the exclusive upper bound for gln_get_interrupt_info_provider_status_at. A null, zero-initialized, or detail-less interrupt info yields count 0 and row pointer NULL.
Provider Status Row Lifetime
Rows returned by gln_get_interrupt_info_provider_status_at are borrowed from the interrupt detail. The row object and every const char* field in it remain valid only while that interrupt detail remains alive.
For interrupt info borrowed through gln_get_backend_result_interrupt_info, the detail remains alive until gln_destroy_backend_result releases the parent envelope.
Notes
Passing NULL for in_info is allowed and returns 0.
A zero-initialized or otherwise detail-less interrupt info returns 0.
Use this count as the exclusive upper bound for gln_get_interrupt_info_provider_status_at.
The count is the number of materialized status rows on the interrupt detail, so valid indexes are 0 through count - 1 when the count is non-zero.
When the interrupt info came from gln_get_backend_result_interrupt_info, the status rows are borrowed from the parent backend result envelope.