From 00086aa6ffab7a13fb027758369960d9fabcf162 Mon Sep 17 00:00:00 2001 From: Harper Date: Fri, 8 Mar 2024 23:27:09 +0000 Subject: [PATCH] fix: allow extra bytes when decoding base address (#420) --- pallas-addresses/src/lib.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pallas-addresses/src/lib.rs b/pallas-addresses/src/lib.rs index 8653726..c21ff17 100644 --- a/pallas-addresses/src/lib.rs +++ b/pallas-addresses/src/lib.rs @@ -337,7 +337,7 @@ macro_rules! parse_shelley_fn { }; ($name:tt, $payment:tt, $delegation:tt) => { fn $name(header: u8, payload: &[u8]) -> Result { - if payload.len() != 56 { + if payload.len() < 56 { return Err(Error::InvalidAddressLength(payload.len())); } @@ -917,4 +917,10 @@ mod tests { _ => panic!(), } } + + #[test] + fn test_minted_extra_bytes_base_address() { + let addr = Address::from_hex("015bad085057ac10ecc7060f7ac41edd6f63068d8963ef7d86ca58669e5ecf2d283418a60be5a848a2380eb721000da1e0bbf39733134beca4cb57afb0b35fc89c63061c9914e055001a518c7516"); + assert!(matches!(addr, Ok(Address::Shelley(_)))); + } }