[Unison-hackers] call for review and testing: ACLs and extended attributes

Tõivo Leedjärv toivol at gmail.com
Sat Jul 23 01:41:15 EDT 2022


On Fri, 22 Jul 2022 at 20:05, Greg Troxel <gdt at lexort.com> wrote:
>
> ACL: https://urldefense.com/v3/__https://github.com/bcpierce00/unison/pull/359__;!!IBzWLUs!Uv_UjlSWdfIVondJ1flL5QkUHASF51RpeBuM0JQkA_01mro7SQOeDeGfPNiKqhZWzou4Ez38JdO7gvlOEAmH3Ti2MfQ$ 
> xattr: https://urldefense.com/v3/__https://github.com/bcpierce00/unison/pull/368__;!!IBzWLUs!Uv_UjlSWdfIVondJ1flL5QkUHASF51RpeBuM0JQkA_01mro7SQOeDeGfPNiKqhZWzou4Ez38JdO7gvlOEAmHI1Z-sOk$ 
>
> I am unclear if these use the same archive-format extension and how it
> works if you run both.  Maybe Töivo can comment?

Yes, these are based on the umarshal extensibility and feature
negotiation capability merged a while back. After each connection is
established, if both client and server support xattr and/or ACL then
the RPC structures will be adjusted accordingly for one or both of the
features. As will the archive format. With the exception that once
archive format is extended, it will remain so. Even if at the next
connection xattr and/or ACL are not negotiatied.

This also means that if you use a new client and connect to an older
server (or vice versa) then the archive will not be upgraded.
Everything will (well, should) work as if these features did not exist
in the code.

These features are independent (although they share a lot of code, of
course). In practice, the ACL PR is based on the xattr PR, so it
currently includes both the features and if the server also supports
both then both will be enabled at the same time. If server supports
only xattr then only that feature will be enabled.

There is a chance to consolidate some testing. Since the ACL PR is
based on the xattr PR, binaries built from the ACL PR can be used to
test both features. Even at the same time, by enabling both
preferences for test runs.


More information about the Unison-hackers mailing list