Source: glibc
Version: 2.29-1
Severity: important
User: debian-al...@lists.debian.org
Usertags: alpha

Hello!

Both on my Alpha XP-1000 as well as inside a qemu-user chroot, upgrading glibc
to version 2.29-1 resulted in setuid/getuid breaking in a weird way:

(sid-alpha-sbuild)root@epyc:/# apt -y upgrade              
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
The following packages were automatically installed and are no longer required:
  bsd-mailx cron exim4-base exim4-config exim4-daemon-light groff-base 
libevent-2.1-6 libgnutls-dane0 liblockfile-bin liblockfile1 libpipeline1 
libreadline7 libtext-iconv-perl
  libuchardet0 libunbound8 man-db psmisc
Use 'apt autoremove' to remove them.
The following packages will be upgraded:
  cpp g++ gcc libc-bin libc-dev-bin libc6.1 libc6.1-dev
7 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 6329 kB/6355 kB of archives.
After this operation, 34.8 kB disk space will be freed.
Get:1 http://incoming.ports.debian.org/buildd unstable/main alpha libc6.1-dev 
alpha 2.29-1 [2586 kB]
Get:2 http://incoming.ports.debian.org/buildd unstable/main alpha libc-dev-bin 
alpha 2.29-1 [277 kB]
Get:3 http://incoming.ports.debian.org/buildd unstable/main alpha libc6.1 alpha 
2.29-1 [2677 kB]
Get:4 http://incoming.ports.debian.org/buildd unstable/main alpha libc-bin 
alpha 2.29-1 [788 kB]
Fetched 6329 kB in 3s (2509 kB/s) 
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = "en_US:en",
        LC_ALL = "en_US.UTF-8",
        LC_CTYPE = "en_US.UTF-8",
        LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
/usr/bin/locale: Cannot set LC_CTYPE to default locale: No such file or 
directory
/usr/bin/locale: Cannot set LC_MESSAGES to default locale: No such file or 
directory
/usr/bin/locale: Cannot set LC_ALL to default locale: No such file or directory
debconf: delaying package configuration, since apt-utils is not installed
E: Can not write log (Is /dev/pts mounted?) - posix_openpt (19: No such device)
(Reading database ... 13696 files and directories currently installed.)
Preparing to unpack .../libc6.1-dev_2.29-1_alpha.deb ...
Unpacking libc6.1-dev:alpha (2.29-1) over (2.28-4) ...
Preparing to unpack .../libc-dev-bin_2.29-1_alpha.deb ...
Unpacking libc-dev-bin (2.29-1) over (2.28-4) ...
Preparing to unpack .../libc6.1_2.29-1_alpha.deb ...
debconf: unable to initialize frontend: Dialog
debconf: (No usable dialog-like program is installed, so the dialog based 
frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 
76.)
debconf: falling back to frontend: Readline
Unpacking libc6.1:alpha (2.29-1) over (2.28-4) ...
dpkg: error: requested operation requires superuser privilege
E: Sub-process /usr/bin/dpkg returned an error code (2)
(sid-alpha-sbuild)root@epyc:/#

After that, logging in through SSH no longer works. Running "dpkg --configure 
-a" always
results in the same error as shown above. Logging in through serial console 
aborts
immediately after typing the username, e.g. "root" and the login prompt is 
shown again.

Shortly after typing "root" and pressing enter, the following message is 
printed to the
console which seems to be an alpha-specific syscall:

[  195.414939] do_entUnaUser: 7 callbacks suppressed

I can fix the problem with the chroot, by simply downloading the 2.28-4 version 
of the
libc6.1 package and extracting it into the system root:

root@epyc:/local_scratch/sid-alpha-sbuild> wget 
http://snapshot.debian.org/archive/debian-ports/20190111T160151Z/pool-alpha/main/g/glibc/libc6.1_2.28-4_alpha.deb
--2019-09-09 22:55:02--  
http://snapshot.debian.org/archive/debian-ports/20190111T160151Z/pool-alpha/main/g/glibc/libc6.1_2.28-4_alpha.deb
Resolving snapshot.debian.org (snapshot.debian.org)... 193.62.202.27, 
185.17.185.185, 2001:630:206:4000:1a1a:0:c13e:ca1b, ...
Connecting to snapshot.debian.org (snapshot.debian.org)|193.62.202.27|:80... 
connected.
HTTP request sent, awaiting response... 200 OK
Length: 2728400 (2.6M)
Saving to: ‘libc6.1_2.28-4_alpha.deb’

libc6.1_2.28-4_alpha.deb                             
100%[====================================================================================================================>]
   2.60M  12.4MB/s    in 0.2s    

2019-09-09 22:55:02 (12.4 MB/s) - ‘libc6.1_2.28-4_alpha.deb’ saved 
[2728400/2728400]

root@epyc:/local_scratch/sid-alpha-sbuild> dpkg-deb -x libc6.1_2.28-4_alpha.deb 
.
root@epyc:/local_scratch/sid-alpha-sbuild> chroot .
bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
(sid-alpha-sbuild)root@epyc:/#

I will follow up with more information once I have figured out more.

Adrian

--
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer - glaub...@debian.org
`. `'   Freie Universitaet Berlin - glaub...@physik.fu-berlin.de
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913

Reply via email to