]> git.bitcoin.ninja Git - rust-lightning/commitdiff
Clarify maximum length of an invoice description
authorElias Rohrer <dev@tnull.de>
Tue, 16 Jul 2024 08:28:58 +0000 (10:28 +0200)
committerElias Rohrer <dev@tnull.de>
Tue, 16 Jul 2024 08:28:58 +0000 (10:28 +0200)
We previously stated in the docs that the invoice description can be at most `1023`
bytes long, which is wrong. According to BOLT 11 it's at most 1023*5 bits (639 bytes) long.

lightning-invoice/src/lib.rs

index e427bf3ccb99965a4ba50d8609c3dad186cf3658..d64da322a76fb66a9b6426286ccc77a0d21c2b4b 100644 (file)
@@ -1511,8 +1511,8 @@ impl TaggedField {
 
 impl Description {
 
-       /// Creates a new `Description` if `description` is at most 1023 __bytes__ long,
-       /// returns [`CreationError::DescriptionTooLong`] otherwise
+       /// Creates a new `Description` if `description` is at most 1023 * 5 bits (i.e., 639 bytes)
+       /// long, and returns [`CreationError::DescriptionTooLong`] otherwise.
        ///
        /// Please note that single characters may use more than one byte due to UTF8 encoding.
        pub fn new(description: String) -> Result<Description, CreationError> {