Hi, I don't think GNU/kFreeBSD's behaviour is wrong; but we may need to fix some applications that suffer problems, including bash.
Maybe this is related to the problem (a wild guess really - the first thing that jumped out at me as being wrong). There are checks for __FreeBSD__ relating to euid/egid, and they may also need to check for __FreeBSD_kernel__ bash-4.2/lib/sh/eaccess.c: > int > sh_eaccess (path, mode) > char *path; > int mode; > { > int ret; > > if (path_is_devfd (path)) > return (sh_stataccess (path, mode)); > > #if defined (HAVE_FACCESSAT) && defined (AT_EACCESS) > return (faccessat (AT_FDCWD, path, mode, AT_EACCESS)); > #elif defined (HAVE_EACCESS) /* FreeBSD */ > ret = eaccess (path, mode); /* XXX -- not always correct for X_OK */ > # if defined (__FreeBSD__) > if (ret == 0 && current_user.euid == 0 && mode == X_OK) > return (sh_stataccess (path, mode)); > # endif > return ret; and: > if (current_user.uid == current_user.euid && current_user.gid == > current_user.egid) > { > ret = access (path, mode); > #if defined (__FreeBSD__) || defined (SOLARIS) > if (ret == 0 && current_user.euid == 0 && mode == X_OK) > return (sh_stataccess (path, mode)); > #endif > return ret; Regards, -- Steven Chamberlain ste...@pyro.eu.org -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/510d8ea8.5080...@pyro.eu.org