diff mbox series

libext2fs: add gnu.translator support

Message ID 20201102130319.1434330-1-romain.naour@gmail.com
State Accepted
Headers show
Series libext2fs: add gnu.translator support | expand

Commit Message

Romain Naour Nov. 2, 2020, 1:03 p.m. UTC
The support of setting (and reading) of passive translators from
GNU/Linux has been added to the Linux kernel by the commit [1].
The name index '10' has been reserved for GNU/Hurd.

Hurd passive translators are stored as a xattr value with name
"gnu.translator" [2].

If "gnu.translator" xattr value has been set before calling
mkfs.ext2, it will segfault since "gnu." is not present in
ea_names[].

$ setfattr -n gnu.translator -v "/hurd/exec\0" ${TARGET_DIR}/servers/exec
$ mkfs.ext2 -d ${TARGET_DIR} -o hurd -O ext_attr rootfs.ext2 "1G"

Adding "gnu." to ea_names[], allow to create ext2 filesystem
for GNU/Hurd with passive translator already set.

[1] https://git.savannah.gnu.org/cgit/hurd/hurd.git/commit/?id=a04c7bf83172faa7cb080fbe3b6c04a8415ca645
[2] https://lists.gnu.org/archive/html/bug-hurd/2016-08/msg00075.html

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Theodore Ts'o <tytso@mit.edu>
---
 lib/ext2fs/ext_attr.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Theodore Ts'o Jan. 20, 2021, 4:55 a.m. UTC | #1
On Mon, Nov 02, 2020 at 02:03:19PM +0100, Romain Naour wrote:
> The support of setting (and reading) of passive translators from
> GNU/Linux has been added to the Linux kernel by the commit [1].
> The name index '10' has been reserved for GNU/Hurd.
> 
> Hurd passive translators are stored as a xattr value with name
> "gnu.translator" [2].
> 
> If "gnu.translator" xattr value has been set before calling
> mkfs.ext2, it will segfault since "gnu." is not present in
> ea_names[].
> 
> $ setfattr -n gnu.translator -v "/hurd/exec\0" ${TARGET_DIR}/servers/exec
> $ mkfs.ext2 -d ${TARGET_DIR} -o hurd -O ext_attr rootfs.ext2 "1G"
> 
> Adding "gnu." to ea_names[], allow to create ext2 filesystem
> for GNU/Hurd with passive translator already set.
> 
> [1] https://git.savannah.gnu.org/cgit/hurd/hurd.git/commit/?id=a04c7bf83172faa7cb080fbe3b6c04a8415ca645
> [2] https://lists.gnu.org/archive/html/bug-hurd/2016-08/msg00075.html
> 
> Signed-off-by: Romain Naour <romain.naour@gmail.com>
> Cc: Theodore Ts'o <tytso@mit.edu>

Applied, thanks.

					- Ted
diff mbox series

Patch

diff --git a/lib/ext2fs/ext_attr.c b/lib/ext2fs/ext_attr.c
index 871319a5..4580d2e1 100644
--- a/lib/ext2fs/ext_attr.c
+++ b/lib/ext2fs/ext_attr.c
@@ -336,6 +336,7 @@  struct ea_name_index {
 
 /* Keep these names sorted in order of decreasing specificity. */
 static struct ea_name_index ea_names[] = {
+	{10, "gnu."},
 	{3, "system.posix_acl_default"},
 	{2, "system.posix_acl_access"},
 	{8, "system.richacl"},