On Sat, Oct 30, 2021 at 10:06:36AM -0000, Luca Boccassi wrote: > > On 10/29/21 3:53 PM, Lennart Poettering wrote: > > > > Does there need to be any parsing at all? WireGuard avoids the problem > > by only using fixed-size fields, so one only needs to check that the > > field is of the correct length. Qubes OS uses the same solution in > > at least its GUI protocol. You always need *some* parser. The advantage of text based protocol is that it's readable for humans and easy to extend. E.g. if we feel the need to add some structured data or an array of URLs, it just works without any work. But if we design a custom binary protocol, we'd have to think about this upfront. Binary protocols are good for efficient processing and when you know exactly what will be needed, which doesn't matter/isn't the case here. > Different vendors have different requirements, so one of the goals was to be very specific about the elf format so that it's easy on the tooling (specific note name, id, owner, alignment, padding, readonly, section), but very open ended on the payload so that each vendor can add as many or as few key/value pairs as they need/cam afford. > Furthermore, if you start asking questions like "what's the longest version a package can have", the answer can be extremely surprising - some time ago someone checked the pathological corner cases in Debian and it was like a hundred characters or so (!!) Apparently we have rust-plist+enable_unstable_features_that_may_break_with_minor_version_bumps-devel-0:1.2.1-1.fc35.noarch in F35 repos ;) Zbyszek _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure