unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#35553: getlogin and getlogin_r fail with error ENXIO
@ 2019-05-03 23:03 Bruno Haible
  2019-05-04 13:13 ` Danny Milosavljevic
  0 siblings, 1 reply; 5+ messages in thread
From: Bruno Haible @ 2019-05-03 23:03 UTC (permalink / raw)
  To: 35553

Hi,

Running the guix-1.0 installation image
(guix-system-vm-image-1.0.0.x86_64-linux) in qemu, I find that the
glibc functions getlogin() and getlogin_r() fail with error ENXIO.

Using the gnulib programs test-getlogin and test-getlogin_r I can see
that the program is reading the contents of the file /proc/self/loginuid
and its contents is "4294967295". Indeed, the file
glibc/sysdeps/unix/sysv/linux/getlogin_r.c contains this code:

  /* If there is no login uid, linux sets /proc/self/loginid to the sentinel
     value of, (uid_t) -1, so check if that value is set and return early to
     avoid making unneeded nss lookups. */
  if (uid == (uid_t) -1)
    {
      __set_errno (ENXIO);
      return ENXIO;
    }

Is it the xfce4 desktop which is not setting a loginuid? Or is it the lack
of a login screen?

It's the first Linux distro I've seen where getlogin() and getlogin_r()
fail when the user is running a normal desktop environment.

Bruno

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2019-05-09 10:15 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-05-03 23:03 bug#35553: getlogin and getlogin_r fail with error ENXIO Bruno Haible
2019-05-04 13:13 ` Danny Milosavljevic
2019-05-04 13:26   ` Bruno Haible
2019-05-07 10:18     ` Ludovic Courtès
2019-05-09 10:13   ` Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).