From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.3 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 27858 invoked from network); 16 Sep 2021 19:06:44 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 16 Sep 2021 19:06:44 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1631819204; b=WKV0Ei0LTZ/BXCxgmkZjnwpZzw+3OwK48ne3Ddb8jTf1iHVI8Gr2CPWs4Vq/gPo0bc2tQFGZqL oaIc3faKmCBwYQ7JJzulLQ4dL7eEjqOczztwORv3y0Y/aAyab/8TvnJBDyw3hi2IVFO1joOzmB +61M2jO8z6+RRbiadjnQjmsSNwRublIouq49o7bL4x72qWZwGVuB9QSuedhJCNcP3rw7T7Qt12 RpcxgP8GX5UPb/z6llqM8z1ZBfHRSIMVWPp2OMAByqU6ePBoHuLcz/a7zLA75zMEnffzkWr2vy tUslgh5Z5C4t5nsDy9YK9SHWMAUqna239WhOZj7eAZYi6Q==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (sym2.noone.org) smtp.remote-ip=178.63.92.236; dmarc=none header.from=deuxchevaux.org; arc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20210803; t=1631819204; bh=4mauKaWb35XWPq0fINBMGOqBQnlhzrnOfszVc8znSwM=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:In-Reply-To:Content-Type:MIME-Version:References:Message-ID: Subject:To:From:Date:DKIM-Signature; b=NEfKCSkqmAZ+NU/gxbm+4byT/EUQ5d3R66l9BCZkR/C63fDFZ3ahZbGRw6gPVt6bVmLUypFii3 dmgIDTeBwVuuEWEsIi73kq5wLP7oimhu5fisEcCWAVlDipJzC7KQzGv1DWe8R1YLoT0bHO2YhX JT9kXBkN0xM31zHypQgnABd7BfCb6YxoxpQFDPlVCVXWQRZYmyVXe0aNUhwBxyopw54WvVxYKK mFOK5Dc0x2LnRE8LOQvs5mTFMRtfe8TBnN+/qufO33ekHnS8lhKRqqkNAHHrhFEJgaqB7nD0T2 gOeg97/olPqRwV4EKeBkeh1I8APXbgphL/NGdAhlZDcU0Q==; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=zsh.org; s=rsa-20210803; h=List-Archive:List-Owner:List-Post:List-Unsubscribe: List-Subscribe:List-Help:List-Id:Sender:In-Reply-To:Content-Type:MIME-Version :References:Message-ID:Subject:To:From:Date:Reply-To:Cc: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID; bh=7jnOz16pdUHaO+Mu6AIpmgSVKMWpccSjxIlMjcbG19Q=; b=poFzsUZiKXaMlve2IJ/WrzV4LR UVKi7NOWxba24OcDHCK+GcKG3hbpsPp9yL3l7MOTaC6TGGodVF8ssV3+w2J7g/TvDgF2Pg2vJPzUs x3VuLu9toYtQsveZ2TMdYT8Bh8PRWhmZo6goOcVg552r8l495lj1pQdneWR08mQkmN8+GxBDrHcc9 ZT8KkRhjU0qiaOtel1+fsWlFRAwSDW40wNii137WCy1jyt6o/NDTiJEt8XCkhn564O3otBmOab7I3 +lMMg40vEeujjUF58KSb3Nd7QhwQvdRV5CarIEiknTWcsx67hQxKo+JANT0lkE595Xsh4xRotH9Iu /JzwkEVg==; Received: from authenticated user by zero.zsh.org with local id 1mQwiZ-000FuI-RG; Thu, 16 Sep 2021 19:06:43 +0000 Authentication-Results: zsh.org; iprev=pass (sym2.noone.org) smtp.remote-ip=178.63.92.236; dmarc=none header.from=deuxchevaux.org; arc=none Received: from sym2.noone.org ([178.63.92.236]:51310) by zero.zsh.org with esmtps (TLS1.2:ECDHE-RSA-AES256-GCM-SHA384:256) id 1mQwDD-000DoD-9V; Thu, 16 Sep 2021 18:34:20 +0000 Received: by sym2.noone.org (Postfix, from userid 1000) id 4H9Qj638gbzvjfm; Thu, 16 Sep 2021 20:34:17 +0200 (CEST) Date: Thu, 16 Sep 2021 20:34:17 +0200 From: Axel Beckert To: zsh-workers@zsh.org Subject: Re: [BUG] With --disable-dynamic-nss, not all functions calls are protected Message-ID: <20210916183414.m6ljys3pvi2buby2@sym.noone.org> Mail-Followup-To: zsh-workers@zsh.org References: <20210908011251.GA2387366@zira.vinc17.org> <20210915143102.pw5uup7bvufi7wse@sym.noone.org> <887BC7E8-0D19-4D16-BFE6-9AE8EA5E9040@kba.biglobe.ne.jp> <20210916121056.p4zainnlnoi74yiw@sym.noone.org> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="zv4cka72z3ezrwjb" Content-Disposition: inline In-Reply-To: X-Operating-System: Linux 4.9.0-16-amd64 X-Machine: sym2 x86_64 X-Editor: GNU Emacs 25.1.1 Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAAAAAC3mUtaAAAABGdBTUEAALGPC/xhBQAAADh0RVh0U29mdHdhcmUAWFYgVmVyc2lvbiAzLjEwYSAgUmV2OiAxMi8yOS85NCAoUE5HIHBhdGNoIDEuMindFS5JAAACGElEQVQ4jXXQMU8UYRDG8f8shNjdDH4AbpfGDjAWlKiJiZ0ajL1aGCvsNCbGaCGG1koLaztaTYz6ATy+gOyehYmF3MxVxgg3FnDsHcTpJr/M+8w7Rf6nCsaVTTDqxbg9hoOXmw83H71+Eyfg4E1d7/Z2fG9rGkZbTQiu+K+3U/C+76lmkvAhJuDndnoAiftou4V84okAGclop4U/jYACZDTxrYWP0gkxVfAm/W//GLZpxIzwIN0Hn8dw0B+IWkZmQmRsj2HfhwokEklHfNCCiQCRgAR7YyhQVRVTCKCzP4Y5zBBE0t0zY3Q8oQaBqqAMlVEcgVQd9706zGirAFium8HXumlMIeMwqQCInju+2+uB6MRENupdpMt8pRlHZyuAW0F+Mb6XSIVqtxjD+iVmVqqystLEzFTGT92YqRaXpNT5eTVjeJhbALPnrTxLUZUKZsgxcNm64hAOYisT/xhF+oKTGU5RegtC3Rt6eEDi/QnIevdTx9Md2EMmYBRmCQR1026FCGQQJJExsRUqgkMGaWSbwYLnoO4T6VgpbQbdELPMBAHWWrhYrcxXnYgAsatPWygkFCBD4K62MAsOTqA6szYRPpsu6e6Y8mPiVrBMNuGIMrgwBUu4p2DgG1Ownu6hpuTv7hScefHAzAC/yRRw5U5pALMbJ4AUALvHSZhxgHPXTsHcdWD1GadAHr9avP+c0wCr7263Df8ASLwXWHWs+KIAAAAHdElNRQfYBQEBODPr Organization: DeuxChevaux.org -- The =?iso-8859-1?Q?Citr?= =?iso-8859-1?B?b+tu?= 2CV Database User-Agent: NeoMutt/20170113 (1.7.2) X-Validation-by: larryv@zsh.org X-Seq: 49419 Archived-At: X-Loop: zsh-workers@zsh.org Errors-To: zsh-workers-owner@zsh.org Precedence: list Precedence: bulk Sender: zsh-workers-request@zsh.org X-no-archive: yes List-Id: List-Help: List-Subscribe: List-Unsubscribe: List-Post: List-Owner: List-Archive: --zv4cka72z3ezrwjb Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi, On Fri, Sep 17, 2021 at 03:21:43AM +0900, Jun. T wrote: > > Hmm. There are two calls to uname() in the strace. > > Sorry, I missed the second one. > The first one is before > readlink("/proc/self/exe", "/home/abe/tmp/zsh-static", 4096) > and I guess it is not from zsh code. Sorry, I forgot to use "-f" and my zshrc is using grml's zshrc as well as zsh-syntax-highlighting. New strace attached. Then again, they differ only a few bytes in size and seemingly only in pids and hex addresses wrt. to their contents. So I assume the crash happens even before my .zshrc was loaded. Kind regards, Axel -- PGP: 2FF9CD59612616B5 /~\ Plain Text Ribbon Campaign, http://arc.pasp.de/ Mail: abe@deuxchevaux.org \ / Say No to HTML in E-Mail and Usenet Mail+Jabber: abe@noone.org X https://axel.beckert.ch/ / \ I love long mails: https://email.is-not-s.ms/ --zv4cka72z3ezrwjb Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="zsh-static-dash-f.strace" execve("tmp/zsh-static", ["tmp/zsh-static", "-f"], 0x7ffdcb1ffbf8 /* 53 vars */) = 0 brk(NULL) = 0x10ef000 brk(0x10efe00) = 0x10efe00 arch_prctl(ARCH_SET_FS, 0x10ef400) = 0 uname({sysname="Linux", nodename="emehari", ...}) = 0 readlink("/proc/self/exe", "/home/abe/tmp/zsh-static", 4096) = 24 brk(0x1110e00) = 0x1110e00 brk(0x1111000) = 0x1111000 mprotect(0x642000, 32768, PROT_READ) = 0 prctl(PR_CAPBSET_READ, CAP_MAC_OVERRIDE) = 1 prctl(PR_CAPBSET_READ, 0x30 /* CAP_??? */) = -1 EINVAL (Invalid argument) prctl(PR_CAPBSET_READ, CAP_CHECKPOINT_RESTORE) = 1 prctl(PR_CAPBSET_READ, 0x2c /* CAP_??? */) = -1 EINVAL (Invalid argument) prctl(PR_CAPBSET_READ, 0x2a /* CAP_??? */) = -1 EINVAL (Invalid argument) prctl(PR_CAPBSET_READ, 0x29 /* CAP_??? */) = -1 EINVAL (Invalid argument) openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=3726656, ...}) = 0 mmap(NULL, 3726656, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f642899d000 close(3) = 0 prlimit64(0, RLIMIT_NOFILE, NULL, {rlim_cur=4*1024, rlim_max=4*1024}) = 0 getuid() = 1000 geteuid() = 1000 getgid() = 1000 getegid() = 1000 ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0 ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0 ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0 fstat(0, {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0), ...}) = 0 readlink("/proc/self/fd/0", "/dev/pts/0", 4095) = 10 stat("/dev/pts/0", {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0), ...}) = 0 openat(AT_FDCWD, "/dev/pts/0", O_RDWR|O_NOCTTY) = 3 fcntl(3, F_DUPFD, 10) = 10 close(3) = 0 fcntl(10, F_GETFD) = 0 fcntl(10, F_SETFD, FD_CLOEXEC) = 0 fcntl(10, F_GETFL) = 0x8002 (flags O_RDWR|O_LARGEFILE) ioctl(10, TCGETS, {B38400 opost isig icanon echo ...}) = 0 getpid() = 28930 getpgrp() = 28927 getpgrp() = 28927 rt_sigprocmask(SIG_BLOCK, [TSTP TTIN TTOU], [], 8) = 0 ioctl(10, TIOCGPGRP, [28927]) = 0 setpgid(0, 0) = 0 ioctl(10, TIOCSPGRP, [28930]) = 0 rt_sigprocmask(SIG_SETMASK, [], [TSTP TTIN TTOU], 8) = 0 pipe([3, 4]) = 0 dup(0) = 5 dup(0) = 6 dup(0) = 7 dup(0) = 8 dup(0) = 9 getppid() = 28927 getpid() = 28930 getuid() = 1000 stat("/", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 stat(".", {st_mode=S_IFDIR|0755, st_size=12288, ...}) = 0 stat("/home/abe", {st_mode=S_IFDIR|0755, st_size=12288, ...}) = 0 stat(".", {st_mode=S_IFDIR|0755, st_size=12288, ...}) = 0 mmap(NULL, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f6428999000 openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache", O_RDONLY) = 11 fstat(11, {st_mode=S_IFREG|0644, st_size=27002, ...}) = 0 mmap(NULL, 27002, PROT_READ, MAP_SHARED, 11, 0) = 0x7f6428992000 close(11) = 0 uname({sysname="Linux", nodename="emehari", ...}) = 0 openat(AT_FDCWD, "/proc/self/loginuid", O_RDONLY) = 11 read(11, "1000", 12) = 4 close(11) = 0 socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 11 connect(11, {sa_family=AF_UNIX, sun_path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory) close(11) = 0 socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 11 connect(11, {sa_family=AF_UNIX, sun_path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory) close(11) = 0 openat(AT_FDCWD, "/etc/nsswitch.conf", O_RDONLY|O_CLOEXEC) = 11 fstat(11, {st_mode=S_IFREG|0644, st_size=494, ...}) = 0 read(11, "# /etc/nsswitch.conf\n#\n# Example"..., 4096) = 494 read(11, "", 4096) = 0 close(11) = 0 openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 11 fstat(11, {st_mode=S_IFREG|0644, st_size=161344, ...}) = 0 mmap(NULL, 161344, PROT_READ, MAP_PRIVATE, 11, 0) = 0x7f642896a000 close(11) = 0 openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libnss_files.so.2", O_RDONLY|O_CLOEXEC) = 11 read(11, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0003\0\0\0\0\0\0"..., 832) = 832 fstat(11, {st_mode=S_IFREG|0644, st_size=51696, ...}) = 0 mmap(NULL, 79672, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 11, 0) = 0x7f6428956000 mmap(0x7f6428959000, 28672, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 11, 0x3000) = 0x7f6428959000 mmap(0x7f6428960000, 8192, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 11, 0xa000) = 0x7f6428960000 mmap(0x7f6428962000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 11, 0xb000) = 0x7f6428962000 mmap(0x7f6428964000, 22328, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f6428964000 close(11) = 0 openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 11 read(11, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@n\2\0\0\0\0\0"..., 832) = 832 fstat(11, {st_mode=S_IFREG|0755, st_size=1839792, ...}) = 0 mmap(NULL, 1852680, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 11, 0) = 0x7f6428791000 mprotect(0x7f64287b6000, 1662976, PROT_NONE) = 0 mmap(0x7f64287b6000, 1355776, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 11, 0x25000) = 0x7f64287b6000 mmap(0x7f6428901000, 303104, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 11, 0x170000) = 0x7f6428901000 mmap(0x7f642894c000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 11, 0x1ba000) = 0x7f642894c000 mmap(0x7f6428952000, 13576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f6428952000 close(11) = 0 openat(AT_FDCWD, "/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2", O_RDONLY|O_CLOEXEC) = 11 read(11, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220\20\0\0\0\0\0\0"..., 832) = 832 fstat(11, {st_mode=S_IFREG|0755, st_size=177928, ...}) = 0 mmap(NULL, 180600, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 11, 0) = 0x7f6428764000 mprotect(0x7f6428765000, 167936, PROT_NONE) = 0 mmap(0x7f6428765000, 131072, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 11, 0x1000) = 0x7f6428765000 mmap(0x7f6428785000, 32768, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 11, 0x21000) = 0x7f6428785000 mmap(0x7f642878e000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 11, 0x29000) = 0x7f642878e000 mmap(0x7f6428790000, 376, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f6428790000 close(11) = 0 mprotect(0x7f642878e000, 4096, PROT_READ) = 0 mprotect(0x7f642894c000, 12288, PROT_READ) = 0 mprotect(0x7f6428962000, 4096, PROT_READ) = 0 openat(AT_FDCWD, "/usr/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = 11 fstat(11, {st_mode=S_IFREG|0644, st_size=2996, ...}) = 0 read(11, "# Locale name alias data base.\n#"..., 4096) = 2996 read(11, "", 4096) = 0 close(11) = 0 openat(AT_FDCWD, "/usr/share/locale/en_US/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/share/locale/en/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory) write(2, "zsh-static: dl-call-libc-early-i"..., 100) = 100 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f6428763000 rt_sigprocmask(SIG_UNBLOCK, [ABRT], NULL, 8) = 0 rt_sigprocmask(SIG_BLOCK, ~[RTMIN RT_1], [], 8) = 0 getpid() = 28930 gettid() = 28930 tgkill(28930, 28930, SIGABRT) = 0 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 --- SIGABRT {si_signo=SIGABRT, si_code=SI_TKILL, si_pid=28930, si_uid=1000} --- +++ killed by SIGABRT (core dumped) +++ --zv4cka72z3ezrwjb--