One of the current blocker of numerous of packages are libattr and
libacl (see my previous email). There used to build correctly on
GNU/kFreeBSD, but that's not the case anymore.
A closer look shows that even if they were building correctly, they
could no work on GNU/kFreeBSD: libattr is using the syscalls number
On Linux, the ACL are stored as part of the extended attributes. libattr
is providing accesses to these attributes, while libacl has the logic to
convert them into ACL to provide the POSIX 1003.1e functions.
On GNU/kFreeBSD, the extended attributes accesses are using slightly
different syscalls. The ACL are managed directly by syscalls very close
to the POSIX 1003.1e functions.
It looks like we need to port libattr and libacl (plus the corresponding
userland utilities from the same source package) to GNU/kFreeBSD. My
current option for libattr would be to add a conversion layer between
the FreeBSD syscalls and the public API. That mainly involves
converting the namespace argument from string to int number. libacl
should be ported to not use libattr, but to do directly the syscalls.
That should be easy given the API correspond to the POSIX 1003.1e one,
and we can use code from FreeBSD's libc.
In both case I really hope such changes would be accepted in Debian and
What do people think about that? Any other idea?
Aurelien Jarno GPG: 1024D/F1BCDB73