Skip to main content

find_program_address

Function find_program_address 

Source
pub fn find_program_address(
    seeds: &[&[u8]],
    program_id: &Address,
) -> (Address, u8)
Expand description

Find a program-derived address and its bump seed.

Iterates bump seeds 255..=0 until a valid PDA is found.

§Panics

Panics if no viable bump exists (matching upstream Pubkey::find_program_address), and on non-SVM hosts, where the sha256 syscall is unavailable. The earlier host fallback silently returned (Address::default(), 0), the all-zero System Program address; which made host tests “pass” derivation while comparing against a meaningless key. Host tests should exercise PDA paths through the SVM harness.