Bug#619355: #619355 - lynx fails to stop on SIGTSTP (C-z)

2012-11-19 Thread Thomas Dickey
I've not been able to reproduce this.

-- 
Thomas E. Dickey 
http://invisible-island.net
ftp://invisible-island.net


signature.asc
Description: Digital signature


Bug#619355: #619355 lynx fails to stop on SIGTSTP (C-z)

2011-07-05 Thread Thomas Dickey

On Tue, 5 Jul 2011, Ivan Shmakov wrote:


Thomas Dickey  writes:


[…]

> Lynx is using ncurses for handling SIGTSTP most of the time.  It
> sets/unsets a handler when it is doing a system() call.  If your test
> scenario doesn't run any external programs, then perhaps the problem
> is in ncurses (or the way lynx uses it).

Somehow, “ncurses” is synonymous with “environment variables” to
me.  Indeed, running lynx within a clean environment, via either
schroot(1) or env(1) ($ env -i TERM="$TERM" lynx), resulted in
apparently correct SIGTSTP handling.

Several iterations after, I've found a minimal ${LYNX_CFG}
example that leads to the problem I've described:

$ cat < "$LYNX_CFG"
INCLUDE:/etc/lynx-cur/lynx.cfg
USE_MOUSE:TRUE
$

(I've added USE_MOUSE:TRUE to my ${LYNX_CFG} almost five years
ago, and it was there ever since, even though I haven't actually
used it much.)


thanks (will experiment and see if I can reproduce this).

--
Thomas E. Dickey
http://invisible-island.net
ftp://invisible-island.net

Bug#619355: #619355 lynx fails to stop on SIGTSTP (C-z)

2011-07-05 Thread Ivan Shmakov
> Thomas Dickey  writes:

[…]

 > Lynx is using ncurses for handling SIGTSTP most of the time.  It
 > sets/unsets a handler when it is doing a system() call.  If your test
 > scenario doesn't run any external programs, then perhaps the problem
 > is in ncurses (or the way lynx uses it).

Somehow, “ncurses” is synonymous with “environment variables” to
me.  Indeed, running lynx within a clean environment, via either
schroot(1) or env(1) ($ env -i TERM="$TERM" lynx), resulted in
apparently correct SIGTSTP handling.

Several iterations after, I've found a minimal ${LYNX_CFG}
example that leads to the problem I've described:

$ cat < "$LYNX_CFG" 
INCLUDE:/etc/lynx-cur/lynx.cfg
USE_MOUSE:TRUE
$ 

(I've added USE_MOUSE:TRUE to my ${LYNX_CFG} almost five years
ago, and it was there ever since, even though I haven't actually
used it much.)

-- 
FSF associate member #7257



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org



Bug#619355: #619355 lynx fails to stop on SIGTSTP (C-z)

2011-07-05 Thread Thomas Dickey
On Tue, Jul 05, 2011 at 01:33:22PM +0700, Ivan Shmakov wrote:
> > Ivan Shmakov  writes:
> 
>  > I should probably try to compare strace(1)'s???
> 
>   I've grep'ed the strace for ???rt_sig???.  The results for the first
>   and second SIGTSTP are MIME'd.
> 
>   And there's a difference:
> 
>   ??? first SIGTSTP:
> 
> rt_sigaction(SIGTSTP, {0x7f061efbf800, [], SA_RESTORER|SA_RESTART, 
> 0x7f061e5461e0}, NULL, 8) = 0
> 
>   ??? second SIGTSTP:
> 
> rt_sigaction(SIGTSTP, {SIG_IGN}, NULL, 8) = 0
> 
>   Do I understand it correctly that the SIGTSTP signal handler is
>   not properly reset in the latter case?

Perhaps - lynx is calling sigaction, which in turn calls rt_sigaction.
But you may be looking at the initialization section, since that's also
where SIGWINCH is setup.

Lynx is using ncurses for handling SIGTSTP most of the time.
It sets/unsets a handler when it is doing a system() call.
If your test scenario doesn't run any external programs, then
perhaps the problem is in ncurses (or the way lynx uses it).

-- 
Thomas E. Dickey 
http://invisible-island.net
ftp://invisible-island.net


signature.asc
Description: Digital signature


Bug#619355: #619355 lynx fails to stop on SIGTSTP (C-z)

2011-07-04 Thread Ivan Shmakov
> Thomas Dickey  writes:
> On Thu, 19 May 2011, Ivan Shmakov wrote:
> Thomas Dickey  writes:

 >>> This seems to work for me (trying both tcsh and bash).  Can you
 >>> provide more details (perhaps locale, shell/version, etc).

 >> I cannot reproduce the issue on a few of fresh Squeeze incarnations,
 >> either.

 >> However, the issue readily manifests itself on a Squeeze system
 >> which still has some Lenny packages yet to be upgraded.  (Of those,
 >> only debconf is in the lynx-cur Depends: list.)  So, I guess that
 >> there's some library package used by Lynx that causes the problem.
 >> I'm going to try my luck tracking it down.

 > thanks - it doesn't sound simple to track down (though I'd assume
 > it's either in the bash dependencies, or lynx's).

Well, on a host on which such an condition occurs, I also have a
chroot environment with Debian Squeeze installed.
Unsurprisingly, running Lynx there doesn't lead to the problem.

What I've found surprising, however, is that if I run chroot
environment's Lynx (using all the libraries installed there)
without actually chroot'ing, it also fails to respond to SIGTSTP
correctly!

I've run chroot'ed Lynx) like:

• using schroot(1) (reacts to SIGTSTP):

$ LC_ALL=C schroot -c squeeze -- /usr/bin/lynx 

  (note that no Shell is involved there);

• using LD_LIBRARY_PATH (fails to react to SIGTSTP):

$ LC_ALL=C LD_LIBRARY_PATH="$p"/lib:"$p"/usr/lib \
  "$p"/lib/ld-linux-x86-64.so.2 "$p"/usr/bin/lynx.cur 

  (locale is disabled so that the base system's /usr/lib/gconv/
  isn't used; I've also used ld-linux.so from chroot.)

I've also MIME'd the /proc/LYNXID/maps file for the latter case.

Seemingly, the above rules out the possibility of a broken Shell
or library.

I should probably try to compare strace(1)'s…

[…]

-- 
FSF associate member #7257
0040-00537000 r-xp  fc:0d 24726  
/srv/chroot/2011-01-25/usr/bin/lynx.cur
00737000-00764000 rw-p 00137000 fc:0d 24726  
/srv/chroot/2011-01-25/usr/bin/lynx.cur
00764000-007d3000 rw-p 00764000 00:00 0 
7f6f15957000-7f6f1595c000 r-xp  fc:0d 8473   
/srv/chroot/2011-01-25/usr/lib/libgpm.so.2.0.0
7f6f1595c000-7f6f15b5c000 ---p 5000 fc:0d 8473   
/srv/chroot/2011-01-25/usr/lib/libgpm.so.2.0.0
7f6f15b5c000-7f6f15b5d000 rw-p 5000 fc:0d 8473   
/srv/chroot/2011-01-25/usr/lib/libgpm.so.2.0.0
7f6f15b5d000-7f6f15b6 rw-p 7f6f15b5d000 00:00 0 
7f6f15b6-7f6f15b63000 r-xp  fc:0d 8693   
/srv/chroot/2011-01-25/usr/lib/libgpg-error.so.0.4.0
7f6f15b63000-7f6f15d62000 ---p 3000 fc:0d 8693   
/srv/chroot/2011-01-25/usr/lib/libgpg-error.so.0.4.0
7f6f15d62000-7f6f15d63000 rw-p 2000 fc:0d 8693   
/srv/chroot/2011-01-25/usr/lib/libgpg-error.so.0.4.0
7f6f15d63000-7f6f15d73000 r-xp  fc:0d 8698   
/srv/chroot/2011-01-25/usr/lib/libtasn1.so.3.1.9
7f6f15d73000-7f6f15f72000 ---p 0001 fc:0d 8698   
/srv/chroot/2011-01-25/usr/lib/libtasn1.so.3.1.9
7f6f15f72000-7f6f15f73000 rw-p f000 fc:0d 8698   
/srv/chroot/2011-01-25/usr/lib/libtasn1.so.3.1.9
7f6f15f73000-7f6f15f74000 rw-p 7f6f15f73000 00:00 0 
7f6f15f74000-7f6f15f76000 r-xp  fc:0c 26726  
/srv/chroot/2011-01-25/lib/libdl-2.11.2.so
7f6f15f76000-7f6f16176000 ---p 2000 fc:0c 26726  
/srv/chroot/2011-01-25/lib/libdl-2.11.2.so
7f6f16176000-7f6f16177000 r--p 2000 fc:0c 26726  
/srv/chroot/2011-01-25/lib/libdl-2.11.2.so
7f6f16177000-7f6f16178000 rw-p 3000 fc:0c 26726  
/srv/chroot/2011-01-25/lib/libdl-2.11.2.so
7f6f16178000-7f6f162d r-xp  fc:0c 26728  
/srv/chroot/2011-01-25/lib/libc-2.11.2.so
7f6f162d-7f6f164cf000 ---p 00158000 fc:0c 26728  
/srv/chroot/2011-01-25/lib/libc-2.11.2.so
7f6f164cf000-7f6f164d3000 r--p 00157000 fc:0c 26728  
/srv/chroot/2011-01-25/lib/libc-2.11.2.so
7f6f164d3000-7f6f164d4000 rw-p 0015b000 fc:0c 26728  
/srv/chroot/2011-01-25/lib/libc-2.11.2.so
7f6f164d4000-7f6f164d9000 rw-p 7f6f164d4000 00:00 0 
7f6f164d9000-7f6f164e2000 r-xp  fc:0c 26695  
/srv/chroot/2011-01-25/lib/libbsd.so.0.2.0
7f6f164e2000-7f6f166e2000 ---p 9000 fc:0c 26695  
/srv/chroot/2011-01-25/lib/libbsd.so.0.2.0
7f6f166e2000-7f6f166e3000 rw-p 9000 fc:0c 26695  
/srv/chroot/2011-01-25/lib/libbsd.so.0.2.0
7f6f166e3000-7f6f166e4000 rw-p 7f6f166e3000 00:00 0 
7f6f166e4000-7f6f16758000 r-xp  fc:0d 8691   
/srv/chroot/2011-01-25/usr/lib/libgcrypt.so.11.5.3
7f6f16758000-7f6f16958000 -

Bug#619355: #619355 lynx fails to stop on SIGTSTP (C-z)

2011-07-04 Thread Ivan Shmakov
> Ivan Shmakov  writes:

[…]

 > I should probably try to compare strace(1)'s…

I've grep'ed the strace for “rt_sig”.  The results for the first
and second SIGTSTP are MIME'd.

And there's a difference:

• first SIGTSTP:

rt_sigaction(SIGTSTP, {0x7f061efbf800, [], SA_RESTORER|SA_RESTART, 
0x7f061e5461e0}, NULL, 8) = 0

• second SIGTSTP:

rt_sigaction(SIGTSTP, {SIG_IGN}, NULL, 8) = 0

Do I understand it correctly that the SIGTSTP signal handler is
not properly reset in the latter case?

-- 
FSF associate member #7257
rt_sigprocmask(SIG_BLOCK, [ALRM WINCH], [TSTP], 8) = 0
rt_sigprocmask(SIG_BLOCK, [TTOU], NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [TSTP TTOU], NULL, 8) = 0
rt_sigaction(SIGTSTP, {SIG_DFL}, {0x7f061efbf800, [], SA_RESTORER|SA_RESTART, 
0x7f061e5461e0}, 8) = 0
rt_sigaction(SIGTSTP, {0x7f061efbf800, [], SA_RESTORER|SA_RESTART, 
0x7f061e5461e0}, NULL, 8) = 0
rt_sigaction(SIGTSTP, {SIG_IGN}, {0x7f061efbf800, [], SA_RESTORER|SA_RESTART, 
0x7f061e5461e0}, 8) = 0
rt_sigaction(SIGWINCH, {0x7f0617332330, [], SA_RESTORER, 0x7f061e5461e0}, 
{0x443ee0, [WINCH], SA_RESTORER|SA_RESTART, 0x7f061e5461e0}, 8) = 0
rt_sigaction(SIGTSTP, {SIG_IGN}, {SIG_IGN}, 8) = 0
rt_sigaction(SIGTSTP, {0x7f061efbf800, [], SA_RESTORER|SA_RESTART, 
0x7f061e5461e0}, NULL, 8) = 0
rt_sigprocmask(SIG_SETMASK, [TSTP], NULL, 8) = 0
rt_sigreturn(0x2)   = 0
rt_sigprocmask(SIG_BLOCK, [ALRM WINCH], [TSTP], 8) = 0
rt_sigprocmask(SIG_BLOCK, [TTOU], NULL, 8) = 0
rt_sigaction(SIGTSTP, {SIG_IGN}, NULL, 8) = 0
rt_sigaction(SIGWINCH, {0x443ee0, [WINCH], SA_RESTORER|SA_RESTART, 
0x7f061e5461e0}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [TSTP TTOU], NULL, 8) = 0
rt_sigaction(SIGTSTP, {SIG_DFL}, {SIG_IGN}, 8) = 0
rt_sigaction(SIGTSTP, {SIG_IGN}, NULL, 8) = 0
rt_sigaction(SIGTSTP, {SIG_IGN}, {SIG_IGN}, 8) = 0
rt_sigaction(SIGWINCH, {0x7f0617332330, [], SA_RESTORER, 0x7f061e5461e0}, 
{0x443ee0, [WINCH], SA_RESTORER|SA_RESTART, 0x7f061e5461e0}, 8) = 0
rt_sigaction(SIGTSTP, {SIG_IGN}, {SIG_IGN}, 8) = 0
rt_sigaction(SIGTSTP, {SIG_IGN}, NULL, 8) = 0
rt_sigprocmask(SIG_SETMASK, [TSTP], NULL, 8) = 0
rt_sigreturn(0x2)   = 0


Bug#619355: #619355 lynx fails to stop on SIGTSTP (C-z)

2011-05-18 Thread Thomas Dickey

On Thu, 19 May 2011, Ivan Shmakov wrote:


Thomas Dickey  writes:


> This seems to work for me (trying both tcsh and bash).  Can you
> provide more details (perhaps locale, shell/version, etc).

I cannot reproduce the issue on a few of fresh Squeeze
incarnations, either.

However, the issue readily manifests itself on a Squeeze system
which still has some Lenny packages yet to be upgraded.  (Of
those, only debconf is in the lynx-cur Depends: list.)  So, I
guess that there's some library package used by Lynx that causes
the problem.  I'm going to try my luck tracking it down.


thanks - it doesn't sound simple to track down (though I'd assume it's
either in the bash dependencies, or lynx's).


   Thanks.

   (The report should probably downgraded to Severity: minor, as it
   seemingly may only cause an inconvenience after upgrade, and
   only if something went wrong, or if for some reason some
   packages were left not upgraded.)

--
FSF associate member #7257



--
Thomas E. Dickey
http://invisible-island.net
ftp://invisible-island.net



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org



Bug#619355: #619355 lynx fails to stop on SIGTSTP (C-z)

2011-05-18 Thread Ivan Shmakov
> Thomas Dickey  writes:

 > This seems to work for me (trying both tcsh and bash).  Can you
 > provide more details (perhaps locale, shell/version, etc).

I cannot reproduce the issue on a few of fresh Squeeze
incarnations, either.

However, the issue readily manifests itself on a Squeeze system
which still has some Lenny packages yet to be upgraded.  (Of
those, only debconf is in the lynx-cur Depends: list.)  So, I
guess that there's some library package used by Lynx that causes
the problem.  I'm going to try my luck tracking it down.

Thanks.

(The report should probably downgraded to Severity: minor, as it
seemingly may only cause an inconvenience after upgrade, and
only if something went wrong, or if for some reason some
packages were left not upgraded.)

-- 
FSF associate member #7257



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org



Bug#619355: #619355 lynx fails to stop on SIGTSTP (C-z)

2011-05-18 Thread Thomas Dickey
This seems to work for me (trying both tcsh and bash).  Can you provide
more details (perhaps locale, shell/version, etc).

thanks

-- 
Thomas E. Dickey 
http://invisible-island.net
ftp://invisible-island.net


signature.asc
Description: Digital signature