be_u32_to_i64 Function

public pure function be_u32_to_i64(buf) result(n)

Decode a 4-byte big-endian length prefix as an UNSIGNED 32-bit value widened to int64. Each byte is masked into int64 before the shift/OR, so a wire value with the high bit set (0x80000000.. 0xFFFFFFFF) decodes as a large positive int64 — not a negative int32 (the desync bug). Range: [0, 4294967295].

Arguments

Type IntentOptional Attributes Name
integer(kind=int8), intent(in) :: buf(4)

Return Value integer(kind=int64)