X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=lightning%2Fsrc%2Futil%2Fser.rs;h=cbdb5485e7bd984312c5a139e220835769f8f73b;hb=534d7317cf7ee4dd9294b6c028eaa470fb9257db;hp=1570e5aeea44de753460b1bfcb8523c00b690dfc;hpb=f389a0ec39da9535e0c0659ccf8e61af1f1afd7e;p=rust-lightning diff --git a/lightning/src/util/ser.rs b/lightning/src/util/ser.rs index 1570e5ae..cbdb5485 100644 --- a/lightning/src/util/ser.rs +++ b/lightning/src/util/ser.rs @@ -1384,7 +1384,12 @@ impl Readable for TransactionU16LenLimited { fn read(r: &mut R) -> Result { let len = ::read(r)?; let mut tx_reader = FixedLengthReader::new(r, len as u64); - Ok(Self(Readable::read(&mut tx_reader)?)) + let tx: Transaction = Readable::read(&mut tx_reader)?; + if tx_reader.bytes_remain() { + Err(DecodeError::BadLengthDescriptor) + } else { + Ok(Self(tx)) + } } }