I implemented extended attributes in my Linux 9P server: term% echo Xuser.wow abcd >,ctl/foo term% cat ,ctl/foo dev 45831 inode 265868 umode 0100644 nlink 1 uid 1001 gid 1001 rdev 0 size 6 blksize 4096 blocks 16 atime 1739199962 mtime 1739199962 ctime 1740003632 atimensec 460383798 mtimensec 470383712 ctimensec 621853327 name foo Xuser.wow abcd term% Apparently on Linux your attribute names have to start with "user." I think this is the first time I've ever created an extended attribute on Linux. And I did it from Plan 9 over 9P!
Xuser.wow abcd makes an attribute with a UTF-8 value Yuser.wow2 12 3a 08 b5 (hex-encoding) makes an attribute with a binary value Xuser.wow deletes the attribute Yuser.wow2 makes an empty (0-length) attribute My server presents attributes as UTF-8 if the value is valid UTF-8 with no frogs, and presents as hex-encoded binary if not. And from Linux via my adapter: lyssa@pibysix:~/mnt/mnt/home/lyssa/t $ xattr -l foo user.wow: abcd lyssa@pibysix:~/mnt/mnt/home/lyssa/t $ All I have to do now is find a use for them. ;) The Linux xattr program that comes with the extended attributes package seems strangely slow. There's a half-second pause before it does what should be a trivial operation. When I did an strace to find out what system call it makes to delete an attribute, I found out why: 7275 system calls. 2384 of them contain the string "python". ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T0f2c2342a05a3d6e-M7168e49cb8a5cb39723b399b Delivery options: https://9fans.topicbox.com/groups/9fans/subscription