[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
glib2.0 test gio/tests/socket fails, BUG?
From: |
Svante Signell |
Subject: |
glib2.0 test gio/tests/socket fails, BUG? |
Date: |
Fri, 13 Sep 2013 00:01:20 +0200 |
Hello,
Running the test suite for glib2.0 one test: gio/tests/socket,
sub-test: /socket/unix-connection-ancillary-data fails for unknown
reasons The ancillary data sent is using SCM_RIGHTS (not SCM_CREDS). The
latest libc-2.17-92, hurd-20130727 and glib2.0-2.36.4-1, are installed.
The test errors out with err = EKERN_INVALID_ADDRESS after calling
sendmsg.c:__io_restrict_auth(), code below:
for (i = 0; i < nfds; i++)
{
err = HURD_DPORT_USE
(fds[i],
({
err = __io_restrict_auth (port, &ports[nports],
0, 0, 0, 0);
if (! err)
nports++;
/* We pass the flags in the control data. */
fds[i] = descriptor->flags;
}));
if (err)
goto out;
}
Is there any reason for this error message to fail that test? (setting
err to zero and rebuilding libc.so makes this, and other, test pass)
./lt-socket
/socket/unix-connection-ancillary-data: **
GLib-GIO:ERROR:/home/srs/DEBs/glib2.0/glib2.0-2.36.4/./gio/tests/socket.c:802:test_unix_connection_ancillary_data:
assertion failed (err == NULL): Error sending message: (os/kern) invalid
address (g-io-error-quark, 0)
Aborted
srs@hurd-20120221:~/DEBs/dbus$ **
GLib-GIO:ERROR:/home/srs/DEBs/glib2.0/glib2.0-2.36.4/./gio/tests/socket.c:783:test_unix_connection_ancillary_data:
assertion failed (fd > -1): (-1 > -1)
^C
I'm attaching the built test program, not stripped, it's only 25k.
Another puzzling thing is how to find out which version is used for
which situation? For *_io_restrict_auth() there are plenty to choose
from:
grep -r _io_restrict_auth ../../hurd/hurd-20130727/
pfinet/io-ops.c:S_io_restrict_auth
pflocal/io.c:S_io_restrict_auth
boot/boot.c:S_io_restrict_auth
libdiskfs/io-restrict-auth.c:diskfs_S_io_restrict_auth
libnetfs/io-restrict-auth.c:netfs_S_io_restrict_auth
libtreefs/s-io.c:treefs_S_io_restrict_auth
libtreefs/s-io.c: return treefs_s_io_restrict_auth
libtrivfs/io-restrict-auth.c:trivfs_S_io_restrict_auth
And the hooks, macros?
libtreefs/treefs-s-hooks.h:DHH(s_io_restrict_auth, error_t,
libtreefs/treefs-s-hooks.h:#define treefs_s_io_restrict_auth(h, args...)
\
libtreefs/treefs-s-hooks.h: _TREEFS_CHH(h, S_IO_RESTRICT_AUTH,
s_io_restrict_auth , ##args)
Thanks,
Svante
lt-socket
Description: application/executable
- glib2.0 test gio/tests/socket fails, BUG?,
Svante Signell <=