diff --git a/src/binary_formats.ml b/src/binary_formats.ml index c2e45739..9dd88d65 100644 --- a/src/binary_formats.ml +++ b/src/binary_formats.ml @@ -1,10 +1,23 @@ (* https://docs.taler.net/core/api-common.html#binary-formats - numeric values are in network byte order (big endian) *) -(* TODO: ? - - some struct have a 'P' suffix, but are not defined in doc - we assume they are = to the un-suffixed ones - - some purpose (`TALER_SIGNATURE_XXX`) are missing or outdated(?) *) + +(* structs that are ‘packed’ and do not contain pointers and are + thus suitable for hashing or similar operations are distinguished + by adding a “P” at the end of the name. (NEW) Note that this convention + does not hold for the GNUnet-structs (yet). + + structs that are used with a purpose for signatures, + additionally get an “S” at the end of the name. + + (from https://docs.taler.net/taler-developer-manual.html) *) + +(* TODO + - check that our struct are well "packed" + - test them + - some purpose (`TALER_SIGNATURE_XXX`) are missing + exchange and gana master branch are not in sync + and we should use a specific git tag instead *) open Include @@ -271,8 +284,7 @@ module AgeMask = struct end (* TODO - - why is the non-NBO version only used in TALER_WithdrawRequestPS? - - GNUNET_PACKED? *) + - why is the non-NBO version only used in TALER_WithdrawRequestPS? *) (* Number of characters (plus 1 for 0-termination) for currency names. typically an ISO 4217 currency code when an alphanumeric 3-digit code is used. For regional currencies, the first character should be a "*" followed