[OpenAFS] afs_syscall (Samba as a client of OpenAFS)

Gémes Géza geza@kzsdabas.hu
Sun, 28 Sep 2008 21:49:34 +0200


Hi,

Sorry for cross-posting, but it seems to be an interoperability problem.
After solving my previous problem of not being able to build samba with
fake-kaserver and vfs-afsacl support (samba bugzilla id 5799),
now I face an other one:
Successfully set the cells KeyFile in the secrets.tdb with:
net afs key /path/to/KeyFile cell.name
but later
net afs impersonate username cell.name
doesn't work the relevant part of strace -f net afs impersonate username
cell.name is:

open("/var/lib/samba/secrets.tdb", O_RDWR|O_CREAT|O_LARGEFILE, 0600) = 3
fcntl64(3, F_GETFD)                     = 0
fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
fcntl64(3, F_SETLKW64, {type=F_WRLCK, whence=SEEK_SET, start=0, len=1},
0xbffcbc14) = 0
read(3, "TDB file\n\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"...,
168) = 168
fstat64(3, {st_mode=S_IFREG|0600, st_size=40960, ...}) = 0
mmap2(NULL, 40960, PROT_READ|PROT_WRITE, MAP_SHARED, 3, 0) = 0xb7845000
fcntl64(3, F_SETLKW64, {type=F_UNLCK, whence=SEEK_SET, start=0, len=1},
0xbffcbc14) = 0
open("/dev/urandom", O_RDONLY|O_LARGEFILE) = 4
read(4, "\315", 1)                      = 1
fcntl64(3, F_SETLKW64, {type=F_RDLCK, whence=SEEK_SET, start=320,
len=1}, 0xbffcbaf4) = 0
fcntl64(3, F_SETLKW64, {type=F_UNLCK, whence=SEEK_SET, start=320,
len=1}, 0xbffcbb54) = 0
read(4, "\274\264\0247\200\37\232\27", 8) = 8
time(NULL)                              = 1222630617
geteuid32()                             = 0
afs_syscall(0x14, 0, 0x400c5603, 0xbffcbfd4, 0) = -1 ENOSYS (Function
not implemented)
write(2, "Could not set token into kernel\n", 32Could not set token into
kernel
) = 32
exit_group(1)                           = ?
Process 24632 detached

from which to me the suspicious line seems to be:
afs_syscall(0x14, 0, 0x400c5603, 0xbffcbfd4, 0) = -1 ENOSYS (Function
not implemented)
which I simply don't understand, because the box otherwise is a fully
functional openafs client (and server) test system.

Thanks for any ideas.

Geza